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.
Para la ejecución del servidor podemos hacerlo como demonio
independiente (autorizándolo en
/etc/default/sane,
o bien con inetd/xinetd
En
inetd.conf debemos
añadir la siguiente línea:
sane stream tcp nowait usuario:grupo /usr/sbin/saned saned
Donde usuario.grupo debe ser un usuario/grupo que
puedan acceder al scanner. Se recomienda no usar root debido a los
riesgos de seguridad que puede suponer.
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 modo local)
En los clientes debemos añadir la ip del servidor de scanner en
el fichero
/etc/sane.d/net.conf y
además 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.
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.
Multifunción Brother
En caso de disponer de una multifunción Brother, en nuestro caso
la MFC-9120, CUPS debería encontrarla automáticamente gracias a DNSSD
(DNS Service Discovery), No obstante, si no tenemos instalado el
paquete "
libavahi-compat-libdnssd1"
puede que a la hora de imprimir nos diga que la URI de la impresora no
existe. Por otra parte podemos descargar el ppd oficial de la web
de
Brother. (Hay una copia disponible
aqui), aunque los paquetes de controladores de CUPS también incorporan un controlador para este modelo.
En cuanto a la funcionalidad de escáner, aunque lo más cómodo es
escanear via red desde la propia multifunción, ya que nos permite
depositar los documento escaneados en una carpeta Samba o un servidor
FTP, si queremos escanear mediante sane debemos descargar desde la web
de Brother e instalar "
brsaneconfig", y además
"brscan-skey" si queremos escanear directamente con el botón que tiene el aparato, en lugar de iniciar el software de escaneado desde el PC
brsaneconfig: Tan solo debemos ejecutar lo siguiente, ajustando los parámetros para que sane reconozca el escáner:
brsaneconfig3 -a name=Brother del=MFC-9120CN ip=192.168.0.123
brscan-skey: Debemos ejecutarlo durante el arranque del las X. Debe ejecutarse con el usuario que vaya a utilizar el equipo.