jueves, 23 de junio de 2011

CONFIGURACION DE TERMINALES DE TRABAJO – HOW TO

El TLSP provee una manera simple de utilizar estaciones de trabajo de bajo costo tanto como terminales gráficas o bien como terminales de caracter sobre un servidor GNU/Linux.Iniciar una estación de trabajo sin disco involucra muchos pasos. Comprender qué está pasando a través del camino hará mucho más fácil resolver los problemas que pudiesen surgir.Para comenzar, se debe instalar el servidor LTSP y el DHCP en un mismo equipo de la siguiente manera:Instalar los paquetes ltsp-server-standalone, openssh-server y ldm-server.
apt-get install ltsp-server-standalone

apt-get install openssh-server

apt-get install ldm-server

En caso de no estar instalado el openbsd-inetd, instalarlo.

apt-get install openbsd-inetd

Configurando el archivo para las interfaces.

sudo gedit /etc/network/interfaces

auto lo
iface lo inet loopback

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface

auto eth0
iface eth0 inet static
address 192.168.0.2
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
gateway 192.168.0.1

Luego, se procede a construir el entorno del cliente.
ltsp-build-client

Ahora se configurará el servicio DHCP. Éste es necesario para que, al momento del booteo, cada cliente obtenga una dirección IP que lo identifique dentro de la red. El paquete LTSP incluye un archivo de configuración para dicho servicio.

Procedemos a editar el archivo /etc/ltsp/dhcpd.conf para que quede de la siguiente manera:

sudo gedit /etc/ltsp/dhcpd.conf

# Default LTSP dhcpd.conf config file.
#
authoritative;

subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.5 192.168.0.29;
option domain-name "example.com";
option domain-name-servers 192.168.0.2;
option broadcast-address 192.168.0.255;
option routers 192.168.0.1;
# next-server 192.168.0.1;
# get-lease-hostnames true;
option subnet-mask 255.255.255.0;
option root-path "/opt/ltsp/i386";
if substring( option vendor-class-identifier, 0, 9 ) = "PXEClient" {
filename "/ltsp/i386/pxelinux.0";
} else {
filename "/ltsp/i386/nbi.img";
}
}

Preparación de los Clientes

Construyendo el cliente.

sudo ltsp -build-client
(Tarda aproximadamente 1 hora, dependiendo de la velocidad de la conexión a internet)
sudo ltsp-update-kernels
En el servidor, antes de que cualquier cliente quiera bootear por primera vez, se debe ejecutar el siguiente comando:
sudo ltsp-update-sshkeys
Para actualizar la imagen, se debe hacer lo siguiente:
sudo ltsp-update-image
Configurando el archivo inetd.
sudo gedit /etc/inetd.conf
Abajo de:
#BOOT
se escribe:
tftp dgram udp wait /usr/sbin/in.tftpd -s/tftpboot
Configurando el archivo dhcpd:
sudo gedit /etc/ltsp/dhcpd.conf
Abajo de:
#Default
se escribe:
max-lease-time-604800;
Verificando el tftp:
netstat -lu
sudo update-inetd --enable BOOT
sudo /etc/init.d/openbsd-inetd restart
sudo gedit /etc/default/tftpd-hpa
Abajo de:
#/etc/default/tftpd-hpa
Pegar:
RUN_DAEMON=”yes”
OPTIONS=”-l -s /tftpboot”
Para darle permisos a la carpeta tftpboot:
sudo mkdir /tftpboot
sudo chmod 777/tftpboot
cd /tftpboot sudo ltfp -c “open http://archive.ubuntu.com/ubuntu/dists/karmic/main/installer-i386/current/images/netboot/;”
Configurando el archive sysctl
sudo gedit /etc/sysctl.conf
Se deben quitar los comentarios en la línea:
net.ipv4.ip_forward=1
Nota: Reiniciar máquina

Ahora, actualizar la imagen del PXE
sudo ltsp-update-image
Nota: Reiniciar máquina
Creando cuentas de usuario para los clientes

Las cuentas de usuario se crean mediante el comando adduser.
adduser (nombre_del_usuario)
A partir de allí el sistema creará el usuario, incluyendo un directorio personal en /home/(nombre_de_usuario). Tambin se solicitarán datos del mismo (el más importante de ellos es la contraseña). Por defecto, el directorio personal se crea con permisos totales para el propietario del mismo, y permisos de lectura para el resto de los usuarios. Si se desea restringir el acceso al mismo sólo al propietario, se deben modificar los permisos mediante el siguiente comando:
chmod 700 /home/(nombre_de_usuario)

El entorno chroot

Es una versión minimalista de GNU/Linux, diseñada para optimizar el booteo por red que tiene que efectuar el cliente.

Para actualizar el entorno chroot, se deberá abrir una consola con privilegios de root y ejecutar los siguientes comandos.

