Instalação de Certificado Digital A3 em Ubuntu e derivados

Olá seres humanos!
Gostaria de compartilhar com vocês o fruto de algumas semanas de pesquisas pelas internets.

Sou advogado e decidi migrar todo o meu escritório para Linux, em especial flavour Kubuntu.
Uma das primeiras barreiras que encontrei e precisei superar foi fazer o token do certificado digital funcionar.

Consegui instalar o Token Admin através de um tutorial que pretendo reproduzir com estruturação semelhante mas parafraseado para vocês a seguir.

Tutorial: Configurando um Token para Criptografia e Assinatura Digital

Neste tutorial, você aprenderá como configurar um token para criptografia e assinatura digital em um sistema Linux. Certifique-se de ter permissões de administrador no sistema e acesso à internet para baixar as dependências.

Passo 1: Adicionar seu usuário ao grupo “scard”

  1. Abra o Terminal pressionando Ctrl+Alt+T.

  2. Execute o comando para criar o grupo “scard”:

    sudo addgroup scard
    
  3. Adicione seu usuário ao grupo “scard” (substitua “seu-usuário” pelo seu nome de usuário):

    sudo adduser seu-usuário scard
    

Passo 2: Adicionar os requisitos do sistema

  1. No Terminal, cole o seguinte comando para instalar as dependências gerais do sistema:

    sudo apt install -y libengine-pkcs11-openssl libp11-3 libpcsc-perl libccid pcsc-tools libasedrive-usb opensc openssl
    

Passo 3: Adicionar as dependências específicas para o aplicativo da VeriSign

Aqui, você adicionará as dependências específicas necessárias para o aplicativo da VeriSign.

  1. Comece com as dependências que ainda estão disponíveis nos repositórios:

    sudo apt install -y pcscd libc6 libgcc-s1 libgdbm-compat4 libglib2.0-0 libpcsclite1 libssl3 libstdc++6
    
  2. Para as dependências que foram retiradas dos repositórios, você precisará baixá-las manualmente e instalá-las. Baixe todas elas primeiro:

    1. libssl1.1_1.1.1 (última aparição: Ubuntu 20.04):

      wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl/libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb
      
    2. libwxbase3.0-0v5 (>= 3.0.5.1+dfsg) (última aparição: 22.04):

      wget http://archive.ubuntu.com/ubuntu/pool/universe/w/wxwidgets3.0/libwxbase3.0-0v5_3.0.5.1+dfsg-4_amd64.deb
      
    3. libgdk-pixbuf-xlib-2.0-0 (>= 2.22.0) (última aparição: Ubuntu 22.04):

      wget http://archive.ubuntu.com/ubuntu/pool/main/g/gdk-pixbuf-xlib/libgdk-pixbuf-xlib-2.0-0_2.40.2-2build4_amd64.deb
      
    4. libgdk-pixbuf2.0 (última aparição: Ubuntu 22.04):

      wget http://archive.ubuntu.com/ubuntu/pool/universe/g/gdk-pixbuf-xlib/libgdk-pixbuf2.0-0_2.40.2-2build4_amd64.deb
      
    5. libtiff5 (>= 4.0.3) (última aparição: Ubuntu 22.04):

      wget http://archive.ubuntu.com/ubuntu/pool/main/t/tiff/libtiff5_4.3.0-6_amd64.deb
      
    6. libwxgtk3.0-gtk3-0v5 (última aparição: Ubuntu 22.04):

      wget http://archive.ubuntu.com/ubuntu/pool/universe/w/wxwidgets3.0/libwxgtk3.0-gtk3-0v5_3.0.5.1+dfsg-4_amd64.deb
      
  3. Instale as dependências baixadas na ordem apresentada:

    sudo dpkg -i libssl1.1_1.1.1-1ubuntu2.1~18.04.23_amd64.deb
    sudo dpkg -i libwxbase3.0-0v5_3.0.5.1+dfsg-4_amd64.deb
    sudo dpkg -i libgdk-pixbuf-xlib-2.0-0_2.40.2-2build4_amd64.deb
    sudo dpkg -i libgdk-pixbuf2.0-0_2.40.2-2build4_amd64.deb
    sudo dpkg -i libtiff5_4.3.0-6_amd64.deb
    sudo dpkg -i libwxgtk3.0-gtk3-0v5_3.0.5.1+dfsg-4_amd64.deb
    

