Zertifikat über acme DNS-API erstellen.

Die Zertifikatslaufzeiten werden weltweit aus Sicherheitsgründen kleiner.

Eine jeweilige manuelle Ausstellung wird daher in Zukunft schwierig.

Unser DNS-Manager bietet eine API an, mit dem auf dem Zielsystem die Zertifikate automatisch über acme erstellt werden können.

API aktivieren

  1. Kundenportal https://my.barinformatik.ch > DNS Manager
  2. Klick auf "API"
  3. Klick auf "API Tocken erstellen"
  4. Einen Namen für den Token eingeben, die gewünschten Zonen auswählen

Nun kann der Token auf dem Zielsystem benutzt werden, um die notwendigen DNS-Einträge zur Authentifizierung automatisch zu erstellen.

In den API Logs sieht man Details zur Benutzung der API

Das Verzeichnis „acme.sh/“ enthält die api Datei für acme sowie ein deploy Script für dane. 
acme erstellt damit über die DNS-Manager-API einen temporären TXT-Eintrag und löscht diesen nach Abschluss der Challenge.
Dies ist die einzige Challenge-Art, die Wildcard-Zertifikate ( *.deine-domain.ch ) unterstützt.

Linux

Installieren von acme
Falls acme noch nicht auf Ihrem Server installiert ist:
curl https://get.acme.sh | sh -s email=your@email.com
source ~/.bashrc
Oder:
wget -O - https://get.acme.sh | sh -s email=your@email.com
source ~/.bashrc

Download des BAR Informatik AG DNS Plugins
curl -l -o dns_mgdns.sh https://my.barinformatik.ch/dl.php?type=d&id=60
oder
wget -O dns_mgdns.sh https://my.barinformatik.ch/dl.php?type=d&id=60


Installieren des BAR Informatik AG DNS Plugins
Kopieren Sie das Provider-Skript in Ihr Verzeichnis „acme.sh dnsapi“:

mkdir -p ~/.acme.sh/dnsapi/
cp integrations/acme.sh/dnsapi/dns_mgdns.sh ~/.acme.sh/dnsapi/
chmod +x ~/.acme.sh/dnsapi/dns_mgdns.sh

 

Verwendungs-Beispiel
Ersetzen Sie "deine-domain.ch" durch Ihre eigene Domain (für Wildcard-Zertifikate verwenden Sie *.your-domain.com):

export MGDNS_HOST="my.barinformatik.ch"
export MGDNS_EMAIL="konto@deine-domain.ch"
export MGDNS_TOKEN="DEIN-API-KEY"
~/.acme.sh/acme.sh --issue --dns dns_mgdns -d deine-domain.ch -d '*.deine-domain.ch'

 

Optional DANE

DANE TSLA-Einträge dienen der unabhängigen Überprüfung von Zertifikaten und werden vor allem im Email-Bereich benutzt.
Um TSLA DNS-Einträge (Hash des erstellten Zertifikats zu erstellen) vom erstellten Zertifikat automatisch zu setzen:

Installieren Sie den Deploy-Hook:
mkdir -p ~/.acme.sh/deploy/
cp integrations/acme.sh/deploy/dns_mgdns_dane.sh ~/.acme.sh/deploy/dns_mgdns_dane.sh
chmod +x ~/.acme.sh/deploy/dns_mgdns_dane.sh

Stellen Sie das Zertifikat aus und richten Sie anschliessend die TLSA-Einträge ein:
export MGDNS_HOST="my.barinformatik.ch"
export MGDNS_EMAIL="konto@deine-domain.ch"
export MGDNS_TOKEN="DEIN-API-KEY"
export MGDNS_DANE_PORTS="25 465 587"

# Issue cert (DNS challenge via dns_mgdns)
~/.acme.sh/acme.sh --issue --dns dns_mgdns -d mx.deine-domain.ch

# Deploy TLSA records

~/.acme.sh/acme.sh --deploy -d mx.deine-domain.ch --deploy-hook dns_mgdns_dane

 

Weitere Informationen

Erforderliche Umgebungsvariablen

Variabel Beschreibung Beispiel
MGDNS_HOST URL zu Kundenportal API my.barinformatik.ch
MGDNS_EMAIL Login (Owner) E-Mail-Adresse des Kundenportals wird als API-Benutzername verwendet konto@deine-domain.ch
MGDNS_TOKEN Raw-API-Schlüssel (das Skript erstellt das Authentifizierungstoken automatisch) DEIN-API-KEY
MGDNS_DANE_HOOK
Liste von Ports getrennt durch ein Leerzeichen, für welche DANE DNS-Einträge erstellt werden sollen 25 465 587

 

Optionale Umgebungsvariablen

Variable Beschreibung Default
MGDNS_TTL TTL-Wert des TXT-Eintrags 60
MGDNS_INSECURE Auf 1 setzen, um die TLS-Überprüfung zu deaktivieren -


Optionale DANE Angaben

Variabel Beschreibung Beispiel
MGDNS_DANE_PORTS Leerzeichengetrennte Port-Liste (z.B. "25 465 587"). Aktiviert DANE. -
MGDNS_DANE_USAGE TLSA Zertifikat Usage (3 = DANE-EE) 3
MGDNS_DANE_SELECTOR TLSA Selector (1 = SubjectPublicKeyInfo) 1
MGDNS_DANE_MATCHING TLSA Type (1 = SHA-256, 2 = SHA-512) 1
MGDNS_DANE_TTL TTL für die TLSA Einträge in Sekunden 3600
MGDNS_INSECURE 1 um TLS Prüfung zu deaktivieren -

 

Funktionen

  • dns_mgdns_add
    Ermittelt die Root-Zone über GET /zone/
    Erstellt einen TXT-Eintrag über POST /zone/record mit rdata[txtdata]

  • dns_mgdns_rm
    Listet Datensätze über GET /zone/ auf
    Löscht passende TXT-Einträge über DELETE /zone//record/


Links

DNS Provider Plugin Download

https://simple-acme.com/

https://www.win-acme.com/manual/getting-started

 

 

War diese Antwort hilfreich? 0 Benutzer fanden dies hilfreich (0 Stimmen)