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:

  1. o serviço de leitura de cartões e tokens;
  2. o driver do token ou cartão;
  3. o navegador compatível;
  4. 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:

  1. instale a extensão do Web Signer no navegador;
  2. instale o componente nativo para Linux, se ainda não estiver instalado;
  3. abra a extensão do Web Signer;
  4. 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 pcscd está 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.3 está 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.