ACME-DNS: Unterschied zwischen den Versionen

Aus schokokeks.org Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(3 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 2: Zeile 2:




{{AlertBox|title=Achtung|content=Dieses Script ist von einem Kunden bereitgestellt worden. Es basiert darauf, unser Webinterface über ein Script zu bedienen. Es kann durch Änderungen am Webinterface jederzeit zu Funktionsstörungen kommen, wir übernehmen dafür keine Gewähr.}}
{{AlertBox|title=Achtung|content=Dieses Script ist von einem Kunden bereitgestellt worden. Es basiert darauf, unser Webinterface über ein Script zu bedienen. Es kann durch Änderungen am Webinterface jederzeit zu Funktionsstörungen kommen, wir übernehmen dafür keine Gewähr, sind aber über Hinweise dankbar, sollte es Probleme geben.}}


== DNS-Admin anlegen ==


Um DNS-Records automatisch anzulegen, muss das Script [https://source.schokokeks.org/contrib/dns_schokokeks.sh dns_schokokeks.sh] im acme.sh-Verzeichnis oder im Unterverzeichnis dnsapi eingesetzt werden. Beim Aufruf müssen die Umgebungsvariablen '''SCHOKOKEKS_USERNAME''' und '''SCHOKOKEKS_PASSWORD''' passend gesetzt werden. Es ist dringend empfehlenswert, dafür einen separaten zusätzlichen Admin-Account anzulegen, der nur auf die DNS-Einstellungen zugreifen darf. Optional wird auch '''SCHOKOKEKS_TTL''' ausgewertet um eine eigene TTL festzulegen.
Da die Zugangsdaten in der Konfiguration von acme.sh hinterlegt bleiben, sollte der verwendete Zugang möglichst wenig Rechte haben.
 
Im Webinterface unter "Benutzer" -> "Zusätzliche Admins" können Sie einen neuen Benutzer anlegen. Gewähren Sie diesem nur die Rechte "An- und Abmeldung an diesem Webinterface" und "DNS-Records verwalten".
 
== acme.sh instalieren ==
 
Installieren Sie acme.sh als root über
 
curl https://get.acme.sh | sh -s email=meine@email.de
acme.sh --set-default-ca --server letsencrypt
 
== Plugin installieren ==
 
Laden Sie das Script [https://source.schokokeks.org/contrib/dns_schokokeks.sh dns_schokokeks.sh] (nur diese eine Datei) herunter und legen Sie dieses in ''.acme.sh/dnsapi'' ab.
 
== Zertifikat beantragen ==
 
Nur beim ersten Aufruf müssen die Zugangsdaten als Umgebungsvariable gesetzt werden, acme.sh merkt sich die Umgebung für die späteren Erneuerungen.
 
Beim Aufruf müssen die Umgebungsvariablen '''SCHOKOKEKS_USERNAME''' und '''SCHOKOKEKS_PASSWORD''' passend gesetzt werden. Optional wird auch '''SCHOKOKEKS_TTL''' ausgewertet um eine eigene TTL festzulegen.


Da die schokokeks.org-DNS-Server nicht live aktualisiert werden, kann es bis zu einer Minute dauern, bis die Änderungen abrufbar sind. Zur Sicherheit sollte daher acme.sh 70 Sekunden warten nach dem Setzen des Records.
Da die schokokeks.org-DNS-Server nicht live aktualisiert werden, kann es bis zu einer Minute dauern, bis die Änderungen abrufbar sind. Zur Sicherheit sollte daher acme.sh 70 Sekunden warten nach dem Setzen des Records.
Da das Zertifikat über die DNS-Challenge beantragt wird, sind Wildcard-Zertifkate möglich. Das kann unter Umständen die Konfiguration auf dem lokalen Webserver drastisch erleichtern.


Der Aufruf könnte dann etwa so aussehen:
Der Aufruf könnte dann etwa so aussehen:
Zeile 13: Zeile 35:
  SCHOKOKEKS_USERNAME="testuser_dns"
  SCHOKOKEKS_USERNAME="testuser_dns"
  SCHOKOKEKS_PASSWORD="k3kskrümel123"
  SCHOKOKEKS_PASSWORD="k3kskrümel123"
  acme.sh --issue -d example.com --dns dns_schokokeks --dnssleep 70
  acme.sh --issue -d *.example.com --dns dns_schokokeks --dnssleep 70

Aktuelle Version vom 20. Mai 2026, 06:04 Uhr

Für die Zertifikatsverwaltung über ACME.sh in einem Kontext ohne öffentlich erreichbaren Webserver kann DNS verwendet werden.


Achtung

Dieses Script ist von einem Kunden bereitgestellt worden. Es basiert darauf, unser Webinterface über ein Script zu bedienen. Es kann durch Änderungen am Webinterface jederzeit zu Funktionsstörungen kommen, wir übernehmen dafür keine Gewähr, sind aber über Hinweise dankbar, sollte es Probleme geben.


DNS-Admin anlegen

Da die Zugangsdaten in der Konfiguration von acme.sh hinterlegt bleiben, sollte der verwendete Zugang möglichst wenig Rechte haben.

Im Webinterface unter "Benutzer" -> "Zusätzliche Admins" können Sie einen neuen Benutzer anlegen. Gewähren Sie diesem nur die Rechte "An- und Abmeldung an diesem Webinterface" und "DNS-Records verwalten".

acme.sh instalieren

Installieren Sie acme.sh als root über

curl https://get.acme.sh | sh -s email=meine@email.de
acme.sh --set-default-ca --server letsencrypt

Plugin installieren

Laden Sie das Script dns_schokokeks.sh (nur diese eine Datei) herunter und legen Sie dieses in .acme.sh/dnsapi ab.

Zertifikat beantragen

Nur beim ersten Aufruf müssen die Zugangsdaten als Umgebungsvariable gesetzt werden, acme.sh merkt sich die Umgebung für die späteren Erneuerungen.

Beim Aufruf müssen die Umgebungsvariablen SCHOKOKEKS_USERNAME und SCHOKOKEKS_PASSWORD passend gesetzt werden. Optional wird auch SCHOKOKEKS_TTL ausgewertet um eine eigene TTL festzulegen.

Da die schokokeks.org-DNS-Server nicht live aktualisiert werden, kann es bis zu einer Minute dauern, bis die Änderungen abrufbar sind. Zur Sicherheit sollte daher acme.sh 70 Sekunden warten nach dem Setzen des Records.

Da das Zertifikat über die DNS-Challenge beantragt wird, sind Wildcard-Zertifkate möglich. Das kann unter Umständen die Konfiguration auf dem lokalen Webserver drastisch erleichtern.

Der Aufruf könnte dann etwa so aussehen:

SCHOKOKEKS_USERNAME="testuser_dns"
SCHOKOKEKS_PASSWORD="k3kskrümel123"
acme.sh --issue -d *.example.com --dns dns_schokokeks --dnssleep 70