Servidor
de impresoras
El servidor de impresoras que instalé fue
Cups (Common Unix Print System).
Tiene un
interfaz vía web en el puerto 631, aunque también se
puede configuar via webmin. Por defecto sólo se deja administrar
desde la ip local (127.0.0.1), pero añadiendo un par de cosas en
cupsd.conf, se puede configurar para acceder desde otros equipos.
<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
#Añadimos nuestra red (192.168.0.0/24) para poder acceder desde
cualquier equipo
Allow From 192.168.0.*
</Location>
## Restrict access to local domain
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 192.168.0.*
La administración de cups es
realmente sencilla, nada mas que ir a la web (http://127.0.0.1:631) y
añadir la impresora. En nuestro caso teníamos una Oki
laser, y una Epson Stylus CX 3200 (multifunción de tinta). La
Oki
funcionó perfectamente con el driver HP Laserjet,
(también funciona con el "CUPS+GIMP-print v4.2.0" del paquete
cupsys-gimp-print) pero la Epson
no funcionaba con ninguno de los drivers que vienen habitualmente con
Debian Woody (que son muy escasos). Buscando por google encontré
un
driver
que le sirvió. Instalé el paquete cupsys-gimp-print, y
aunque en la web dicen que funciona con el driver de la Epson Stylus
C62, yo usé el de la C60 ya que no tenía el de la C62.
Todo funcionó correctamente.
Instalé clientes cups en los equipos de la
red, y configuré las impresoras remotas. p.ej
http://zeus.local.gadelek.com:631/printers/oki
es la url para la laser. Desde Windows 2000 y Xp funciona todo sin
problemas. En Windows 9x necesitamos instalar este
driver. Para añadir la
impresora debemos seleccionar impresora en red, y en el cuadro de texto
pondremos la URL completa de la impresora (si intentamos buscar por la
red solo aparecerán las impresoras samba)
Desde equipos linux con programas que no soporten impresión via
cups (p.ej: opera), instalé el paquete de compatibilidad
cupsys-bsd, y
configuré la impresora en
/etc/printcap
de la siguiente manera:
#
Impresoras en red vía cups.
Epson|:rm=192.168.0.2:rp=Epson:
Oki|Oki:rm=192.168.0.2:rp=Oki:
Con esta página podemos administrar fácilmente un
servidor de impresión y scanner. Borrar colas y apagar el equipo.
Servidor de Scanner
La idea era poder tener un scanner en un equipo, y
poder scannear desde otros equipos sin mover el scanner de sitio. Esto
se consigue con
sane. (scanner access now easy).
Instalamos sane en el servidor, y xsane en los clientes. En el servidor
descomentamos la línea
"net"
en
/etc/sane.d/dll.conf, y
añadimos los hosts permitidos en saned.conf. Deben poder
resolverse los nombres de dominio. Yo opté por añadir los
hosts que quería que scanearan en
/etc/hosts del servidor.
En
inetd.conf debemos
añadir la siguiente línea:
sane stream tcp nowait usuario:grupo /usr/sbin/saned saned
Actualización: En versiones nuevas de sane, solo se especifica
el usuario, sin grupo
Donde usuario.grupo debe ser un usuario/grupo que
puedan acceder al scanner. Se recomienda no usar root debido a graves
riesgos de seguridad (según la documentación de sane).
Si usas xinetd, en la documentación de sane dice qué
líneas hay que añadir para que funcione.
Añadimos en
/etc/services
sane 6566/tcp # SANE network scanner daemon
Hasta aquí queda configurado el servidor de scanner (siempre que
el scanner ya funcionara en local)
En los clientes debemos añadir la ip del servidor de scanner en
el fichero
/etc/sane.d/net.conf
Debemos editar /etc/sane.d/dll.conf y descomentar la línea
#net
Por último solo queda ejecutar xsane en los clientes, y
debería reconocernos el scanner y permitir su uso sin problemas.
Un problema que tuve fue que al intentar
adquirir vista previa con el
scanner aun frio, se me cuelga xsane y tengo que reiniciar el equipo
para poder scanear.
En clientes con windows podemos scanear también con
sanetwain.
Para administrar el servidor de forma sencilla hemos desarollado una
pequeña página php que facilita la tarea. Hay que revisar
el código ya que hace referencia a scripts y ejecutables en
rutas absolutas. Además tenemos que dar permisos mediante sudo
para ejecutar estos comandos.
Aquí
están los scripts.