Configurei o SSL no meu servidor da web, agora preciso de dois arquivos:
- Um certificado
- uma chave de certificado
Como crio um certificado autoassinado para fins de teste?
Configurei o SSL no meu servidor da web, agora preciso de dois arquivos:
Como crio um certificado autoassinado para fins de teste?
Respostas:
O Ubuntu, mesmo o sabor 'mínimo', vem com o ssl-cert
pacote pré-instalado, o que significa que você não precisa fazer nada.
Os arquivos que você está procurando já estão no seu sistema:
/etc/ssl/certs/ssl-cert-snakeoil.pem
/etc/ssl/private/ssl-cert-snakeoil.key
Avançado:
Se, por algum motivo, você precisar criar um certificado novo, poderá executar
sudo make-ssl-cert generate-default-snakeoil --force-overwrite
Se você deseja alterar a data de validade do seu certificado, pode manipular o script make-ssl-cert em /usr/sbin/make-ssl-cert
. Por volta de 124, há uma linha semelhante a esta:
openssl req -config $TMPFILE -new -x509 -nodes \
Onde você pode alterar a data de validade adicionando o -days
argumento:
openssl req -config $TMPFILE -new -days 365 -x509 -nodes \
Mais opções podem ser encontradas na página de manual dereq
.
/usr/share/ssl-cert/ssleay.cnf
.
www.test.mydomain.com
) usando o hostname
comando na CLI da VM. Em seguida, regenere a chave conforme você sugere, com --force-overwrite
o nome comum (CN) da chave e, em seguida, corresponde ao URL de teste. Finalmente, na máquina host, a instalação da chave como Autoridade de Certificação Raiz Confiável (nas Configurações do Chrome / Avançado) me deu a barra de endereço verde cobiçada.
make-ssl-cert
comando salvou o dia para mim!
Como já mencionado, o Ubuntu Server vem com as ferramentas necessárias. Dependendo da versão do servidor, você precisará procurar a documentação específica . Tentarei resumir o processo de geração de certificado autoassinado do LTS atual (12.04) .
Primeiro, você gera as chaves para a Solicitação de assinatura de certificado (CSR):
openssl genrsa -des3 -out server.key 2048
Cabe a você digitar uma senha ou não. Se o fizer, sempre que (re) iniciar um serviço usando esse certificado, você precisará fornecer a senha. Otoh, você pode criar uma chave "insegura" sem uma senha da chave segura:
openssl rsa -in server.key -out server.key.insecure
# shuffle the key names to continue without passphrases
mv server.key server.key.secure
mv server.key.insecure server.key
E agora você criará o CSR a partir da chave. Com o CSR e a chave, um certificado autoassinado pode ser gerado:
openssl req -new -key server.key -out server.csr
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
O último passo consiste em instalar o certificado e a chave, no Debian / Ubuntu, geralmente em /etc/ssl
:
sudo cp server.crt /etc/ssl/certs
sudo cp server.key /etc/ssl/private
E, finalmente, os aplicativos que usam o certificado / chave precisam ser configurados de acordo.