Uma cadeia de certificados é composta por um certificado raiz, certificados intermediários e um certificado SSL (certificado do servidor). Se faltar um certificado intermediário ou raiz, o navegador poderá exibir falha de conexão ou outro erro ao acessar o site. Siga as etapas deste tópico para verifique se a cadeia de certificados está completa e corrigir eventuais incompletudes.
Etapa 1: Verificar a integridade da cadeia de certificados SSL
Execute o comando abaixo no servidor para validar a integridade da cadeia de certificados. Você pode realizar essa verificação diretamente no servidor antes da publicação do site.
<Server_IP>: Substitua pelo endereço IP real do servidor.<Domain_Name>: Substitua pelo nome de domínio real do site.
openssl s_client -connect <Server_IP>:443 -servername <Domain_Name>
Na saída do comando openssl s_client -connect <Server_IP>:443 -servername <Domain_Name>, a seção Certificate chain lista os níveis da cadeia de certificados. O campo depth indica o nível de cada certificado (depth 0 corresponde ao certificado do servidor; depth 1 e superiores referem-se a certificados intermediários ou raiz). O campo Verify return code apresenta o resultado da verificação da cadeia. Compare os dois exemplos de saída a seguir para determinar se a cadeia está completa.
Exemplo de saída com cadeia de certificados completa (a cadeia está íntegra e o Verify return code é 0):
depth=2 O = GlobalSign, CN = GlobalSign
verify return:1
depth=1 C = BE, O = GlobalSign nv-sa, CN = GlobalSign RSA OV SSL CA 2018
verify return:1
depth=0 C = CN, CN = www.example.com
verify return:1
CONNECTED(00000003)
---
Certificate chain
0 s:C = CN, CN = www.example.com
i:C = BE, CN = GlobalSign RSA OV SSL CA 2018
1 s:C = BE, O = GlobalSign nv-sa, CN = GlobalSign RSA OV SSL CA 2018
i:O = GlobalSign, CN = GlobalSign
---
...
Verify return code: 0 (ok)
Exemplo de saída com cadeia de certificados incompleta (o certificado intermediário está ausente, apenas o certificado do servidor foi retornado e o Verify return code é 21):
depth=0 C = CN, CN = www.example.com
verify error:num=20:unable to get local issuer certificate
verify return:1
---
Certificate chain
0 s:C = CN, CN = www.example.com
i:C = BE, CN = GlobalSign RSA OV SSL CA 2018
---
...
Verify return code: 21 (unable to verify the first certificate)
Ao comparar as duas saídas, observe que em uma cadeia completa a seção Certificate chain contém múltiplas entradas de depth (incluindo certificados intermediários e raiz além do certificado do servidor) e o Verify return code é 0. Em uma cadeia incompleta, a seção Certificate chain apresenta apenas depth 0 (certificado do servidor), surge um verify error (por exemplo, código de erro 20 ou 21) e o Verify return code difere de 0. Portanto, se a saída do comando mostrar somente o certificado do servidor (depth 0) sem o certificado intermediário (depth 1 ou superior), ou se o Verify return code não for 0, a cadeia de certificados está incompleta.
---
Certificate chain
0 s:C = CN, ST = Beijing, O = "xxx Technology Co., Ltd", OU = service operation department, CN = www.xxx
i:C = US, O = DigiCert Inc, CN = DigiCert SHA2 Secure Server CA
1 s:C = US, O = DigiCert Inc, CN = DigiCert SHA2 Secure Server CA
i:C = US, O = DigiCert Inc, OU = www.digicert.com, CN = DigiCert Global Root CA
---
Se o certificado do servidor e o intermediário estiverem armazenados no mesmo arquivo, certifique-se de que não existam espaços ou quebras de linha entre eles.
-----BEGIN CERTIFICATE-----
MIIJBzCCB++gAwIBAgIJAJGNv9rVgB8rMA0GCSqGSIb3DQEBCwUAMIGOMQswCQYD
......
6616mkcOi0SU770=
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
MIIEODCCA7igAwIBAgIBBzANBgkqhkiG9w0BAQsFADCBgzELMAkGA1UEBhMCVVMx
......
LXY2JtwE65/3YR8V3Idv7kaWKK2hJn0KCacuBKONvPi8BDAB
-----END CERTIFICATE-----
Etapa 2: Baixe novamente o certificado e configure-o
Implante o certificado em um servidor web. Para mais informações, consulte Instale um certificado em um servidor.
Implante o certificado em um serviço da Alibaba Cloud: Utilize o recurso de implantação no Certificate Management Service console para aplicar o certificado emitido com um clique em a um recurso específico da Alibaba Cloud. Para obter detalhes, consulte Deploy a certificate to an Alibaba Cloud service.