configuration log - ssl_error_rx_record_too_long e Apache SSL




https enable (13)

Ho avuto lo stesso problema in alcuni browser per accedere al mio sito SSL. Ho scoperto che dovevo dare a fireFox il proxy giusto (FireFox stava accedendo direttamente a internet).

A seconda della configurazione della lan (tunnelling, filtering, reindirizzamento proxy), la modalità "accesso diretto a internet" per FireFox genera questo errore.

Ho un cliente che tenta di accedere a uno dei miei siti e continuano a ricevere questo errore> ssl_error_rx_record_too_long

Stanno ottenendo questo errore su tutti i browser, tutte le piattaforme. Non riesco a riprodurre il problema.

Il mio server e io stesso si trovano negli Stati Uniti, il cliente si trova in India.

Ho cercato su Google il problema e la fonte principale sembra essere che la porta SSL stia parlando in HTTP. Ho controllato il mio server, e questo non sta succedendo. Ho provato la soluzione menzionata qui , ma il cliente ha dichiarato che non ha risolto il problema.

Qualcuno può dirmi come posso risolvere questo problema o come posso riprodurlo ???

LA SOLUZIONE

Si scopre che il cliente ha un proxy locale configurato male!

Spero che aiuti chiunque a trovare questa domanda cercando di eseguire il debug in futuro.


Vecchia domanda, ma primo risultato su Google per me, ecco cosa dovevo fare.

Ubuntu 12.04 Desktop con Apache installato

Tutte le configurazioni e mod_ssl sono state installate quando ho installato Apache, ma non era ancora collegato nei punti giusti. Nota: tutti i percorsi sottostanti sono relativi a / etc / apache2 /

mod_ssl è memorizzato in ./mods-available , e la configurazione del sito SSL è in ./sites-available , devi solo collegarli ai loro posti corretti in ./mods-enabled e ./sites-enabled

cd /etc/apache2
cd ./mods-enabled
sudo ln -s ../mods-available/ssl.* ./
cd ../sites-enabled
sudo ln -s ../sites-available/default-ssl ./

Riavviare Apache e dovrebbe funzionare. Stavo cercando di accedere a https: // localhost , quindi i risultati potrebbero variare a seconda dell'accesso esterno, ma questo ha funzionato per me.


Nel mio caso il problema era che https non era in grado di avviare correttamente perché Listen 443 era in deroga a "IfDefine SSL", ma il mio apache non si avviava con l'opzione -DSSL. La correzione era di cambiare il mio script apachectl in:

$HTTPD -k $ARGV

a:

$HTTPD -k $ARGV -DSSL

Spero che aiuti qualcuno.



Se si ha l'errore dopo l'installazione di un nuovo https vhost e la configurazione sembra essere corretta, ricordarsi di collegare anche in sites-enabled .


Si potrebbe anche provare a risolvere il file hosts.

Mantenere il file vhost con il dominio completo e aggiungere il nome host nel file hosts / etc / hosts (debian)

ip.ip.ip.ip name name.domain.com

Dopo aver riavviato apache2, l'errore dovrebbe essere eliminato.


Il mio problema era dovuto a un MTU LOW su una connessione VPN.

netsh interface ipv4 show inter

Idx  Met   MTU   State        Name
---  ---  -----  -----------  -------------------
  1 4275 4294967295  connected    Loopback Pseudo-Interface 1
 10 4250   **1300**  connected    Wireless Network Connection
 31   25   1400  connected    Remote Access to XYZ Network

Correzione: interfaccia netsh interfaccia set ipv4 "Connessione rete wireless" mtu = 1400

Potrebbe trattarsi di un problema anche con una connessione non VPN ...


Chiedi all'utente l'esatto URL che stanno utilizzando nel browser. Se stanno inserendo https://your.site:80 , potrebbero ricevere l'errore ssl_error_rx_record_too_long.


Per me la soluzione era che il mio ddclient non stava funzionando in modo corretto ...


Il link citato da Subimage era giusto per me. <VirtualHost _default_:443> cambiare il tag dell'host virtuale, cioè da <VirtualHost myserver.example.com:443> a <VirtualHost _default_:443>

Codice di errore: ssl_error_rx_record_too_long

Questo di solito significa che l'implementazione di SSL sul tuo server non è corretta. L'errore è solitamente causato da un problema lato server che l'amministratore del server dovrà investigare.

Di seguito sono alcune cose che consigliamo di provare.

  • Assicurati che la porta 443 sia aperta e abilitata sul tuo server. Questa è la porta standard per le comunicazioni https.

  • Se SSL sta usando una porta non standard, a volte FireFox 3 può dare questo errore. Assicurarsi che SSL sia in esecuzione sulla porta 443.

  • Se si utilizza Apache2, verificare che si stia utilizzando la porta 443 per SSL. Questo può essere fatto impostando il file ports.conf come segue

    Listen 80
    Listen 443 https
    
  • Assicurati di non avere più di un certificato SSL che condivide lo stesso IP. Assicurarsi che tutti i certificati SSL utilizzino il proprio IP dedicato.

  • Se si utilizza Apache2, controllare la configurazione di vhost. Alcuni utenti hanno segnalato che la modifica di <VirtualHost> a _default_ risolto l'errore.

Questo ha risolto il mio problema. È raro che io faccia un messaggio di errore su Google e ottenga il primo hit con la risposta giusta! :-)

In aggiunta a quanto sopra , queste sono altre soluzioni che altre persone hanno trovato stavano causando il problema:

  • Assicurati che il tuo certificato SSL non sia scaduto

  • Prova a specificare il codice:

    SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM:+SSLv3


Nel mio caso ho dovuto sostituire <VirtualHost *> con <VirtualHost *: 80> (che è l'impostazione predefinita su Ubuntu). Altrimenti, la porta 443 non stava usando SSL e stava inviando semplicemente HTML al browser.

Puoi verificare se questo è il tuo caso abbastanza facilmente: basta connettersi al server http://www.example.com:443 . Se vedi un semplice codice HTML, Apache non sta utilizzando SSL sulla porta 443, probabilmente a causa di una configurazione errata di VirtualHost.

Saluti!


Ho avuto un config host virtuale incasinato. Ricorda che hai bisogno di un host virtuale senza SSL per la porta 80 e un altro con SSL per la porta 443. Non è possibile avere entrambi in un host virtuale, come ha cercato di fare la configurazione generata da webmin.


un server Apache è un server http che può servire qualsiasi semplice richiesta http, in cui il server tomcat è in realtà un contenitore servlet che può servire richieste di servlet Java.

Il server Web [apache] elabora le richieste del client Web (browser Web) e lo inoltra al contenitore servlet [tomcat] e al contenitore elaborano le richieste e invia la risposta che viene inoltrata dal server Web al client Web [browser].

Inoltre puoi controllare questo link per ulteriori chiarimenti: -

https://sites.google.com/site/sureshdevang/servlet-architecture

Controlla anche questa risposta per ulteriori ricerche: -

https://softwareengineering.stackexchange.com/a/221092







apache configuration ssl webserver mod-ssl