ACHTUNG! Dies ist eine ALTE METHODE. Zur NEUEN METHODE geht es hier entlang: „Lets encrypt“ Bulk-Funktion für Plesk (die Zweite)
Das Plesk-Team hat bereits eine Extension für „Lets encrypt“ herausgebracht[1], mit der das Anfordern eines Zertifikates mittels Plesk-Oberfläche ermöglicht wird. Hat man nun mehrere Domains und möchte nicht stundenlang durch das Webinterface klickern, gibt es eine praktische Lösung durch alle in Plesk angelegten Domains zu iterieren, für jede ein Zertifikat anzufordern und dieses einzustellen.
Bei einer hohen Anzahl an Domains lahmt die Auflistung noch stark. Ich rechne aber mit einem zeitnahen Fix. Vermutung: Beim Aufruf der Liste werden alle Domains, trotz Pagination, geholt.
Wie dem auch sei. Um alle in Plesk angelegten Domains und deren www-Subdomain mit einem Zertifikat zu versehen, empfehle ich, bis diese Funktion eventuell bei der Extension selbst implementiert ist, den folgenden Einzeiler:
for i in `mysql -uadmin -p\`cat /etc/psa/.psa.shadow\` psa -Ns -e "select name from domains"`; do sudo -u psaadm bash /usr/local/psa/admin/plib/modules/letsencrypt/scripts/le-run -d "$i" -d www."$i"; done
Der Befehl ist mit Vorsicht zu genießen.
Der erste Teil kann so getestet werden:
for i in `mysql -uadmin -p\`cat /etc/psa/.psa.shadow\` psa -Ns -e "select name from domains"`; do echo "$i"; done
Hier sollten nun alle Domains, die in Plesk angelegt sind, angezeigt werden.
Der zweite Teil kann so getestet werden:
sudo -u psaadm bash /usr/local/psa/admin/plib/modules/letsencrypt/scripts/le-run -d domain.tld -d www.domain.tld
Die Domain „domain.tld“ sollte nun inkl. Subdomain „www.domain.tld“ mit einem Zertifikat versehen worden sein.
In meinem Fall funktionierte das Snippet einwandfrei unter Plesk 12.5 auf CentOS 6. Lasst mich gerne in den Kommentaren wissen, ob es bei euch funktioniert hat.
Schreibe einen Kommentar