GNU/Linux >> Tutoriales Linux >  >> Cent OS

Configuración básica de servidores y clientes de Master Cups para navegar en CentOS/RHEL 7

La intención de esta publicación es explicar cómo realizar la configuración básica del servidor CUPS y los clientes para buscar impresoras disponibles en la red cuando esto no funciona correctamente en CentOS/RHEL 7.

Configuración del servidor CUPS

1. Verifique que los paquetes de tazas estén instalados

# rpm -qa | grep cups
cups-client-1.6.3-35.el7.x86_64
cups-filesystem-1.6.3-35.el7.noarch
cups-filters-libs-1.0.35-22.el7.x86_64
cups-filters-1.0.35-22.el7.x86_64
cups-1.6.3-35.el7.x86_64
cups-libs-1.6.3-35.el7.x86_64
ghostscript-cups-9.07-28.el7_4.2.x86_64

si no está disponible en el sistema, instálelo:

# yum install cups
Installed:
cups.x86_64 1:1.6.3-35.el7

Dependency Installed:
avahi-glib.x86_64 0:0.6.31-19.el7 bc.x86_64 0:1.06.95-13.el7 cairo.x86_64 0:1.14.8-2.el7
cups-client.x86_64 1:1.6.3-35.el7 cups-filesystem.noarch 1:1.6.3-35.el7 cups-filters.x86_64 0:1.0.35-22.el7
cups-filters-libs.x86_64 0:1.0.35-22.el7 fontconfig.x86_64 0:2.10.95-11.el7 fontpackages-filesystem.noarch 0:1.44-8.el7
ghostscript.x86_64 0:9.07-28.el7_4.2 ghostscript-cups.x86_64 0:9.07-28.el7_4.2 ghostscript-fonts.noarch 0:5.50-32.el7
jbigkit-libs.x86_64 0:2.0-11.el7 lcms2.x86_64 0:2.6-3.el7 libICE.x86_64 0:1.0.9-9.el7
libSM.x86_64 0:1.2.2-2.el7 libX11.x86_64 0:1.6.5-1.el7 libX11-common.noarch 0:1.6.5-1.el7
libXau.x86_64 0:1.0.8-2.1.el7 libXdamage.x86_64 0:1.1.4-4.1.el7 libXext.x86_64 0:1.3.3-3.el7
libXfixes.x86_64 0:5.0.3-1.el7 libXfont.x86_64 0:1.5.2-1.el7 libXrender.x86_64 0:0.9.10-1.el7
libXt.x86_64 0:1.1.5-3.el7 libXxf86vm.x86_64 0:1.1.4-1.el7 liberation-fonts-common.noarch 1:1.07.2-16.el7
liberation-mono-fonts.noarch 1:1.07.2-16.el7 libfontenc.x86_64 0:1.1.3-3.el7 libjpeg-turbo.x86_64 0:1.2.90-5.el7
libpng.x86_64 2:1.5.13-7.el7_2 libtiff.x86_64 0:4.0.3-27.el7_3 libusbx.x86_64 0:1.0.21-1.el7
libwayland-client.x86_64 0:1.14.0-2.el7 libwayland-server.x86_64 0:1.14.0-2.el7 libxcb.x86_64 0:1.12-1.el7
libxshmfence.x86_64 0:1.2-1.el7 mesa-libEGL.x86_64 0:17.2.3-8.20171019.el7 mesa-libGL.x86_64 0:17.2.3-8.20171019.el7
mesa-libgbm.x86_64 0:17.2.3-8.20171019.el7 mesa-libglapi.x86_64 0:17.2.3-8.20171019.el7 openjpeg-libs.x86_64 0:1.5.1-17.el7
pixman.x86_64 0:0.34.0-1.el7 poppler.x86_64 0:0.26.5-17.el7_4 poppler-data.noarch 0:0.4.6-3.el7
poppler-utils.x86_64 0:0.26.5-17.el7_4 qpdf-libs.x86_64 0:5.0.1-3.el7 urw-fonts.noarch 0:2.4-16.el7
xorg-x11-font-utils.x86_64 1:7.5-20.el7

Complete!

2. Inicie cups y cups-browse services:

# systemctl enable cups
# systemctl start cups
# systemctl enable cups-browsed.service
# systemctl start cups-browsed.service

