NET::ERR_CERT_DATE_INVALID: Jak pochopit a vyřešit chybu platnosti certifikátu krok za krokem

Pre

Chyba NET::ERR_CERT_DATE_INVALID patří mezi nejčastější problémy při prohlížení zabezpečených webových stránek. Uživatelé ji často vidí náhle a mohou být zmateni, proč se stránka najednou nechce načíst. V tomto článku si podrobně vysvětlíme, co tato zpráva znamená, jaké jsou nejčastější příčiny, a hlavně jak postupovat při řešení – jak na straně klienta, tak na straně serveru. Budeme pracovat s různými verzemi zápisu chyby, včetně NET::ERR_CERT_DATE_INVALID a dalších variant, abychom vám poskytli praktický a použitelný návod pro každé prostředí.

Co znamená NET::ERR_CERT_DATE_INVALID a proč se tato chyba zobrazuje

Chyba NET::ERR_CERT_DATE_INVALID signalizuje, že certifikát používaný navázaným spojení TLS/SSL neodpovídá aktuálnímu datu a času, nebo jeho platnost je jinak zpochybněna. Certifikát má určitou platnost: „Not Before“ (datum počátku platnosti) a „Not After“ (datum ukončení platnosti). Pokud se během navazování spojení zjistí, že systémový čas klienta, serveru, nebo samotný certifikát neodpovídá těmto hodnotám, prohlížeč zablokuje spojení a zobrazí uvedenou chybu. Varianta NET::ERR_CERT_DATE_INVALID se v různých prohlížečích a operačních systémech objevuje pod různými variantami zápisu, které však vyjadřují stejný problém.

Hlavní příčiny chyby NET::ERR_CERT_DATE_INVALID

Nesprávný systémový čas na klientovi

Jeden z nejběžnějších důvodů je nepřesný čas na vašem počítači, tabletu či telefonu. Když je hodnota o několik minut či hodin mimo skutečný čas, platnost certifikátu může být vyhodnocena jako neplatná. To se týká také změn časových pásem a kdy byl zařízení naposledy synchronizován s internetovým časem.

Vypršelý certifikát nebo dříve vypršela platnost

Pokud certifikát certifikační autority (CA) již není platný podle Not After a nebyl prodloužen, prohlížeč zobrazí NET::ERR_CERT_DATE_INVALID. Někdy může jít o dočasný problém při obnově certifikátu, který se ještě nepropagoval do všech částí infrastruktury.

Chyba na straně serveru: nesprávné načítání certifikačního řetězce

Server může dodávat neúplný nebo špatně uspořádaný certifikát (chybějící mezičlánek), což způsobí, že klient nemůže ověřit platnost celého řetězce certifikátů. I když samotný certifikát není vypršený, chybějící nebo špatně načtený řetězec způsobí chybu, která se může projevit jako NET::ERR_CERT_DATE_INVALID.

Nesprávný čas na serveru

Podobně jako u klienta může být problém, pokud server má špatný systémový čas. TLS handshake a časová razítka hrají roli i při vyhodnocování platnosti certifikátu. Pokud není server nastaven na správný čas, může docházet k dočasnému vyhodnocení platnosti proti jeho vlastnímu času.

Doména, SNI a platnost certifikátu souvisejících domén

Prohlížeč může zablokovat spojení, když certifikát neodpovídá doméně, na kterou se uživatel pokouší připojit, nebo pokud dojde ke zlomu v zabezpečení způsobenému chybným nastavením SNI (Server Name Indication). I v tomto případě se může objevit varovná zpráva o neplatnosti certifikátu, která v některých situa­cích bývá zaměněna s NET::ERR_CERT_DATE_INVALID.

Jak se projevuje chyba NET::ERR_CERT_DATE_INVALID v praxi

Podle prohlížeče a zařízení může být zobrazení odlišné, ale typické znaky zahrnují:

  • Varovný dialog s informací, že spojení není soukromé a certifikát je neplatný.
  • Žluté nebo červené pruhy v adresním panelu s upozorněním na bezpečnost.
  • Návrat na předchozí stránku s textem, že certifikát není důvěryhodný pro danou doménu.
  • V některých případech se zobrazí jasné sdělení jako NET::ERR_CERT_DATE_INVALID v textu chyby.

Diagnostika: jak zjistit příčinu chyby NET::ERR_CERT_DATE_INVALID

Krok 1: Ověřte čas na klientovi

Nejprve zkontrolujte, zda má vaše zařízení správný čas a datum a zda je zapnutá synchronizace s internetovým časem (NTP). Na různých platformách to vypadá následovně:

  • Windows: Ovládací panely > Datum a čas > Nastavit čas automaticky (NTP).
  • macOS: Předvolby systému > Datum a čas > Automaticky nastavit datum a čas.
  • Linux (terminál): timedatectl status a následně sudo timedatectl set-ntp true.

Po provedení synchronizace načtěte stránku znovu a zkontrolujte, zda se zobrazení chyby změnilo.

