Se vedi questo errore sui principali siti web che conosci, potrebbe essere un'indicazione che qualcuno sta eseguendo una sorta di attacco man-in-the-middle. Vi stanno presentando certificati "validi" per il sito Web che sono firmati dall'autorità di certificazione che non è attendibile.
Detto questo, ci sono diversi errori di configurazione che potrebbero essere sbagliati. Se stai vedendo questo per qualcosa sulla scala di Google, essere preoccupato. In caso contrario, è possibile che il sito Web stia utilizzando una catena di identità configurata in modo errato o utilizzi una delle autorità di certificazione che è stata contrassegnata come non attendibile in seguito a una violazione.
Ecco come ho verificato GMail:
#Output of 'openssl s_client -connect $BROKEN_SITE:443 -showcerts < /dev/null'
CONNECTED(00000003)
---
Certificate chain
0 s:/C=US/ST=California/L=Mountain View/O=Google Inc/CN=mail.google.com
i:/C=US/O=Google Inc/CN=Google Internet Authority
-----BEGIN CERTIFICATE-----
MIIDgjCCAuugAwIBAgIKGIsINwAAAAB3YjANBgkqhkiG9w0BAQUFADBGMQswCQYD
VQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZR29vZ2xlIElu
dGVybmV0IEF1dGhvcml0eTAeFw0xMzAxMDMxMjEyMzlaFw0xMzA2MDcxOTQzMjda
MGkxCzAJBgNVBAYTAlVTMRMwEQYDVQQIEwpDYWxpZm9ybmlhMRYwFAYDVQQHEw1N
b3VudGFpbiBWaWV3MRMwEQYDVQQKEwpHb29nbGUgSW5jMRgwFgYDVQQDEw9tYWls
Lmdvb2dsZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAKdLhbKA5ZQD
b8pK5WypcYChZ/e5Rugmtem9WU973RpQaMc633MVzqhpANQnCanN4dFuLcaj6TvW
qpRjgxpkJ7/+h5DU5rjkiah2IxUT4CdrOAr6H7HscQrsNP8NnByn1kcP7HBsKmuJ
kPXeWOlOrk1v8PHKfXLAenmUKP6FAVjJAgMBAAGjggFSMIIBTjAdBgNVHSUEFjAU
BggrBgEFBQcDAQYIKwYBBQUHAwIwHQYDVR0OBBYEFJ5FvWMPpHBCSLtVaEiEPHcH
2+iUMB8GA1UdIwQYMBaAFL/AMOv1QxE+Z7qekfv8atrjaxIkMFsGA1UdHwRUMFIw
UKBOoEyGSmh0dHA6Ly93d3cuZ3N0YXRpYy5jb20vR29vZ2xlSW50ZXJuZXRBdXRo
b3JpdHkvR29vZ2xlSW50ZXJuZXRBdXRob3JpdHkuY3JsMGYGCCsGAQUFBwEBBFow
WDBWBggrBgEFBQcwAoZKaHR0cDovL3d3dy5nc3RhdGljLmNvbS9Hb29nbGVJbnRl
cm5ldEF1dGhvcml0eS9Hb29nbGVJbnRlcm5ldEF1dGhvcml0eS5jcnQwDAYDVR0T
AQH/BAIwADAaBgNVHREEEzARgg9tYWlsLmdvb2dsZS5jb20wDQYJKoZIhvcNAQEF
BQADgYEAbzIEqZ5I7hoo9UX0i17B5A5MEui0Sv8HxgExC14AP/iUF1WKZSTEi7UH
IF9EPMUyCGT0hK08DYXTIED2XkOYj/CvyidAneH6OVR//iRdDIFu15DrCIpEZVnN
QZ+NXQL0kU1Dwj+VMLPYXDogHNX2/dfCc/Tf5oWj+n5fJ/crv6g=
-----END CERTIFICATE-----
1 s:/C=US/O=Google Inc/CN=Google Internet Authority
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
-----BEGIN CERTIFICATE-----
MIICsDCCAhmgAwIBAgIDC2dxMA0GCSqGSIb3DQEBBQUAME4xCzAJBgNVBAYTAlVT
MRAwDgYDVQQKEwdFcXVpZmF4MS0wKwYDVQQLEyRFcXVpZmF4IFNlY3VyZSBDZXJ0
aWZpY2F0ZSBBdXRob3JpdHkwHhcNMDkwNjA4MjA0MzI3WhcNMTMwNjA3MTk0MzI3
WjBGMQswCQYDVQQGEwJVUzETMBEGA1UEChMKR29vZ2xlIEluYzEiMCAGA1UEAxMZ
R29vZ2xlIEludGVybmV0IEF1dGhvcml0eTCBnzANBgkqhkiG9w0BAQEFAAOBjQAw
gYkCgYEAye23pIucV+eEPkB9hPSP0XFjU5nneXQUr0SZMyCSjXvlKAy6rWxJfoNf
NFlOCnowzdDXxFdF7dWq1nMmzq0yE7jXDx07393cCDaob1FEm8rWIFJztyaHNWrb
qeXUWaUr/GcZOfqTGBhs3t0lig4zFEfC7wFQeeT9adGnwKziV28CAwEAAaOBozCB
oDAOBgNVHQ8BAf8EBAMCAQYwHQYDVR0OBBYEFL/AMOv1QxE+Z7qekfv8atrjaxIk
MB8GA1UdIwQYMBaAFEjmaPkr0rKV10fYIyAQTzOYkJ/UMBIGA1UdEwEB/wQIMAYB
Af8CAQAwOgYDVR0fBDMwMTAvoC2gK4YpaHR0cDovL2NybC5nZW90cnVzdC5jb20v
Y3Jscy9zZWN1cmVjYS5jcmwwDQYJKoZIhvcNAQEFBQADgYEAuIojxkiWsRF8YHde
BZqrocb6ghwYB8TrgbCoZutJqOkM0ymt9e8kTP3kS8p/XmOrmSfLnzYhLLkQYGfN
0rTw8Ktx5YtaiScRhKqOv5nwnQkhClIZmloJ0pC3+gz4fniisIWvXEyZ2VxVKfml
UUIuOss4jHg7y/j7lYe8vJD5UDI=
-----END CERTIFICATE-----
---
Server certificate
subject=/C=US/ST=California/L=Mountain View/O=Google Inc/CN=mail.google.com
issuer=/C=US/O=Google Inc/CN=Google Internet Authority
---
No client certificate CA names sent
---
SSL handshake has read 2110 bytes and written 348 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-RC4-SHA
Server public key is 1024 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1.1
Cipher : ECDHE-RSA-RC4-SHA
Session-ID: 72257B54ADC216B87F6CDBC74BD6C66EDFB79CDF5BAC478DBE74885759CA7564
Session-ID-ctx:
Master-Key: EACF7DDE1B6AF2BD1F274DD9009C718812B8F45B4CDE348CDA2B488C94070B6ABED087B11DF7B74A6EF9A2D6E157F089
Key-Arg : None
PSK identity: None
PSK identity hint: None
SRP username: None
TLS session ticket lifetime hint: 100800 (seconds)
TLS session ticket:
0000 - c2 4f ef 02 39 eb 74 ec-60 c1 97 ee f0 de d6 5d .O..9.t.'......]
0010 - 8c 64 96 ad c0 ef a1 8d-49 4d df 7c 3e d7 13 39 .d......IM.|>..9
0020 - 8c cf 1b db 4b 26 af f4-bc b7 44 95 5b 6c b3 05 ....K&....D.[l..
0030 - 23 40 81 bf 46 e9 64 32-24 8b 49 73 82 12 14 5b #@..F.d2$.Is...[
0040 - 3d eb b1 75 3b 38 c7 9c-3c 21 ac 2c 2a d5 9f 71 =..u;8..<!.,*..q
0050 - 7c 77 6b fa 44 f7 6a d3-19 10 ba cd f2 8e 7f 73 |wk.D.j........s
0060 - ba 20 43 7f 83 db 78 6a-42 59 2a b6 bb b2 c5 c3 . C...xjBY*.....
0070 - f3 71 ee 26 48 82 39 36-9f 96 b1 7e 85 a8 3f 39 .q.&H.96...~..?9
0080 - 39 82 0e b3 18 cd 45 51-7a 19 ee 56 f8 dd 2d 3c 9.....EQz..V..-<
0090 - 20 49 b7 69 I.i
Start Time: 1360703474
Timeout : 300 (sec)
Verify return code: 20 (unable to get local issuer certificate)
---
In fondo noterai "Verifica codice di ritorno: 20 (impossibile ottenere il certificato emittente locale)". Questo perché la catena di certificati si aspetta che il client mantenga la propria copia delle chiavi di root attendibili. Puoi vedere l'elenco delle chiavi che sono incluse in Firefox all'indirizzo link .
C'è un intero casino di cose, ma fondamentalmente Equifax è GeoTrust , quindi ho scaricato quella chiave. Puoi vedere le parti importanti di questo in due punti:
1 s:/C=US/O=Google Inc/CN=Google Internet Authority
i:/C=US/O=Equifax/OU=Equifax Secure Certificate Authority
e di andare oltre e di eseguire openssl x509 -text
su quel certificato per ottenere l'ID della chiave di firma dal secondo blocco di certificati:
X509v3 Authority Key Identifier: keyid:48:E6:68:F9:2B:D2:B2:95:D7:47:D8:23:20:10:4F:33:98:90:9F:D4
Quindi quello di cui abbiamo bisogno è una copia del certificato di root con la chiave, e questo è uno di una specie di fiducia. Il link ha finito per essere il pacchetto che ho scelto perché esportare da vari punti del sistema operativo è una seccatura al minimo.
L'esecuzione di openssl s_client -connect $BROKEN_SITE:443 -showcerts -CAfile cacert.pem < /dev/null
ora mi dà un codice di ritorno favorevole:
Start Time: 1360706261
Timeout : 300 (sec)
Verify return code: 0 (ok)
Puoi anche provare a trovare manualmente quella chiave sul tuo sistema ed esportarla per SSL per verificare.