Passo 4: Teste se o token está sendo reconhecido pelo sistema

  1. Insira o token em uma porta USB.

  2. No Terminal, digite o seguinte comando para verificar se o token é reconhecido:

    pcsc_scan
    

Passo 5: Instalação do gerenciador criptográfico

  1. Baixe o programa SafeSign para Linux com o seguinte comando (para sistemas de 64 bits):

    wget https://safesign.gdamericadosul.com.br/content/SafeSign_IC_Standard_Linux_ub2204_3.8.0.0_AET.000.zip
    
  2. Descompacte o arquivo zipado e instale o SafeSign clicando duas vezes no ícone do instalador.

Passo 6: Conectando o token ao Firefox

  1. Abra o aplicativo de administração do Token, “tokenadmin”.
  2. Clique em “Integração” no menu horizontal do aplicativo e, em seguida, clique em “Instalar o SafeSign no Firefox”.
  3. Na janela que se abrir, selecione o Firefox e clique em “Instalar”.

A integração está concluída.

Passo 7: Configurando o sistema para iniciar o serviço de gerenciamento do token no boot

  1. Para garantir que o serviço de gerenciamento do token seja iniciado no boot, execute o seguinte comando:

    sudo systemctl enable pcscd
    

Agora, seu token está configurado para criptografia e assinatura digital no seu sistema Linux. Você pode desligar o sistema com a tranquilidade de que

18 curtidas

Boa tarde,

Já usei o certificado digital A3 com distribuições baseadas em Ubuntu há uns anos, mas atualmente não estou conseguindo fazer funcionar.
O Firefox até reconhece mas quando é para abrir a janela para digitar o pin ele dá a seguinte mensagem: “Please authenticate to the token “Imprensa Oficial”. How to do so depends on the token (for example, using a fingerprint reader or entering a code with a keypad).”

Alguém sabe o que pode ser?
Obrigado

1 curtida

Olá. Também sou advogado e passando apenas para agradecer. Segui seu tutorial e deu tudo certo por aqui.

2 curtidas

Até criei uma conta só para agradecer. Uso o starsign e estava com problema para instalar. Só esse tutorial resolveu. MUITO OBRIGADO!

2 curtidas

Eu realmente so tenho que agradecer o esforço que tu fez pra propiciar o uso do certificado no Linux. Segui todos os passos e voila, funcionou. Agora estou penando pra fazer a instalaçao do websigner, se tiver alguma dica, que a instalaçao nao vai.

1 curtida

Baixe o websigner.
Abra o terminal Ctrl+Alt+T
Acesse a pasta onde você baixou o websigner no terminal.
Após isso digite o seguinte comando que solicitará sua senha master.

sudo apt install ./websigner-setup-64.deb

Digite sua senha e pronto está instalado.

2 curtidas

Boa tarde! Esse tutorial tbm se aplica ao certificado A3 da Certisign?

2 curtidas

Ahh, agora funcinou. Muito obrigado pela dica!!

1 curtida

Infelizmente estou com problemas para conseguir instalar o desktopID da Certisign. Certificado a3 em nuvem, exige esse app no Pc para assinar ao acessar o PJe.

Alguém sabe a solução?

1 curtida

Olá amigo. Também sou grande apreciador de Linux e sou advogado, inclusive mantenho alguns pacotes de interesse no AUR (safesignidentityclient, pje-office, lacuna-webpki, etc.), além de ter alguns tutoriais no Fedora e geral (Instalação do certificado digital token utilizado pela OAB-SP no Fedora 39 — Comunidade Fedora Brasil e [Tutorial] Instalar certificado digital Safesign usando distrobox em qualquer distro — Comunidade Fedora Brasil).

Eu resolvi testar o Ubuntu 24.04 para advocacia como experiência e não tem sido muito boa.

