Como instalar certificados intermediários (na AWS)?

22

Instalei a chave privada (codificada por pem) e o certificado de chave pública (codificado por pem) no Amazon Load Balancer. No entanto, quando verifico o SSL com a ferramenta de teste do site , recebo o seguinte erro:

Erro ao verificar o certificado SSL !! Não foi possível obter o emissor local do certificado. Não foi possível encontrar o emissor de um certificado consultado localmente. Normalmente, isso indica que nem todos os certificados intermediários estão instalados no servidor.

Eu converti o arquivo crt para pem usando estes comandos deste tutorial :

openssl x509 -in input.crt -out input.der -outform DER
openssl x509 -in input.der -inform DER -out output.pem -outform PEM

Durante a instalação do Amazon Load Balancer, a única opção que eu deixei de fora foi a cadeia de certificados. (codificado por pem) No entanto, isso era opcional. Isso pode ser a causa do meu problema? E se; Como crio uma cadeia de certificados?

ATUALIZAR

Se você solicitar a VeriSign, eles fornecerão uma cadeia de certificados. Essa cadeia inclui crt público, crt intermediário e crt de raiz. Remova a CRT pública da sua cadeia de certificados (que é o principal certificado) antes de adicioná-la à caixa da cadeia de certificação do Amazon Load Balancer.

Se você estiver solicitando HTTPS de um aplicativo Android, as instruções acima podem não funcionar em sistemas operacionais Android mais antigos, como 2.1 e 2.2. Para fazê-lo funcionar no sistema operacional Android mais antigo:

  • vai aqui
  • clique na guia "ssl de varejo" e clique em "site seguro"> "CA Bundle for Apache Server"
  • copie e cole esses certificados intermediários na caixa da cadeia de certificados. caso você não o encontre aqui, é o link direto .

Se você estiver usando certificados de confiança geográfica, a solução é a mesma para dispositivos Android; no entanto, você precisará copiar e colar seus certificados intermediários para Android.

getmizanur
fonte
Certificado intermediário == Certificado de cadeia
Chris S
obrigado @chris, você pode me dizer como posso criar um certificado de cadeia. Eu tentei pesquisar no entanto, estou realmente confuso sobre como criar este certificado de cadeia. alguma sugestão ou links para tutorial é muito apreciado
getmizanur
@getmizanur De onde é esse certificado? O fornecedor da CA deve poder fornecer a cadeia codificada pelo PEM.
Shane Madden

Respostas:

21

concatene os arquivos fornecidos manualmente, na seguinte ordem:

  • site.com.crt
  • intermediário.crt (um ou mais, a ordem deles não importa)
  • ROOT.crt

você pode fazer isso de um shell com o catcomando

cat site.com intermediate.crt ROOT.crt > site.chain.pem

ou copie / cole-os, sem espaço em branco, verifique se os certificados estão em linhas diferentes

-----BEGIN CERTIFICATE-----
site cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
intermediate cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
root cert
-----END CERTIFICATE-----
Eric Fortis
fonte
obrigado @eric, eu só tenho dois arquivos assinados .crt e .key. você pode me dizer como posso obter arquivos CRT intermediários e raiz?
getmizanur
3
concatenar o certificado do site com esses intermediários, sem certificado raiz.
Eric Fortis
@EricFortis Se o balanceador de carga da AWS quiser um arquivo de certificado e um arquivo de cadeia separados, ele pode querer apenas o (s) intermediário (s) e o root, sem o certificado em questão - não tenho certeza!
Shane Madden
7

Eu tive problemas com meu certificado SSL rápido; conforme

https://knowledge.rapidssl.com/support/ssl-certificate-support/index?page=content&id=SO21856&actp=search&viewlocale=en_US&searchid=1368427636740

Eu poderia corrigi-lo revertendo os certificados no pacote CA:

Problema

Ao instalar um certificado SSL no dispositivo Amazon Web Service (AWS) - Amazon EC2, você receberá a seguinte mensagem de erro.

Erro: certificado de chave pública inválido. Causa Esse problema pode ocorrer no dispositivo Amazon Web Service (AWS) - Amazon EC2 quando qualquer uma das seguintes condições for verdadeira.

RapidSSL Intermediate CA bundle certificate is not installed on Amazon Web Service (AWS) - > Amazon EC2 device
RapidSSL Intermediate CA bundle certificate is installed on Amazon Web Service (AWS) - Amazon > EC2 device but the CA bundle required needs to be installed in reversed order

Resolução

Para resolver o erro da instalação do certificado RapidSSL usando o Amazon Web Service (AWS) - dispositivo Amazon EC2, execute as seguintes etapas.

Etapa 1: Baixar certificado intermediário de pacote CA

Para baixar o certificado de pacote CA intermediário, consulte o artigo AR1548

Ao visualizar o pacote CA, você verá dois certificados empilhados um sobre o outro. Esses dois certificados precisarão ser trocados. O certificado superior precisa ser colocado na parte inferior e o certificado inferior precisa ser colocado na parte superior.

...

notalifeform
fonte
reverter certificados no meu arquivo ca-bunle funcionou como um encanto. obrigado!
Mehmet Fatih Yıldız
Este. Essa é a resposta correta. Você me ajudou muito.
precisa
5

Eu tive que passar pelo mesmo problema. Apenas o upload de um arquivo pem com o seguinte parece resolver o problema. Não gostou do site cert no topo

-----BEGIN CERTIFICATE-----
intermediate cert
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
root cert
-----END CERTIFICATE-----
STHAL
fonte
2
Sua resposta não é muito clara, mas se parece muito com a já dada e aceita. É realmente outra resposta para a pergunta?
Tonin 15/03/2013
esta resposta funcionou para mim. Eu segui a resposta aceita incluindo o certificado do site, mas isso não funcionou. Apenas colocando o certificado intermediário e o certificado raiz, conforme mencionado nesta resposta, funcionou muito bem!
user1258600
4

Para certificados emitidos pela Comodo

    Private Key: private_key.text
    Public Key Certificate: yourdomain.crt
    Certificate Chain: combine these 2
    cat COMODORSADomainValidationSecureServerCA.crt COMODORSAAddTrustCA.crt > certchain.txt
    (or paste in COMODORSADomainValidationSecureServerCA.crt first followd by COMODORSAAddTrustCA.crt) 
appsmatics
fonte
0

Eu também adquiri um certificado RapidSSL e estou tendo problemas com o erro "Certificado de chave pública inválido". Eu tentei tudo listado aqui, incluindo a reversão dos certificados da cadeia, omitindo-os, anexando-os ao certificado do servidor principal, etc.

No final, não consegui resolver o erro. Então, encontrei outra maneira de fazer upload de um certificado para a Amazon para uso com o Load Balancer (Elastic Beanstalk): Na verdade, existe uma GUI que permite o upload de certificados!

Está localizado em EC2 -> Balanceadores de carga -> Selecione seu balanceador de carga -> Listnerers (guia) -> Selecione HTTPS no menu suspenso -> Clique em Selecionar na guia Certificado SSL e um formulário é exibido, permitindo que você faça o upload do seu certificado!

GUI

Depois de colar os arquivos, funcionou como um encanto!

Elad Nava
fonte
Além disso, verifique se você está tentando fazer upload de uma "Chave privada RSA". stackoverflow.com/questions/17733536/…
Elad Nava