Table of Contents
Cerbot
context
dit document beschrijft de werking van Certbot, een OpenSource tool waarmee je https-certificaten van Letsencrypt kan aanmaken en beheren. Hoe je een certificaat aanmaakt staat elders beschreven.
werking
certbot
- het Zwitsers mes waarmee je de hele levensloop van je https-certificaat beheert
een certificaat aanmaken
certbot run
een certificaat bekijken
een certificaat vernieuwen
certbot renew
dit wordt na 30 dagen automatisch vanuit een cronjob gedaan.
een certificaat herroepen
certbot revoke --cert-name <naam certificaat>
Als gebruikers dan naar de website surfen, krijgen ze onderstaande foutboodschap te zien:
de status van je certificaat kan je ook opvragen:
certbot certificates
een certificaat verwijderen
deze stap doe je normaliter na het herroepen van een certificaat
certbot delete --cert-name <naam certificaat>
De werking van certbot kan je nog best leren kennen, door:
- het programma met de optie -v uit te voeren
- het logboek /var/log/letsencrypt/letsencrypt.log te lezen
configuratie
Alle bestanden worden bewaard in /etc/letsencrypt. Daar vind je onder meer:
- het certificaat
- private keys
- certificate signing requests
- config voor renewals
- instellingen voor de apache configuratie
Certificaten zijn gevoelige bestandjes, dus het is goed dat je kijkt maar niet aanraakt. .pem-bestanden zijn een container formaat. In dat bestand zitten dus andere bestanden. De inhoud kan je lezen ahv het commando:
openssl <type bestand> -in cert.pem -text
- Een x509 certificaat inlezen:
openssl x509 -in cert.pem -text
Dit komt overeen met de eigenschappen van een certificaat inlezen in je browser.
- Een RSA-encrypted private key inlezen:
openssl pkey -in key.pem -text -noout
problemen, problemen
EHBO
/var/log/letsencrypt/letsencrypt.log: bevat alle acties
fout bij maken van certficaat
bij maken van certificaat komt volgende fout:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Error while running apache2ctl configtest. Action 'configtest' failed. The Apache error log may have more information. sh: 0: getcwd() failed: No such file or directory AH00526: Syntax error on line 21 of /etc/apache2/sites-enabled/dokuwiki.conf: SSLCertificateFile: file '/etc/letsencrypt/live/dwkoen.ddns.net/fullchain.pem' does not exist or is empty
oorzaak: na revoke (en verwijderen) van certificaat werd Apache config niet aangepast. oplossing:
- verwijder onderstaande lijntjes uit /etc/apache2/sites-enabled/dokuwiki.conf:
- SSLCertificateFile /etc/letsencrypt/live/dwkoen.ddns.net/fullchain.pem
- SSLCertificateKeyFile /etc/letsencrypt/live/dwkoen.ddns.net/privkey.pem
- Include /etc/letsencrypt/options-ssl-apache.conf
- maak opnieuw certificaat aan