Servidor
Desde hace algún tiempo me ronda la idea de utilizar un sistema de servidor + terminales tontos para no tener que estar continuamente configurando equipos. Que compramos un equipo nuevo, ¡ale!, lo configuramos y pasamos toda la información del equipo anterior a éste. Que casca el disco duro, configurar de nuevo. Que... que es mucho trabajo, vamos.
Pero los precios de Terminal Server están por las nubes; entonces, ¿por qué no probar una configuración similar en Linux? Bueno, pues me puse manos a la obra.
Lo primero es lo primero, sin los tutoriales de mr_winter y de Gonzalo Álvarez Flores me hubiera costado mucho llegar a donde he llegado. De hecho, la mayoría de lo que voy a poner aquí no es mas que un cortar + pegar de lo que ellos cuentan allí; pero como me encontré con alguna pequeña variación, prefiero poner todo aquí.
Ante todo, es importante escoger un ordenador decente que será el que haga de servidor, aunque para probar todo vale. Aconsejan que, para el servidor, se piense en 70-100 Mbytes. de memoria RAM por cliente conectado y un microprocesador mínimo de 800 Mhz. Para los clientes, desde un 486. Yo escogí, para el servidor, un PIII a 500 Mhz. con 512 Mbytes. de memoria RAM que teníamos sin usar. Excaso si es un servidor para un entorno de producción, pero como era para probar... suficiente. De hecho tarda 2 minutos y 5 segundos en estar operativo, es decir, de 0-100 en 2'05''. Como clientes he probado varios; el más limitado, un Pentium a 133 Mhz. con 64 Mbytes. de memoria RAM. (He de confesar que, después de vista la velocidad abriendo Firefox 1.5.0.7 y OpenOffice 2.0.2, me he quedado gratamente sorprendido.)
He escogido instalar Ubuntu Desktop 6.06. Seguramente podría haber instalado cualquier otra distribución, por ejemplo Ubuntu Server 6.06 y después un gestor de ventanas simple (tipo Xfce), pero por vagancia me tiré a la primera.
Lo primero, después de la instalación, es cambiar la contraseña de root. Para ello vamos al menú Sistema -> Administración -> Usuarios y grupos, introducimos nuestra contraseña, marcamos la casilla Mostrar todos los usuarios y grupos para que se nos muestren el resto de usuarios (nos interesa root) y seleccionándolo y pulsando el botón Propiedades establecemos la contraseña a mano.

