Wenn Sie hier gelandet sind, ohne die Einstiegsseite zu kennen, bitte lesen Sie diese zuerst. Dort wird auch erklärt was ACME ist
Um auf einem Server per ACME Zertifikate zu beziehen und zu installieren, wird ein ACME Client benötigt. Wir beschreiben je einen Client für Linux und Windows. Weitere ACME Clients finden Sie hier: https://acmeclients.com/
Die hier vorgestellten ACME Clients können sich bei einem bestehenden Webserver einbinden oder können auch bei Bedarf automatisch einen Webserver für Domain Validierung bereitstellen.
sudo apt install certbot python3-certbot-apache
sudo zypper install python3-certbot python3-certbot-apache
wenn nginx verwendet wird python3-certbot-nginx statt python3-certbot-apache
Sollten die Pakete standardmäßig nicht gefunden werden, muss der entsprechende SUSE PackageHub aktiviert werden (VERSION.SP entsprechend ersetzen, z.B.: 15.6)
sudo SUSEConnect -p PackageHub/VERSION.SP/x86_64 zypper ref zypper install python3-certbot python3-certbot-apache
Auf der Webseite von Certbot finden Sie weitere Möglichkeiten zur Installation, falls das Paket selbst, oder keine aktuelle Version, in den Paketquellen enthalten ist (beispielsweise per pip).
certbot run -m AMIN-EMAIL@tu-dresden.de --server https://acme.pki.cert.tu-dresden.de/ -d example1.cert.tu-dresden.de
"run" bezieht ein neues Zertifikat und installiert es im lokalen Webserver (Apache oder nginx mit den o.g. Plugins)
Mit "-d" werden die Domains angegeben, für die das Zertifikat ausgestellt werden soll
Statt dessen kann "certbot certonly ..." benutzt werden um ein neues Zertifikat auszustellen es aber nicht im Webserver zu installieren
Wenn ein anderer Webserver verwendet wird, kann es funktionieren den Webroot Ordner anzugeben (cerbot braucht Schreibrechte in $webroot/.well-known/acme-challenge):
certbot certonly --webroot -w /var/www/example …
Simple-acme von https://simple-acme.com/download herunterladen und entpacken
Powershell als Admin starten
Zertifikat ausstellen
wacs.exe --baseuri "https://acme.pki.cert.tu-dresden.de/" --source manual --host example1.tud.de,example2.tud.de
mit dem Parameter "--source manual" werden die DNS-Namen manuell über das Kommando angegeben. Das Programm bietet verschiedene Parameter die DNS-Namen aus dem IIS oder einem CSR zu lesen
mit dem Alternativ-Parameter "--source iis" wird das Zertifikat direkt im IIS hinterlegt, ggf. muss das Default Binding angepasst werden
mit dem Parameter "--host" wird eine kommagetrennte Liste von DNS-Namen übergeben
Der Befehl beantragt ein neues Zertifikat und speichert dies standardmäßig im Windows Zertifikatsspeicher
Weitere Informationen finden Sie auf der Projektwebseite: https://simple-acme.com/
tar xf "dehydrated-X.Y.Z.tar.gz"
sudo cp dehydrated-X.Y.Z/dehydrated /usr/local/bin/
nginx: grep 'root\s' /etc/nginx/ -R
apache: grep DocumentRoot /etc/apache2/ -R
oder: grep DocumentRoot /etc/httpd/ -R
export WEBROOT=/webroot sudo mkdir -p $WEBROOT/.well-known/acme-challenge sudo chmod o+rx $WEBROOT/.well-known/acme-challenge $WEBROOT/.well-known/
Konfigurationsverzeichnis /etc/dehydrated anlegen:sudo mkdir /etc/dehydrated
WELLKNOWN=WEBROOT/.well-known/acme-challenge CONTACT_EMAIL=admin-email@tu-dresden.de CA=https://acme.pki.cert.tu-dresden.de DOMAINS_TXT=/etc/dehydrated/domains.txt CERTDIR="/etc/dehydrated/certs"
Neues Zertifikat anfordern:
sudo dehydrated -c -f /etc/dehydrated/config
0 7 * * 1 root dehydrated -c -f /etc/dehydrated/config