„Połączenie nie jest prywatne”: co to znaczy i jak to naprawić
W skrócie
Przeglądarka nie mogła potwierdzić certyfikatu strony: wygasł, jest wystawiony na inny adres albo przez nieznanego wystawcę. Jeśli to cudza strona, nie podawaj na niej danych. Jeśli Twoja, kod błędu przy ostrzeżeniu mówi, co poprawić: najczęściej wystarczy nowy certyfikat albo wgranie pełnego łańcucha.

Co oznacza ten komunikat
Przy każdym wejściu na stronę przez https:// przeglądarka sprawdza jej certyfikat: czy jest ważny, czy dotyczy tego adresu i czy wystawił go zaufany urząd certyfikacji. Gdy któryś warunek nie jest spełniony, zamiast strony pokazuje ostrzeżenie:
- Chrome: „Połączenie nie jest prywatne” (w starszych wersjach „Twoje połączenie nie jest prywatne”). Edge pokazuje podobne ostrzeżenie, z tymi samymi kodami błędów.
- Firefox: „Zachowaj ostrożność. Coś tu nie gra.” (w starszych wersjach „Ostrzeżenie: potencjalne zagrożenie bezpieczeństwa”).
- Safari: ostrzeżenie, że połączenie nie jest prywatne.
Przy ostrzeżeniu jest kod błędu i to on mówi, co dokładnie jest nie tak. W Chrome kod (np. NET::ERR_CERT_DATE_INVALID) widać od razu pod opisem. W Firefoksie kliknij „Zaawansowane”: kod jest na dole rozwiniętej części, po słowach „Kod błędu”.
Jeśli to cudza strona
- Nie wpisuj na niej haseł, danych karty ani danych osobowych.
- Sprawdź datę i godzinę w swoim komputerze lub telefonie. Zła data sprawia, że każdy certyfikat wygląda na wygasły albo jeszcze nieważny. Chrome pokazuje wtedy osobny komunikat: „Twój zegar się spóźnia” albo „Twój zegar się śpieszy” (jak ustawić zegar).
- W hotelu, pociągu czy kawiarni ostrzeżenie pojawia się często przed zalogowaniem do sieci Wi-Fi. Najpierw zaloguj się do sieci, potem otwórz stronę jeszcze raz.
- Jeśli ostrzeżenie zostaje, daj znać właścicielowi strony. Zwykle po prostu nie odnowił certyfikatu.
Kody błędów i co znaczą
| Kod błędu | Co jest nie tak | Jak naprawić na swojej stronie |
|---|---|---|
NET::ERR_CERT_DATE_INVALID(Firefox: SEC_ERROR_EXPIRED_CERTIFICATE) | certyfikat wygasł (albo zegar w urządzeniu odwiedzającego ma złą datę) | wygeneruj nowy certyfikat i wgraj go w to samo miejsce; więcej w poradniku Certyfikat SSL wygasł |
NET::ERR_CERT_COMMON_NAME_INVALID(Firefox: SSL_ERROR_BAD_CERT_DOMAIN) | certyfikat jest wystawiony na inny adres, np. tylko firma.pl, a strona otwiera się jako www.firma.pl, albo serwer pokazuje ogólny certyfikat hostingu | wygeneruj certyfikat dla wszystkich adresów strony (np. firma.pl, www.firma.pl) i przypisz go do właściwej domeny w panelu; więcej w poradniku SSL_ERROR_BAD_CERT_DOMAIN |
NET::ERR_CERT_AUTHORITY_INVALID(Firefox: SEC_ERROR_UNKNOWN_ISSUER albo MOZILLA_PKIX_ERROR_SELF_SIGNED_CERT) | przeglądarka nie zna wystawcy: certyfikat samodzielnie podpisany, certyfikat testowy albo brak certyfikatów pośrednich | wgraj certyfikat z trybu produkcyjnego i pełny łańcuch: fullchain.pem albo chain.pem w polu na certyfikaty pośrednie; więcej w poradniku NET::ERR_CERT_AUTHORITY_INVALID |
ERR_SSL_PROTOCOL_ERROR(Firefox: SSL_ERROR_RX_RECORD_TOO_LONG) | na porcie 443 serwer odpowiada zwykłym http zamiast połączenia szyfrowanego. To inna strona błędu: Chrome pisze „Ta witryna nie umożliwia bezpiecznego połączenia”, Firefox „Nie udało się nawiązać bezpiecznego połączenia” | włącz SSL dla domeny w panelu hostingu; na własnym serwerze sprawdź konfigurację portu 443; więcej w poradnikach Błąd protokołu SSL i SSL_ERROR_RX_RECORD_TOO_LONG |
Brak certyfikatów pośrednich bywa niewidoczny w przeglądarce na komputerze, bo Chrome i Firefox potrafią je uzupełnić same. Na części telefonów, w aplikacjach i w programach łączących się ze stroną (np. w bramkach płatności) strona wtedy nie działa, dlatego zawsze wgrywaj pełny łańcuch.
Jeśli to Twoja strona: sprawdź, jaki certyfikat widzi przeglądarka

- W Firefoksie kliknij na stronie z ostrzeżeniem „Zaawansowane”, a potem „Wyświetl certyfikat witryny” (w starszych wersjach „Wyświetl certyfikat”). Zobaczysz wszystkie nazwy (w części „Alternatywne nazwy podmiotu”), daty (w części „Ważność”) i wystawcę. W Chrome kliknij kod błędu: pojawi się główna nazwa (Subject), wystawca (Issuer) i data wygaśnięcia (Expires on).
- Porównaj nazwy z adresem strony. Jeśli strona działa z www i bez, certyfikat musi obejmować oba adresy.
- Sprawdź daty. Jak to zrobić w każdej przeglądarce, opisujemy na stronie Jak sprawdzić ważność certyfikatu.
- Popraw przyczynę według tabeli wyżej i wgraj certyfikat według instrukcji dla swojego hostingu. Nowy certyfikat dla tych samych adresów wygenerujesz w generatorze.
Certyfikat testowy z freessl.pl
Certyfikat z trybu testowego służy tylko do sprawdzenia, czy domena przechodzi weryfikację. Przeglądarki mu nie ufają, więc po jego wgraniu pokażą NET::ERR_CERT_AUTHORITY_INVALID, a w nazwie wystawcy zobaczysz słowo STAGING. Wygeneruj certyfikat jeszcze raz w trybie produkcyjnym i wgraj go w to samo miejsce.
Jak uniknąć tego w przyszłości
Najczęstsza przyczyna to wygasły certyfikat. Certyfikat Let's Encrypt jest ważny 90 dni, więc łatwo o nim zapomnieć. Gdy zapiszesz certyfikat w swoim koncie na freessl.pl, wyślemy przypomnienie e-mailem po dwóch trzecich ważności i drugie tydzień przed jej końcem.