15.3. Modificaciones en la configuración del sistema

Para conseguir integrar CUPS en el sistema, tal y como se ha configurado hasta el momento, es necesario realizar algunas modificaciones, que se muestran en las siguientes secciones.

15.3.1. Modificaciones de PAM

Se ha de añadir al sistema de autentificación de CUPS, la posibilidad de utilizar usuarios almacenados en la base de datos de LDAP. Esto se realiza en el archivo /etc/pam.d/cupsys. Si se echa un vistazo a su contenido, se comprobará que no es necesario realizar ninguna modificación al mismo, ya que en la Sección 5.3.3, “Configuración de PAM se han realizado todas las modificaciones necesarias.

@include common-auth
@include common-account
@include common-session

15.3.2. Modificaciones en Samba

Es necesario realizar una pequeña revisión en la configuración de Samba, los cambios se muestran a continuación:

Ejemplo 15.2. Diferencia entre la configuración de Samba antes y después de instalar CUPS

$ /usr/bin/diff -u /etc/samba/smb.conf-antes /etc/samba/smb.conf
--- /etc/samba/smb.conf-antes     2004-06-15 16:17:19.000000000 +0100
+++ /etc/samba/smb.conf    2004-06-15 16:15:48.000000000 +0100
@@ -188,7 +188,7 @@
 # When using [print$], root is implicitly a 'printer admin', but you can
 # also give this right to other users to add drivers and set printer
 # properties
-   printer admin = @domainadmins
+   printer admin = @domainprintoperator 1


 ######## File sharing ########
@@ -327,13 +327,15 @@

 [printers]
    comment = All Printers
-   path = /tmp
+   path = /var/spool/samba 2
    browseable = no
    public = yes
    guest ok = no
    writable = no
    printable = yes
    create mask = 0700
+   use client driver = no 3
+   printer admin = root, @domainprintoperator 4

 # Windows clients look for this share name as a source of downloadable
 # printer drivers
@@ -343,7 +345,7 @@
    browseable = yes
    guest ok = no
    read only = yes
-   write list = root, @domainadmins
+   write list = root, @domainprintoperator 5

 [tmp]
    comment = Temporal
2

Se modifica la ruta de la cola de impresión de Samba. Este es un cambio puramente estético.

Si no existe el directorio de la cola de impresión para Samba, se tendrá que crear en este momento.

[Aviso]Aviso

Tenga especial cuidado con los permisos que le asigna al directorio /var/spool/samba; tenga en cuenta, que todo usuario que quiera imprimir en una impresora compartida por Samba, ha de tener permisos de escritura en dicho directorio.

En este caso, el directorio tiene los siguientes permisos:

$ /bin/ls -ld /var/spool/samba
drwxrws---  2 root domainpoweruser 48 2004-10-09 20:28 /var/spool/samba

Note que se ha utilizado el grupo domainpoweruser, grupo al que han de pertenecer aquellos usuarios que quieran imprimir vía Samba.

3

Para saber más acerca de esta opción, se recomienda la lectura de la sección “Raw Print Serving Vendor Drivers on Windows Clients” y “How to Recognize If cupsaddsmb Completed Successfully” del capítulo 18 (CUPS Printing Support) de la entrada bibliográfica VernooijTerpstraCarter01; así como la página del manual smb.conf(5).

El valor de esta opción dependerá del comportamiento de su sistema.

1 4 5

En el Grupos adicionales para Samba se propone la opción de añadir los grupos de usuarios listados en el archivo template_config.php de la aplicación phpLDAPadmin. Esos grupos ya existen en el sistema empleado para la elaboración de esta documentación, por lo que se hará uso de ellos.

Se selecciona el grupo más adecuado, “domainprintoperator”, para la administración de las impresoras.

Una vez modificada la configuración de Samba, este servidor ha de releer su configuración. En el Ejemplo 11.2, “Releyendo la configuración de Samba” se muestra como hacerlo.

15.3.3. Modificaciones relativas a CUPS

[Nota]Nota

Para realizar esta sección se ha consultado, principalmente, la entrada bibliográfica CUPS02.

15.3.3.1. Archivo /etc/cups/client.conf

En este archivo se descomentarán dos líneas, la primera hace referencia al servidor donde está instalado CUPS y la segunda al uso o no de cifrado:

ServerName gsr.pt 1
Encryption Required 2
1

Se especifica donde está alojado el servidor CUPS.

2

Se hace uso del cifrado TLS en las comunicaciones.

[Nota]Nota

En el Apéndice AE, Archivo de configuración /etc/cups/client.conf tiene un ejemplo completo de este archivo de configuración.

