Vollbildmodus: Seiteninhalt ohne Menus

letsencrypt

letsencrypt bietet die Möglichkeit kostenlos 3-Monate gültige SSL/TLS-Zertifikate zu beziehen.

Es existieren mehrere Clients, die unterschiedliche Methoden und Automatisierungsgrade unterstützen.

Comparison of 10 ACME / Let's Encrypt Clients

letsencrypt offizieller Client

Die offizielle Client-Software muss direkt auf dem Server gestartet werden (funktioniert also nicht für shared-Hosting sondern nur bei vhosts/root-Servern mit shell-Zugang) und unterstützt.

Im standalone-Modus muss der laufende Webserver angehalten werden, es existieren jedoch integrietete Modi für Webserver wie Apache.

Installation

Debian wheezy:

aptitude install git
git clone https://github.com/letsencrypt/letsencrypt
cd letsencrypt

Debian jessie: Es müssen die jessie-backports aktiviert werden:

deb http://http.debian.net/debian jessie-backports main
aptitude update
aptitude -t jessie-backports install letsencrypt python-letsencrypt-apache

Benutzung

letsencrypt aufrufen (bei standalone-Variante vorher Webserver stoppen):

Debian wheezy:

./letsencrypt-auto certonly --rsa-key-size 3072 -d DOMAIN.tld -d www.DOMAIN.tld

Debian jessie:

letsencrypt certonly --rsa-key-size 3072 -d DOMAIN.tld -d www.DOMAIN.tld

Zertifikate verlinken:

ln -s /etc/letsencrypt/live/DOMAIN/fullchain.pem letsencryptchain.pem
ln -s /etc/letsencrypt/live/DOMAIN/cert.pem /etc/apache2/DOMAIN.crt
ln -s /etc/letsencrypt/live/DOMAIN/privkey.pem /etc/apache2/DOMAIN.key

Apache config:

SSLCACertificateFile /etc/apache2/letsencryptchain.pem
SSLCertificateFile /etc/apache2/DOMAIN.crt
SSLCertificateKeyFile /etc/apache2/DOMAIN.key

wildcard-Domains

Vorraussetzung ist ein v2 acme-Client, direkt per git:

aptitude install git
git clone https://github.com/letsencrypt/letsencrypt

Client holt ein Zertifikat für *.DOMAIN.tld und DOMAIN.tld:

./letsencrypt/letsencrypt-auto certonly -d DOMAIN.tld -d *.DOMAIN.tld --manual --preferred-challenges dns --server https://acme-v02.api.letsencrypt.org/directory

Zur Verifikation müssen zwei (!) DNS TXT-Records als _acme-challenge.DOMAIN.tld angelegt werden. Den Inhalt Inhalt legt der Client fest (hier ein Beispiel für „ApKINd5_XvyTvIqFXechXhbH7RebdR01hw5YhTxfQxd“)

Please deploy a DNS TXT record under the name
_acme-challenge.DOMAIN.tld with the following value:

ApKINd5_XvyTvIqFXechXhbH7RebdR01hw5YhTxfQxd

Before continuing, verify the record is deployed.
-------------------------------------------------------------------------------
Press Enter to Continue

automatische Verlängerung

Die Verlängerung lässt sich auch skripten, im einfachsten (aber nicht optimalen Fall weil Webserver gestoppt und es als root läuft):

/etc/crontab (oder include-Datei / Benutzer-crontab)

# m h dom mon dow user	command
12 4 *  1 * *   root    /root/letsencrypt-autorenew.sh
#!/bin/bash
service apache2 stop > /dev/null
sleep 2
letsencrypt renew > /dev/null
if [ $? -ne 0 ]; then
	echo "Fehler bei letsencrypt"
	service apache2 start
	exit 1
else
	service apache2 start
fi
 
software/letsencrypt.txt · Zuletzt geändert: 2018/04/23 20:00 von st
 
Backlinks: [[software:letsencrypt]]