let’s encrypt – SSL Zertifikate

Let’s encrypt bietet SSL Zertifikate für die eigene Domain an. Es gibt fertige Pakete für die nötige Software. Auf Debian/Ubuntu installiert man die so:

sudo apt-get install certbot

Dann kann man die SSL Zertifikate erstellen. Das geht ganz einfach. Wenn auf der selben Maschine ein Webserver läuft, dann muss man den Webserver kurz anhalten. let’s encrpyt muss sich überzeugen, dass man die Domain(s) um die es geht auch in der Hand hat. Dazu wird ein Webserver gestartet, der dann ein so etwas wie ein 1-Mal Passwort bereithält. Darum kümmert sich certbot, die let’s encrypt Software, komplett.

sudo service apache2 stop

Für die domains www.example.com und www.example.net sieht das so aus:

certbot --standalone --rsa-key-size 4096 -d www.example.com -d www.example.net

wichtig ist hier, jeweils mit -d domain die eigenen Domains anzuhängen.

Danach findet man dann die fertigen Zertifikatsdateien unter /etc/letsencrypt/live/<domainname>/

sudo ls -la /etc/letsencrypt/live/www.example.com/
total 8
drwxr-xr-x 2 root root 4096 Jun 17 17:08 .
drwx------ 9 root root 4096 Jul 3 12:11 ..
lrwxrwxrwx 1 root root 42 Jun 17 17:08 cert.pem -> ../../archive/www.example.com/cert1.pem
lrwxrwxrwx 1 root root 43 Jun 17 17:08 chain.pem -> ../../archive/www.example.com/chain1.pem
lrwxrwxrwx 1 root root 47 Jun 17 17:08 fullchain.pem -> ../../archive/www.example.com/fullchain1.pem
lrwxrwxrwx 1 root root 45 Jun 17 17:08 privkey.pem -> ../../archive/www.example.com/privkey1.pem

Die Zertifikate sind nur 90 Tage gültig. Das ist eine gute Idee, denn dann kümmert man sich auch um das (automatische) erneuern der Zertifikate. Wären die 2 Jahre gültig, dann wäre die Versuchung zu groß die Zertifikate von Hand zu erneuern. Und das klappt doch eh nicht :-)

Also noch (zB) so einen Eintrag in die root crontab eintragen:

35 3 1 * * /usr/bin/certbot renew --quiet

Ich rufe an jedem Monatsersten um 3:35 certbot auf

Und mit diesen 4 Zeilen Konfiguration, verwendet der Apache dieses Zertifikat auch:

/etc/apache2/sites-available/000-default-le-ssl.conf

SSLCertificateFile /etc/letsencrypt/live/www.example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.example.com/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
ServerName www.example.com

Nun kann man den Webserver wieder starten:

sudo service apache2 start

Und das war’s auch schon. Wenn der Apache startet, kann man sehen, dass die Webseite https://www.example.com mit diesem Zertifikat bestätigt wird.

 

 

Dieser Beitrag wurde unter Allgemein abgelegt und mit verschlagwortet. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>