Como faço para instalar um certificado raiz?

Como faço para instalar um certificado raiz?

Alguém pode me indicar um bom tutorial sobre como instalar um certificado raiz no Ubuntu?

Recebi um .crtarquivo. Entendo que é necessário criar um diretório em /usr/share/ca-certificates/newdomain.orge colocá-lo .crt nesse diretório. Além disso, não tenho certeza de como proceder.

Responder1

Dado um arquivo de certificado CA foo.crt, siga estas etapas para instalá-lo no Ubuntu:

  1. Crie um diretório para certificados de CA extras em /usr/local/share/ca-certificates:

    sudo mkdir /usr/local/share/ca-certificates/extra
    
  2. Copie o .crtarquivo CA para este diretório:

    sudo cp foo.crt /usr/local/share/ca-certificates/extra/foo.crt
    
  3. Deixe o Ubuntu adicionar o .crtcaminho do arquivo relativo /usr/local/share/ca-certificatesa /etc/ca-certificates.conf:

    sudo dpkg-reconfigure ca-certificates
    

    Para fazer isso de forma não interativa, execute:

    sudo update-ca-certificates
    

No caso de um .pemarquivo no Ubuntu, ele deve primeiro ser convertido em um .crtarquivo:

openssl x509 -in foo.pem -inform PEM -out foo.crt

Ou um .cerarquivo pode ser convertido em um .crtarquivo:

openssl x509 -inform DER -in foo.cer -out foo.crt

Responder2

Dado um arquivo de certificado CA 'foo.crt', siga estas etapas para instalá-lo no Ubuntu:

Primeiro, copie sua CA para dir/usr/local/share/ca-certificates/

sudo cp foo.crt /usr/local/share/ca-certificates/foo.crt

então, atualize o armazenamento CA

sudo update-ca-certificates

Isso é tudo. Você deve obter esta saída:

Updating certificates in /etc/ssl/certs... 1 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....
Adding debian:foo.pem
done.
done.

Nenhum arquivo é necessário para editar. O link para sua CA é criado automaticamente.

Observe que os nomes dos arquivos do certificado devem terminar em .crt, caso contrário o update-ca-certificatesscript não os detectará.

Este procedimento também funciona em versões mais recentes:manuais.

Responder3

Esclarecimento entre update-ca-certificatese dpkg-reconfigure ca-certificatesporque um funciona e o outro não!!

  • update-ca-certificatesousudo update-ca-certificates só vai funcionarse /etc/ca-certificates.conffoi atualizado.

  • /etc/ca-certificate.conf só é atualizadodepois de executar dpkg-reconfigure ca-certificateswhich atualiza os nomes dos certificados a serem importados /etc/ca-certificates.conf.

Isso é afirmado no cabeçalho do /etc/ca-certificates.confarquivo:

# This file lists certificates that you wish to use or to ignore to be
# installed in /etc/ssl/certs.
# update-ca-certificates(8) will update /etc/ssl/certs by reading this file.
#
# This is autogenerated by dpkg-reconfigure ca-certificates.  <=======
# Certificates should be installed under /usr/share/ca-certificates
# and files with extension '.crt' is recognized as available certs.
#
# line begins with # is comment.
# line begins with ! is certificate filename to be deselected.
#
mozilla/ACCVRAIZ1.crt
mozilla/AC_RAIZ_FNMT-RCM.crt
mozilla/Actalis_Authentication_Root_CA.crt
mozilla/AddTrust_External_Root.crt
...

Como você pode ver, o formato em /etc/ca-certificates.confé<folder name>/<.crt name>

Então, para usar update-ca-certificatesou sudo update-ca-certificatesvocê pode fazer o seguinte para importar um .crt:

  1. Crie um diretório para certificados extras de CA em /usr/share/ca-certificates:

     sudo mkdir /usr/share/ca-certificates/extra
    
  2. Copie o arquivo .crt para este diretório:

     sudo cp foo.crt /usr/share/ca-certificates/extra/foo.crt
    
  3. Anexe uma linha ao /etc/ca-certificates.confusing <folder name>/<.crt name>:

     echo "extra/foo.crt" | sudo tee -a /etc/ca-certificates.conf
    
  4. Atualizar certificadosnão interativamentecom sudo update-ca-certificates

     $ sudo update-ca-certificates
     ...
     Updating certificates in /etc/ssl/certs...
     1 added, 0 removed; done.
    

Responder4

Outras respostas não funcionaram para mim com o Ubuntu 18.04. Anexe o certificado /etc/ssl/certs/ca-certificates.crtusando o seguinte comando:

cat YOUR_CERT_HERE.crt >> /etc/ssl/certs/ca-certificates.crt 

informação relacionada