Verschlüsselung ist schon lange wichtig. Besonders aber dann, wenn im Internet persönliche oder empfindliche Daten übermittelt werden. Leider gibt es dennoch viele ungeschützte Webseiten. Let´s Encrypt ist ein kostenloser, automatisierter und offener Herausgeber von SSL Zertifikaten der das ändern möchte. Hier beschreibe ich euch kurz, wie Ihr ein SSL-Zertifikat auf eurem Apache Webserver unter Debian Stretch oder Raspberry Stretch installieren könnt.
Installation
Der Certbot, ein Script zum Installieren und aktualisieren von Let´s Encrypt SSL-Zertifikaten, bietet spezielle Installationsassistenten für verschiedene Webserver und Betriebssystem Kombinationen an. Den für uns benötigten finden wir in den offiziellen Debian Repositorys.
sudo apt-get install python-certbot-apache
Sobald danach gefragt wird, bestätigen wir die Installation der benötigten Pakete. Der Installationsassistent ist anschließend in der Lage, die richtigen Einstellungen und Informationen für den Certbot bereitzustellen. Da uns hierdurch die meiste Arbeit abgenommen wird, ist der Rest nun ganz einfach.
sudo certbot --apache
Abschließend müssen wir dem Certbot noch ein paar Fragen beantworten. Sobald wir damit fertig sind, wird automatisch das SSL-Zertifikat installiert. Dieses ist immer 90 Tage lang gültig.
Zertifikat automatisch verlängern
Damit wir das Zertifikat nicht alle 90 Tage manuell verlängern müssen, legen wir einen Cronjob an, der uns diese Arbeit abnimmt. Dafür benötigen wir als Erstes eine neue und leere Datei, in die ein simples Script eingefügt wird.
touch /home/user/renew-certs.sh
Um diese neu angelegte Datei zu bearbeiten, verwende ich in diesem Beispiel nano. Selbstverständlich könnt ihr auch einen anderen Editor verwenden.
nano /home/user/renew-certs.sh
Folgendes fügen wir ein:
#! /bin/bash
certbot renew -q
Das Script funktioniert nur, wenn es ausführbar ist.
chmod +x /home/user/renew-certs.sh
Um die Cronjobs unseres aktuellen Users zu bearbeiten, müssen wir folgendes eingeben:
crontab -e
Am Ende der Datei fügen wir dann die nachfolgende Zeile ein und speichern das ganze ab.
* 3 * * * /home/user/renew-certs.sh
Ab sofort wird nun jede Nacht um 3 Uhr das Script ausgeführt und überprüft, ob eines unserer Zertifikate erneuert werden muss. Sollte das der Fall sein, wird dies sofort gemacht und das Zertifikat ist erneut 90 Tage lang gültig.
Abschließende Worte
Gültige SSL-Zertifikate und eine Verschlüsselung der Kommunikation sind nicht nur zum Schutz der eigenen Kunden oder Besucher wichtig. Auch Google & Co legen inzwischen einen hohen Wert auf solche Dinge und diese wirken sich somit stark auf das SEO-Ranking aus. Da es mit Let´s Encrypt kostenlose SSL-Zertifikate gibt, gibt es keinen Grund mehr ungesicherte Verbindungen zu verwenden.
[…] python-certbot-apache (kostenlos) […]