Krok 2: Zkontrolujte datum a čas serveru

Pokud máte administrativní přístup ke serveru, zkontrolujte také jeho datum a čas. Na serveru by měl být vybraný spolehlivý časový zdroj. Příkazové ukázky:

# Linux
timedatectl status
# pro aktualizaci NTP
sudo timedatectl set-ntp true

# Windows (PowerShell)
Get-Date
w32tm /query /status

Chyba na serveru, pokud není čas správně synchronizován, může vést k problémům s platností certifikátu a k chybě NET::ERR_CERT_DATE_INVALID.

Krok 3: Zkontrolujte platnost a detaily certifikátu

Ověřte Not Before a Not After datumu certifikátu a ujistěte se, že odpovídají očekávané platnosti. Příkaz pro OpenSSL:

openssl x509 -in  -text -noout

Hledejte například Not Before: 2024-01-01T00:00:00Z a Not After: 2025-01-01T23:59:59Z. Porovnání ukazuje, zda certifikát je platný pro aktuální čas.

Krok 4: Prohlédněte si řetězec certifikátů

Někdy problém není s samotným certifikátem, ale s řetězcem CA. Zkontrolujte, zda server poskytuje kompletní a správný chain certifikátů. Příkaz s klientským spojeními:

openssl s_client -connect example.com:443 -servername example.com -showcerts

Hledejte, zda je v chainu chybějící mezičlánek (intermediate) a zda koncový certifikát odpovídá doméně.

Jak postupovat na straně klienta při NET::ERR_CERT_DATE_INVALID

Krok 1: Synchronizace času a data

Největší a nejčastější změna, která problém vyřeší, je nastavení správného času a data. Po dokončení synchronizace je vhodné znovu načíst stránku a sledovat, zda se chybová zpráva objevuje dále.

Krok 2: Vymazání SSL cache a DNS cache

V některých případech může být problém uložen v cache prohlížeče. Postup pro nejpoužívanější prohlížeče:

  • Google Chrome/Chromium: Nastavení > Soukromí a zabezpečení > Zobrazit rozšířené nastavení > Zrušit SSL state (v sekci Ochrana soukromí). Poté restartujte prohlížeč.
  • Mozilla Firefox: Otevřít o stránku about:preferences#privacy a vymazat data mezipaměti a cookies, případně refresh cache
  • Microsoft Edge: Nastavení > Ochrana soukromí, vyhledávání a služby > Vymazat data procházení

Krok 3: Zkouška na jiném zařízení a síti

Pro potvrzení, zda problém není lokální, zkuste otevřít stejnou stránku v jiném zařízení nebo na jiné síti (např. mobilní data). Pokud se na jiném zařízení problém neobjeví, pravděpodobně jde o lokální konfiguraci.

Krok 4: Ověření domény a zabezpečení na straně klienta

Ujistěte se, že adresa URL odpovídá certifikátu. Pokud používáte zrcadla, CDN nebo více domén, zkontrolujte správnost DNS a skutečné cílové domény. Někdy je problém způsobený jedním z distribučních prvků, který poskytuje jiný certifikát, a to může vést k chybě NET::ERR_CERT_DATE_INVALID.

Jak postupovat na straně serveru při NET::ERR_CERT_DATE_INVALID

Oprava certifikátu a řetězce

1) Zkontrolujte, zda certifikát nebyl vypršený a zda datum Not Before/Not After odpovídá realitě. 2) Zkontrolujte, zda server posílá kompletní řetězec TLS, včetně všech mezičlánků (intermediate certs). 3) Pokud je řetězec chybný, vygenerujte nový certifikát a znovu jej nasadte.

Osvědčení a obnovení pro Let’s Encrypt

Pro servery, které používají Let’s Encrypt, je důležité nastavit automatickou obnovu certifikátu. Certbot a podobné nástroje umožňují automatickou obnovu a nasazení. Příklady běžných kroků:

# Let’s Encrypt s Certbot (příklad na Nginx)
sudo certbot renew --dry-run
sudo systemctl reload nginx

Tím zajistíte, že certifikáty budou aktuální a že řetězec bude správně distribuovaný po celé infrastruktuře.

Kontrola kalendáře na serveru

Správný čas na serveru je nezbytný pro správné vyhodnocení platnosti certifikátu. Zranachy mohou vést k dočasným chybám, i když samotný certifikát je platný. Ujistěte se, že server sbírá čas z důvěryhodného časového zdroje a že časové zóny jsou korektní.

Konfigurace TLS a šíření certifikátu

Nezapomeňte také na správné nastavení TLS verzí a cipher suites. Některé starší konfigurace mohou mít potíže s novějšími certifikáty a chainem. Po změně je vhodné testovat spojení pomocí nástrojů jako openssl s_client a online nástrojů pro test TLS.

Prevence: jak minimalizovat výskyt NET::ERR_CERT_DATE_INVALID v budoucnosti

Čas je klíčový