Pelo seu tutorial, haveria a configuração direta do Safesign no Firefox - contudo, no meu caso, o Firefox não tem conseguido identificar o token e isso parece decorrer pelo fato de o Firefox ser um snap, e, portanto, não ter interface com o pcscd para esse fim. No seu tutorial, você usou Firefox snap ou o Firefox deb da própria Mozilla?

2 curtidas

Oi, tudo bem?

Quanto ao uso do navegador, uns meses depois que fiz o tutorial, migrei para o Pop!_OS 22.04 LTS. Repliquei o mesmo procedimento nele, e funcionou perfeitamente (considerando a base da penúltima LTS do Ubuntu).

Navegadores utilizados

  • Google Chrome: Instalei por meio do procedimento recomendado pela Google (versão .deb).
  • Mozilla Firefox: Já veio pré-instalado com o Pop!_OS (também versão .deb).

Consideração importante

Se houver dificuldades para integrar o certificado com o Firefox, sugiro a utilização do Chrome, que, para mim, funciona muito bem com o PJe-Office PRO.


Experiência com diferentes sistemas judiciais

Minas Gerais (TJMG)

No caso de Minas Gerais, onde o TJMG utiliza um sistema proprietário para o acesso aos processos em grau de recurso, funcionou sem qualquer necessidade de adaptação.

TRF-6 (Eproc)

No TRF-6, que utiliza o sistema Eproc, não foi necessário o uso de certificado digital. O login e a autenticação são realizados por meio de usuário e senha.


Outras informações relevantes

  • Não utilizo nenhuma solução offline para gestão de prazos e processos, então não posso relatar essa experiência no contexto do Linux.
  • Meu certificado digital é do tipo A-3, utilizando um token GD.

Galeria de imagens


Token GD


Integração com o Firefox .deb

1 curtida

Você usa certificado A1 (aquele que é um arquivo instalado no sistema)?
Pois como atuo em SC, aqui nem preciso mais do certificado digital, porém tenho o A1 de alguns clientes que assino PDF e não encontrei forma de usar no linux.

1 curtida

Eu uso o A3 (Safesign) e o A1. Para usar o A1 para assinar pdfs você pode usar o PJe, se for para gerar o p7s. Se for para fazer no modo Adobe, eu recomendo instalar o Okular. Você precisa configurar primeiro o certificado digital A3 no Firefox para ele funcionar. Depois disso, é só assinar por lá.

Sei como funciona com arquivos .PFX instalados, específicamente, nos navegadores Chrome e Firefox ou Pelo Libre Office Draw se quiser assinar offline.

Parte 1 - Extração do Certificado Digital

Emissão e Exportação no Windows

  1. Abra o gerenciador de certificados no Windows:
    • Pressione Windows + R e digite certmgr.msc.
  2. Localize o certificado emitido na aba “Pessoal”.
  3. Clique com o botão direito no certificado e selecione “Exportar”.
  4. Escolha o formato PFX, inclua a chave privada e defina uma senha de proteção.
  5. Salve o arquivo em um local acessível e transfira-o para o Linux.

Parte 2: Importação no Linux

Aqui você terá três caminhos a seguir. Escolha o que melhor atender.

Opção 1: Usando o Google Chrome

  1. Abra o Chrome e acesse chrome://settings.
  2. Vá em “Privacidade e segurança” → “Segurança”.
  3. Clique em “Gerenciar certificados”.
  4. Importe o arquivo PFX, insira a senha e conclua o processo.

Opção 2: Usando o Mozilla Firefox

  1. Abra o Firefox e vá para “Configurações” → “Privacidade” → “Segurança”.
  2. Na seção “Certificados”, clique em “Exibir Certificados”.
  3. Clique em “Importar” e localize o arquivo PFX.
  4. Insira a senha e conclua a importação.

Opção 3: Usando a Linha de Comando (OpenSSL)

  1. Abra o terminal no Linux.
  2. Converta o certificado para o formato PEM com o seguinte comando:
    openssl pkcs12 -in certificado.pfx -out certificado.pem -nodes
    

