Instalando uma CA
Copie seu certificado no formato PEM (o formato que tem ----BEGIN CERTIFICATE----
nele) em /usr/local/share/ca-certificates
e nomeie-o com uma extensão de arquivo .crt
.
Em seguida, execute sudo update-ca-certificates
.
Advertências: Esta instalação afeta apenas os produtos que usam este armazenamento de certificados. Alguns produtos podem usar outros armazenamentos de certificados; Se você usar esses produtos, precisará adicionar esse certificado de autoridade de certificação também a esses outros armazenamentos de certificados. ( Instruções do Firefox , instruções do Chrome , Instruções Java )
Testando o CA
Você pode verificar se isso funcionou procurando pelo certificado que você acabou de adicionar em /etc/ssl/certs/ca-certificates.crt
(que é apenas uma longa lista de todas as suas CAs confiáveis concatenadas juntas).
Você também pode usar o s_client do OpenSSL tentando conectar-se a um servidor que está usando um certificado assinado pela CA que acabou de instalar.
$ openssl s_client -connect foo.whatever.com:443 -CApath /etc/ssl/certs
CONNECTED(00000003)
depth=1 C = US, ST = Virginia, O = "Whatever, Inc.", CN = whatever.com, emailAddress = [email protected]
verify return:1
depth=0 C = US, ST = Virginia, L = Arlington, O = "Whatever, Inc.", CN = foo.whatever.com
verify return:1
---
Certificate chain
0 s:/C=US/ST=Virginia/L=Arlington/O=Whatever, Inc./CN=foo.whatever.com
i:/C=US/ST=Virginia/O=Whatever, Inc./CN=whatever.com/[email protected]
... snip lots of output ...
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
Start Time: 1392837700
Timeout : 300 (sec)
Verify return code: 0 (ok)
A primeira coisa a procurar é a cadeia de certificados perto do topo da saída. Isso deve mostrar a autoridade de certificação como o emissor (ao lado de i:
). Isso informa que o servidor está apresentando um certificado assinado pela CA que você está instalando.
Em segundo lugar, procure o verify return code
no final para ser definido como 0 (ok)
.