Artigos e dicas sobre Linux,ferramentas livres de servidores. Estudante de GTI na UNI-BH.

domingo, 8 de março de 2009

Dicas de uso e Gerenciamento do CUPS


Boa Noite a todos !

Estou fazendo um trabalho para a Faculdade, especificamente para a disciplina
do Professor e Mestre Leocádio Gomes que é Administração de Sistema Linux,
onde a parte que estou responsável é de falar sobre o CUPS.

Já a algum tempo uso o CUPS(Common Unix Printing System) pois é o serviço de
impressão padrão do Linux já a muitos anos.
Trabalho em uma empresa desenvolvimento onde o software base é instalado no
Linux e neste caso é necessário que conhece pelo menos o básico do funcionamento
do CUPS, o que pode me ajudar a escrever algumas dicas de uso e configuração
sobre este servidor de impressões.

Sugiro a todos que façam uma leitura completa e que aproveitem no dia a dia as
dicas aqui postadas.

Caso alguém sinta vontade de compartilhar mais experiências fique a vontade.

Como hoje trabalho com distribuições baseadas em Debian, preferencialmente,
os exemplos de instalações, caminhos de configurações e comandos serão
sugeridos e detalhados utilizando o padrão desta distribuição.

"O CUPS é um gerenciador de impressões desenvolvido pela Appel Inc. para sistemas
Mac OS e outros sistemas baseados em UNIX."


Até a elaboração deste documento, a versão do CUPS estável é
1.3.9 disponivel no endereço http://www.cups.org ou no repositório da sua
distribuição.




Colocarei dicas de configuração editando o arquivo de configurações na
unha, mas para facilitar o nosso trabalho, usaremos a interface por browser
que é a ideia do CUPS, de fornecer uma interface amigável ao usuário
para gerenciar suas impressões na rede.

Há recursos interessantes no servidor CUPS que permitem ao usuário
final reimprimir seu trabalho sem a necessidade de reabrir os documentos
no seu desktop.
Isso é possível pelo log das impressões habilitado. Vamos demonstrar
como configurar este recurso entre outras possibilidades e fazer uma
configuração básica para funcionamento do servidor.

O CUPS é instalado no Linux como um "serviço" e acessado por qualquer
browser pela porta 631.
A instalação e configuração de novas impressoras sempre deverá ser
feita por um browser para evitar erros de formatação nos arquivos de
configuração, mas isso não será uma regra, pois vou relatar casos em
que precisaremos editar os arquivos diretamente.

Podemos utilizar a interface grafica no servidor para iniciarmos as
configurações do CUPS mas se estivermos acessando o servidor
remotamente pela linha de comando é interessante que tenhamos
instalado no servidor um browser também com esta caracteristica.

Gosto muito do lynx que pode ser instalado como a seguir:

$ sudo aptitude install lynx

Instalando o CUPS

Por padrão, o CUPS já vem instalado nas principais distribuições
atuais, mas para instala-lo se necessário, utilize o comando a seguir:

$ sudo aptitude install cupsys cupsys-client


Configurando rapidamente o CUPS

Depois de instalado o CUPS, acessaremos o gerenciador pela URL:
http://ipdoservidor:631.

No CUPS é possível o usuário gerenciar seus proprios jobs, sendo possível
cancelar, pausar e reimprmir seus trabalhos.
Para cadastramento de impressoras podemos utilizar o usuario root, quando
acessamos o serviço pela aba Administration. É possivel eleger um novo
usuario para administrar impressoras no sistema, para isto basta que o
usuario faça parte do grupo lpadmin.

$ sudo gpasswd -M usuario lpadmin

Vamos editar o arquivo de configurações do CUPS para as primeiras dicas
importantes.

OBS.: Cada vez que você fizer alterações no arquivo de configuração
/etc/cups/cupsd.conf diretamente
, você precisará re-iniciar o servidor CUPS
digitando o seguinte comando no prompt de um temrinal:


$ sudo /etc/init.d/cupsys restart


A principio, dentro do browser, o sistema irá restartar assim que voce salvar
as alterações do arquivo de configuração.


Clique na aba Administration e depois Edit Configuration File.



Analisando o arquivo cupsd.conf

Primeiros passos


Precisaremos configurar o acesso ao CUPS em toda a rede, para que os usuários
possam reimprimir e gerenciar seus jobs no servidor de qualquer máquina da rede.
* Substitua Listen localhost:631 por Port 631
* Verifique a sequência a seguir:

Browsing On
BrowseOrder allow,deny
BrowseAllow all
BrowseAddress @LOCAL

(Esta linha indica a faixa de IP's que poderão acessar via browse o CUPS, neste

caso podemos definir uma rede especifica por exemplo. Ex.: BrowseAddress
192.168.1.*)
Caso queira habilitar a aba Administration para qualquer IP da rede basta inserir
Allow @LOCAL na sessão a seguir:

Order allow,deny
Allow @LOCAL


Algumas diretivas do arquivo de configuração cupsd.conf

AccessLog
Podemos definir o caminho dos logs que o servidor gera com a diretiva AccessLog:
A diretiva AccessLog define os nomes dos arquivos de logs do CUPS.
Se nenhum diretório for definido o CUPS assume o diretório padrão de logs do
sistema(normalmente /var/log/cups/).
Os arquivos podem ser lidos no próprio acesso ao CUPS pelo Browser ou
diretamente na linha de comando.
Accesslog /var/log/cups/access_log
Podemos também definir o caminho do arquivo de erros do servidor com a diretiva
ErrorLog.

