Mesmo que você possa se conectar a um servidor web por https e obter um pequeno ícone de cadeado verde, isso não significa que os certificados do servidor são válidos para todos os clientes.
Na verdade, se o servidor não tiver sido configurado para fornecer toda a cadeia de certificados da Autoridade de Certificação, a conexão resultante será considerada insegura por alguns clientes, como programas Ruby.
Felizmente, podemos usar openssl
o s_client
comando de para verificar rapidamente o certificado de um servidor:
openssl s_client -connect your.secure.server.com:443
Observe as primeiras linhas da saída e você verá se o certificado tem uma cadeia válida, conforme abaixo:
Certificate chain
0 s:/OU=Domain Control Validated/CN=*.server.com
i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2
1 s:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certs.godaddy.com/repository//CN=Go Daddy Secure Certificate Authority - G2
i:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./CN=Go Daddy Root Certificate Authority - G2
2 s:/C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./CN=Go Daddy Root Certificate Authority - G2
i:/C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification Authority
3 s:/C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification Authority
i:/C=US/O=The Go Daddy Group, Inc./OU=Go Daddy Class 2 Certification Authority