Jak sprawdzić certyfikat SSL strony i serwera pocztowego
Zgłoszenie brzmi zwykle tak: „u mnie strona otwiera się normalnie, a klient pisze, że dostaje ostrzeżenie o bezpieczeństwie". Odświeżasz, widzisz kłódkę i nie masz pojęcia, o czym on mówi.
Najczęściej obaj macie rację.
Jeden komunikat, kilka różnych awarii
Przeglądarka pokazuje praktycznie ten sam ekran ostrzeżenia niezależnie od tego, co się popsuło. A popsuć się mogło co innego:
- Certyfikat wygasł. Najprostszy przypadek i jedyny, który widać gołym okiem.
- Nazwa się nie zgadza. Certyfikat wystawiony na przyklad.pl, a ktoś wchodzi przez www.przyklad.pl. Albo odwrotnie. Albo doszła subdomena, o której nikt nie pomyślał przy odnawianiu.
- Łańcuch jest niekompletny. Na serwerze wgrano sam certyfikat końcowy, bez pośredniego. Najbardziej podstępny wariant, bo u części ludzi wszystko działa.
- Certyfikat jest, ale nie na tym porcie. HTTPS odnowione, poczta zapomniana.
Dlaczego kłódka u Ciebie niczego nie dowodzi
Przy brakującym certyfikacie pośrednim przeglądarka na komputerze często sama sobie radzi — zna go z innej strony albo dociąga z adresu zapisanego w certyfikacie. Kłódka jest, więc uznajesz, że jest dobrze.
Tylko że telefon, curl, biblioteka w PHP-ie albo program księgowy odpytujący Twoje API nie mają tej uprzejmości. Połączenie się wywala, zwykle z komunikatem o nieznanym wystawcy. Stąd zgłoszenia w stylu „integracja przestała działać, ale strona działa".
Co odczytać, zanim zaczniesz zgadywać
Sensowne minimum to cztery rzeczy: ile dni zostało do wygaśnięcia, jakie nazwy są wpisane w polu SAN, czy nazwa hosta pasuje do certyfikatu i czy pośrednie CA są kompletne. Do tego adres IP, na który domena faktycznie wskazuje — bo zaskakująco często okazuje się, że certyfikat odnowiono na jednym serwerze, a domena od miesiąca kieruje na inny.
Napisałem sobie do tego SSL Checkera: wpisujesz domenę i dostajesz daty ważności, wystawcę, listę SAN-ów, rozmiar klucza i cały łańcuch aż do certyfikatu root. Adres z wynikiem da się wysłać dalej, więc do hostingu idzie ode mnie link, a nie zrzut ekranu z opisem „u mnie coś nie działa".
Poczta ma własny certyfikat
To osobna historia i osobne źródło telefonów o dziewiątej rano. Serwer pocztowy słucha na porcie 465, 587 albo 993 i ma tam swój certyfikat — czasem ten sam co strona, czasem zupełnie inny, wystawiony na mail.przyklad.pl. Odnowienie certyfikatu strony nic tu nie zmienia.
Dlatego w formularzu obok domeny jest pole portu. Wpisz 993 zamiast 443, a zobaczysz to, co widzi Outlook w chwili, gdy odmawia pobrania poczty.
Kiedy to sprawdzać
Certyfikaty od Let's Encrypt są ważne 90 dni i odnawiają się same, dopóki się nie zepsują. A psują się cicho: zmiana konfiguracji serwera, przeniesienie domeny, wyłączony cron. Nikt nie dostaje maila, że odnowienie nie przeszło — po prostu któregoś dnia rano strona przestaje się otwierać.
Ja sprawdzam po każdej większej zmianie na serwerze i po każdej migracji domeny. To dwie minuty, a alternatywą jest dowiedzenie się o problemie od klienta.
Zobacz również
- Jaki jest mój adres IP i dlaczego 192.168.1.10 to zła odpowiedź
- Jak sprawdzić, czy w KSeF pojawiła się nowa faktura
- Prawy przycisk myszy → „Podpisz” → proCertum SmartSign przechodzi do C:\Windows\System32 zamiast otworzyć wybrany plik
- Eksplorator Windows przestał działać, dodatkowo pojawił się błąd "-1023 (0xfffffc01) podczas otwierania pliku dziennika C:\WINDOWS\...Local\TileDataLayer\Database\EDB.log"
- Problem z opóźnionym pobieraniem nowych wiadomości przez IMAP
- Wysyłka pliku XML (sprawozdania finansowego) poprzez program e-sprawozdania (MF) do - Szefa KAS