https (ssl secured) i siti Web locali non funzionano in Safari e Chrome in Mac Yosemite. Come posso risolvere questo?

1

Come sviluppatore, eseguirò e testerò le app Web che sto sviluppando localmente. Ma Chrome e Safari non mi consentono di colpire il mio server locale con SSL abilitato.

Il collegamento non funziona dicendo errore SSL con il seguente messaggio di errore. Penso che abbia qualcosa a che fare con l'aggiunta del mio certificato ad OS X Keychain Access, ma non riesco a capire cosa sia effettivamente necessario fare!

Qualcuno potrebbe darmi una mano!

SSL connection error Hide details Unable to make a secure connection to the server. This may be a problem with the server, or it may be requiring a client authentication certificate that you don't have. Error code: ERR_SSL_PROTOCOL_ERROR

Aggiorna

Stavo generando il keystore e il certificato SSL autofirmati usando il comando di sotto

keytool -genkey -alias tomcat -keyalg RSA -sigalg SHA256withRSA -keystore /path/to/keystore -keysize 2048 -validity 365

Il mio problema è stato risolto, quando ho generato il mio certificato autofirmato con un semplice comando sotto.

keytool -genkey -alias tomcat -keyalg RSA -keystore /path/to/keystore

Non sono sicuro del perché!?

    
posta Santhosh Gandhe 16.01.2015 - 21:39
fonte

5 risposte

1

È probabile che il problema riguardi i certificati per il tuo server. Probabilmente non hai un certificato SSL per localhost:8443 (dato che è improbabile che una CA ne pubblichi uno per quel nome host), quindi ovviamente otterrai degli errori di certificato. O fai clic sugli errori del certificato; oppure scegli un dominio valido che controlli, ottieni un certificato e ospita il tuo sito su quel dominio.

Se hai un certificato per il tuo dominio ( example.com ) e hai un certificato SSL per quel dominio (ad esempio, per www.example.com ), un'altra cosa che potresti provare è impostare DNS (o il tuo file /etc/hosts ) in modo che www.example.com risolva localhost (127.0.0.1). Questo potrebbe ancora incontrare altri problemi, e in realtà, è meglio testarlo sul dominio per il quale hai un certificato o fare clic sugli errori del certificato.

Nessuno di questi è probabilmente specifico per Mac OS X.

    
risposta data 17.01.2015 - 02:14
fonte
1

Due cose che farei:

  1. Se il servizio è in ascolto su *: 8443, quindi non chiamerei link ma più link , perché questo mi consente di

  2. Usa il certificato aziendale e inserisci un alias DNS nel tuo file / etc / hosts, come

    192.168.24.3 www.mycompany.com

Ma DEVE ESSERE lo stesso nome del certificato, il CN!

Attenzione: ogni volta che inserisci ora "www.mycompany.com:8443" o "www.mycompany.com" Safari / Chrome ti reindirizzerà ora all'istanza locale. :) Non essere irritato e non chiamare il tuo Helpdesk quando il sito della tua azienda non è raggiungibile a causa del blocco del tuo server web locale. :)

Felice sviluppo! :)

    
risposta data 19.01.2015 - 09:16
fonte
0

Se il tuo server web locale sta ancora utilizzando SSLv3, le versioni correnti di Chrome non si connetteranno più a esso. Chrome (e credo Safari) ha rimosso il supporto per il fallback SSL3 per mitigare la vulnerabilità di POODLE.

Se ritieni che il tuo server stia ancora utilizzando SSL3, fai un rapido Google di "POODLE SSLv3" per ottenere ulteriori informazioni.

    
risposta data 17.01.2015 - 03:42
fonte
0

Per i test locali è possibile utilizzare un certificato autofirmato. Genera il tuo utilizzando l'utilità openssl oppure puoi utilizzare questo sito selfsignedcertificate.com

È possibile aggiungere il certificato generato come certificato attendibile nelle impostazioni del browser.

    
risposta data 19.01.2015 - 08:49
fonte
0

Utilizza l'indirizzo IP della tua rete locale. Puoi trovarlo eseguendo ifconfig da un terminale bash. Produce alcuni output come:

eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.16.0.123  netmask 255.255.255.0
...
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
...

In quanto sopra, il tuo indirizzo IP è 192.16.0.123.

Ora nella barra degli indirizzi di Safari, anziché:

https://localhost:8443

Usa

https://198.162.0.123:8443

Ha funzionato per me su Browserstack. Grazie ad Aravind Paul nel supporto BrowserStack per questa risposta!

    
risposta data 20.09.2017 - 17:45
fonte

Leggi altre domande sui tag