Jak rozwiązać problem z kodem błędu: ssl_error_rx_record_too_long?

Jeśli przeglądasz witrynę internetową i pojawia się komunikat o błędzie „ssl_error_rx_record_too_long” , może to być zarówno mylące, jak i frustrujące. Błąd zazwyczaj pojawia się w przeglądarce Firefox i wskazuje na błąd podczas uzgadniania SSL/TLS między przeglądarką a serwerem. Mówiąc prościej, przeglądarka oczekiwała bezpiecznej odpowiedzi (zaszyfrowanej), ale otrzymała coś innego – zazwyczaj z powodu błędnej konfiguracji serwera lub zakłóceń sieciowych.
W tym artykule wyjaśnimy, co oznacza ten błąd, dlaczego się pojawia i, co najważniejsze, jak go naprawić.
1. Co to jest ssl_error_rx_record_too_long?
Błąd ssl_error_rx_record_too_long jest powiązany z szyfrowaniem Secure Socket Layer (SSL), czyli technologią wykorzystywaną do nawiązywania bezpiecznego połączenia pomiędzy przeglądarką internetową a serwerem.
Gdy w przeglądarce Firefox widzisz kod ssl_error_rx_record_too_long, zazwyczaj oznacza to, że:
- Przeglądarka próbowała nawiązać bezpieczne połączenie HTTPS.
- Podczas nawiązania połączenia SSL/TLS otrzymano nieoczekiwaną lub błędną odpowiedź.
- W odpowiedzi przeglądarka zatrzymała połączenie, aby chronić Twoje dane.
Typowy komunikat o błędzie wyświetlany w przeglądarce Firefox:
2. Najczęstsze przyczyny błędu ssl_error_rx_record_too_long
- Nieprawidłowa konfiguracja serwera
Najczęstszą przyczyną jest błędnie skonfigurowany serwer WWW. Serwer może używać protokołu HTTP zamiast HTTPS na porcie 443 lub protokół SSL/TLS może być nieprawidłowo skonfigurowany. - Nieprawidłowa konfiguracja portu
Protokół HTTPS powinien działać na porcie 443. Jeśli serwer jest skonfigurowany do obsługi treści HTTP na porcie 443, przeglądarka będzie zdezorientowana podczas nawiązywania połączenia. - Certyfikaty SSL niezaufane lub podpisane samodzielnie
Ten błąd może wystąpić, jeśli witryna korzysta z nieprawidłowo podpisanego certyfikatu lub nie korzysta z niego w ogóle. - Przestarzała przeglądarka
Czasami przestarzała wersja przeglądarki może nie obsługiwać prawidłowo nowoczesnych protokołów TLS. - Zapora sieciowa lub ingerencja serwera proxy
Niektóre zapory sieciowe i serwery proxy mogą manipulować ruchem SSL, co może skutkować niekompletnymi lub błędnie sformatowanymi rekordami.
3. Jak naprawić kod błędu: ssl_error_rx_record_too_long?
3.1 Sprawdź witrynę (kontrola po stronie klienta)
Jeśli jesteś gościem i napotykasz ten błąd:
- Wypróbuj inną przeglądarkę: Otwórz tę samą stronę w Chrome lub Edge. Jeśli tam działa, problem dotyczy wyłącznie Firefoksa.
- Wyczyść pamięć podręczną i pliki cookie: Wejdź w Ustawienia przeglądarki Firefox, przejdź do zakładki Prywatność i bezpieczeństwo, a następnie wyczyść wszystkie dane w sekcji Pliki cookie i dane witryn.
- Wyłącz ustawienia proxy (jeśli istnieją): W menu Ustawienia przeglądarki Firefox przejdź do Ogólne > Ustawienia sieciowe > Ustawienia > wybierz opcję „Bez serwera proxy” lub „Użyj systemowych ustawień serwera proxy” > Kliknij OK, aby zapisać.
- Wyłącz rozszerzenia innych firm: Zwłaszcza te związane z sieciami VPN, serwerami proxy i filtrowaniem HTTPS.
- Tymczasowo wyłącz skanowanie SSL przez program antywirusowy: Przejdź do ustawień oprogramowania antywirusowego i wyłącz funkcję skanowania HTTPS, aby sprawdzić, czy problem został rozwiązany.
3.2 Dla właściciela lub administratora witryny
Jeśli ten błąd występuje Twój własny serwer Problem prawdopodobnie wynika z błędnej konfiguracji. Wykonaj następujące kroki:
A. Upewnij się, że protokół HTTPS jest skonfigurowany na porcie 443
Sprawdź, czy Twój serwer akceptuje połączenia HTTPS na porcie 443 i jest prawidłowo skonfigurowany do obsługi protokołu SSL.
Na przykład na
Apacz
:
Sprawdź, czy:
- Użyto prawidłowego portu (443).
- Protokół SSL jest włączony (
SSLEngine on
). - Ścieżki do plików certyfikatów i kluczy są prawidłowe.
Dla
Nginx
, poprawny blok serwera wygląda następująco:
B. Zainstaluj ważny certyfikat SSL
Użyj certyfikatu SSL, który został prawidłowo podpisany przez uznany urząd certyfikacji, na przykład Let's Encrypt, Sectigo lub DigiCert.
Aby zainstalować bezpłatny certyfikat HTTPS za pośrednictwem Let's Encrypt, wykonaj następujące kroki:
sudo apt install certbot python3-certbot-nginx
sudo certbot –nginx
Certbot automatycznie skonfiguruje Twój serwer Nginx/Apache przy użyciu ważnego certyfikatu.
C. Uruchom ponownie serwer WWW
Po wprowadzeniu zmian w konfiguracji lub zainstalowaniu nowego certyfikatu należy ponownie uruchomić serwer:
Dla Apache: sudo systemctl restart apache2
Dla Nginx: sudo systemctl restart nginx
3.3 Zaawansowane poprawki i wskazówki
A. Użyj internetowych narzędzi do sprawdzania certyfikatów SSL
Użyj narzędzi takich jak:
- Test SSL SSL Labs
- Dlaczego nie ma kłódki
Mogą one pomóc zdiagnozować, czy certyfikat jest zaufany, wygasł lub jest nieprawidłowo skonfigurowany.
B. Upewnij się, że na porcie 443 nie ma protokołu HTTP
Jeśli serwer odpowie zwykłym tekstem HTTP na porcie 443, przeglądarka uzna to za nieprawidłowy rekord SSL.
Używać
curl
do przetestowania: curl -v https://twojadomena.com
C. Sprawdź konfigurację zapory sieciowej lub modułu równoważenia obciążenia
Jeśli korzystasz z modułu równoważenia obciążenia lub serwera proxy (np. HAProxy lub Cloudflare), upewnij się, że jest on skonfigurowany do prawidłowej obsługi protokołu HTTPS lub przekazywania ruchu SSL do serwera źródłowego.
Sprawdź, czy konfiguracja HAProxy obejmuje polecenie bind *:443 ssl crt /etc/ssl/private/mycert.pem, które umożliwia prawidłowe powiązanie SSL na porcie 443.
4. Wniosek
Ten ssl_error_rx_record_too_long Błąd to sygnał, że coś jest nie tak z połączeniem SSL/TLS – zazwyczaj jest to problem z konfiguracją po stronie serwera. Niezależnie od tego, czy jesteś zwykłym użytkownikiem, czy administratorem witryny, kroki opisane w tym artykule pomogą Ci zidentyfikować i rozwiązać problem.
Jeśli tylko odwiedzasz witrynę, spróbuj innej przeglądarki, wyłącz rozszerzenia lub sprawdź sieć. Jeśli zarządzasz witryną, sprawdź dokładnie certyfikaty SSL, ustawienia serwera WWW i upewnij się, że port 443 jest poprawnie skonfigurowany dla protokołu HTTPS.
Zrozumienie sposobu działania protokołu SSL/TLS i zadbanie o jego prawidłową implementację zapobiegnie temu błędowi i zapewni użytkownikom bezpieczne przeglądanie stron internetowych.