Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen Revision Vorhergehende Überarbeitung Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:dfnpki:tcs:2025:acme [2025/06/24 14:40] – Juergen Brauckmann | de:dfnpki:tcs:2025:acme [2025/08/08 13:54] (aktuell) – Juergen Brauckmann | ||
---|---|---|---|
Zeile 11: | Zeile 11: | ||
==== Enterprise Accounts ==== | ==== Enterprise Accounts ==== | ||
- | === Eigenschaften === | ||
- | |||
* Können nur vom Enterprise Admin angelegt werden | * Können nur vom Enterprise Admin angelegt werden | ||
- | | + | * FQDN/ |
- | * Ausschließlich für Domains, die im HARICA CertManager bereits validiert wurden | + | |
- | | + | |
- | * Zertifikate mit (SSL OV) bzw. ohne Organisationsinformationen (SSL DV) | + | * Für Domains, die in dem Enterprise gelistet sind |
+ | * Domains benötigen eine aktuelle Validierung. Bedeutet konkret: Im UI liegt das Datum in der Spalte " | ||
+ | * Keine ACME Challenge | ||
+ | * Variante | ||
+ | * Zertifikate ohne Organisationsinformationen | ||
+ | * Für Domains, die in dem Enterprise gelistet sind | ||
+ | * ACME Challenge, wenn die Domain keine aktuelle Validierung hat | ||
- | === Anleitung === | + | Die Nutzung von Enterprise ACME Accounts ist dokumentiert unter: [[https:// |
- | Als Enterprise Admin unter dem Menüpunkt Enterprise den Tab ACME auswählen | ||
- | |||
- | |||
- | {{: | ||
- | |||
- | Dort den Button " | ||
- | |||
- | Im folgenden Dialog unbedingt einen Friendly Name vergeben (kann nicht nachträglich geändert werden). An dieser Stelle können noch keine Einstellungen bzgl. Domains gemacht werden. | ||
- | |||
- | Nach Betätigung des Buttons " | ||
- | |||
- | Unter dem Tab " | ||
- | |||
- | **Ohne explizit hinzugefügte Regeln können keine Zertifikate ausgestellt werden.** | ||
- | |||
- | {{: | ||
- | |||
- | |||
- | Nach dem Hinzufügen der Regeln können im Tab " | ||
- | |||
- | {{: | ||
- | |||
- | |||
- | Ein Aufruf eines ACME-Clients geschieht beispielsweise mit: | ||
- | |||
- | certbot certonly --standalone --non-interactive --agree-tos --email <eigene Mailadresse> | ||
- | |||
- | Im Rahmen der Ausstellung muss keine ACME-Challenge beantwortet werden. Es ist keine Änderung am DNS und kein Kontakt per HTTP zwischen CA und Webserver notwendig. | ||
- | |||
- | Eine Mailadresse muss angegeben werden, HARICA antwortet sonst mit einem Fehler. | ||
==== Personal Accounts ==== | ==== Personal Accounts ==== | ||
- | |||
- | === Eigenschaften === | ||
* In einem Enterprise nur verfügbar, wenn der Admin die Möglichkeit hierzu freigeschaltet hat | * In einem Enterprise nur verfügbar, wenn der Admin die Möglichkeit hierzu freigeschaltet hat | ||
* Für jeden User in diesem Enterprise zugänglich (wenn freigeschaltet) | * Für jeden User in diesem Enterprise zugänglich (wenn freigeschaltet) | ||
+ | * Für alle Domains, die in dem Enterprise gelistet sind, dem der User zugeordnet ist | ||
+ | * Auch für Domains, die zwar gelistet, aber nicht validiert wurden | ||
* Pro User maximal drei zeitgleich aktive ACME Accounts | * Pro User maximal drei zeitgleich aktive ACME Accounts | ||
* ACME Challenge bei jeder Zertifikatausstellung erforderlich, | * ACME Challenge bei jeder Zertifikatausstellung erforderlich, | ||
- | * **Derzeit für alle Domains, unabhängig von Domain-Listen im Enterprise** | ||
* SSL DV Zertifikate (ohne Organisationsinformationen) | * SSL DV Zertifikate (ohne Organisationsinformationen) | ||
+ | Die Freischaltung und Nutzung ist dokumentiert unter: [[https:// | ||
- | === Freischaltung von Personal ACME Accounts | + | ==== Zertifikatketten ==== |
- | Ob Personal | + | Im Rahmen des Prozesses liefert der ACME-Server einen Zertifikatkette aus, die vom ACME-Client in der Regel zur Installation auf dem System verwendet wird. |
- | Zur Konfiguration muss ein Enterprise Admin unter dem Menüpunkt „Enterprise→Admin“ | + | HARICA liefert per ACME eine Kette aus, die im Cross-Zertifikat für die Root CA 2015 endet. Damit ist eine größtmögliche Kompatibilität zu Anwendungssoftware gegeben. |
- | Anschließend oben rechts das " | + | ==== ACME Challenges ==== |
- | {{: | + | Abhängig vom Account-Typ, der gewählten Variante und der angefragten Domain sind ACME Challenges erforderlich. |
+ | ^ Account Typ ^ Variante | ||
+ | | Enterprise | ||
+ | | | ||
+ | | Enterprise | ||
+ | | | ||
+ | | Personal | ||
+ | | | ||
- | === Nutzung von Personal ACME Accounts === | ||
- | Die Personal ACME Accounts können von jedem User im System über den Punkt " | + | HARICA unterstützt die Challenge-Typen '' |
- | Der Button Create+ erzeugt einen Account. Aufruf des neuen Accounts in der Liste klappt die Details auf. Dort können die Parameter Key ID, HMAC Key und Server URL abgelesen werden, die für die Verwendung mit einem ACME Client benötigt werden. | + | **Achtung: |
+ | Folgendes funktioniert derzeit **nicht**: | ||
+ | _acme-challenge.< | ||
+ | < | ||
- | {{: | ||
+ | ==== Beispielaufrufe ==== | ||
+ | === certbot === | ||
+ | Für Enterprise Accounts mit vor-validierten Domains (ohne ACME Challenge): | ||
+ | certbot certonly --standalone --non-interactive --agree-tos --email <eigene Mailadresse> | ||
- | Ein Aufruf eines ACME-Clients geschieht beispielsweise mit: | ||
- | certbot certonly | + | Für Personal ACME Accounts mit HTTP-Validierung über einen bereits laufenden Webserver mit Dokumenten-Root in '' |
- | Zur Ausstellung des Zertifikats muss eine ACME-Challenge beantwortet werden, um die Berechtigung innerhalb des Enterprises nachzuweisen. Es ist daher ein Kontakt per HTTP zwischen CA und auf dem FQDN laufenden Webserver notwendig. | + | certbot certonly |
- | Eine Mailadresse muss angegeben werden, HARICA antwortet sonst mit einem Fehler. | + | === win-acme === |
+ | .\wacs.exe --source manual --accepttos --eab-key-identifier <Key ID> --eab-key <HMAC Key> --baseuri <Server URL> --emailaddress < | ||
- | ==== Bekannte Inkompatibilitäten ==== | ||
- | Derzeit funktioniert HARICAs ACME nicht mit dem cert-manager | + | === cert-manager |
- | Die Fehlermeldung ist: | ||
- | Failed to wait for order resource " | ||
- | HARICA arbeitet an einer Lösung. | + | apiVersion: cert-manager.io/v1 |
+ | kind: ClusterIssuer | ||
+ | metadata: | ||
+ | name: ' | ||
+ | namespace: cert-manager | ||
+ | spec: | ||
+ | acme: | ||
+ | email: < | ||
+ | externalAccountBinding: | ||
+ | keyID: <Key ID> | ||
+ | keySecretRef: | ||
+ | key: secret | ||
+ | name: harica-key | ||
+ | preferredChain: | ||
+ | privateKeySecretRef: | ||
+ | name: harica-prod-key | ||
+ | server: <Server URL> | ||
+ | solvers: | ||
+ | - http01: | ||
+ | ingress: | ||
+ | class: ingress-intern | ||
- | ==== Fehlermeldungen ==== | + | Dazu wird ein Secret benötigt, das den HMAC-Schlüssel für das External Account Binding enthält: |
+ | apiVersion: v1 | ||
+ | kind: Secret | ||
+ | metadata: | ||
+ | name: harica-key | ||
+ | namespace: cert-manager | ||
+ | type: Opaque | ||
+ | data: | ||
+ | secret: < | ||
+ | |||
+ | Über diesen ClusterIssuer können dann gemäß der cert-manager-Dokumentation Zertifikate beantragt und automatisch ausgestellt werden. | ||
+ | https:// | ||
+ | |||
+ | |||
+ | ==== Fallstricke und Fehlermeldungen ==== | ||
+ | |||
+ | |||
+ | === Fehlermeldungen === | ||
Der ACME-Server von HARICA gibt im Fehlerfall teilweise nur sehr generische Meldungen zurück, z.B. | Der ACME-Server von HARICA gibt im Fehlerfall teilweise nur sehr generische Meldungen zurück, z.B. | ||
{ | { | ||
Zeile 117: | Zeile 137: | ||
AttributeError: | AttributeError: | ||
- | Beim Auftreten eines Fehlers | + | |
+ | === Email-Adresse erforderlich === | ||
+ | Bitte unbedingt bei der Account-Erzeugung eine Email-Adresse übergeben (z.B. '' | ||
+ | |||
+ | |||
+ | === Prüfpunkte === | ||
+ | |||
+ | Beim Auftreten eines Fehlers | ||
+ | |||
+ | Enterprise ACME Accounts: | ||
- Sind die Daten Key-ID, HMAC-Key, Server-URL korrekt im Aufruf des ACME Clients angegeben? | - Sind die Daten Key-ID, HMAC-Key, Server-URL korrekt im Aufruf des ACME Clients angegeben? | ||
- Ist der FQDN, für den ein Zertifikat beantragt wird, im ACME-Account wirklich freigeschaltet und verfügbar? Haben Sie expliizite Regeln im Tab " | - Ist der FQDN, für den ein Zertifikat beantragt wird, im ACME-Account wirklich freigeschaltet und verfügbar? Haben Sie expliizite Regeln im Tab " | ||
- Ist die Domain im Enterprise erfolgreich validiert? | - Ist die Domain im Enterprise erfolgreich validiert? | ||
- | - Wurde dem ACME-client | + | - Wurde dem ACME Client |
+ | Personal ACME Accounts: | ||
+ | - Sind die Daten Key-ID, HMAC-Key, Server-URL korrekt im Aufruf des ACME Clients angegeben? | ||
+ | - Ist die Domain im Enterprise gelisted (Validierung im CertManager nicht erforderlich)? | ||
+ | - Wurde dem ACME Client ein Parameter '' | ||
+ | - Ist es dem ACME Client möglich, eine HTTP- oder DNS-Challenge zu beantworten? | ||
+ | === Ansible === | ||
+ | Bei den '' |