Configuración e Instalación de LTSP

Configuración e Instalación de un servidor LTSP

Por: Miguel Florian
Guatemala

LTSP (Linux Terminal Server Project)

Es un conjunto de herramientas de tipo servidor que provee una manera simple de utilizar maquinas de bajo costo como estaciones de trabajo en modo grafico.
Principalmente fue utilizado para proyectos escolares, pero debido a sus altas prestaciones es hoy en día una solución muy rentable para negocios y organizaciones.


Configuración e Instalación de LTSP


Historia

Un Sr. Llamado Jim McQuillian empezó con esto en 1999 tratando de conseguir una solución de bajo costo para uno de sus clientes en Detroit, Michigan, Estados Unidos. En particular se necesitaba un método para conectar 35 usuarios a un servidor de aplicaciones IBM AS/400 y un Servidor Unix.


Funciones del Servido LTSP

El cliente arranca o “bootea” mediante un protocolo llamado PXE (Pre-Execution Environment). PXE realiza una petición de dirección IP al servidor DHCP. El servidor DHCP envía los parámetros adicionales al cliente y baja una imagen del sistema de archivos Linux vía TFTP (normalmente administrada con LDM).
El LTSP server se utiliza prácticamente para dar vida a maquinas con pocos recursos.


Herramientas de Trabajo

• Para este proyecto se utilizó un equipo con sistema operativo Ubuntu 9.10, este funcionará como servidor LTSP.
• Clientes ligeros (cualquier computadora con NIC)
• Un Switch.


INSTALACIÓN Y CONFIGURACIÓN


1. Actualización de Ubuntu

Una vez instalado Ubuntu, en una terminal se escriben los comandos:

sudo aptitude update
sudo aptitude dist-upgrade

El primero descarga las actualizaciones y el segundo instala las actualizaciones.


2. Instalar LTSP-Server

Después de haber actualizaciones Ubuntu, ingresar a la terminal y ejecutar el siguiente comando:

sudo apt-get install ltsp-server-standalone openssh-server

ltsp-server-standalone: Este paquete contiene las herramientas para construir el entorno de los clientes livianos.

openssh-server: (Open Secure Shell) es una alternativa de código abierto, utilizada para conexiones seguras.


3. Activar el dominio del servidor TFTP

Editar el archivo tftpd-hpa con el siguiente comando:

nano /etc/default/tftpd-hpa

#Defaults for tftpd-hpa
RUN_DAEMON="no"
OPTIONS="-l -s /var/lib/tftpboot"

Cambiar y guardar por:

#Defaults for tftpd-hpa
RUN_DAEMON="yes"
OPTIONS="-l -s /var/lib/tftpboot"

Guardamos y reiniciamos el servidor tftp con el comando:

sudo /etc/init.d/tftpd-hpa restart


3. Crear la imagen la imagen para las conexión de los thin clients al servidor

En una terminal escribir el siguiente comando:

ltsp-build-client

Ubuntu

Al final del proceso se debe leer LTSP client installation completed successfully como en la imagen anterior. Este proceso pude durar varias horas.


4. Configuración del DHCP server.

Abrir en una termal y ejecutar el comando siguiente:

nano /etc/ltsp/dhcpd.conf

subnet 10.1.4.0 netmask 255.255.255.0 {
range 10.1.4.220 10.1.4.250;
option domain-name "example.com";
option domain-name-servers 10.1.2.34;
option netbios-name-servers 10.1.2.34;
option broadcast-address 10.1.4.255;
option routers 10.1.4.254;
# next-server 10.1.4.10;
# 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";
}
}

Se debe configurar de acuerdo a las direcciones IP, dadas por nuestro subnetting.
Si se utilizará otro servidor (p. e. FTP, SMTP, etc) se debe descomentar la opción que dice “next-server” y escribir ahí la dirección de nuestro servidor.


5. Configurar una ip estática para el servidor LTSP (Opcional)


En una terminal ejecutar el siguiente comando:

nano /etc/network/interfaces

Servidor

Escribir la dirección de la ip estática para que el servidor tenga siempre está dirección y sea más fácil de localizar, por ejemplo.