3. Edite el archivo de configuración de vasos “/etc/cups/cupsd.conf ” para permitir que otros servidores se conecten a impresoras en este servidor maestro. El siguiente es un archivo de configuración cups de un servidor CentOS/RHEL 7.

# grep -v '#' /etc/cups/cupsd.conf
MaxLogSize 0
LogLevel warn
Listen *:631
Listen /var/run/cups/cups.sock
Browsing On
BrowseLocalProtocols all
DefaultAuthType Basic
WebInterface Yes

<Location />
Order allow,deny
Allow all
</Location>

<Location /admin>
Order allow,deny
</Location>

<Location /admin/conf>
AuthType Default
Require user @SYSTEM
Order allow,deny
</Location>

<Policy default>
JobPrivateAccess default
JobPrivateValues default
SubscriptionPrivateAccess default
SubscriptionPrivateValues default

<Limit Create-Job Print-Job Print-URI Validate-Job>
Order deny,allow
</Limit>

<Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
Require user @OWNER @SYSTEM
Order deny,allow
</Limit>

<Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default CUPS-Get-Devices>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>

<Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>

<Limit Cancel-Job CUPS-Authenticate-Job>
Require user @OWNER @SYSTEM
Order deny,allow
</Limit>

<Limit All>
Order deny,allow
</Limit>
</Policy>

<Policy authenticated>
JobPrivateAccess default
JobPrivateValues default
SubscriptionPrivateAccess default
SubscriptionPrivateValues default

<Limit Create-Job Print-Job Print-URI Validate-Job>
AuthType Default
Order deny,allow
</Limit>

<Limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job Cancel-My-Jobs Close-Job CUPS-Move-Job CUPS-Get-Document>
AuthType Default
Require user @OWNER @SYSTEM
Order deny,allow
</Limit>

<Limit CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>

<Limit Pause-Printer Resume-Printer Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After Cancel-Jobs CUPS-Accept-Jobs CUPS-Reject-Jobs>
AuthType Default
Require user @SYSTEM
Order deny,allow
</Limit>

<Limit Cancel-Job CUPS-Authenticate-Job>
AuthType Default
Require user @OWNER @SYSTEM
Order deny,allow
</Limit>

<Limit All>
Order deny,allow
</Limit>
</Policy>

Para configurar CUPS para escuchar en todas las interfaces de red, cambie:

Listen localhost:631

a

Listen *:631

Para configurar tazas para escuchar en una interfaz de red específica, simplemente use la dirección IP en su lugar:

Listen 10.157.100.45:631

Para permitir clientes en la misma subred donde se encuentra el servidor maestro, agregue "Permitir @LOCAL ” al final de la estrofa :

<Location />
# Allow shared printing
Order allow,deny
Allow @LOCAL
</Location>

pero si necesitamos que todos los clientes accedan a este servidor maestro, use “Permitir todos ” en su lugar:

<Location />
# Allow shared printing
Order allow,deny
Allow all
</Location>

De forma predeterminada, el archivo de configuración de cups está configurado para enviar paquetes de difusión con información de uso compartido de la impresora, asegúrese de que exista el siguiente parámetro.

Browsing On
BrowseLocalProtocols cups dnssd

Si no es necesario, configúrelo en "Browsing Off “.

4. Inicie el servicio avahi-daemon. Si no está disponible, instálelo.

# yum -y install avahi
# systemctl enable avahi-daemon
# systemctl start avahi-daemon

Compruebe que el servidor ahora se está ejecutando correctamente

# systemctl status avahi-daemon
● avahi-daemon.service - Avahi mDNS/DNS-SD Stack
Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2018-07-24 13:15:02 EDT; 3 days ago
Main PID: 635 (avahi-daemon)
Status: "avahi-daemon 0.6.31 starting up."
CGroup: /system.slice/avahi-daemon.service
├─635 avahi-daemon: running [gerald-vmol7.local]
└─646 avahi-daemon: chroot helper

