Activitats

Instal·lació, gestió i configuració de la impressora virtual PDF

L’objectiu d’aquesta activitat és instal·lar la impressora virtual de documents PDF i familiaritzar-se amb els arxius i aplicacions implicats en la configuració d’impressores en l’entorn CUPS. Per fer aquesta tasca es demanen les activitats següents:

  1. Instal·lar a CUPS la impressora virtual de documents PDF.
  2. Comprovar mitjançant línia d’ordres, aplicació gràfica i interfície web que la impressora està correctament donada d’alta al sistema.
  3. Visualitzar l’arxiu que conté les impressores locals.
  4. Visualitzar l’arxiu PPD que conté la configuració de la impressora PDF.
  5. Imprimir qualsevol document amb aquesta impressora amb aplicació gràfica i amb línia d’ordres i comprovar-ne el resultat.
  6. Esbrinar consultant Internet com canviar el directori per defecte al qual la impressora PDF envia els treballs d’impressió.

1. Primer procedim a la instal·lació de la impressora PDF. Només cal fer:

  1. $ apt-get install cups-pdf

2. Finalitzat aquest procediment, la impressora ja està disponible i ho podem comprovar de diferents maneres:

  • Per línia d’ordres, amb lpstat o bé amb lpc:
  1. $ lpstat -pprinter PDF is idle. enabled since dt 31 gen 2012 22:03:05 CET
  2. $ lpc statusPDF:printer is on device 'cups-pdf' speed -1queuing is enabledprinting is enabledno entriesdaemon present
  • Mitjançant l’aplicació gràfica d’escriptori que es pot arrancar per línia d’ordres (system-config-printer) o bé per menú Sistema > Administració > Impressió:
  1. $ system-config-printer

Figura

  • Per interfície web a l’adreça http://localhost:631 i seleccionant la pestanya d’impressores:

Figura

3. Per visualitzar l’arxiu que conté el llistat de les impressores locals només cal accedir a l’arxiu /etc/cups/printers.conf:

  1. $ cat /etc/cups/printers.conf
  2. # Printer configuration file for CUPS v1.4.4# Written by cupsd# DO NOT EDIT THIS FILE WHEN CUPSD IS RUNNING<DefaultPrinter PDF>Info PDFMakeModel Generic CUPS-PDF PrinterDeviceURI cups-pdf:/State IdleStateTime 1328043785Type 8450124Filter application/vnd.cups-raw 0 -Filter application/vnd.cups-pdf 0 -Filter application/vnd.cups-postscript 100 -Filter application/vnd.cups-command 0 commandtopsAccepting YesShared YesJobSheets none noneQuotaPeriod 0PageLimit 0KLimit 0OpPolicy defaultErrorPolicy stop-printer</Printer>

4. Trobareu l’arxiu PPD d’aquesta impressora al directori /etc/cups/ppd. Comproveu que conté totes les característiques i opcions de la impressora.

  1. $ cat /etc/cups/ppd/PDF.ppd

5. Podem imprimir un document des de qualsevol aplicació gràfica o bé per la línia d’ordres:

  1. $ lp /etc/passwd

Per defecte, els treballs van al directori $HOME/PDF, i si l’usuari és anònim arriben a /var/spool/cups-pdf/ANONYMOUS/.

Per canviar el directori de destí cal editar l’arxiu /etc/cups/cups-pdf i canviar la directiva:

  1. Out ${HOME}/PDF

Sempre convé reiniciar el servei per assegurar-nos que els canvis tinguin efecte:

  1. $ /etc/init.d/cups restart
  2. Restarting Common Unix Printing System: cupsd.

Control d'accés a la interfície d'administració web de CUPS

Per defecte, només es pot accedir a l’administració web de CUPS des de la màquina local i per part d’usuaris amb dret d’administració. L’objectiu d’aquesta activitat és conèixer les possibilitats de canviar els permisos d’accés a CUPS tant de màquines remotes com d’usuaris. Per fer aquesta tasca es demanen les activitats següents:

  • Permetre que es pugui accedir a la interfície web des de qualsevol ordinador de la xarxa.
  • Habilitar la interfície web només en mode local o des de una adreça IP concreta.
  • Permetre accedir a tota la interfície d’administració a l’usuari Josep, al grup de professors només per a l’administració de treballs d’impressió i a qualsevol usuari correctament identificat per gestionar les impressores.

NOTA: Convindria disposar de dues màquines virtuals en xarxa per poder comprovar l’accés remot al sistema d’administració de CUPS. En aquest exemple considerem que el servidor cups té l’adreça 192.168.56.10, i el client, l’adreça 192.168.56.11.