15.3.3.2. Archivo /etc/cups/cupsd.conf

El archivo de configuración cupsd.conf está estructurado en secciones, por este motivo, las opciones de configuración más importantes se irán mostrando en sucesivas secciones, que se corresponderán con las secciones del archivo tratado.

[Nota]Nota

En el Apéndice AF, Archivo de configuración /etc/cups/cupsd.conf tiene un ejemplo completo de este archivo de configuración.

15.3.3.2.1. Server Identity
ServerName gsr.pt 1
ServerAdmin sergio@gsr.pt 2
1

Nombre del servidor donde está alojado CUPS.

2

Dirección de correo del administrador de impresión.

15.3.3.2.2. Encryption Support

Se han utilizado los mismos certificados creados en la Sección 4.2.2, “Certificado emitido por una CA, por este motivo se ha copiado el directorio /etc/ldap/ssl/ a /etc/cups.

Ejemplo 15.3. Copiando el contenido del directorio /etc/ldap/ssl/ a /etc/cups

# /bin/cp -va /etc/ldap/ssl/ /etc/cups/
«/etc/ldap/ssl/» -> «/etc/cups/ssl»
«/etc/ldap/ssl/crl» -> «/etc/cups/ssl/crl»
«/etc/ldap/ssl/certs» -> «/etc/cups/ssl/certs»
«/etc/ldap/ssl/certs/servidorcert.pem» -> «/etc/cups/ssl/certs/servidorcert.pem»
«/etc/ldap/ssl/index.txt.old» -> «/etc/cups/ssl/index.txt.old»
«/etc/ldap/ssl/index.txt» -> «/etc/cups/ssl/index.txt»
«/etc/ldap/ssl/serial.old» -> «/etc/cups/ssl/serial.old»
«/etc/ldap/ssl/serial» -> «/etc/cups/ssl/serial»
«/etc/ldap/ssl/newcerts» -> «/etc/cups/ssl/newcerts»
«/etc/ldap/ssl/newcerts/01.pem» -> «/etc/cups/ssl/newcerts/01.pem»
«/etc/ldap/ssl/cacert.pem» -> «/etc/cups/ssl/cacert.pem»
«/etc/ldap/ssl/index.txt.attr» -> «/etc/cups/ssl/index.txt.attr»
«/etc/ldap/ssl/private» -> «/etc/cups/ssl/private»
«/etc/ldap/ssl/private/cakey.pem» -> «/etc/cups/ssl/private/cakey.pem»
«/etc/ldap/ssl/private/servidorkey.pem» -> «/etc/cups/ssl/private/servidorkey.pem»
# /bin/chown root.lpadmin -vR /etc/cups/ssl
cambiado el propietario de «/etc/cups/ssl» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/crl» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/certs» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/certs/servidorcert.pem» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/index.txt.old» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/index.txt» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/serial.old» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/serial» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/newcerts» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/newcerts/01.pem» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/cacert.pem» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/index.txt.attr» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/private» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/private/cakey.pem» a root:lpadmin
cambiado el propietario de «/etc/cups/ssl/private/servidorkey.pem» a root:lpadmin

Las opciones de configuración, por tanto, quedarían de la siguiente forma:

ServerCertificate /etc/cups/ssl/certs/servidorcert.pem
ServerKey /etc/cups/ssl/private/servidorkey.pem
15.3.3.2.3. Network Options

Se especifica donde ha de escuchar el servidor CUPS y en que puertos:

Listen gsr.pt:631 1
SSLListen gsr.pt:6443 2
1

Puerto por defecto, destinado a las conexiones sin cifrado.

2

Puerto destinado a las conexiones con cifrado. Si su sistema no posee el puerto 443 ocupado, sería recomendable utilizarlo.

15.3.3.2.4. Security Options

La única modificación que se realizará en esta sección, será obligar a aquellos directorios que precisan autentificación para su acceso, a hacer uso de cifrado. Para ello se utilizará la directiva Encryption Required.

<Location /jobs>

    AuthType Basic
    AuthClass User

    Encryption Required

</Location>

<Location /admin>

    AuthType Basic
    AuthClass System

    Order Deny,Allow
    Deny From All
    Allow From 127.0.0.1

    Encryption Required

</Location>

15.3.3.3. Reinicio del servidor CUPS

Una vez se ha finalizado la configuración de CUPS, se ha de reiniciar el servidor, para que relea su configuración:

Ejemplo 15.4. Reinicio del servidor CUPS

# /etc/init.d/cupsys restart
Restarting printing system service: cupsd.