Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Solução de Problemas com Certificados

Como sei se meus certificados estão no formato PEM?

Você pode reconhecer o formato PEM pelas seguintes características:

  • O arquivo começa com o seguinte cabeçalho:

      -----BEGIN CERTIFICATE-----
  • O cabeçalho é seguido por uma longa sequência de caracteres.

  • O arquivo termina com um rodapé: ----FIM DO CERTIFICADO----

Exemplo de Certificado PEM:

----BEGIN CERTIFICATE-----
MIIGVDCCBDygAwIBAgIJAMiIrEm29kRLMA0GCSqGSIb3DQEBCwUAMHkxCzAJBgNV
... more lines
VWQqljhfacYPgp8KJUJENQ9h5hZ2nSCrI+W00Jcw4QcEdCI8HL5wmg==
-----END CERTIFICATE-----

Exemplo de Chave de Certificado PEM:

-----BEGIN RSA PRIVATE KEY-----
MIIGVDCCBDygAwIBAgIJAMiIrEm29kRLMA0GCSqGSIb3DQEBCwUAMHkxCzAJBgNV
... more lines
VWQqljhfacYPgp8KJUJENQ9h5hZ2nSCrI+W00Jcw4QcEdCI8HL5wmg==
-----END RSA PRIVATE KEY-----

Se sua chave se parecer com o exemplo abaixo, veja Convertendo uma Chave de Certificado de PKCS8 para PKCS1.

-----BEGIN PRIVATE KEY-----
MIIGVDCCBDygAwIBAgIJAMiIrEm29kRLMA0GCSqGSIb3DQEBCwUAMHkxCzAJBgNV
... more lines
VWQqljhfacYPgp8KJUJENQ9h5hZ2nSCrI+W00Jcw4QcEdCI8HL5wmg==
-----END PRIVATE KEY-----

Convertendo uma Chave de Certificado de PKCS8 para PKCS1

Se você estiver usando um arquivo de chave de certificado PKCS8, o Rancher registrará a seguinte linha:

ListenConfigController cli-config [listener] failed with : failed to read private key: asn1: structure error: tags don't match (2 vs {class:0 tag:16 length:13 isCompound:true})

Para que isso funcione, você precisará converter a chave de PKCS8 para PKCS1 usando o comando abaixo:

openssl rsa -in key.pem -out convertedkey.pem

Agora você pode usar convertedkey.pem como arquivo de chave de certificado para o Rancher.

Qual é a ordem dos certificados se eu quiser adicionar meu(s) intermediário(s)?

A ordem de adição dos certificados é a seguinte:

-----BEGIN CERTIFICATE-----
%YOUR_CERTIFICATE%
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
%YOUR_INTERMEDIATE_CERTIFICATE%
-----END CERTIFICATE-----

Como valido minha cadeia de certificados?

Você pode validar a cadeia de certificados usando o binário openssl. Se a saída do comando (veja o exemplo do comando abaixo) terminar com Verify return code: 0 (ok), sua cadeia de certificados é válida. O arquivo ca.pem deve ser o mesmo que você adicionou ao contêiner rancher/rancher.

Ao usar um certificado assinado por uma Autoridade Certificadora reconhecida, você pode omitir o parâmetro -CAfile.

Comando:

openssl s_client -CAfile ca.pem -connect rancher.yourdomain.com:443
...
    Verify return code: 0 (ok)