Es pot permetre l’accés a la interfície web des de qualsevol ordinador connectat directament marcant la casella corresponent (Allow remote administration) de la secció d’administració: http://localhost:631/admin (vegeu la figura següent).

Figura

Un cop guardats els canvis (botó Change settings) el servei es reinicia automàticament perquè els canvis tinguin efecte.

Comproveu que ara s’hi pot accedir des d’una màquina client remota indicant al navegador l’adreça del servidor (per exemple, http://192.168.56.10:631). Naturalment, per fer qualsevol canvi administratiu ens demanarà usuari i contrasenya amb permisos d’administració al servidor:

Figura

El problema d’aquesta configuració és que posem en perill la seguretat, ja que s’hi pot accedir des de qualsevol màquina de la xarxa. Si volem restringir l’accés a un determinat equip haurem d’editar directament l’arxiu /etc/cups/cupsd.conf i canviar les directives següents:

  • Les directives listen determinen els controladors de xarxa i els ports que el servidor escolta per rebre les peticions IPP. Podem indicar que atengui les peticions localhost i les adreçades a la interfície de xarxa del nostre servidor CUPS:
  1. Listen localhost:631
  2. Listen 192.168.56.10:631
  • Les directives allow dins de cada secció Location habilitaran l’accés remot només des de la màquina amb IP 192.168.56.11.
  1. <Location />
  2. # Restrict access to the server...
  3. Order allow,deny
  4. Allow from 192.168.56.11
  5. </Location>
  • Si volem restringir, a més de l’accés de certes màquines, l’accés a usuaris o grups, hem de fer servir les directives require:
  1. <Location /admin>
  2. Require user josep @admin
  3. </Location>
  4.  
  5. <Location /jobs>
  6. Require user @professors
  7. </Location>
  8.  
  9. <Location /printers>
  10. Require valid-user
  11. </Location>

Amb aquestes directives es permet accedir a tota l’administració a l’usuari Josep i al grup d’administradors, mentre que al grup de professors només se’ls permet gestionar els treballs d’impressió, i qualsevol usuari correctament identificat pot gestionar únicament les impressores i classes.

Canvi d'opcions d'impressora

L’objectiu d’aquesta activitat és realitzar canvis en la configuració de les opcions d’impressió, tant en treballs concrets com deixant els canvis com a configuració per defecte. Per fer aquesta tasca es demanen les activitats següents:

  • Imprimir des de consola un arxiu d’imatge en paper de mida A5 apaïsat.
  • Que tots els usuaris de la màquina tinguin com a opcions predeterminades mida de paper A4 amb marge esquerra d’una polsada.
  • Que tots els clients de la xarxa tinguin la impressora configurada per a una resolució de 150 punts per polsada.

Si no teniu cap impressora instal·lada es pot fer la pràctica amb la impressora virtual PDF i comprovant després el resultat accedint als arxius d’impressió PDF generats, que en principi trobarem al directori ~/PDF.

Per imprimir un treball determinat canviant la configuració per defecte de la impressora farem servir la opció -o de l’ordre d’impressió lp:

  1. lp -d PDF -o landscape -o media=A5 imatge.jpg

Aquesta ordre imprimirà l’arxiu d’imatge en format DIN A5 apaïsat. Si heu fet servir la impressora virtual PDF podreu comprovar el resultat visualitzant l’arxiu ~/PDF/imatge.pdf.

Perquè l’ordre afecti tots els usuaris de la màquina cal que l’usuari administrador faci servir l’ordre loptions, que crearà/modificarà l’arxiu de configuració general /etc/cups/loptions:

  1. lpoptions -d PDF -o media=A4 page-right=72

Després d’aquesta ordre, totes les impressions quedaran afectades per aquesta configuració i el contingut de l’arxiu /etc/cups/loptions serà el següent:

  1. $ cat /etc/cups/lpoptions
  2. Default PDF media=A4 page-right=72 PageSize=Letter

Finalment, si volem que la configuració afecti a qualsevol client de la xarxa caldrà modificar l’arxiu PPD mitjançant l’ordre lpadmin.

Podem comprovar la configuració de resolució original de l’arxiu mitjançant:

  1. cat /etc/cups/ppd/PDF.ppd|grep "DefaultResolution"
  2. *DefaultResolution: 300dpi

Veiem que la resolució per defecte és de 300 punts per polsada. Després de l’ordre

  1. lpadmin -p PDF -o ppi=150

si tornem a veure el contingut de l’arxiu, podrem constatar que la resolució per defecte ha canviat i ara afectarà a tots els usuaris locals o remots del servidor:

  1. cat /etc/cups/ppd/PDF.ppd|grep "Resolution"
  2. *DefaultResolution: 150dpi

Anar a la pàgina anterior:
Administració de servidors d'impressió
Anar a la pàgina següent:
Exercicis