Después debo preguntarme si este equipo va a tener una IP dinámica o estática. De forma predeterminada está habilitada la opción DHCP, es decir, IP dinámica, pero si queremos establecer una IP estática deberemos ir a Sistema -> Administración -> Red, seleccionar la Conexión Ethernet y, en Propiedades, establecer los parámetros adecuados.
La instalación de Ubuntu 6.06 en este equipo me ha establecido una resolución única de pantalla de 640x480. ¡No cabe nada en pantalla! Así que me animo a reconfigurar las opciones de escritorio. Antes de hacer el siguiente paso es recomendable tener claro qué tarjeta de memoria estamos utilizando, cuánta memoria tiene, cuál es su refresco horizontal, vertical... y cuanto podamos saber sobre el ratón y el teclado. De todas formas, una copia de seguridad del archivo que vamos a modificar siempre viene bien. Abrimos una ventana de terminal y escribimos:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_AAAAMMDD
sudo dpkg-reconfigure xserver-xorg
Como este equipo está detrás de un proxy (que, además, necesita autenticación) necesito configurarlo para que se pueda descargar las actualizaciones. Es en el archivo /etc/enviroment donde le indicaremos cuál es nuestro proxy y cuál nuestra pareja usuario:contraseña. Escribimos:
sudo gedit /etc/enviroment
y podremos añadir una línea que diga:
http_proxy=http://mi_usuario:mi_contraseña@ip_del_proxy:puerto
Por ejemplo:
http_proxy=http://perico:deLosPalotes@192.168.241.1:8080
A continuación, instalamos algún paquete que nos hará falta más adelante, para ello lo más fácil es usar Synaptic. Los paquetes son: libwww-perl, dhcp3-server, nfs-kernel-server, tftpd-hpa y ltsp-server-standalone. Después actualizamos el sistema. (Aquí, y dependiendo del sistema, la espera puede durar varias horas.
Ahora debemos descargarnos la última versión del proyecto LTSP, de la página www.ltsp.org. Cuando instalé este proyecto (noviembre de 2006) la última versión era la 4.2, que te puedes descargar directamente aquí (recuerdo que es la versión para Ubuntu). Y la instalamos. Ya sabéis, ventana de terminal, ir al sitio donde la habéis descargado y teclear:
sudo dpkg -i paquete_a_instalar.deb
o abrir directamente el archivo con GDebi (la aplicación predeterminada) e instalarlo.
Ejecutamos:
sudo ltspadmin
Verificamos qué servicios están corriendo, para eso entramos en Configure LTSP. Los únicos que estarán activos serán: tftpd y portmapper. Si usamos proxy habrá que entrar en la opción Configure the installer options e indicarlo allí, poniendo toda la ruta cuando nos lo pida. Ej.:
http://ip_del_proxy
Y ahora vamos a instalar LTSP entramos en la primera opción: Install/Update LTSP Packages. Instalamos todo, para eso hay que marcar todos los paquetes pulsando la tecla “A” y salir de la utilidad pulsando “Q”. A continuación volvemos a entrar porque tenemos que generar todos los ficheros de configuración. Entramos de nuevo en Configure LTSP y vamos entrando en todas las opciones para que nos genere los ficheros de configuración correspondientes. Salimos.
Hacemos una copia de seguridad del archivo dhcp.conf, copiamos el archivo que viene de ejemplo, y lo abrimos para modificarlo:
sudo mv /etc/ltsp/dhcpd.conf /etc/ltsp/dhcpd.conf_old
sudo cp /etc/dhcp3/dhcpd.conf.sample /etc/ltsp/dhcpd.conf
sudo gedit /etc/ltsp/dhcpd.conf
Hay que cambiar las líneas subnet y range para que tomen los valores correctos de nuestra red. En mi caso voy a dar las direcciones IP con la forma 192.168.3.X y voy a permitir 5 conexiones recurrentes; quedará así:
subnet 192.168.3.0 netmask 255.255.255.0;
range 192.168.3.100 192.168.3.104;
Cambiaremos el nombre del dominio en la opción option domain-name y cambiaremos la ruta y el nombre de la imagen que se deben descargar (hay 2 líneas en las que cambiarla), en mi caso, la ruta **buena** es [/tftpboot]/lts/vmlinuz-2.6.17.8-ltsp-1. (Aunque, en realidad, la ruta anterior es la real, el directorio /tftpboot se asume y no hay que ponerlo, por eso aparece entre corchetes.)
(Ya estamos acabando.) Ahora hay que editar el archivo /etc/default/tftpd-hpa para que quede así:
RUN-DAEMON = ”yes”
OPTIONS = “-l -s /tftpboot”
Cambiamos, en /etc/inetd.conf, la línea que no está comentada para que la ruta apunte, igual que en el archivo anterior, a /tftpboot. Quedará así:
tftp dgram udp wait root /usr/sbin/in.tftpd /usr/sbin/in.tftpd -s /tftpdboot
Y cambiamos en /etc/exports: /opt/ltsp por /opt/ltsp/i386.
¡Ya tenemos nuestro servidor LTS listo!
Un par de cosas más
Vale, ya está funcionando, sí; pero podemos retocar algunas cosas más. Y es que enredando se aprende.
El archivo /opt/ltsp/i386/etc/lts.conf tiene las opciones de inicio del cliente. Para ver todas y algunos ejemplo se puede consultar /opt/ltsp/i386/etc/lts.conf.readme.
También se puede asignar a cada cliente una direccion IP individual que va ligada a su MAC-address. Para ello, se añade a la configuracion del dhcpd una entrada por cliente.
Edita el fichero /etc/ltsp/dhcpd.conf y añade una linea justo antes del default-lease-time que diga
ddns-update-style none;
Por ejemplo, supongamos que tenemos una estación de trabajo (WS01) con la direccion IP fija 192.168.0.77, la MAC-address 00:a1:2b:3c:4d:5e:
host WS01 {
option host-name "WS01";
filename "/lts/vmlinuz-2.6.17.8-ltsp-1";
next-server 192.168.3.93;
option root-path "192.168.0.205:/opt/ltsp/i386";
dynamic-bootp-lease-length 21600;
hardware ethernet 00:a1:2b:3c:4d:5e;
fixed-address 192.168.0.77;
}
Y en la seccion de group, asegurate de tener la siguiente linea:
ddns-update-style none;
Clientes
Si el equipo que va a hacer de cliente permite arrancar por red sólo hay que configurarlo así en la BIOS y ya está. Si no lo permite sólo tenemos que comprobar qué marca + modelo de tarjeta de red es, pasarnos por www.etherboot.org/db/, buscar nuestra marca, ver la lista de modelos soportados (Overview) y elegir la versión estable de la imagen de ROM de la tarjeta de red (Rom Image). Elegimos el formato de salida (Floppy bootable ROM image (.zdsk)), generamos la imagen y la grabamos en un disquete. Decimos, en la BIOS de nuestro equipo-cliente, que arranque desde disquete, y ya tenemos otro configurado.
Para hacer que un Futro (Fujitsu-Siemens) nos sirva como cliente de este servidor Linux deberemos entrar en la pestaña Configuration y poner los siguientes parámetros:
Name: el_que_queramos
Emulation Type: XDMCP
Server Addres: ip_del_servidor_LTS
Access: Direct
0 comentarios:
Publicar un comentario