Jul 24 13:15:01 ol7-master avahi-daemon[635]: Registering HINFO record with values 'X86_64'/'LINUX'.
Jul 24 13:15:01 ol7-master avahi-daemon[635]: Server startup complete. Host name is gerald-vmol7.local. Local service cookie is 3732296456.
Jul 24 13:15:02 ol7-master systemd[1]: Started Avahi mDNS/DNS-SD Stack.
Jul 24 13:15:07 ol7-master avahi-daemon[635]: Joining mDNS multicast group on interface eth0.IPv4 with address 10.157.10.122.
Jul 24 13:15:07 ol7-master avahi-daemon[635]: New relevant interface eth0.IPv4 for mDNS.
Jul 24 13:15:07 ol7-master avahi-daemon[635]: Registering new address record for 10.157.10.122 on eth0.IPv4.
Jul 24 13:15:09 ol7-master avahi-daemon[635]: Registering new address record for fe80::221:f6ff:feb0:3f6e on eth0.*.
Jul 24 13:15:13 ol7-master avahi-daemon[635]: Joining mDNS multicast group on interface virbr0.IPv4 with address 192.168.122.1.
Jul 24 13:15:13 ol7-master avahi-daemon[635]: New relevant interface virbr0.IPv4 for mDNS.
Jul 24 13:15:13 ol7-master avahi-daemon[635]: Registering new address record for 192.168.122.1 on virbr0.IPv4.

5. Inicie el servicio de cups-browse.

# systemctl enable cups-browsed
Created symlink from /etc/systemd/system/multi-user.target.wants/cups-browsed.service to /usr/lib/systemd/system/cups-browsed.service.
# systemctl start cups-browsed
Check that the service is now runnning
# systemctl status cups-browsed
● cups-browsed.service - Make remote CUPS printers available locally
Loaded: loaded (/usr/lib/systemd/system/cups-browsed.service; enabled; vendor preset: disabled)
Active: active (running) since Fri 2018-07-27 15:20:03 EDT; 2s ago
Main PID: 14388 (cups-browsed)
CGroup: /system.slice/cups-browsed.service
└─14388 /usr/sbin/cups-browsed 

Jul 27 15:20:03 ol7-master systemd[1]: Started Make remote CUPS printers available locally.
Jul 27 15:20:03 ol7-master systemd[1]: Starting Make remote CUPS printers available locally...

6. Inicie el servicio de vasos.

# systemctl start cups
 Check that the service is now running
