TLS diagnostics

SSL Certificate Troubleshooting: Errors and Fixes

From NET::ERR_CERT_AUTHORITY_INVALID to mismatched SANs and expired chains, SSL errors break trust instantly. Use this workflow to identify the exact certificate fault and ship the right fix.

Quick summary

  • Always serve the full intermediate chain.
  • Validate against SANs, not CN.
  • Renew at least 30 days before expiry — automate it.
  • Pair the SSL check with a headers audit for full TLS posture.

The most common SSL errors

  • NET::ERR_CERT_AUTHORITY_INVALID — chain incomplete or self-signed.
  • NET::ERR_CERT_DATE_INVALID — expired or not-yet-valid certificate.
  • NET::ERR_CERT_COMMON_NAME_INVALID — hostname not in SAN list.
  • SSL_ERROR_BAD_CERT_DOMAIN — same as above on Firefox/Safari.

What a healthy certificate looks like

  • Issued by a publicly trusted CA.
  • Full chain served (leaf + intermediates).
  • Hostname matches a Subject Alternative Name.
  • Not expired, not yet valid (NotBefore in the past, NotAfter > 30 days).
  • RSA 2048+ or ECDSA P-256+.

Don't stop at the cert

A valid certificate alone doesn't mean strong TLS. Audit your security headers (HSTS, CSP), redirect HTTP to HTTPS, and verify modern protocol versions (TLS 1.2+, ideally 1.3) are negotiated.

Troubleshooting workflow

Run through these steps in order. Each step links to the right diagnostic tool.

  1. 1

    Inspect the certificate

    Issuer, SANs, validity window, chain.

    Open SSL Check
  2. 2

    Verify DNS resolution

    Make sure the right server is even answering.

    Open DNS Lookup
  3. 3

    Audit security headers

    HSTS, CSP, X-Frame-Options.

    Open Headers Audit
  4. 4

    Test reachability over HTTPS

    Confirm 200 OK on the secure endpoint.

    Open HTTP Ping
  5. 5

    Monitor expiry

    Save the host and get expiry-window alerts.

    Open Dashboard

Frequently asked questions

Why does my certificate work in one browser but not another?

Usually an incomplete chain. Some clients carry intermediates in their trust store; others don't. Always serve the full chain.

What's the difference between SAN and CN?

Modern browsers ignore CN and validate against Subject Alternative Names. Every hostname you serve must be in the SAN list.

Is a wildcard certificate enough?

It covers a single subdomain level. *.example.com covers www and api, but not deeper.api.example.com.

How early should I renew?

30 days before expiry is safe. Automate it — manual renewal is the single biggest cause of preventable outages.

Monitor it continuously

Save this check, get alerts on changes, and track multiple domains in one dashboard.

Learn about monitoring