Se deben escribir direcciones tales como subnetmask, Gateway, broadcast, ip adress, etc. Como se muestra en la imagen anterior.

Después agregar las direcciones, guardar cambios con Ctl+O


6. Archivo de configuración de los clientes.

Para que los clientes puedan acceder al sistema operativo, se deben crear usuarios desde el servidor, así como también copiar el archivo que contiene la configuración de los mismos “lts.conf”

El archivo se encutra en /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples

Copiar a /var/lib/tftboot/ltsp/i386

comando:

sudo cp /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples/lts.conf /var/lib/tftboot/ltsp/i386


NOTA IMPORTANTE:

Por último se debe actualizar la imagen, con el comando ltsp-update-image para que se guarden en la imagen y que el usuario pueda acceder a ellos.
Este comando se debe ejecutar, siempre que hagamos una modificación en nuestro servidor.

Cualquier duda, mi correo es lucragt@hotmail.com

19 comentarios - Configuración e Instalación de LTSP

@Jenny27
Gracias por compartir esta importante información con nosotros...
Sigue Adelante!!!!
@rramiro88
buen aporte! no sabes de alguna herramienta para controlar los clientes delgados al estilo que trae tcos?
@industrialhead
hola muy buen aporte amigo pero no puedo ingresar con los usuarios?
me podrias especificar mejor de como copiar la ruta si creo un usuario por decirlo asi llamado alejo

gracias por tu buen aporte
@industrialhead
aaaaa y para a puntar lo tengo en modo texto no le tengo en interfaz grafica
@valleduardo
Gracias por tu aporte.

Saludos cordiales
@martinmuszio
hola viejo que buen aporte te hago una consulta, tengo el edubuntu 10.10 como servidor ltsp pero vos sabes q en la maquina cliente bootea el pxe abre la ventana de inicio de sesion pero cuando pongo un usuario y contraseña no se logea, osea no puedo entrar, los usuarios deben ser de algun grupo especifico? hice lo que vos decis de:
El archivo se encutra en /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples

Copiar a /var/lib/tftboot/ltsp/i386

comando:

sudo cp /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples/lts.conf /var/lib/tftboot/ltsp/i386

pero NO encuentra el directorio, asi que inicio como usuario boot (supersuasuario) como el archivo vuelvo a cargar la imagen por las dudas reinicio el dhcp3-server y pruebo y sigo con el mismo problema... tenes alguna sugerencia???
@pericoElParrandero
Hice lo siguiente, tengo en una notebook instalado ubuntu 10.10, insale el ltsp server como indicas, a su vez en esta misma pc instale el virtualbox y cree un pc virtual si nin os instalado, unicamente configure la placa de red en bridge y que bootee de la misma. Arranco la virtual y levanta la pantalla de login de ubuntu, pero al intentar loguerme me rechaza el usuario que tengo en mi pc.Como creo usuarios en el servidor ltsp. Gracias y espero tu respuesta.
@pericoElParrandero
pericoElParrandero dijo:Hice lo siguiente, tengo en una notebook instalado ubuntu 10.10, insale el ltsp server como indicas, a su vez en esta misma pc instale el virtualbox y cree un pc virtual si nin os instalado, unicamente configure la placa de red en bridge y que bootee de la misma. Arranco la virtual y levanta la pantalla de login de ubuntu, pero al intentar loguerme me rechaza el usuario que tengo en mi pc.Como creo usuarios en el servidor ltsp. Gracias y espero tu respuesta.


Me acabo de dar cuenta que no es problema de usuario invalido, viendo los logs del sistema el auth.log al querer loguearme desde virtualbox me da el siguiente mensaje:

Nov 21 18:18:48 ubuntu sshd[4808]: Accepted password for prueba from 192.168.0.21 port 57498 ssh2
Nov 21 18:18:48 ubuntu sshd[4808]: pam_unix(sshd:session): session opened for user prueba by (uid=0)
Nov 21 18:18:48 ubuntu sshd[4898]: error: Failed to allocate internet-domain X11 display socket.
Nov 21 18:18:49 ubuntu sshd[4898]: subsystem request for sftp
Nov 21 18:18:50 ubuntu sshd[4898]: error: Failed to allocate internet-domain X11 display socket.
Nov 21 18:18:50 ubuntu sshd[4898]: Received disconnect from 192.168.0.21: 11: disconnected by user
Nov 21 18:18:50 ubuntu sshd[4808]: pam_unix(sshd:session): session closed for user prueba

