Dies ist eine alte Version des Dokuments!


Serverzertifikate über ACME

HARICA bietet die Möglichkeit, über das ACME-Protokoll und Standard-Werkzeuge Serverzertifikate zu beziehen. Hierfür müssen in der Oberfläche unter https://cm.harica.gr sogenannte ACME Accounts angelegt werden.

Es gibt zwei verschiedene Typen ACME Accounts:

  • Enterprise Accounts
  • Personal Accounts

Eigenschaften

  • Können nur vom Enterprise Admin angelegt werden
  • Vorvalidiert, keine ACME Challenges
  • Ausschließlich für Domains, die im HARICA CertManager bereits validiert wurden
  • FQDN/Domains, für die Zertifikate ausgestellt werden können, können im Accont sehr detailliert konfiguriert werden
  • Zertifikate mit (SSL OV) bzw. ohne Organisationsinformationen (SSL DV)

Anleitung

1. Als Enterprise Admin unter dem Menüpunkt Enterprise den Tab ACME auswählen

Bild des Dialogs Enterprises-ACME

2. Dort den Button „Create +“ betätigen

3. Im folgenden Dialog unbedingt einen Friendly Name vergeben (dieser kann nicht nachträglich eingefügt oder geändert werden).

4. Hinweis: An dieser Stelle können noch keine Einstellungen bzgl. Domains vorgenommen werden.

5. Nach Betätigung des Buttons „Create“ schließt sich der Dialog.

6. Nun muss der neue Account in der Liste aufgesucht und geöffnet werden.

7. Unter dem Tab „Domains“ müssen Regeln hinzugefügt werden, für welche Subdomains oder FQDN Zertifikate ausgestellt werden sollen. Für eine neue Regel klicken Sie auf das „+“ links neben einer Domain. Es können Deny oder Allow-Regeln konfiguriert werden, um komplexe Szenarien abbilden zu können.

Ohne explizit hinzugefügte Regeln können keine Zertifikate ausgestellt werden.

Bild des Dialogs Enterprises-ACME-Domains

8. Nach dem Hinzufügen der Regeln können im Tab „Details“ die ACME EAB Parameter abgelesen werden.

Bild des Dialogs Enterprises-ACME-Details

Ein Aufruf eines ACME-Clients geschieht beispielsweise mit:

  certbot certonly --standalone --non-interactive --agree-tos --email <eigene Mailadresse> --eab-kid <Key ID> --eab-hmac-key <HMAC Key> --server <Server URL> --domain <FQDN des Zertifikats>

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.

Beim Registrieren des Accounts mit dem ACME-Client muss eine Mailadresse muss angegeben werden. Andernfalls antwortet HARICA mit einem Fehler.

Eigenschaften

  • 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)
  • Pro User maximal drei zeitgleich aktive ACME Accounts
  • ACME Challenge bei jeder Zertifikatausstellung erforderlich, um die Berechtigung nachzuweisen
  • Derzeit für alle Domains, unabhängig von Domain-Listen im Enterprise
  • SSL DV Zertifikate (ohne Organisationsinformationen)

Freischaltung von Personal ACME Accounts

Ob Personal ACME Accounts generell in einem Enterprise zur Verfügung stehen oder nicht, kann konfiguriert werden. Die Konfiguration gilt für das gesamte Enterprise, es gibt keine Steuerung für individuelle User.

Zur Konfiguration muss ein Enterprise Admin unter dem Menüpunkt „Enterprise→Admin“ die eigene Einrichtung aufrufen.

Anschließend oben rechts das „Etikett“-Symbol anklicken, und #ACME-Personal aktivieren.

Bild des Dialogs Enterprise-Details

Nutzung von Personal ACME Accounts

Die Personal ACME Accounts können von jedem User im System über den Punkt „ACME“ im linken Seitenmenü verwaltet werden.

1. Der Button Create+ erzeugt einen Account.

2. 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.

Bild des Dialogs Personal ACME

Ein Aufruf eines ACME-Clients geschieht beispielsweise mit:

  certbot certonly --webroot --webroot-path /var/www --non-interactive --agree-tos --email <eigene Mailadresse> --eab-kid <Key ID> --eab-hmac-key <HMAC Key> --server <Server URL> --domain <FQDN des Zertifikats>

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.

Beim Registrieren des Accounts mit dem ACME-Client muss eine Mailadresse muss angegeben werden. Andernfalls antwortet HARICA mit einem Fehler.

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.

HARICA liefert zur Zeit eine Kette aus, die in der aktuellen Generation der Wurzelzertifikate endet (Root CA 2021)

Derzeit funktioniert HARICAs ACME nicht mit dem cert-manager von Kubernetes/OpenShift.

Die Fehlermeldung ist:

  Failed to wait for order resource "test" to become ready: order is in "errored" state: Failed to create Order: 400 urn:ietf:params:acme:error:malformed: No Key ID in JWS header.

HARICA arbeitet an einer Lösung.

Der ACME-Server von HARICA gibt im Fehlerfall teilweise nur sehr generische Meldungen zurück, z.B.

  {
    "type": "urn:ietf:params:acme:error:serverInternal",
    "detail": "failed to order certificate from RA"
  }

oder als Ausgabe von certbot

  An unexpected error occurred:
  AttributeError: can't set attribute

Beim Auftreten eines Fehlers sollte zuerst geprüft werden:

  1. Sind die Daten Key-ID, HMAC-Key, Server-URL korrekt im Aufruf des ACME Clients angegeben?
  2. Ist der FQDN, für den ein Zertifikat beantragt wird, im ACME-Account wirklich freigeschaltet und verfügbar? Haben Sie expliizite Regeln im Tab „Domains“ hinzugefügt?
  3. Ist die Domain im Enterprise erfolgreich validiert?
  4. Wurde dem ACME-client ein Parameter –email übergeben?
  • Zuletzt geändert: vor 2 Monaten