====== Cerbot====== [[configuratie:configuratie|{{ :configuration:configuration-management.jpg?nolink&150|}}]] ===== context===== dit document beschrijft de werking van Certbot, een OpenSource tool waarmee je https-certificaten van Letsencrypt kan aanmaken en beheren. [[[[werkinstructies:letsencrypt_certificaat_aanmaken|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==== certbot certificates {{:configuratie:2019-09-24_11_57_45-configuratie_certbot_come_up_with_a_striking_name_.png?600|}} ====een certificaat vernieuwen==== certbot renew dit wordt na 30 dagen automatisch vanuit een cronjob gedaan. ====een certificaat herroepen==== certbot revoke --cert-name Als gebruikers dan naar de website surfen, krijgen ze onderstaande foutboodschap te zien: {{ :configuratie:2019-09-24_15_44_40-problem_loading_page.png?400 |}} de status van je certificaat kan je ook opvragen: certbot certificates {{ :configuratie:2019-09-24_15_53_45-configuratie_certbot_come_up_with_a_striking_name_.png?400 |}} ====een certificaat verwijderen==== deze stap doe je normaliter na het herroepen van een certificaat certbot delete --cert-name 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 -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