En primer lugar, se debe copiar la lista de repositorios hacia el entorno chroot:
cp /etc/apt/sources.list /opt/ltsp/i386/etc/apt/
Luego, se cambia el directorio raíz hacia el entorno chroot LTSP:
chroot /opt/ltsp/i386/
Una vez allí, se efectúa la actualización de la lista de paquetes
apt-get update
Luego, se monta el directorio /proc
mount – t proc /proc /proc
Luego, se actualiza el software en el entorno chroot
apt-get upgrade
Una vez hecho esto, se sale del entorno chroot mediante el comando exit, o la combinación de teclas Ctrl+D.

Si el kernel ha sido actualizado, se deberá registrar dicha actualización.
ltsp-update-kernels

Configurando el comportamiento de los clientes

La mayoría de los clientes se autoconfigurará automáticamente en forma correcta. Sin embargo, algunas veces puede ser necesario personalizar los parámetros que están en el archivo de configuración /opt/ltsp/i386/etc/lts.conf
Usando la palabra clave LIKE se puede confeccionar un archivo lts.conf más prolijo, agrupando parámetros relacionados dentro de un único nombre simbólico.
################
[default]
Like= oldmachine
LIKE= Lowram
X_COLOR_DEPTH= 16
LOCALDEV= False
NBD_SWAP= True
SYSLOG_HOST= server
XKBLAYOUT= de
LDM_DEBUG= no
LMD_PASSWORD= testone
LMD_USERNAME= test1 ################

#[MAC ADDRESS]: Per thin client settings
################ # [00:11:25:84:CE:BA]
# XSERVER = vesa
# X_MOUSE_DEVICE=/dev/ttyS0
# X_MOUSE_PROTOCOL=intellimouse
###############
# A Thin Client Print server
# (switch off X by pointing tty7 to shell,
# to save ressources)
###############
# [00:11:25:93:CF:00]
# PRINTER_0_DEVICE=/dev/usblp0
# SCREEN_07=shell
###############
# A workstation that executes a specific
# command after login
###############
# [00:11:25:93:CF:02]
# LDM_SESSION=/usr/bin/myloginscript
Luego, se deben establecer ciertos privilegios a los usuarios que se quiere que tengan acceso a los dispositivos. Para ello, desde gnome se va a Sistema - Administración - Usuarios y grupos. Luego se provee la contraseña de usuario root, y después se podrá ver una ventana como esta:

Como ejemplo, se ha seleccionado el usuario pc01. Luego se deberá hacer clic en el botón Propiedades. Una vez en la ventana nueva, se selecciona la pestaña Privilegios de usuario, y se procede a marcar las siguientes casillas:


La opción que permitirá utilizar los dispositivos locales es “Mount user-space filesystems(FUSE)”. Sin embargo, marcar las otras opciones mostradas en la imagen anterior será de utilidad si se desea que el usuario pueda además conectarse a redes wireless y ethernet, usar dispositivos de sonido y usar unidades de CD-ROM.

Ahora el usuario pc01 ya puede utilizar las unidades de almacenamiento local en su thin client. Cuando conecte un pendrive o inserte un cdrom, un ícono identificador aparecerá en el escritorio.

Si la configuración se deja así, sin ninguna otra modificación, se podrá notar que en cada acceso a alguna unidad de almacenamiento local en el cliente, la unidad floppy efectuará una lectura, causando una demora innecesaria y un ruido que puede llegar a ser muy molesto. Para solucionar este problema, se debe proceder a editar el archivo:

/opt/ltsp/i386/etc/udev/rules.d/z60_ltspfsd.rules
Se procede a buscar las siguientes líneas:
# legacy floppy drives:
ACTION=="add", KERNEL=="fd[09]",
RUN+="ltspfs_entry add %k auto"
Y se comenta (mediante el caracter #) la segunda, con lo cual quedaría de la siguiente manera:
# legacy floppy drives:
# ACTION=="add", KERNEL=="fd[09]",
RUN+="ltspfs_entry add %k auto"

Repasando lo visto anteriormente.
Para crear un usuario el comando es:
adduser (nombre_de_usuario)
Ahora bien, para crear un grupo:
addgroup (nombre_de_grupo)
Finalmente, para agregar un usuario a un grupo:
addgroup (nombre_de_usuario) (nombre_de_grupo)
De esta manera se podrán organizar los distintos usuarios del sistema en diferentes grupos, según el criterio definido por el administrador.

Ahora iniciamos los siguientes procesos
sudo /etc/init.d/networking restart
sudo /etc/init.d/dhcp3-server restart

Finalmente, se procede a probar el Cliente.


Publicado por:
  • Erroa Blanco, Sandra Ivonne
  • Posada Lemus, Roberto Alexander
  • Villalta Quintana, Néstor Francisco