Parte 3 - Assinar com o LibreOffice Draw offline

Para usar o certificado A1 com o LibreOffice Draw e assinar digitalmente documentos PDF no Linux, você precisa configurar o LibreOffice para reconhecer o certificado e realizar o processo de assinatura. Abaixo está o guia detalhado:

Pré-requisitos

  1. Certificado A1 importado:

    • O certificado A1 (formato .pfx) deve estar instalado no sistema operacional e/ou nos navegadores compatíveis (Chrome ou Firefox).
    • Para Linux, é necessário importar o certificado para a loja de certificados ou diretamente no LibreOffice.
  2. Instalação do LibreOffice:

    • Certifique-se de que o LibreOffice está instalado e atualizado no seu sistema.
  3. Ferramentas adicionais:

    • Java Runtime Environment (JRE): Necessário para assinaturas digitais no LibreOffice.
      • No Ubuntu/Pop!_OS, você pode instalar com:
        sudo apt install default-jre
        

Passo a passo

1. Configurar o LibreOffice para o certificado digital

  1. Abra o LibreOffice e vá para:
    • Ferramentas → Opções → LibreOffice → Segurança → Certificados…
  2. Na seção de Certificados, verifique se o LibreOffice reconhece o certificado A1 instalado no sistema.
    • Se o certificado não aparecer, você pode importar diretamente o arquivo .pfx ao sistema ou aos navegadores.

2. Abrir o documento PDF

  1. Inicie o LibreOffice Draw.
  2. Abra o arquivo PDF que deseja assinar:
    • Arquivo → Abrir → Selecione o PDF.

3. Assinar digitalmente o documento

  1. Com o documento aberto no LibreOffice Draw:
    • Vá para Arquivo → Assinar Digitalmente → Assinaturas Digitais.
  2. O LibreOffice solicitará a escolha de um certificado:
    • Selecione o certificado A1 importado.
  3. Insira a senha do certificado (se solicitada).

4. Salvar o documento assinado

  1. Após a assinatura, o LibreOffice mostrará a indicação de que o documento foi assinado.
  2. Salve o arquivo PDF assinado:
    • Arquivo → Exportar como PDF (para garantir a integridade do documento).

Verificar a assinatura no PDF

  • Abra o arquivo assinado em um leitor de PDF (como Okular, Evince, ou até mesmo no navegador).
  • Verifique se a assinatura está válida.

Notas adicionais

  1. Problemas com o certificado não reconhecido:
    • Certifique-se de que o arquivo .pfx foi importado corretamente no sistema usando ferramentas como:

      • Firefox: Vá em Configurações → Privacidade e Segurança → Certificados → Ver Certificados.
      • Chrome: Importar o certificado no menu de configurações.
    • Este procedimento foi testado no Google Chrome e Mozilla Firefox no Linux.

      • Certifique-se de manter o arquivo PFX em um local seguro e nunca compartilhe a senha de segurança.
2 curtidas

Boa tarde,

EDIT Refiz todo o processo e reverti algumas mudanças que fiz anteriormente. Está funcionando agora
Muito obrigado

Alguém conseguiu replicar isso no Linux Mint? Estou utilizando o Mint 22.1 mas não consigo instalar o SafeSign de jeito nenhum

Alguém consegue me dar uma luz? Tentei de tudo… Instalei dependências manualmente, copiei arquivo de LIB direto pra pasta do sistema… Nada resolveu

Certificado A3 Cartão

2 curtidas

To começando na advocacia agora e tava triste por ter que voltar ao windows por conta de token, seu post me salvou! Acabei de seguir os passos e deu certinho no Pop Os! Obrigado por compartilhar!

3 curtidas

De nada, meu amigo!!

Em começo de carreira, algo que ainda estou, espero que você tenha muito sucesso no que escolheu fazer ! Abraço e uma excelente semana ao colega de profissão !

1 curtida

Que bom que está funcionando agora ! Desculpe não ter visto sua mensagem antes e ofertado algum tipo de ajuda. De toda forma, fico feliz que o caminho desse post tenha te dado algum norte.

Sucesso !

1 curtida