Estou tentando habilitar o ssl em um servidor usando um certificado do 123-reg, mas continuo recebendo este erro:
nginx: [emerg] SSL_CTX_use_certificate_chain_file("/opt/nginx/conf/cleantechlms.crt") failed (SSL: error:0906D06C:PEM routines:PEM_read_bio:no start line error:140DC009:SSL routines:SSL_CTX_use_certificate_chain_file:PEM lib)
Esta é a minha configuração nginx:
server {
listen 443;
server_name a-fake-url.com;
root /file/path/public;
passenger_enabled on;
ssl on;
ssl_certificate /opt/nginx/conf/cleantechlms.crt;
ssl_certificate_key /opt/nginx/conf/cleantechlms.key;
}
Eu tentei definir meu crt e chave para permissões de arquivo completo, mas não há diferença.
Meu arquivo crt é o crt que foi emitido concatenado com o ca crt.
Atualizar
Eu tentei copiar as duas chaves em arquivos sperate e depois executar 'cat mykey.crt >> ca.cert'
Também tentei copiar manualmente as chaves no mesmo arquivo.
Alguma ideia?
/opt/nginx/conf/cleantechlms.crt
está quebrado de alguma forma. Como você o criou? Você poderia postar todas as etapas que fez?cleantechlms.crt
que você quer ter apenas o seu certificado público sem chave e cadeia de certificados do seu ca. Se você o abrir no editor de texto, verá apenas --BEGIN-CERTIFICATE-- blocks ..Respostas:
Obrigado pela ajuda, foi assim que resolvi:
Copie os certificados em um editor de texto para garantir que não haja espaço em branco (eu já havia feito isso)
Certifique-se de que as instruções de certificado de início e fim estejam na própria linha e tenham o mesmo número de '-' em cada extremidade.
Verifique se cada linha possui 64 caracteres (exceto a última linha)
fonte
Acabei com a mesma exceção e a corrigi adicionando a chave privada (x.509 + privatekey no final) no mesmo arquivo pem (formato pem). Eu acho que é porque eu costumava ter o mesmo formato e validar a configuração com "nignx -t".
Espero que ajude.
fonte