Esses dois erros não estavam relacionados, embora a mensagem de erro fosse a mesma.
[...]SSL-Session: Protocol : TLSv1.2 Cipher : ECDHE-RSA-AES256-GCM-SHA384 [...] Start Time: 1411583991 Timeout : 300 (sec) Verify return code: 20 (unable to get local issuer certificate)
Acima do erro foi emitido o comando openssl_client . Como explicado por Florian Heigl, você obtém esse erro porque o openssl_client precisa do certificado Raiz Globalsign em /etc/ssl/certs
.
OCSP_basic_verify() failed (SSL: error:27069065:OCSP routines:OCSP_basic_verify:certificate verify error:Verify error:unable to get local issuer certificate) while requesting certificate status, responder: gv.symcd.com
Para este erro, foi emitido por rotina ocgin nginx , especialmente quando você adiciona ssl_stapling_verify on;
line em nginx.conf.
Veja aqui um trecho da documentação de ssl_stapling_verify
para explicar por que ele gera o erro
Syntax: ssl_stapling_verify on | off;
Enables or disables verification of OCSP responses by the server.
For verification to work, the certificate of the server certificate issuer, the root certificate, and all intermediate certificates should be configured as trusted using the ssl_trusted_certificate directive.
Em outras palavras, você precisa fornecer (2) Pacote intermediário CA (RapidSSL SHA256 CA - G3) e (3) Pacote intermediário CA (GeoTrust Global CA) para ssl_trusted_certificate
directiva.
cat GeoTrustGlobalCA.crt rapidsslG3.crt > ocsp-chain.crt
e adicione a diretiva ocsp-chain.crt
to ssl_trusted_certificate
.