Felsökning av certifikatkedjor
Hitta och åtgärda orsaken till felet "untrusted certificate" genom att kontrollera och laga certifikatkedjan.
Vad är en certifikatkedja?
En certifikatkedja är den väg webbläsaren följer från ditt servercertifikat upp till en betrodd rot-CA:
- Servercertifikatet (din domän, t.ex. www.exempel.se)
- Mellanliggande certifikat (utfärdade av rot-CA:n, utfärdar i sin tur ditt certifikat)
- Rotcertifikat (förinstallerade i webbläsare och operativsystem)
Om ett mellanled saknas kan webbläsaren inte verifiera kedjan och visar då ett "untrusted certificate"-fel.
Vanliga symptom
- "Your connection is not private" / "NET::ERR_CERT_AUTHORITY_INVALID" (Chrome)
- "Warning: Potential Security Risk Ahead" (Firefox)
- Certifikatet fungerar i vissa webbläsare men inte i andra
- Mobila enheter visar fel medan datorer fungerar (datorer kan ha mellanliggande certifikat i cache)
- SSL-scannern visar "Incomplete chain" eller "Missing intermediate"
Steg 1: Diagnostisera med onlineverktyg
Använd FairSSL:s SSL-scanner eller andra onlineverktyg för att verifiera kedjan:
- FairSSL SSL Scanner: visar hela certifikatkedjan och eventuella fel
openssl s_clientfrån kommandoraden (se nedan)
Steg 2: Verifiera med OpenSSL
openssl s_client -connect dit-domaene.dk:443 -servername dit-domaene.dk
Leta efter:
Verify return code: 0 (ok)= kedjan är komplettVerify return code: 21 (unable to verify the first certificate)= mellanliggande certifikat saknasdepth=0-raden visar ditt certifikat,depth=1visar det mellanliggande certifikatet
Visa endast certifikatkedjan:
openssl s_client -connect dit-domaene.dk:443 -servername dit-domaene.dk -showcerts 2>/dev/null | openssl x509 -noout -subject -issuer
Steg 3: Hitta det saknade mellanliggande certifikatet
Mellanliggande certifikat levereras normalt av certifikatutfärdaren tillsammans med servercertifikatet. Om du saknar det:
- Leta i e-postmeddelandet från utfärdaren efter en fil med namnet "CA Bundle" eller "Intermediate Certificate".
- Ladda ner det från utfärdarens supportsida:
- GlobalSign: support.globalsign.com
- DigiCert: digicert.com/kb
- Sectigo: support.sectigo.com
- Använd
openssl x509 -in dit-certifikat.crt -noout -issuerför att se vem som har utfärdat certifikatet, och hämta sedan rätt mellanliggande certifikat.
Steg 4: Installera det mellanliggande certifikatet
Apache / Nginx (Linux)
Slå ihop certifikaten i rätt ordning i en och samma fil:
cat dit-certifikat.crt intermediate.crt > fullchain.crt
I Apache anger du SSLCertificateChainFile eller lägger hela kedjan i SSLCertificateFile. I Nginx används den sammanslagna filen som ssl_certificate.
IIS / Windows
- Öppna
certlm.msc(eller MMC med snapin-modulen Certificates). - Gå till Intermediate Certification Authorities → Certificates.
- Högerklicka → All Tasks → Import och välj filen med det mellanliggande certifikatet.
Steg 5: Kontrollera resultatet
openssl s_client -connect dit-domaene.dk:443 -servername dit-domaene.dk 2>/dev/null | grep "Verify return code"
Du bör nu se Verify return code: 0 (ok). Testa även från en mobil enhet och i inkognitoläge för att undvika cachade certifikat.
Förebyggande åtgärder
- Installera alltid mellanliggande certifikat när du konfigurerar ett nytt certifikat.
- Testa med FairSSL:s SSL Scanner direkt efter installationen.
- Automatisera med ACME-klienter (Certbot, acme.sh) som hanterar kedjan åt dig.
- Använd
fullchain.pem(inte baracert.pem) när du konfigurerar webbservern.
Förbättra din TLS-säkerhet
Använd Mozilla SSL Configuration Generator för att generera en säker TLS-konfiguration med moderna chiffersviter och protokollinställningar.
Guide till Mozilla SSL Configuration Generator