AccessLogLevel
A diretiva AccessLogLevel diz em que nível é registrado os pedidos de acesso ao
serviço no arquivo de log.
AccessLogLevel all

Allow, Deny e Order
A diretiva Allow especifica um nome, o endereço IP ou rede que é permitido o
acesso ao servidor. Ao contrario a diretiva deny, nega por faixa de rede.
Veremos essas diretivas em várias sessões do arquivo de configuração. O Allow e o
deny devem aparecer dentro de uma seção Location ou Limit no arquivo cupsd.conf.
Iremos ver em conjunto com estas diretivas a diretiva order, que define a forma de
consulta a seqüência de negação ou permissão da seção.

Podemos utilizar por exemplo:
Allow @LOCAL
O parâmetro @LOCAL irá permitir o acesso de todos as maquinas da mesma rede
do servidor.
Deny 192.168.1.0/24

AuthType
Podemos definir o nível de autenticação para acesso ao servidor com a diretiva
AuthType que por padrão é usado Default (sem autenticação). Mas você pode
utilizar a autenticação ao servidor utilizando Basic - a autenticação básica deve ser
feita utilizando a senha e grupo do SO LINUX.


AuthType Default
Require user @SYSTEM
Order allow,deny


Neste exemplo da seção que define acesso ao arquivo de configuração do servidor

CUPS. Assim com outras diretivas, esta autenticação deve aparecer dentro de uma
seção Location ou Limit dentro do arquivo cupsd.conf.

BrowseAllow e BrowseDeny
As diretivas BrowseAllow e BrowseDeny correspondem à faixa de rede que serão
permitidas e negadas a navegar no servidor CUPS por Browser respectivamente.
A diretiva BrowseOrder trabalha em conjunto com as
Ex.:
BrowseOrder allow,deny
BrowseAllow all
BrowseDeny 192.168.1.0/24

ErrorPolicy abort-job
Um trabalho enviado a uma impressora com status de erro por algum motivo
permanece no servidor até que a situação seja corrigida. O servidor pode eliminar
qualquer trabalho enviado, setando a diretiva ErrorPolicy abort-job

MaxClients
Define o numero de conexões no servidor.
MaxClientsPerHost 10

MaxClientsPerHost
Define o numero Maximo de conexões de um mesmo host, evitando assim possíveis
ataques ao serviço.

MaxCopies
Define um numero Maximo de copias de um mesmo documento por cliente.

MaxJobs
Define um numero Maximo de impressões pendentes na memória. Somente serão
aceitos novos trabalhos quando os mais antigos estejam completos. O padrão do
CUPS é de 500 trabalhos
MaxJobs 100

MaxJobsPerPrinter
Define o numero Maximo de copias por impressora ou classe de impressoras.
Mesmo conceito do MaxJobs. O padrão por impressora é 0 (zero) que desabilita
este controle.
MaxJobsPerPrinter 100

MaxJobsPerUser
Mesmo conceito que por impressora, mas agora por usuário do sistema.

MaxLogSize
A diretiva MaxLogSize controla o tamanho máximo de cada arquivo de log. Quando
um arquivo de log alcança ou excede o tamanho máximo é fechado e renomeado
para filename.O. Isso permite que você rode os registros automaticamente. O
tamanho padrão é 1048576 bytes (1MB).
Definir o tamanho máximo para 0 desativa log rotação.

PreserveJobHistory
Habilitado, o histórico das impressões enviadas ao servidor é mantido até que o
administrador as remova.
PreserveJobHistory On

PreserveJobFiles
A diretiva PreserveJobFiles controla se os arquivos impressos como concluído,
cancelado, ou abortado são armazenados no disco.
Um valor On preserva arquivos até que o administrador remova-os com o comando
cancelar. Impressões podem ser retomadas (e reimpressas) como desejadas até
que sejam removidas.

ServerAdmin
Indica o email do administrador do sistema. Casos de mensagens ao administrador
pelo servidor.

SystemGroup

Indica um ou mais grupo para administrar o CUPS
SystemGroup lpadmin sys root

User
21
Indica o usuário do sistema para o CUPS a ser usado por qualquer programa do SO
para envio de trabalhos.

Conclusão CUPS

O servidor de impressão CUPS é sem dúvida uma excelente ferramenta para
controle de impressões em uma pequena e media empresa. Um grande numero de
drivers de impressoras conhecidas do mercado já são suportadas pelo servidor.
A possibilidade de analise e controle do que é impresso nas empresas é
fundamental para qualquer administrador de TI estabelecer limites de uso das suas
impressoras. Inativar e /ou ativar um equipamento, administrar remotamente o
mesmo, definições de cotas de impressão e muitas outras informações de gerência
e operação das impressoras.
A versão 1.4 a ser lançada ainda prevê uma opção de tradução do CUPS bem como
sua documentação.

O documento voce pode baixar em:
http://www.mandamais.com.br/download/?codigo=3i331652009142214

08/03/2009. http://www.cups.org/

Um comentário:

  1. Existe uma solução muito semelhante é free o projeto encontra-se no sourceforge, tem um script que auxilia a instalação, também tem um passo a passo. Gerenciamento web administração de usuários, cotas, relatórios. Também conta uma VM disponível para download já configurada. https://sourceforge.net/projects/jpykotagui/

    ResponderExcluir

Quem é Eduardo