Zum Inhalt springen

Verschlüsseln wir

LetsEncrypt ist ein Dienst, der Benutzern kostenlose SSL / TLS-Zertifikate zur Verfügung stellt. Certbot ist ein Client, der dies einfach zu realisieren und zu automatisieren macht. Außerdem enthält es Plugins für Apache und Nginx, die die Automatisierung der Zertifikatgenerierung noch einfacher machen.

Installationsanweisungen für die meisten Linux-Distributionen finden Sie auf der Certbot-Website.

 Verschlüsseln wir Verschlüsseln wir

Sobald die Pakete installiert sind, können Sie ein neues Zertifikat erstellen.

Apache

Nach der Installation von Certbot und dem Apache-Plugin erfolgt die Generierung des Zertifikats mit dem folgenden Befehl.

certbot certonly --apache --noninteractive --agree-tos --email YOUR_EMAIL -d DOMAIN_NAME

Aktualisieren Sie die Abschnitte "SSLCertificateFile" und "SSLCertificateKeyFile" und starten Sie den Dienst neu.

Fügen Sie cron einen Job hinzu, damit das Zertifikat automatisch erneuert wird.

echo "0 0 * * * root certbot erneuern --quiet --no-self-upgrade --post-hook $0027systemctl apache2$0027 neu laden" | sudo tee -a /etc/cron.d/renew_certbot

HAProxy

HAProxy verfügt derzeit nicht über ein Certbot-Plugin. Um dies zu vermeiden, führen Sie Certbot im Standalone-Modus und Proxy-Verkehr über Ihr Netzwerk aus.

Aktivieren Sie das Frontend und das Backend in der obigen Konfiguration und führen Sie dann Certbot aus.

certbot certonly --standalone - Preferred-Challenges http-01 --http-01-port 8888 --noninteractive --agree-tos --email YOUR_EMAIL -d DOMAIN_NAME

Der Port kann beliebig geändert werden. Stellen Sie jedoch sicher, dass die HAProxy-Einstellungen und Ihr Certbot-Befehl übereinstimmen.

HAProxy muss das Zertifikat und die verketteten Schlüsseldateien in derselben Datei haben, damit sie korrekt gelesen werden können. Dies kann mit dem folgenden Befehl erreicht werden.

cat /etc/letsencrypt/live/domain_name/fullchain.pem /etc/letsencrypt/live/domain_name/privkey.pem

Brechen Sie die Bindung *: 443 und den Umleitungsabschnitt in den Einstellungen auf und laden Sie den Dienst neu.

Automatische Erneuerung von Zertifikaten

Fügen Sie das folgende Skript in / usr / local / bin / ein, um Ihr SSL-Zertifikat automatisch zu aktualisieren.

SITE = DOMAIN_NAME# wird an das richtige übergeben. Wir verschlüsseln die Verzeichnis-cd / etc / letsencrypt / live / $SITIO#-Katzendateien, um die kombinierte .pem-Datei für haproxycat fullchain.pem privkey.pem> /etc/ssl/$SITIO.pem1TPxer neu zu laden

Stellen Sie sicher, dass das Skript ausführbar ist.

chmod u + x /usr/local/bin/letsencrypt-renew.sh

Fügen Sie cron einen Job hinzu, damit das Zertifikat automatisch erneuert wird.

@mensual / usr / bin / certbot erneuern --renew-hook "/usr/local/bin/letsencrypt-renew.sh"; /var/log/letsencrypt-renewal.log

Nginx

Generieren Sie nach der Installation von Certbot und des Nginx-Plugins mit sudo apt install certbot python3-certbot-nginx das Zertifikat.

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email YOUR_EMAIL -d YOUR_DOMAIN

Fügen Sie den Parameter --rsa-key-size 4096 hinzu, wenn Sie stattdessen einen 4096-Bit-Schlüssel möchten.

Kopieren Sie die gesamte Nginx-Beispielkonfigurationsdatei von oben und fügen Sie sie ein. Ändern Sie dabei die Parameter entsprechend Ihrer Konfiguration und kommentieren Sie die Zeilen aus.

Fügen Sie cron einen Job hinzu, damit das Zertifikat automatisch erneuert wird.

echo "0 0 * * * root certbot erneuern --quiet --no-self-upgrade --post-hook $0027systemctl nginx$0027 neu laden" | sudo tee -a /etc/cron.d/renew_certbot

de_DEDeutsch
es_ESEspañol zh_CN简体中文 hi_INहिन्दी arالعربية pt_BRPortuguês do Brasil bn_BDবাংলা ru_RUРусский ja日本語 fr_FRFrançais it_ITItaliano de_DEDeutsch