Como instalar certificado digital no Linux para usar em processos eletrônicos do Poder Judiciário brasileiro
Guia prático para advogados que usam e-SAJ, PJe, eproc e outros sistemas judiciais
Usar certificado digital no Linux é possível, mas exige alguns cuidados. Muitos advogados ainda acreditam que o certificado digital só funciona corretamente no Windows, especialmente para acessar sistemas como e-SAJ, PJe, eproc, Projudi e portais de tribunais. Na prática, o Linux pode funcionar muito bem, desde que o token, o driver criptográfico e o navegador estejam corretamente configurados.
Este guia apresenta um passo a passo prático para instalar e testar certificado digital A3 em distribuições Linux, com atenção especial ao uso do e-SAJ, sistema utilizado pelo TJSP e por outros tribunais.
A recomendação principal deste guia é simples: para o e-SAJ, use o Chromium ou Google Chrome. Evite o Firefox.
Embora o Firefox possa reconhecer o certificado em alguns casos, a experiência prática demonstra que ele pode falhar na etapa de assinatura de petições, mesmo quando o login com certificado digital funciona. No teste realizado em ambiente Linux, o certificado era reconhecido para entrar no e-SAJ, mas não aparecia no campo “Certificado para assinatura”. No Chromium, o reconhecimento ocorreu corretamente na primeira tentativa.
1. Entenda os componentes necessários
Para usar certificado digital no Linux, normalmente são necessários quatro elementos:
- o serviço de leitura de cartões e tokens;
- o driver do token ou cartão;
- o navegador compatível;
- o assinador do sistema judicial, quando exigido.
No caso de tokens usados por advogados, como tokens Certisign/OAB/GD/SafeSign, é comum a necessidade do SafeSign Identity Client. Para o e-SAJ, também é necessário o Web Signer da Softplan.
Em termos práticos:
- o pcscd faz o Linux reconhecer o token ou a leitora;
- o SafeSign faz o sistema acessar o certificado dentro do token;
- o Web Signer faz o navegador conversar com o certificado;
- o Chromium ou Google Chrome permite a integração mais estável com o e-SAJ.
2. Instale os pacotes básicos do Linux
No Debian, Ubuntu, Linux Mint e derivados, abra o terminal e execute:
sudo apt update
sudo apt install -y libccid pcscd pcsc-tools opensc
Depois, habilite e reinicie o serviço:
sudo systemctl enable pcscd
sudo systemctl restart pcscd
Para verificar se o serviço está ativo:
systemctl status pcscd
O resultado esperado é algo como:
active (running)
Para Fedora e derivados, o comando equivalente é:
sudo dnf install -y pcsc-lite pcsc-lite-ccid pcsc-tools opensc
sudo systemctl enable --now pcscd
Para Arch Linux e derivados:
sudo pacman -S pcsclite ccid opensc
sudo systemctl enable --now pcscd
3. Teste se o token é reconhecido
Conecte o token na porta USB e execute:
lsusb
Depois rode:
pcsc_scan
Se o token ou a leitora forem reconhecidos, o comando exibirá informações do dispositivo. Para sair do teste, pressione:
Ctrl + C
Se aparecer apenas:
Waiting for the first reader...
o Linux ainda não está reconhecendo o token ou a leitora. Nesse caso, teste outra porta USB, reinicie o serviço pcscd e verifique se o pacote libccid foi instalado.
4. Instale o driver do token
Para tokens Certisign/OAB/GD, procure o driver adequado no site da certificadora ou do fabricante do token.
No caso de token GD/SafeSign, normalmente será necessário instalar o SafeSign Identity Client.
Se o arquivo baixado for .deb, instale com:
cd ~/Downloads
sudo apt install ./nome-do-arquivo.deb
Se o nome do arquivo tiver espaços, use aspas:
sudo apt install "./SafeSign IC Standard Linux 4.6.0.0-AET.000 ub2204 x86_64.deb"
Se houver erro de dependências, rode:
sudo apt --fix-broken install
Em algumas distribuições mais novas, como Debian 13, determinados pacotes antigos podem não estar mais disponíveis nos repositórios atuais. Isso pode ocorrer, por exemplo, com dependências antigas do wxWidgets, como:
libwxbase3.0-0v5
libwxgtk3.0-gtk3-0v5
Nesses casos, é preciso avaliar com cuidado se vale a pena instalar manualmente dependências antigas ou usar outro pacote mais recente do driver. Não é recomendável adicionar repositórios inteiros de versões antigas do Debian ou Ubuntu ao sistema atual, pois isso pode quebrar dependências do sistema.
A alternativa mais segura é baixar apenas os pacotes pontuais necessários, quando indispensável, ou procurar uma versão mais recente do driver junto à certificadora.
5. Abra o SafeSign e confira o certificado
Depois da instalação, tente abrir o SafeSign:
tokenadmin
Se o comando não abrir, procure pelo programa no menu de aplicativos com nomes como:
SafeSign Identity Client
Token Administration Utility
Administração de Token
Com o token conectado, o certificado deve aparecer na tela do SafeSign.
Atenção: não clique em opções como “Inicializar token”, “Formatar”, “Apagar”, “Desbloquear” ou “Alterar PIN” se não tiver certeza absoluta do que está fazendo. Essas funções podem apagar certificados ou inutilizar o token.
6. Verifique a biblioteca PKCS#11 do SafeSign
O Web Signer e outros assinadores precisam acessar a biblioteca PKCS#11 do token. No caso do SafeSign, o arquivo costuma ser:
/usr/lib/libaetpkss.so.3
Para confirmar, rode:
find /usr -name "libaetpkss.so*" 2>/dev/null
Se aparecer algo como:
/usr/lib/libaetpkss.so.3
guarde esse caminho. Ele poderá ser necessário na configuração do Web Signer.
7. Instale o Chromium
Para uso no e-SAJ, a recomendação prática é usar Chromium ou Google Chrome, e não Firefox.
No Debian, Ubuntu e derivados:
sudo apt install -y chromium chromium-l10n
Abra o navegador:
chromium
Também é possível usar o Google Chrome, se preferir.
8. Instale o Web Signer para o e-SAJ
Acesse no Chromium:
https://websigner.softplan.com.br/?brand=tjsp
Siga as instruções da página:
- instale a extensão do Web Signer no navegador;
- instale o componente nativo para Linux, se ainda não estiver instalado;
- abra a extensão do Web Signer;
- configure os dispositivos criptográficos.
Em alguns sistemas, o pacote nativo aparece como:
softplan-websigner
lacuna-webpki
Para verificar se estão instalados:
dpkg -l | grep -Ei "websigner|webpki|lacuna"
Um resultado adequado pode ser parecido com:
lacuna-webpki
softplan-websigner
9. Configure o Web Signer no Chromium
No Chromium, clique no ícone da extensão Web Signer.
Vá em:
Configurações → Cripto Dispositivos
Ative a opção relacionada a:
Dispositivos SafeSign AET
Se houver campo para opção personalizada, adicione:
/usr/lib/libaetpkss.so.3
Depois vá em:
Meus certificados
Clique em:
Recarregar
O certificado deve aparecer na lista.
Se houver mais de um certificado no token, confira a data de validade e selecione apenas o certificado válido.
10. Certificado vencido no token: apagar ou não apagar?
Alguns tokens podem conter certificados antigos e vencidos. Isso pode confundir determinados sistemas de assinatura.
Se houver certificado vencido no token, o ideal é tentar removê-lo pela interface gráfica do próprio SafeSign, caso exista opção clara de exclusão. Não use comandos de exclusão no terminal sem ter absoluta certeza do ID do certificado vencido.
Para apenas listar os objetos do token, sem apagar nada, é possível usar:
pkcs11-tool --module /usr/lib/libaetpkss.so.3 -O --login
Esse comando pedirá o PIN e mostrará certificados, chaves públicas e chaves privadas existentes no token.
Atenção: não utilize comandos como:
--delete-object
--init-token
--init-pin
sem orientação técnica segura. A exclusão equivocada de objetos pode comprometer o uso do certificado.
11. Teste o e-SAJ no Chromium
Depois de instalar e configurar o Web Signer, acesse:
https://esaj.tjsp.jus.br
Entre com certificado digital.
Ao elaborar ou protocolar uma petição, confira o campo:
Certificado para assinatura
O certificado válido deve aparecer nesse campo, com a respectiva data de validade.
Se o sistema permitir login com certificado, mas não mostrar certificado para assinar a petição, isso indica que o login funcionou, mas a integração de assinatura ainda não está correta. São etapas diferentes.
No e-SAJ, é possível que o certificado funcione para autenticação, mas não apareça para assinatura se o Web Signer não estiver corretamente vinculado ao módulo PKCS#11 do token.
12. Por que evitar o Firefox no e-SAJ?
O Firefox pode reconhecer o certificado no Web Signer e até permitir login no e-SAJ. Contudo, na prática, pode ocorrer falha na etapa de assinatura de petições.
O problema observado foi este:
- o certificado aparecia na extensão Web Signer do Firefox;
- o site do e-SAJ estava autorizado na extensão;
- o certificado era reconhecido para login;
- mas o campo “Certificado para assinatura” continuava mostrando “Nenhum certificado encontrado”.
Ao repetir o procedimento no Chromium, com o mesmo Linux, o mesmo token, o mesmo SafeSign e o mesmo Web Signer, o certificado apareceu corretamente na primeira tentativa.
Por isso, para evitar perda de tempo, a recomendação prática é:
Use Chromium ou Google Chrome para o e-SAJ.
Evite Firefox para peticionamento no e-SAJ.
13. Checklist final para o advogado
Antes de protocolar uma petição no Linux, confira:
- o token está conectado;
- o serviço
pcscdestá ativo; - o SafeSign reconhece o certificado;
- o certificado está válido;
- o Chromium está sendo usado;
- a extensão Web Signer está instalada;
- o Web Signer reconhece o certificado;
- o dispositivo SafeSign AET está ativado;
- o caminho
/usr/lib/libaetpkss.so.3está configurado, se necessário; - o e-SAJ mostra o certificado no campo “Certificado para assinatura”;
- a petição foi anexada corretamente;
- os documentos foram classificados;
- as partes foram conferidas;
- o comprovante de protocolo foi salvo depois do envio.
14. Comandos úteis de diagnóstico
Reiniciar o serviço do token:
sudo systemctl restart pcscd
Verificar se o token é reconhecido:
pcsc_scan
Localizar a biblioteca do SafeSign:
find /usr -name "libaetpkss.so*" 2>/dev/null
Listar certificados e objetos do token:
pkcs11-tool --module /usr/lib/libaetpkss.so.3 -O --login
Verificar se Web Signer e Lacuna WebPKI estão instalados:
dpkg -l | grep -Ei "websigner|webpki|lacuna"
Verificar SafeSign e pacotes relacionados:
dpkg -l | grep -Ei "safesign|pcsc|ccid"
Fechar navegadores travados:
pkill firefox
pkill chromium
15. Conclusão
É plenamente possível usar certificado digital no Linux para acessar processos eletrônicos e assinar petições. Porém, a configuração exige atenção especial ao driver do token, ao serviço pcscd, ao módulo PKCS#11 e ao navegador utilizado.
Para o e-SAJ, a solução mais estável observada foi:
Linux + SafeSign + Web Signer + Chromium
O Firefox pode funcionar em alguns cenários, mas pode falhar justamente na etapa mais importante: a assinatura da petição. Por isso, para uso profissional na advocacia, especialmente em peticionamento eletrônico, recomenda-se configurar e usar preferencialmente o Chromium ou o Google Chrome.
Este guia não substitui o suporte técnico da certificadora, do tribunal ou do desenvolvedor do sistema judicial. As versões dos pacotes e dos navegadores podem mudar, e cada distribuição Linux pode exigir ajustes próprios. Ainda assim, seguindo este roteiro, o advogado aumenta significativamente as chances de utilizar certificado digital no Linux com segurança e estabilidade.