Automatische Aktualisierung der Let’s Encrypt-Zertifikate
mkdir -p /var/nc_data /var/www/letsencrypt/.well-known/acme-challenge /etc/letsencrypt/rsa-certs /etc/letsencrypt/ecc-certs
adduser --disabled-login acmeuser usermod -a -G www-data acmeuser
visudo
root ALL=(ALL:ALL) ALL
acmeuser ALL=NOPASSWD: /bin/systemctl reload nginx.service
su - acmeuser curl https://get.acme.sh | sh exit
chmod -R 775 /var/www/letsencrypt /etc/letsencrypt && chown -R www-data:www-data /var/www/ /etc/letsencrypt
su - acmeuser
Ich empfehle , den Request-Teil evtl. vorher in einem Editor mit den Domain-Namen zu bearbeiten…
acme.sh --issue -d deinedomain(s).tld --keylength 4096 -w /var/www/letsencrypt --key-file /etc/letsencrypt/rsa-certs/privkey.pem --ca-file /etc/letsencrypt/rsa-certs/chain.pem --cert-file /etc/letsencrypt/rsa-certs/cert.pem --fullchain-file /etc/letsencrypt/rsa-certs/fullchain.pem --reloadcmd "sudo /bin/systemctl reload nginx.service"
acme.sh --issue -d deinedomain(s).tld --keylength ec-384 -w /var/www/letsencrypt --key-file /etc/letsencrypt/ecc-certs/privkey.pem --ca-file /etc/letsencrypt/ecc-certs/chain.pem --cert-file /etc/letsencrypt/ecc-certs/cert.pem --fullchain-file /etc/letsencrypt/ecc-certs/fullchain.pem --reloadcmd "sudo /bin/systemctl reload nginx.service"
exit
Jetzt wird ein Script angelegt, dass die Gültigkeit der Zertifikate überprüft…
nano /root/permissions.sh
!/bin/bash find /var/www/ -type f -print0 | xargs -0 chmod 0640 find /var/www/ -type d -print0 | xargs -0 chmod 0750 chmod -R 775 /var/www/letsencrypt /etc/letsencrypt chown -R www-data:www-data /var/www /etc/letsencrypt chown -R www-data:www-data /var/nc_data chmod 0644 /var/www/nextcloud/.htaccess chmod 0644 /var/www/nextcloud/.user.ini exit 0
Und das Script ausführbar machen und starten
chmod +x /root/permissions.sh /root/permissions.sh