Probleemoplossing voor SSL-certificaten en ServBay CA
Dit document biedt veelvoorkomende problemen en oplossingen met betrekking tot SSL-certificaten en de ServBay CA in je lokale ServBay-ontwikkelomgeving.
Waarom krijg ik een melding dat het SSL-certificaat niet wordt vertrouwd in mijn browser?
Als je bij het openen van een lokaal door ServBay gehoste website een waarschuwing in je browser ziet, betekent dit meestal dat de SSL-certificaatconfiguratie niet correct is:
- Chrome / Edge:
Your connection is not private
(Je verbinding is niet privé)- Foutcode:
NET::ERR_CERT_AUTHORITY_INVALID
- Foutcode:
NET::ERR_CERT_COMMON_NAME_INVALID
(minder vaak, maar kan voorkomen bij een mismatch tussen certificaat en domeinnaam)
- Firefox:
Warning: Potential Security Risk Ahead
(Waarschuwing: Mogelijk beveiligingsrisico)- Na het klikken op "Geavanceerd" kun je foutcode
SEC_ERROR_UNKNOWN_ISSUER
zien - Foutcode:
SSL_ERROR_BAD_CERT_DOMAIN
(bij een mismatch tussen certificaat en domeinnaam)
- Safari:
This Connection Is Not Private
(Deze verbinding is niet privé)Safari kan de identiteit van de website "jouw-domein.test" niet verifiëren
De meest voorkomende oorzaak hiervan is dat de ServBay User CA
en/of ServBay Public CA
niet correct zijn geïnstalleerd en vertrouwd. Dit kan komen doordat:
- Het root-certificaat van ServBay niet is toegevoegd aan de vertrouwenslijst van je systeem.
- Je hetzelfde domein (bijvoorbeeld
myapp.test
) ook hebt gebruikt in andere lokale ontwikkeltools zoals MAMP of Laravel Herd, waardoor hun certificaten conflicteren met die van ServBay; dit kan incorrecte vertrouwensinformatie of certificaat-caching in je browser veroorzaken.
Oplossing
Volg deze stappen om het probleem te verhelpen:
- Open ServBay
- Navigeer naar Instellingen (Settings) en zoek het onderdeel ServBay Root CA.
- Klik op ServBay Root CA opnieuw installeren (Reinstall ServBay Root CA). ServBay zal proberen de installatie en het vertrouwen van het root-certificaat automatisch te repareren.
- Sluit je browser volledig af en start hem opnieuw (zorg dat alle vensters en processen echt gesloten zijn, zodat de SSL-status uit de cache verwijderd wordt).
- Bezoek je site opnieuw. Als het goed is, is de SSL-certificaatfout nu verholpen.
Als het probleem blijft bestaan:
Dit betekent vaak dat er oude, conflicterende of ongeldige certificaten op je systeem zijn geïnstalleerd, met name als je met andere tools (zoals MAMP of Herd) een certificaat hebt gegenereerd voor hetzelfde domein.
- Open het certificaatbeheer van je systeem:
- macOS: Open Sleutelhangerbeheer (Keychain Access) (te vinden onder 'Programma's' > 'Hulpprogramma's').
- Windows: Druk op Win+R, typ
certmgr.msc
en druk op Enter om het certificaatbeheer te openen.
- Typ de probleemdomeinnaam in het zoekvak rechtsboven (bijvoorbeeld
myapp.test
). Indien je het niet zeker weet, probeer te zoeken opmamp
ofherd
. - Filter bovenaan op Certificaten (Certificates).
- Zoek in de resultaten naar alle SSL-certificaten die verbonden zijn met je ingevoerde domeinnaam. Let vooral op de uitgever (Issuer): kan
ServBay User CA
,MAMP Development CA
,Laravel Herd CA
of iets vergelijkbaars zijn. - Selecteer certificaten met de probleem-domeinnaam (vooral die niet door
ServBay User CA
zijn uitgegeven of twijfelachtig lijken) en druk opDelete
om ze te verwijderen. Je moet mogelijk je systeemwachtwoord invoeren om dit te bevestigen. Let goed op: verwijder alleen certificaten die bij je lokale ontwikkeldomein horen. - (Optioneel maar aanbevolen) Zoek in Sleutelhangerbeheer naar
ServBay User CA
enServBay Public CA
, en check of deze aanwezig zijn en geen rood kruis tonen (dat betekent dat ze niet vertrouwd zijn). Zo ja, dubbelklik het certificaat, klap het "Vertrouwen (Trust)"-gedeelte uit en stel "Bij gebruik van dit certificaat (When using this certificate)" in op "Altijd vertrouwen (Always Trust)". - Ga terug naar de ServBay app.
- Navigeer naar Instellingen (Settings) -> ServBay Root CA.
- Klik op Alle ServBay User-certificaten opnieuw genereren (Recreate All ServBay User Certificates) om voor alle sites die door ServBay worden beheerd nieuwe SSL-certificaten te laten genereren.
- Herstart je computer. Zo zorg je dat alle services en systeemsamenstellingen het nieuwste certificaat en vertrouwen inladen.
- Start je browser opnieuw en probeer je site opnieuw te bezoeken.
Door deze veelvoorkomende foutmeldingen toe te voegen, kunnen gebruikers sneller herkennen of hun probleem met SSL-certificaatvertrouwen te maken heeft en de juiste oplossing toepassen.
Wat te doen bij verlies van SSL-certificaat?
Tijdens het ontwikkelen van lokale websites met ServBay kan het voorkomen dat de SSL-certificaatbestanden van een website per ongeluk verwijderd raken. Hierdoor kan je webserver (zoals Nginx, Caddy of Apache) niet starten of de site niet laden, en verschijnen er certificaat-gerelateerde foutmeldingen in de log.
Probleembeschrijving
Als door ServBay automatisch uitgegeven SSL-certificaatbestanden (.crt
en .key
) kwijt zijn, zie je in de foutlog van je webserver waarschijnlijk een melding dat het pad naar de certificaatbestanden niet gevonden kan worden.
Hieronder enkele voorbeelden van veelvoorkomende foutmeldingen:
Nginx-foutmelding:
log
nginx: [emerg] cannot load certificate "/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt": BIO_new_file() failed (SSL: error:80000002:system library::No such file or directory:calling fopen(/Applications/ServBay/ssl/private/tls-certs/servb3ay.host/servbay.host.crt, r) error:10000080:BIO routines::no such file)
nginx: configuration file /Applications/ServBay/package/etc/nginx/nginx.conf test failed
1
2
2
Caddy-foutmelding:
log
Error: loading http app module: provision http: getting tls app: loading tls app module: provision tls: loading certificates: open /Applications/ServBay/ssl/private/tls-certs/servbay.host/ser3vbay.host.crt: no such file or directory
1
Apache-foutmelding:
log
AH00526: Syntax error on line 15 of /Applications/ServBay/package/etc/apache/vhosts/servbay.host.conf:
SSLCertificateFile: file '/Applications/ServBay/ssl/pri3vate/tls-certs/servbay.host/servbay.host.crt' does not exist or is empty
1
2
2
De kern van deze foutmeldingen is hetzelfde: het in de serverconfiguratie opgegeven SSL-certificaatpad is ongeldig omdat de bestanden niet bestaan of niet toegankelijk zijn.
Oplossing
Voor door ServBay automatisch uitgegeven SSL-certificaten heeft ServBay een ingebouwd mechanisme voor automatische detectie en heruitgifte.
Doe het volgende:
- Start de ServBay app: Zorg dat de app actief is.
- Ga naar de lijst met websites: Klik links in de ServBay-app op Websites.
- Selecteer de getroffen site: Zoek in de lijst naar de lokale website met het probleem, en klik erop.
- Automatische detectie en uitgifte: ServBay controleert automatisch bij het laden van de siteconfiguratie of de benodigde SSL-certificaatbestanden aanwezig zijn. Als
.crt
of.key
ontbreekt, hergenereert ServBay automatisch nieuwe certificaten en plaatst ze in de juiste map (/Applications/ServBay/ssl/private/tls-certs/jouw-domein/
). - Herstart de webserver: Na her-generatie en succes, moet je het bij de site horende webserverpakket (zoals Nginx, Caddy of Apache) herstarten, zodat deze de nieuwe certificaten laadt. Ga naar Pakketten in het navigatiemenu, zoek het webserverpakket en klik op de herstart-knop (meestal een cirkelvormig pijltje).
- Controleer of het probleem is opgelost: Na het herstarten van de webserver kun je via HTTPS je lokale site bezoeken (bv.
https://jouw-domein
). Je site moet nu weer normaal werken.
Opmerkingen
- Deze oplossing is vooral voor automatisch door ServBay uitgegeven SSL-certificaten. Gebruik je een zelf geïmporteerd certificaat, dan zal ServBay het niet automatisch opnieuw uitgeven en moet je zelf de bestanden terugzetten of nieuw importeren.
- ServBay gebruikt de ingebouwde ServBay User CA voor het uitgeven van certificaten voor lokale sites, zodat je in je ontwikkelomgeving HTTPS kunt gebruiken. Mocht je alsnog een waarschuwing voor onbetrouwbare certificaten krijgen in je browser, dan komt dit meestal doordat de ServBay User CA niet vertrouwd is door je OS of browser. Zie ServBay CA vertrouwen voor meer informatie.
- ServBay biedt een data-backupfunctie, inclusief back-up van siteconfiguraties en SSL-certificaten. Regelmatig back-uppen helpt bij het snel herstellen na onverwachte gebeurtenissen.
Veelgestelde vragen (FAQ)
V: Waarom geeft ServBay automatisch SSL-certificaten uit voor lokale sites?
A: ServBay wil een complete lokale ontwikkelomgeving bieden. Om productie na te bootsen en je in staat te stellen om HTTPS-applicaties te debuggen, gebruikt ServBay de ingebouwde ServBay User CA om automatisch SSL-certificaten voor lokaal ontwikkelde sites uit te geven.
V: Kan ik mijn eigen SSL-certificaat gebruiken?
A: Ja, ServBay ondersteunt het importeren van eigen certificaten, bijvoorbeeld via ACME / Let's Encrypt. Deze probleemoplossingsgids is echter uitsluitend bedoeld voor door ServBay gegenereerde certificaten.
V: Is het veilig om certificaten opnieuw uit te geven?
A: Ja, voor een lokale ontwikkelomgeving is het uitgeven van nieuwe certificaten door ServBay User CA veilig en uitsluitend bedoeld voor lokaal gebruik. Je openbare sitebeveiliging wordt hierdoor niet beïnvloed.
Samenvatting
ServBay biedt handige oplossingen voor het beheren van SSL-certificaten in lokale ontwikkelomgevingen. Wanneer automatisch uitgegeven certificaten per ongeluk verloren gaan, kun je met enkele simpele stappen ServBay nieuwe certificaten laten detecteren en uitgeven, waardoor je snel weer een goed werkende HTTPS-omgeving hebt voor je lokale website.