Neustálé udržování přesného času na všech stanicích, serverech a síťových zařízeních je jedním z nejdůležitějších preventivních opatření. Automatická synchronizace s NTP by měla být standardem v každé infrastruktuře.

Automatizovaná správa certifikátů

Použití nástrojů pro správu certifikátů a jejich automatickou obnovu je zásadní. Certifikáty by měly být naplánované k obnově dobře před vypršením platnosti a systém by měl být schopen automaticky nasadit nové certifikáty bez výpadků služby.

Správná konstrukce certifikátů a řetězců

Pravidelná kontrola řetězce certifikátů a zajištění, že intermediáty jsou správně nasazeny na serveru, snižuje riziko NET::ERR_CERT_DATE_INVALID způsobeného chybným chainem. Důležité je také sledovat změny v CA a postupy aktualizace certifikátů.

Otestování v různých prostředích

Testování na různých prohlížečích a zařízeních pomáhá zachytit specifické problémy, které se mohou objevit jen na určité kombinaci OS/prohlížeč/konfigurace serveru. Mějte připravené testovací prostředí a pravidelně provádějte testy po změnách konfigurace.

Často kladené dotazy (FAQ) k NET::ERR_CERT_DATE_INVALID

Proč se objeví NET::ERR_CERT_DATE_INVALID, i když certifikát není vypršený?

Protože notace Not Before/Not After nemusí být v souladu s aktuálním časem klienta i serveru. Může jít o dočasnou chybu v synchronizaci, chybný řetězec, nebo o problém s doménou či SNI. Proto je třeba zkontrolovat nejen datum certifikátu, ale i čas na klientovi i serveru a integritu řetězce CA.

Je možné, že problém je pouze v jednom prohlížeči?

Ano, některé prohlížeče mají odlišné cache, odlišný mechanismus vyhodnocení certifikátu a mohou se lišit ve vyhledávání a zobrazování chyb. Zkuste jiný prohlížeč a zkontrolujte, zda problém přetrvává.

Co znamená „Not Before“ a „Not After“ v certifikátu?

„Not Before“ je čas, kdy certifikát začíná platit, a „Not After“ končí platnost certifikátu. Pokud je systémový čas mimo toto rozmezí, prohlížeč zobrazuje chybu. Správné nastavení času a obnovy certifikátu jsou tedy klíčové kroky.

Co dělat, pokud jsem správcem serveru a certifikát je v pořádku?

Zkontrolujte, zda server posílá kompletní chain, zda není problém s DNS nebo s konfigurací TLS. Pokud je vše správně, je vhodné provést čistý restart služby a případně vynutit nový handshake pro klienty.

Praktické shrnutí a klíčové tipy

  • Chyba NET::ERR_CERT_DATE_INVALID obvykle znamená problém s časem – na klientovi nebo serveru – či s platností certifikátu.
  • Nejprve ověřte systémový čas na klientovi a serveru; synchronizace NTP je základ.
  • Zkontrolujte platnost certifikátu a complete chain; nesprávný řetězec často vyvolá podezření na datech.
  • Vyzkoušejte načtení stránky na různých zařízeních a sítích a proveďte čistou caching operaci prohlížeče.
  • Pravidelná správa certifikátů a automatizace obnovy sníží riziko NET::ERR_CERT_DATE_INVALID v budoucnu.

Praktické ukázky a tipy pro technicky zdatné uživatele

Ukázka diagnostického postupu s OpenSSL

Chcete-li si ověřit platnost certifikátu na straně klienta i serveru, můžete použít následující postup:

openssl s_client -connect example.com:443 -servername example.com -showcerts
# výsledkem je výpis certifikátů a jejich Not Before/Not After

Pokud notace odpovídá datu, ale prohlížeč stále hlásí chybu, zkontrolujte chain a načítání intermediárních certifikátů na serveru.

Ukázka příkazu pro kontrolu datumu certifikátu

openssl x509 -in /path/to/cert.pem -dates -noout

Tento výpis obsahuje Not Before a Not After a pomůže potvrdit, zda certifikát odpovídá očekávanému časovému rámci.

Závěr: NET::ERR_CERT_DATE_INVALID není nevyléčitelná chyba

Chyba NET::ERR_CERT_DATE_INVALID může na první pohled působit strašidelně, ale s správnou sadou kroků je možné ji rychle identifikovat a opravit. Klíčové je zaměřit se na synchronizaci času, platnost certifikátu a správnost řetězce certifikátů. Pokud se vám podaří zajistit, že certifikáty jsou platné, a že servery poskytují kompletní chain a správný čas, snížíte pravděpodobnost výskytu této chyby na minimum. V dnešní době je automatická správa certifikátů a pravidelná kontrola infrastruktury standardem pro udržení bezproblémového a bezpečného online provozu. A pokud se NET::ERR_CERT_DATE_INVALID objeví i po všech těchto krocích, vždy je dobré kontaktovat poskytovatele certifikátu nebo hostingovou firmu, která zajistí důkladnou diagnostiku a nasazení opravných konfigurací.