Archivo

Entradas Etiquetadas ‘Dapper’

Servidor de impresión

Domingo, 25 de Marzo de 2007 kaferemo 2 comentarios

Esto pretende ser un pequeño manual de instalación de un servidor de impresión bajo Linux para clientes Windows. Nos olvidaremos de usuarios y contraseñas; quizás en próximas entregas me ponga a analizár cómo controlar usuarios y contraseñas, pero por ahora con esto me es suficiente.

Escojo, una vez más, como distribución base, Ubuntu 6.06. La administración de impresión se va a realizar con CUPS, y para configurar Samba usaré Webmin.

Es algo muy sencillo, tan sólo tenemos que instalar las impresoras en nuestro equipo y, después, compartirlas. Vamos por partes.

1.- Instalación de CUPS.
Instalar, a través de Synaptic, el paquete cupsys.

Sistema -> Administración -> Buscar: cupsys -> Marcar para instalar -> Aplicar

Ahora debemos añadir cada una de las impresoras a las que queremos acceder desde nuestro sistema. Podemos añadirlas desde el menú Administración o desde CUPS. Voy a poner un ejemplo de cada y, a pesar de que pueda ser repetitivo, la impresora a añadir será una impresora de red porque entiendo que será lo que habitualmente queramos hacer. Entiendo, también, que la impresora que vamos a añadir tiene una tarjeta de red (o servidor de red) con una ip ya establecida y perfectamente configurada. Si, por el contrario, la impresora es local (USB, paralelo o serie) lo único que hay que hacer es cambiar el tipo de conexión, el resto es exactamente igual.

2.- Añadir una impresora (desde el menú Administración).
Sistema → Administración → Impresoras

Hacemos doble clic (¿puedo escribir “doble clic”? ¿no está registrado?) en el icono Impresora nueva y…

Paso 1/3. Conexión.
Tipo de impresora → Impresora de red → HP JetDirect
Equipo → ip_de_la_impresora (Ej.: 192.168.1.122)
Puerto → 9100

Paso 2/3. Controlador.
Elegir Fabricante y modelo o seleccionar el archivo .ppd descargado del sitio correspondiente (web del fabricante u http://openprinting.org/printer_list.cgi) usando el botón Instalar controlador.

Paso 3/3. Información.
Nombre: ¡Importante! Es el nombre con el que se va a compartir la impresora. Sin espacios, ni acentos, ni caracteres extendidos.
Descripción: Sé original (opcional).
Ubicación: Aunque también es opcional, viene muy bien rellenas este campo, sobre todo si tienes varias impresoras situadas en distintos lugares.

3.- Añadir una impresora (a través de CUPS).

1. Abrir ventana de navegador y acceder a CUPS teclando http://localhost:631

2. Pulsar el botón Añadir impresora.

3. Rellenar los campos (el Nombre será con el que se comparta) solicitados.

4. Para imprimir a través de su IP hay que utilizar el protocolo AppSocket/HP JetDirect y escribir:
socket://dirección_IP:9100

5. Seleccionar la marca y el modelo, o le proporcionamos el archivo .ppd descargado del sitio correspondiente (web del fabricante u http://openprinting.org/printer_list.cgi)

4.- Compartir las impresoras. Samba.
Ahora tenemos que compartir nuestra impresora. Lo vamos a hacer con Samba.

Para eso, lo primero que tenemos que hacer es instalar el paquete samba (Sistema -> Administración -> Gestor de paquetes Synaptic).

Y para configurarlo podríamos editar el fichero /etc/samba/smb.conf a mano, pero me es más cómodo utilizar Webmin. (Sí, ya lo he dicho alguna vez: “Me hago mayor”.) Así que…

5.- Instalación de Webmin.
Nos descargamos el paquete Webmin para administrar el módulo Samba, que es el que nos va a permitir compartir las impresoras instaladas, entre otras cosas.

Descargamos el .deb. Y doble click para instalar (o, desde la línea de comandos, sudo dpkg -i nombre_del_paquete.deb). En este punto (yo lo he hecho desde la línea de comandos) me faltaban varios paquetes (varias dependencias), para instalarlas he seguido las instrucciones de pantalla (sudo apt-get install -f) y se ha instalado todo.

Una vez instalado, accedemos a Webmin a través del navegador, con la dirección https://localhost:10000.

En la parte izquierda tenemos el menú. Y para empezar a configurar nos dirigimos a Servers → Samba.

Los pantallazos aclaran mucho, sí, pero ahora hay que cambiar varios valores en varias pantallas distintas y como sería demasiado largo hacerlo en modo gráfico y me parece que queda suficientemente claro si lo hago sólo con texto… así lo haré. Veremos.

Configuraciones globales para un uso sencillo de Samba, sin usuarios ni contraseñas.
Windows Networking → Workgroup → Nombre_grupo_trabajo / Dominio (en el que estamos trabajando)
Windows Networking → Security → Share Level

Para un uso de ficheros Windows-Linux transparente utilizamos la cuenta de invitado. Así:
Authentication → Allow null passwords → Yes
Windows to Unix Printing → Unix Print Style → CUPS
File Share Defaults → Security and Access Control → Writable → Yes
File Share Defaults → Security and Access Control → Guest Access → Yes
File Share Defaults → Security and Access Control → Guest Unix user → nobody
Printer Share Defaults → Available, Browseable
Printer Share Defaults → Printer Options → Print command → lpr -oraw -r -P%p %s

Añadimos la impresora que vamos a compartir (la que hemos creado antes con CUPS o desde el menú Administración). ¿Cómo la compartimos?
Create a new printer share
Impresora_creada → Security and Access Control → Writable -> Yes
Impresora_creada → Security and Access Control → Guest access → Yes

Nota: En /usr/share/ppd se almacenan los drivers de las impresoras. Ahí dejaremos, entonces, los drivers CUPS que nos descarguemos para las impresoras para las que no tengamos drivers ya instalados. (Esto lo leí en alguna parte y por eso lo dejo por aquí pero, por ahora, a mí no me funciona.)

Categories: Manuales Tags: , , , , ,

Instalación de LTSP

Jueves, 8 de Febrero de 2007 kaferemo Sin comentarios

LTSP es el acrónimo de Linux Terminal Server Proyect.

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 640×480. ¡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

Categories: Manuales Tags: , , ,