Sto migrando un sito Web sicuro. Ho installato lo stesso certificato sul nuovo host e ho indirizzato il nome del dominio sul nuovo indirizzo IP (tramite il mio file hosts). Tuttavia, quando provo a colpire quel server con un browser web, ottengo un errore di verifica del certificato.
Per complicare le cose, il nuovo host è un servizio che utilizza SNI. Pertanto, il messaggio di errore che mi viene mostrato, che il nome di dominio non corrisponde al certificato, si riferisce al cert prima SNI. Sono dubbioso SNI è impostato in modo errato dal momento che ogni altra connessione funziona.
Per provare a diagnosticare il problema, ho usato openssl s_client
. Con mio sgomento, openssl
non ha problemi di connessione, e non vedo errori durante l'emissione di una richiesta HTTP:
openssl s_client -connect <ipaddress>:443 -servername <domainname> -showcerts -debug
Ci sono altri strumenti là fuori per diagnosticare perché i browser web (che ho provato con Chrome, Firefox e IE) stanno rifiutando un certificato nonostante il fatto che openssl s_client
non non ?
Ecco l'output abbreviato da openssl
nel caso in cui tu possa individuare il problema:
CONNECTED(00000003)
Certificate chain
0 s:<subject details>
i:<issuer details>
<certificate>
1 s:<subject details>
i:<issuer details>
<certificate>
2 s:<subject>
i:<issuer, same as subject>
<certificate>
---
Server certificate
[certificate information]
---
No client certificate CA names sent
Server Temp Key: ECDH, prime256v1, 256 bits
---
SSL handshake has read 4392 bytes and written 408 bytes
---
New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256-GCM-SHA384
Server public key is 2048 bit
Secure Renegotiation IS supported
Compression: NONE
Expansion: NONE
SSL-Session:
Protocol : TLSv1.2
Cipher : ECDHE-RSA-AES256-GCM-SHA384
Session-ID: <session id>
Session-ID-ctx:
Master-Key: <master key>
Key-Arg : None
Krb5 Principal: None
PSK identity: None
PSK identity hint: None
TLS session ticket lifetime hint: 300 (seconds)
TLS session ticket:
<hex output>
Start Time: 1434382473
Timeout : 300 (sec)
Verify return code: 0 (ok)
---
read:errno=0
Aggiorna :
Rapporti di Chrome "Il certificato del server non corrisponde all'URL", ma come ho detto, questo è dovuto all'utilizzo di SNI; si lamenta che il certificato utilizzato inizialmente per la connessione non corrisponde all'URL. openssl
fa la cosa SNI bene, quindi sto pensando che il browser stia rifiutando il certificato che openssl
accetta.
Errore di Firefox:
uses an invalid security certificate. The certificate is only valid for the following names: (Error code: ssl_error_bad_cert_domain)
Errore IE:
The security certificate presented by this website was issued for a different website's address.
Risoluzione:
Grazie a tutti per il vostro aiuto. I dettagli sono difficili da fornire nel mio caso per una varietà di problemi. Ho trovato il problema però. Il certificato è stato correttamente installato e accettato. Quello che non ho notato è che il sito ha eseguito un reindirizzamento a un dominio per il quale il certificato non è stato installato correttamente (www.thedomainname.com). Vorrei aver notato prima.