
Imprimir um pálido pedaço de papel em uma impressora na rede via protocolo SMB; Coisa simples, tão anos 80 (exagero), mas que resultou em umas dorezinhas de cabeça neste que voz fala.
Recentemente me vi na seguinte situação; Erros como Job held for authentication e Authentication Failed passaram a fazer parte dos meus dias ao tentar imprimir via Rede (Windows Printer via SMB). Seria o universo conspirando? Mal sabia eu que o problema estava commitado no filesystem do meu sistema operacional: Era o Kerberos (ah, danado!).
CUPS e Kerberos
Após alguma versão específica, que não vem ao caso nessa hora, o CUPS (sistema de gerenciamento de impressões do Linux) passou a usar autenticação via Kerberos. Sinceramente não entendo pq, já que para configurar uma impressora no desktop Linux usa-se senha de root, mas beleza. **
Kerberos
As duas únicas coisas que o amigo leitor deve saber sobre Kerberos: (1) É um sistema de autenticação do Linux, e (2) que você deve evitá-lo no seu desktop, e é justamente o que veremos a seguir, pois foi o que fiz para fazer a impressora via SMB voltar a funcionar.
Enfim, imprimindo!
Com usuário “root”, abra o arquivo de configurações do CUPS (/etc/cups/cupsd.conf
) para edição e substitua as referências “AuthType Default” por “AuthType Basic“.
O CUPS usa o “AuthType Default” por padrão, e isso utiliza a autenticação via Kerberos. Um inferno. Já o “AuthType Basic” não utiliza Kerberos.
Bom, feitos os ajustes, basta reiniciar o daemon do CUPS. Ainda com root, execute o comando systemctl restart cupsd
e tente imprimir novamente.
Boa sorte aí e boas impressões!
** Na verdade até entendo o motivo de usar Kerberos. O que não entendo é pq destinar tanta proteção para uma tarefa simples cujo a qual será realizada, na maior parte das vezes, por usuários leigos e/ou menos experientes. Para mim, nesse sentido, é desnecessário.