ERR_SSL_PROTOCOL_ERROR solo per alcuni utenti (nodejs, express)

voti
2

Solo alcuni (non tutti) gli utenti ricevono ERR_SSL_PROTOCOL_ERROR in Chrome quando tentano di visitare il mio sito espresso. Non sto ricevendo questo errore, quindi si sta rivelando un problema per il debug

Sto creando un server https utilizzando un file PFX che ho scaricato dal mio provider (1&1):

var options = {
  pfx: fs.readFileSync('./mysite_private_key.pfx'),
  passphrase: 'MYPASSPHRASE',
};
https.createServer(options, app).listen(443); 

https://whatsmychaincert.com mi dice che la catena è corretta ma si lamenta della stretta di mano:

ha la catena giusta.

[mysite]: Errore di handshake TLS: error:14077438:routine SSL:SSL23_GET_SERVER_HELLO:tlsv1 alert errore interno SSL Labs potrebbe essere in grado di dirvi cosa è andato storto

Ho cercato su Google senza successo, qualcuno sa quale potrebbe essere il problema? Ty.

È pubblicato 26/05/2020 alle 13:46
fonte dall'utente
In altre lingue...                            


2 risposte

voti
0

Una possibile fonte di stretta di mano non riuscita potrebbe essere la mancanza di un certificato intermedio, caopzione di tls.createSecureContext. Dovrebbe essere pubblicato sul sito web del vostro fornitore.

Spero che questo aiuti.

Risposto il 07/06/2020 a 01:10
fonte dall'utente

voti
0

al giorno d'oggi, quando il nostro server (es. 1&1) è configurato in modo sicuro, sono supportati solo tls v1.2 e tls v1.3 ..

quindi come si esegue il debug:

  • scansiona il tuo sito con SSL Labs Test anche vedere quali cifrari sono supportati, o alternativamente vedere nella nostra configurazione nginx/apache

  • tail -f i log del server, in particolare i file di log del catchall/altri_vhosts, poiché gli errori del protocollo ssl potrebbero essere nei log del sito e nel log generico del catchall quando il server non è in grado di decidere il nome

  • cercare di aggiornare il cromo degli utenti per supportare almeno tls 1.2

    chrome ha gli interruttori della linea di comando per modificare il suo comportamento del cifrario:

    • --ssl-version-max Specifica la versione massima SSL/TLS ("tls1.2" o "tls1.3"). ↪
    • --ssl-version-min Specifica la versione minima SSL/TLS ("tls1", "tls1.1", "tls1.2", o "tls1.3"). ↪

ZONA PERICOLO:

  • come ultima risorsa potreste provare ad accettare i cifrari ereditati nel vostro nginx-config ( ssl_ciphersdirettiva) come socat OPPURE (ultima risorsa) socat23 per verificare quale versione i vostri clienti supportano,

ricordatevi di disattivare tutto ciò che si trova al di sotto di tls v1. 2 in produzione ambiente

Risposto il 07/06/2020 a 15:57
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more