| Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung |
| de:dfnpki:tcs:2025:acme [2026/02/03 18:17] – Juergen Brauckmann | de:dfnpki:tcs:2025:acme [2026/04/30 11:41] (aktuell) – [Fallstricke und Fehlermeldungen] Reimer Karlsen-Masur |
|---|
| |
| Viele einführende Informationen finden sich in dem folgenden Foliensatz: {{ :de:dfnpki:harica:2026-01-22-automatisierung.pdf |Webinar "Automatisierung mit ACME"}} | Viele einführende Informationen finden sich in dem folgenden Foliensatz: {{ :de:dfnpki:harica:2026-01-22-automatisierung.pdf |Webinar "Automatisierung mit ACME"}} |
| | |
| | (Der verlinkte Foliensatz wurde am 12.02.2026 mit Hinweisen auf die derzeitige Inkompatibilität von ''mod_md'' ergänzt) |
| |
| ===== ACME EAB Accounts ===== | ===== ACME EAB Accounts ===== |
| * Fähigkeit, dns-01-Challenges zu beantworten | * Fähigkeit, dns-01-Challenges zu beantworten |
| |
| Es gibt keine Möglichkeit, in der HARICA-Oberfläche die Ausstellung von Wildcard-Zertifikaten einzuschränken. Gegebenenfalls können hierfür [[https://doku.tid.dfn.de/de:dfnpki:tcs:2025:caa|CAA-Records]] herangezogen werden. | Es gibt keine Möglichkeit, in der HARICA-Oberfläche die Ausstellung von Wildcard-Zertifikaten einzuschränken. Gegebenenfalls können hierfür [[https://doku.tid.dfn.de/de:dfnpki:tcs:2025:caa|CAA-Records]] verwendet werden (Achtung: Nur eingeschränkte Möglichkeiten bei Schreibzugriff aufs DNS von Subdomains, da CAA-Records von Subdomains die darüberliegende Domain überschreiben können!) |
| |
| ==== Werkzeuge und Beispielaufrufe ==== | ==== Werkzeuge und Beispielaufrufe ==== |
| |
| |
| | === Nicht nutzbar: Apache Modul mod_md === |
| |
| === Apache Modul mod_md === | Neuere Versionen von ''mod_md'' sind derzeit nicht mit HARICA kompatibel. Das erste Ausstellen eines Zertifikats funktioniert, allerdings scheitert die Erneuerung aufgund eines Bugs in der ARI-Implementierung von ''mod_md''. Teilweise wurde auch beobachtet, dass ''mod_md'' soviele Anfragen an die ACME-Directory-URL des HARICA-Systems schickt, dass dort eine IP-Sperre greift. |
| |
| Apache-Modul mod_md aktivieren: | Der Fehler ist nach unserem Kenntnisstand mindestens ab ''mod_md'' v2.6.0 enthalten (Achtung: Versionssnummern von ''mod_md'' sind unabhängig von den Apache-Versionen). |
| a2enmod md ssl | |
| | |
| Konfiguration des Apache: Es sind nur wenige Zeilen in den Server-Context einzutragen (und nicht den Virtualhost!). Im VirtualHost muss lediglich SSL angeschaltet werden. Es sind keine Pfade zu Zertifikaten oder Keys zu konfiguieren. | ''mod_md'' ist damit derzeit nicht nutzbar. |
| MDomain <fqdn> | |
| MDContactEmail <mailadresse> | |
| MDCertificateAgreement accepted | |
| MDCertificateAuthority <Server-URL wie im ACME EAB Account angegeben> | |
| MDExternalAccountBinding /etc/apache2/<Datei mit EAB Details> | |
| | |
| <VirtualHost *:443> | |
| ServerName <fqdn> | |
| SSLEngine On | |
| DocumentRoot /var/www/html | |
| </VirtualHost> | |
| | |
| Inhalt der Datei mit EAB-Details: | |
| {"kid": "<Key ID aus HARICA", "hmac": "<HMAC Key aus HARICA"} | |
| | |
| In Experimenten war nach der initialen Konfiguration ein zweifacher Neustart des Apache notwendig. | |
| |
| === ACME-"Proxy" tiny-acme-server === | === ACME-Proxy tiny-acme-server === |
| |
| Von der Friedrich-Alexander-Universität Erlangen-Nürnberg gibt es den ''tiny-acme-server'', der nach innen zur Einrichtung hin ACME mit http-01-Challenge anbietet, und in Richtung des PKI-Anbieters mit dessen spezifischen API kommuniziert: https://gitos.rrze.fau.de/noc/tiny-acme-server/-/tree/master?ref_type=heads | Von der Friedrich-Alexander-Universität Erlangen-Nürnberg gibt es den ''tiny-acme-server'', der nach innen zur Einrichtung hin ACME mit http-01-Challenge anbietet, und in Richtung des PKI-Anbieters mit dessen spezifischen API kommuniziert: https://gitos.rrze.fau.de/noc/tiny-acme-server/-/tree/master?ref_type=heads |
| |
| |
| === ACME-"Proxy" PKI Self Service Portal HM.edu === | === ACME-Proxy PKI Self Service Portal HM.edu === |
| |
| Die Hochschule München veröffentlicht ihr PKI Self-Service-Portal unter: https://github.com/hm-edu/pki-portal-deployment/tree/main | Die Hochschule München veröffentlicht ihr PKI Self-Service-Portal unter: https://github.com/hm-edu/pki-portal-deployment/tree/main |
| Bitte unbedingt bei der Account-Erzeugung eine Email-Adresse übergeben (z.B. ''certbot''-Parameter ''--email'' oder entsprechende Konfigurationsparameter bei caddy, Traefik, ...). Das HARICA-System lehnt die Account-Erzeugung sonst ab. | Bitte unbedingt bei der Account-Erzeugung eine Email-Adresse übergeben (z.B. ''certbot''-Parameter ''--email'' oder entsprechende Konfigurationsparameter bei caddy, Traefik, ...). Das HARICA-System lehnt die Account-Erzeugung sonst ab. |
| |
| | === Ansible === |
| | |
| | Bei den ''community.crypto''-Module von Ansible muss der Parameter ''modify_account: false'' angegeben werden, damit die Zertifikaterstellung funktioniert. |
| | |
| | === certbot mit --dry-run oder --test-cert Option === |
| | |
| | Sofern die ''certbot''-Software mit einer der Optionen ''--dry-run'' oder ''--test-cert'' genutzt wird, gibt es Fehlermeldungen und Fehlfunktionen, weil ''certbot'' bei diesen Testfunktionalitäten hart verdrahtete ACME-Endpunkte von Let'sEncrypt verwendet, die naturgemäß mit ACME-Accounts, die im HARICA-System angelegt wurden, nicht funktionieren. |
| | |
| | Um z.B. eine Zertifikaterneuerung vorab zu "testen", kann ''certbot renew --force-renewal'' verwendet werden. |
| |
| === Prüfpunkte === | === Prüfpunkte === |
| - Ist es dem ACME Client möglich, eine HTTP- oder DNS-Challenge zu beantworten? Sind hierbei evtl. Fehler aufgetreten (prüfen im Log des ACME Clients)? | - Ist es dem ACME Client möglich, eine HTTP- oder DNS-Challenge zu beantworten? Sind hierbei evtl. Fehler aufgetreten (prüfen im Log des ACME Clients)? |
| |
| === Ansible === | |
| |
| Bei den ''community.crypto''-Module von Ansible muss der Parameter ''modify_account: false'' angegeben werden, damit die Zertifikaterstellung funktioniert. | |