# systemctl status cups
● cups.service - CUPS Printing Service
Loaded: loaded (/usr/lib/systemd/system/cups.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2018-07-27 15:20:03 EDT; 33s ago
Main PID: 14387 (cupsd)
CGroup: /system.slice/cups.service
└─14387 /usr/sbin/cupsd -f

Jul 27 15:20:03 ol7-master systemd[1]: Started CUPS Printing Service.
Jul 27 15:20:03 ol7-master systemd[1]: Starting CUPS Printing Service...

7. Configure el firewall para permitir el acceso externo a los puertos 631 y 5353 o deténgalo.

Para agregar regla:

# iptables -A OUTPUT -p tcp -m tcp --dport 631 -j ACCEPT
# iptables -A INPUT -p tcp --dport 631 -j ACCEPT
# iptables -A OUTPUT -p tcp -m tcp --dport 5353 -j ACCEPT
# iptables -A INPUT -p tcp --dport 5353 -j ACCEPT

Para detener el cortafuegos:

# systemctl stop firewalld
# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
Docs: man:firewalld(1)

Jul 30 12:49:58 ol7-master systemd[1]: Starting firewalld - dynamic firewall daemon...
Jul 30 12:49:59 ol7-master systemd[1]: Started firewalld - dynamic firewall daemon.
Jul 30 12:54:48 ol7-master systemd[1]: Stopping firewalld - dynamic firewall daemon...
Jul 30 12:54:49 ol7-master systemd[1]: Stopped firewalld - dynamic firewall daemon.

8. Agregue la impresora a través de la interfaz web de CUPS en el servidor maestro:

Abra un navegador web, ingrese la URI en el siguiente formato "https://localhost:631/" y vaya a Administración pestaña. En su lugar, se puede usar la IP o el nombre de host del servidor de Master cups.

En la pestaña Administración, elija 'Agregar una nueva impresora' y luego seleccione Otras impresoras de red:Protocolo de impresión de Internet (http) utilizado en nuestro caso de prueba. Luego presiona Continuar.

Ingrese el URI del dispositivo en el cuadro Conexión, como en el ejemplo a continuación y luego presione Continuar.

Donde “10.157.138.57” es la IP de la impresora en red y 631 el puerto que usan las tazas para establecer la conexión. Ingrese la información correspondiente requerida sobre la impresora como en el ejemplo a continuación y haga clic en Continuar.

En la página siguiente, seleccione el proveedor de la impresora o el archivo PPD (Descripción de impresora Postscript) si es necesario y presione Agregar impresora

Finalice la configuración de la impresora con los ajustes respectivos.

9. Ahora verifique que la impresora se detecte en el servidor Master cups

# lpstat -t
scheduler is running
no system default destination
device for TestPrinter08-SP5210SR: http://10.157.138.57:631/ipp/
device for TestPrinter09-SP5210SR: http://10.157.138.61:631/ipp/
TestPrinter08-SP5210SR accepting requests since Mon 30 Jul 2018 12:46:47 PM EDT
TestPrinter09-SP5210SR accepting requests since Mon 03 Sep 2018 03:53:53 PM EDT
printer TestPrinter08-SP5210SR is idle. enabled since Mon 30 Jul 2018 12:46:47 PM EDT
printer TestPrinter09-SP5210SR is idle. enabled since Mon 03 Sep 2018 03:53:53 PM EDT

Observe nuestra impresora agregada recientemente y la impresora anterior descubierta en el pasado

TestPrinter08-SP5210SR accepting requests since Mon 30 Jul 2018 12:46:47 PM EDT
TestPrinter09-SP5210SR accepting requests since Mon 03 Sep 2018 03:53:53 PM EDT

Configuración del cliente CUPS

1. Verifique que los paquetes de tazas estén instalados

# rpm -qa | grep cups
cups-libs-1.6.3-35.el7.x86_64

Si no está instalado proceder a instalar el paquete

# yum install cups-1.6.3-35
Installed:
cups.x86_64 1:1.6.3-35.el7

Dependency Installed:
avahi-glib.x86_64 0:0.6.31-19.el7 bc.x86_64 0:1.06.95-13.el7 cairo.x86_64 0:1.14.8-2.el7
cups-client.x86_64 1:1.6.3-35.el7 cups-filesystem.noarch 1:1.6.3-35.el7 cups-filters.x86_64 0:1.0.35-22.el7
cups-filters-libs.x86_64 0:1.0.35-22.el7 fontconfig.x86_64 0:2.10.95-11.el7 fontpackages-filesystem.noarch 0:1.44-8.el7
ghostscript.x86_64 0:9.07-28.el7_4.2 ghostscript-cups.x86_64 0:9.07-28.el7_4.2 ghostscript-fonts.noarch 0:5.50-32.el7
jbigkit-libs.x86_64 0:2.0-11.el7 lcms2.x86_64 0:2.6-3.el7 libICE.x86_64 0:1.0.9-9.el7
libSM.x86_64 0:1.2.2-2.el7 libX11.x86_64 0:1.6.5-1.el7 libX11-common.noarch 0:1.6.5-1.el7
libXau.x86_64 0:1.0.8-2.1.el7 libXdamage.x86_64 0:1.1.4-4.1.el7 libXext.x86_64 0:1.3.3-3.el7
libXfixes.x86_64 0:5.0.3-1.el7 libXfont.x86_64 0:1.5.2-1.el7 libXrender.x86_64 0:0.9.10-1.el7
libXt.x86_64 0:1.1.5-3.el7 libXxf86vm.x86_64 0:1.1.4-1.el7 liberation-fonts-common.noarch 1:1.07.2-16.el7
liberation-mono-fonts.noarch 1:1.07.2-16.el7 libfontenc.x86_64 0:1.1.3-3.el7 libjpeg-turbo.x86_64 0:1.2.90-5.el7
libpng.x86_64 2:1.5.13-7.el7_2 libtiff.x86_64 0:4.0.3-27.el7_3 libusbx.x86_64 0:1.0.21-1.el7
libwayland-client.x86_64 0:1.14.0-2.el7 libwayland-server.x86_64 0:1.14.0-2.el7 libxcb.x86_64 0:1.12-1.el7
libxshmfence.x86_64 0:1.2-1.el7 mesa-libEGL.x86_64 0:17.2.3-8.20171019.el7 mesa-libGL.x86_64 0:17.2.3-8.20171019.el7
mesa-libgbm.x86_64 0:17.2.3-8.20171019.el7 mesa-libglapi.x86_64 0:17.2.3-8.20171019.el7 openjpeg-libs.x86_64 0:1.5.1-17.el7
pixman.x86_64 0:0.34.0-1.el7 poppler.x86_64 0:0.26.5-17.el7_4 poppler-data.noarch 0:0.4.6-3.el7
poppler-utils.x86_64 0:0.26.5-17.el7_4 qpdf-libs.x86_64 0:5.0.1-3.el7 urw-fonts.noarch 0:2.4-16.el7
xorg-x11-font-utils.x86_64 1:7.5-20.el7

Complete!

2. Edite el archivo de configuración /etc/cups/cups-browsed.conf y agregue las directivas de configuración requeridas, algunas de las siguientes son las disponibles:

BrowsePoll
BrowseAllow
BrowseLocalProtocols
BrowseRemoteProtocols
BrowseProtocols

Antes de CentOS/RHEL 7, estas directivas se usaban en /etc/cups/cupsd.conf pero en CentOS/RHEL 7 y más reciente, estos ya no funcionan en él, sino en el archivo /etc/cups/cups-browsed.conf . Para obtener más información acerca de las directivas disponibles, utilice las páginas man de cups-browsed.conf, “# man cups-browsed.conf”.

# vi /etc/cups/cups-browsed.conf
<<< IN THIS TEST WE JUST ADDED BrowseAllow 10.157.10.122 IN WHICH THE IP IS OUR CUPS SERVER >>>
# cat /etc/cups/cups-browsed.conf | grep -v '#'  
BrowseRemoteProtocols dnssd cups
BrowseAllow 10.157.10.122

3. Iniciar el servicio de vasos

# systemctl enable cups.service
# systemctl start cups.service

4. Inicie el servicio avahi-daemon. Si no está disponible, instálelo:

# yum -y install avahi
# systemctl enable avahi-daemon
# systemctl start avahi-daemon

5. Inicie el servicio de cups-browse

# systemctl enable cups-browsed
# systemctl start cups-browsed

6. Use el comando lpstat para probar que la navegación funciona como se esperaba:

# lpstat -t
scheduler is running
no system default destination
device for TestPrinter08-SP5210SR: ipps://ol7-master.local:631/printers/TestPrinter08-SP5210SR
device for TestPrinter09-SP5210SR: ipps://ol7-master.local:631/printers/TestPrinter09-SP5210SR
TestPrinter08-SP5210SR accepting requests since Mon 03 Sep 2018 04:19:49 PM EDT
TestPrinter09-SP5210SR accepting requests since Mon 03 Sep 2018 04:19:49 PM EDT
printer TestPrinter08-SP5210SR is idle. enabled since Mon 03 Sep 2018 04:19:49 PM EDT
printer TestPrinter09-SP5210SR is idle. enabled since Mon 03 Sep 2018 04:19:49 PM EDT

o

# lpstat -v
device for TestPrinter08-SP5210SR: ipps://ol7-master.local:631/printers/TestPrinter08-SP5210SR
device for TestPrinter09-SP5210SR: ipps://ol7-master.local:631/printers/TestPrinter09-SP5210SR

Para obtener más información sobre lpstat, consulte las páginas man, “# man lpstat”. Ahora sus servidores maestro y cliente CUPS están configurados y listos para usar.


Cent OS
  1. Instalar y configurar HAProxy en RHEL 8 / CentOS 8 Linux

  2. Instalar y configurar el servidor FTP en CentOS 7 / RHEL 7 – (vsftpfd)

  3. Configuración paso a paso del servidor OpenLDAP en CentOS 7 / RHEL 7

  4. CentOS/RHEL 7:Configuración de un servidor NFS y un cliente NFS

  5. Cómo configurar servidor y cliente NTP en CentOS/RHEL 7

Cómo registrar clientes con SpaceWalk Server – CentOS / RHEL

Instalar y configurar Puppet en CentOS 7 / RHEL 7

Configure el servidor Samba en CentOS 8/RHEL 8 para compartir archivos

Cómo instalar Varnish Cache para Apache en CentOS/RHEL 8

Cómo realizar la configuración básica inicial de WHM y cPanel en CentOS 7.x

Cómo instalar y configurar el servidor VNC en CentOS/RHEL 8