Hay algun problema con el ssh me parece, alguno tuvo este mismo problema??
@industrialhead
mmmmm necesito interface grafica para poder hacer esto??
@pericoElParrandero
industrialhead dijo:mmmmm necesito interface grafica para poder hacer esto??

No es muy clara tu pregunta, pero lo podes configurar todo desde un terminal.
@pericoElParrandero
pericoElParrandero dijo:
pericoElParrandero dijo:Hice lo siguiente, tengo en una notebook instalado ubuntu 10.10, insale el ltsp server como indicas, a su vez en esta misma pc instale el virtualbox y cree un pc virtual si nin os instalado, unicamente configure la placa de red en bridge y que bootee de la misma. Arranco la virtual y levanta la pantalla de login de ubuntu, pero al intentar loguerme me rechaza el usuario que tengo en mi pc.Como creo usuarios en el servidor ltsp. Gracias y espero tu respuesta.


Me acabo de dar cuenta que no es problema de usuario invalido, viendo los logs del sistema el auth.log al querer loguearme desde virtualbox me da el siguiente mensaje:

Nov 21 18:18:48 ubuntu sshd[4808]: Accepted password for prueba from 192.168.0.21 port 57498 ssh2
Nov 21 18:18:48 ubuntu sshd[4808]: pam_unix(sshd:session): session opened for user prueba by (uid=0)
Nov 21 18:18:48 ubuntu sshd[4898]: error: Failed to allocate internet-domain X11 display socket.
Nov 21 18:18:49 ubuntu sshd[4898]: subsystem request for sftp
Nov 21 18:18:50 ubuntu sshd[4898]: error: Failed to allocate internet-domain X11 display socket.
Nov 21 18:18:50 ubuntu sshd[4898]: Received disconnect from 192.168.0.21: 11: disconnected by user
Nov 21 18:18:50 ubuntu sshd[4808]: pam_unix(sshd:session): session closed for user prueba

Hay algun problema con el ssh me parece, alguno tuvo este mismo problema??


Gente googleando bastante, encontré que es un bug de la versión Ubuntu 10.10, lo q hice fue instalar en una virtual Edubuntu 10.10, y después me cree 3 pc virtuales sin OS, configuradas para que arranquen desde la placa de red y fue un éxito, salio andando al primer booteo, ademas esta distro ya viene con todos los paquetes necesarios por defecto, no hace falta configurar nada para que salga andando.

Saludos.
@martinmuszio
gracias por la respuesta, como dato adicional informo que los clientes con 64MB el gnome lo levanta muy bien, sin embargo es necesario q el servidor sea decente ante cualquier duda preguntenme, trabajo en reciclado de PC's y trabajamos tanto en linux como en windows saludos un abrazo...
@cagl86
excelente aporte, me sirvio bastante!
@agoras
gracias, manos a la obra.
@javiercast
El comando este tiene un pequeño error que me volvió loco solo por una letra

ORIGINAL:
sudo cp /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples/lts.conf /var/lib/tftboot/ltsp/i386

CORREGIDO:
sudo cp /opt/ltsp/i386/usr/share/doc/ltsp-client-core/examples/lts.conf /var/lib/tftpboot/ltsp/i386
@javiercast
Y al editar el archivo del TFTP aparece esto en lo que le tenemos que poner en TFTP_ADDRESS= la IP de nuestro SERVIDOR

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"

TFTP_DIRECTORY="/var/lib/tftpboot"

TFTP_ADDRESS="0.0.0.0:69"

TFTP_OPTIONS="—secure"
@javiercast
Para quien necesite reiniciar el servidor DHCP por algún cambio echo en "/etc/ltsp/dhcpd.conf" pongan en la terminal.
SUDO service isc-dhcp-server restart