Zelfondertekende SSL-certificaten in Chrome 58

Sinds Let's Encrypt zijn versleutelde websites de standaard geworden. SSL-certificaten zijn ook vrijwel onmisbaar bij lokale ontwikkeling ( navigator.geolocation vereist bijvoorbeeld lokale SSL-versleuteling). Sinds Chrome versie 58 is de ondersteuning voor CN (Common Name) komen te vervallen en is SAN (Subject Alternative Name) verplicht. Hierdoor accepteert Chrome geen SSL-certificaten meer die op traditionele wijze zijn aangemaakt.


Zelfondertekende SSL-certificaten in Chrome 58

Hoewel je online tools zoals ZeroSSL kunt gebruiken om certificaten te maken, of Chrome kunt configureren om zonder geldige certificaten te werken door opstartparameters zoals `--ignore-certificate-errors` of de vlag `chrome://flags/#allow-insecure-localhost` te gebruiken, willen we lokaal zelfondertekende certificaten maken met OpenSSL die SAN bevatten en volledig door Chrome worden geaccepteerd. Deze ene regel code doet alles wat nodig is (alleen `www.tld.local` hoeft te worden vervangen door het gewenste domein).:

61b7be9883ad31712c52a59252a4c9c4

Aangezien OpenSSL helaas geen directe argumenten heeft om SAN te specificeren, wordt eerst een configuratiebestand gemaakt, OpenSSL wordt ermee aangeroepen en het bestand wordt vervolgens verwijderd. Windows-gebruikers kunnen dit commando eenvoudig uitvoeren met behulp van Cygwin (en bash -c "...") of met de nieuwe WSL . De twee resulterende bestanden www.tld.local.key en www.tld.local.cert kunnen dan bijvoorbeeld in MAMP worden geselecteerd:

Zelfondertekende SSL-certificaten in Chrome 58

Windows-gebruikers laden vervolgens onder "Beheer gebruikerscertificaten" (certmgr) in de "Vertrouwde rootcertificeringsinstanties":

Zelfondertekende SSL-certificaten in Chrome 58

Start ten slotte Chrome opnieuw (chrome: // herstart) en geniet van het groene slot:

Zelfondertekende SSL-certificaten in Chrome 58

Terug