Standaarden:Beveiligd Gegevenstransport/import root certificaat
Standaarden: Beveiligd Gegevenstransport/import root certificaat
Om de certificaat keten voor de PKIoverheid Staat der Nederlanden Private Root CA - G1 werkend te maken op systemen zijn meer handelingen nodig dan voor de andere PKIoverheid certificaten. Dit komt omdat de Private Root CA niet standaard herkend wordt in systemen. Dit moet handmatig gerealiseerd worden. In onderstaand artikel wordt hiervoor voor de meest gebruikte systemen een aanzet gegeven. Gezien de variaties en specials die per systeem kunnen bestaan is dit artikel dan ook lang niet uitputtend. Voor inhoudelijke vragen over het importeren van root certificaten verwijzen we graag door naar de leverancier van het gebruikte systeem.
Het certificaat wat we gebruiken is het Staat der Nederlanden Private Root CA - G1 stamcertificaat. Genaamd PrivateRootCA-G1.cer
Linux
Het certificaat wat je bij PKIoverheid download is in het DER formaat, een binair formaat. Dit wordt vaak niet direct geaccepteerd, het moet eerst omgezet worden in PEM formaat, wat een tekstgebaseerd formaat is. Het makkelijkst is om dit middels openssl te doen.
Converteer het DER bestand naar PEM:
openssl x509 -inform DER -in PrivateRootCA-G1.cer -out PrivateRootCA-G1.crt -text
Gebruik vervolgens het .crt bestand voor de rest van de stappen.
Run de volgende commando's om het certificaat bekend te maken op het systeem.
sudo mkdir /usr/local/share/ca-certificates/extra sudo cp PrivateRootCA-G1.crt /usr/local/share/ca-certificates/extra/PrivateRootCA-G1.crt sudo update-ca-certificates
Windows
Als er gebruik gemaakt wordt van een Active Directory dan is het handig om het certificaat direct daar te importeren zodat het certificaat direct op alle machines bekend is. Mocht dit niet kunnen of onwenselijk zijn dan kan het certificaat ook lokaal geïmporteerd worden.
- Dubbelklik het certificaat bestand, en klik Import Certificate
- Verander Store Location naar Local Machine
- Accepteer een eventuele UAC melding
- In het volgende scherm, selecteer een specifieke certificate store: Trusted Root Certification Authorities
- De import wizard is klaar, certificaat is geïmporteerd.
- Het kan zijn dat de server hierna nog herstart moet worden (volledige herstart van het systeem)
Java
Java maakt geen gebruik van de vertrouwde root certificaten op het onderliggende systeem. Java heeft zijn eigen keystore waar het certificaat toegevoegd moet worden. Onder Linux staat de tool 'keytool' meestal wel op een locatie welke in het $PATH bekend is. Zo niet, run
find / -name keytool
Onder Windows zal je naar de locatie moeten navigeren in de commandprompt (bijv. cmd). Meestal staat de JRE in Program Files geïnstalleerd.
Voor Linux:
sudo keytool -importcert -alias staat_der_nederlanden_private_root_g1 -keystore $(readlink -e $(dirname $(readlink -e $(which keytool)))/../lib/security/cacerts) -storepass changeit -file PrivateRootCA-G1.cer
Voor Windows: Zorg dat je met een commandprompt in de JRE directory staat.
bin\keytool -importcert -alias staat_der_nederlanden_private_root_g1 -keystore lib\security\cacerts -storepass changeit -file PrivateRootCA-G1.cer
Type in de opkomende prompt yes om het certificaat te vertrouwen.
Vervolgens is het certificaat terug te vinden middels keytool:
keytool -list -keystore BOVENSTAAND_PATH_NAAR_CACERTS -storepass changeit