Cómo montar un servidor de impresión en Linux para Windows prescindiendo de Samba

Según mi experiencia, Samba me ha traído problemas ya que me parece un servicio imprevisible, donde a veces funciona y a veces no. Por el otro lado, el hecho de usar samba no me gusta porque hace cosas raras como compartir o dar servicio a todo Dios.

Por ello investuigué un poco y vi que CUPS usa un protocolo llamado IPP (Internet Printing Protocol). Con ese nombre lógicamente no debería haber problema.

Situación

  1. Un ordenador con procesador AMD Duron a 800 MHz y 768 MB de RAM. Está conectado a una impresora laser modelo Brother HL-1430 mediante cable USB. Como sistema operativo tiene GNU/Linux Debian Sid y kernel 2.6.11.11. Dirección IP: 192.168.0.2
  2. Ordenador portátil con Windows XP en una partición y GNU/Linux Debian Sid con kernel 2.6.11.11 en otra partición. Dirección IP: 192.168.0.4

Configuración

Por la parte del servidor en Linux:

  1. Doy por supuesto que sabemos instalar CUPS y una impresora en CUPS, así que no entraré en este apartado.
  2. El modo en que CUPS da servicio de impresión a Windows lo hace a partir de una clase de impresora. Para crear una clase de impresora, hay que hacerlo a partir de una impresorareal previamente instalada. Para este ejemplo, le daremos el nombre de remota. La podía haber llamado de otra forma, pero lo dejo a elección del lector.
  3. Ahora toca modificar el fichero /etc/cupsd.conf en la sección . Originalmente sólo permite la impresión para localhost:

    <Location />
    Order Deny,Allow
    Deny From All
    Allow From 127.0.0.1
    </Location>

    Como lo que queremos es permitir la impresión a los ordenadores de nuestra red local, modificamos dicha sección de la siguiente forma:

    <Location />
    Order Deny,Allow
    Deny From All
    Allow From 127.0.0.1
    Allow From 192.168.0.*
    </Location>
     
  4. Reiniciamos el servicio./etc/init.d/cupsys restart

Por parte del cliente en Windows:

  1. Instalamos una impresora en red. Cuando nos pida la localización de la impresora, se lo indicaremos así:http://192.168.0.2:631/printers/remota

    Automáticamente ya tenemos acceso a la impresora de tipo clase.

  2. Sugerencia: si resulta pesado poner la dirección IP del servidor, siempre se puede poner una entrada en C:\WINNT\SYSTEM32\DRIVERS\ETC\HOSTS:192.168.0.2 servidor

    y entonces, apuntamos a la impresora así:

    http://servidor:631/printers/remota

Cuestiones pendientes

  1. Sólo lo he probado con Windows XP, así que no debería haber problema con Windows 2000. Mi duda es saber si también funcionará con Windows 98 o Millenium.
  2. Para imprimir en remoto en un Linux, no hace apuntar a la clase como en Windows. Directamente a la impresora “real”.

Con esto, ya no necesitamos samba para compartir impresoras. A disfrutarlo.

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s