[Tutorial] Instalar certificado digital Safesign usando distrobox em qualquer distro
I. Introdução
Uma das maiores dificuldades que se tem é garantir a compatibilidade das distribuições Linux com os pacotes que fornecem certificados digitais. O empacotamento por vezes pode ser compatível – como o caso do deb fornecido pela Safesign para Ubuntu quando instalado no Debian -, mas por vezes não o é – como no caso do rpm fornecido pela Safesign para RHEL no openSUSE.
Hoje em dia isso pode ser facilmente ultrapassado mediante o uso do distrobox em conjunto com podman.
II. Instalar distrobox e podman
Para tanto, é necessário instalar distrobox com podman em sua distribuição:
No Fedora: # dnf install distrobox podman
No Arch: # pacman -Suy distrobox podman
No openSUSE: # zypper in distrobox podman
No Debian: # apt install distrobox podman
III. Instalar pcsclite
Para que tal solução funcione, faz-se necessário, contudo, que antes se instale na distribuição os pacotes necessários para que o certificado digital seja reconhecido pelo sistema: os pacotes pcsclite (que funciona de “middleware” para o token e o certificado digital em si) e o ccid (que fornece interface genérica USB para o token):
No Fedora: # dnf install pcsc-lite pcsc-lite-ccid (já vem instalado por padrão no Workstation e Silverblue)
No Arch: # pacman -Suy pcsclite ccid
No openSUSE: # zypper in pcsc-lite pcsc-ccid
No Debian: # apt install pcscd
Feita a instalação, o serviço do pcsc deverá ser habilitado: # systemctl enable --now pcscd.service
IV. Criar o contêiner e nele ingressar
O distrobox funcionará como contêiner imperceptível (seamless) por meio do qual o certificado digital poderá rodar sem qualquer preocupação.
Para tanto deverá se criar o contêiner, ao qual nomearemos de “certificado”:
$ distrobox-create --image debian:stable --name certificado
Uma vez criados, devemos entrar no contêiner por meio do seguinte comando:
$ distrobox-enter certificado
Serão feitas algumas instalações finais: uma vez encerradas estaremos dentro do contêiner, que deverá parecer com isso:
usuário@certificado:~$
V. Instalar aplicações no contêiner
Agora teremos que fazer a instalação do nano (para permitir edição de textos) e firefox-esr (para utilizar como navegador do certificado digital) dentro do contêiner:
$ sudo apt install firefox-esr nano
Feita a instalação, deveremos agora instalar o certificado digital. Para tanto, vamos precisar os seguintes arquivos e deixá-lo em um mesmo diretório, a fim de que a instalação tenha sucesso:
libtiff5: http://ftp.us.debian.org/debian/pool/main/t/tiff/libtiff5_4.2.0-1+deb11u5_amd64.deb
libwebp6: http://ftp.us.debian.org/debian/pool/main/libw/libwebp/libwebp6_0.6.1-2.1+deb11u2_amd64.deb
libwxbase: http://ftp.us.debian.org/debian/pool/main/w/wxwidgets3.0/libwxbase3.0-0v5_3.0.5.1+dfsg-2_amd64.deb
libwxgtk3: http://ftp.debian.org/debian/pool/main/w/wxwidgets3.0/libwxgtk3.0-gtk3-0v5_3.0.5.1+dfsg-2_amd64.deb
Safesign 4.0: https://certificaat.kpn.com/files/drivers/SafeSign/SafeSign IC Standard Linux 4.0.0.0-AET.000 ub2004 x86_64.deb
Colocados todos no mesmo diretórios, basta rodar o seguinte comando para instalar os pacotes dentro do contêiner:
$ sudo apt ./*
VI. Exportar aplicações instaladas no contêiner
Feita a instalação, agora será necessário “exportar” os programas do contêiner para que possam ser abertos por meio de entrada no menu do desktop. Para tanto, deverá rodar os seguintes comandos dentro do contêiner:
$ distrobox-export --app tokenadmin
$ distrobox-export --app firefox-esr
Com isso, bastará abrir o tokenadmin por meio do menu e verificar se detectou o certificado digital. Caso não detecte, veja se o serviço pcscd.service está rodando.
VII. Configurações finais
Agora bastará carregar o certificado digital no Firefox no gerenciador de dispositivos, fazendo referência ao local da biblioteca do certificado, isto é, “/lib/libaetpkss.so”.
Para configurar o certificado no WebPKI, utilizado pelo eSAJ do TJSP e outros Estados, basta instalar o plugin no Firefox, instalar o deb dentro do contêiner, e sinalizar no plugin a opção “Dispositivos SafeSign AET” em “Cripto Dispositivos”. O mesmo valor para o Web Signer utilizado pelo eSAJ TJAM.
Quanto ao PjeOffice Pro, será necessário fazer uma pequena alteração. Baixe-o e descompacte-o em algum diretório de sua home, por exemplo, ~/PjeOffice.
Lá, edite o pjeoffice-pro.sh, alterando onde está “a3auto=true” para “a3auto=false”. Após isso, habilite-o dentro do contêiner para funcionar como executável:
$ chmod +x pjeoffice-pro.sh
Feito isso, exporte-o para rodar como comando diretamente do seu terminal – o diretório deverá ser absoluto. Veja um exemplo abaixo:
$ distrobox-export --bin /home/pedro/PJeOffice/pjeoffice-pro.sh
Caso não funcione, verifique se /home/usuário/.local/bin encontra-se no $PATH. Se não estiver, adicione o seguinte texto no ~/.bashrc:
PATH="$PATH:/$HOME/.local/bin"
Para que o PJeOffice funcione, será necessário remeter à biblioteca localizada em /lib/libaetpkss.so em suas configurações.
Acredito que assim agora teremos um sistema quase totalmente funcional para o trabalho e livre de surpresas.
Salas de discussão
- 721 Todas as salas de discussão
- 5 Eventos
- 402 Fedora
- 7 CoreOS
- 137 Spins
- 11 CINNAMON
- 28 GNOME
- 63 KDE
- 10 LXDE
- 4 LXQT
- 13 MATE
- SOAS
- 3 XFCE
- 13 Server
- 84 Workstation
- 33 SilverBlue
- Atomic
- 3 Labs
- ARM®
- 3 Segurança
- 7 Servidores
- 222 Tutoriais
- 6 Críticas e Sugestões
- 16 Novidades e anuncios
- 5 CentOS
- 18 Games
- 31 Hardware
- 8 Linguagens de programação