bawue.net Logo mit Schriftzug

Let's Encrypt und DynDNS im bawue.net

blog.bawue.net

Samstag, 11. Juli 2020

Let's Encrypt und DynDNS im bawue.net

Hallo bawue.net-ler,

dank Andreas unermüdlichem Einsatz habe ich es geschafft, für meinen zuhause laufenden Server im abgeschotteten Netz ein offizielles Let's Encrypt Zertifikat zu erhalten. Und das ganze ohne riesigen Aufwand. Genial ist, dass es dann auch automatisch wieder erneuert wird vom Server - ohne manuellen Eingriff!

Der große Vorteil ist nun, dass meine Nextcloud und der Zugriff der ganzen mobilen Apps darauf nun keine komplizierten Klimmzüge mehr erfordert oder überhaupt erst funktioniert. Die selbst erstellten Zertifikate für die sichere SSL Verbindung waren immer lästig oder wurden durch Mechanismen im Android OS komplett ausgeschlossen.

Was habe ich gemacht:

  1. Anlage eines DynDNS Hosts im bawue.net z.B. unter der dyn.bawue.de Domain (geht nur über Antrag an admin@bawue.net)
  2. Anlage eines CNAME unter der eigenen Domain (z.B. meinsuperserver.eigene.dom) der auf den o.g. DynDNS Host zeigt - das geht seit neuem selbst im my.bawue.de! Domain-Admin
  3. Konfiguration des eigenen Servers zuhause, dass er regelmäßig prüft ob die IP des eigenen Internetzugangs noch korrekt zum DynDNS Host passt und wenn nicht, diese erneuert.
  4. Installation von Dehydrated in meinem Debian Linux OS - das ist ein Bash Skript zur automatischen Pflege der Let's Encrypt Zertifikate - geht glaube ich auch sonst überall. Update des eigentlichen Scripts von der github Seite: Dehydrated
  5. Konfiguration desselben passend für den bawue.net Dienst:
    1. Holen des passenden bawue.net Domain Control Scripts von github: domainctl von Andreas für bawue.net entwickelt, zur automatischen Änderung von DNS Einträgen an eigenen Domains.
    2. Erstellen eines Hook Scripts von Dehydrated, dass das obige domainctl Skript mit passenden Parametern und vor allem user und passwort für den bawue.net Zugang aufruft:
      Beispiel zum ausfüllen liegt hier: dehydrated-eigene-domain-hook.sh
    3. Download und ablegen des kleinen Helfers (bin nicht fit in bash, daher python): domainsplit.py
    4. Erstellen eines Eintrags in /etc/dehydrated/conf.d/10-meinsuperserver-eigene-domain.sh mit folgenden Inhalt/:
      DEHYDRATED_USER=www-data  # benutzer unter dem dehydrated laufen soll - evtl. mit Schreibzugriff auf den Ort des apache Cert Verzeichnisses
      DEHYDRATED_GROUP=www-data # gruppe für selbiges
      IP_VERSION=4
      HOOK=/etc/dehydrated/dehydrated-eigene-domain-hook.sh
      CHALLENGETYPE="dns-01"
      CONTACT_EMAIL=mail@eigene.dom
      RENEW_DAYS="20" # kann auch mehr sein, die Zeit vor Ablauf des Zertifikats, wenn ein neues erstellt wird.
      # OWN - comment out when ready - needed for testing!!!
      CA="https://acme-staging-v02.api.letsencrypt.org/directory"
    5. Eintrag des hosts in /etc/dehydrated/domains.txt: meinsuperserver.eigene.dom
    6. Die erzeugten Zertifikate werden standardmäßig unter  /var/lib/dehydrated/certs/meinsuperserver.eigene.dom abgelegt.
  6. Wenn das alles erledigt ist, dann eine Probelauf von dehydrated machen: dehydrated --cron
  7. Dabei sollten keine Fehler auftreten - Achtung, das kann 10-15 min dauern! Danach geht zwar das Cert noch nicht, weil es ja nur ein Testlauf war. Aber so wird man nicht ausgesperrt, wenn man noch Fehler drin hat und es nicht geht.
  8. Nun die letzte Zeile aus Unterpunkt 4 (CA=...) auskommentieren und nochmal den Befehl ausführen: dehydrated --cron
  9. Wenn das dann auch fehlerfrei durchläuft, dann kann man die nun erstellten Zertifikate dem Apache oder wem auch sonst, der auf dem Server läuft zur Verfügung stellen. Ich habe dazu einfach einen link aus dem Config-Dir von Apache bzw. bei Debian aus /etc/ssl/localcerts/ nach /var/lib/dehydrated/certs/meinsuperserver.eigene.dom/fullchain.pem und .../privkey.pem erstellt.
  10. Apache restart und Ta-Ta - ein echtes Zertifikat

Geschrieben von Joachim Selinger um 13:31

Trackbacks
Trackback für spezifische URI dieses Eintrags

Keine Trackbacks

Kommentare
Ansicht der Kommentare: (Linear | Verschachtelt)

Noch keine Kommentare

Die Kommentarfunktion wurde vom Besitzer dieses Blogs in diesem Eintrag deaktiviert.

Suche

Aktuelle Einträge

Mastodon/Fediverse/ActivityPub Instanz für bawue.net Nutzer
Montag, November 7 2022

Let's Encrypt und DynDNS im bawue.net
Samstag, Juli 11 2020

Neuer Mailserver mit neuen Funktionen
Samstag, Juni 1 2019

Aktueller Ausfall
Freitag, Oktober 12 2018

Aktueller Ausfall
Montag, April 9 2012

Bilder vom Umbau (Teil 1)
Donnerstag, Januar 6 2011

Downtime aller Dienste am 5.1./6.1. [Update^2]
Dienstag, Januar 4 2011

Downtime des IMAP Servers [Update]
Samstag, Dezember 11 2010

Wartungsankuendigung am 5.2. und 6.2.
Samstag, Februar 6 2010

Ausfall des Storage Servers am Montag Nachmittag
Dienstag, Februar 2 2010

Links

  • bawue.net
    • bawue.net Homepage
    • MyBawue
  • bawue.net Admins
    • Andreas Thienemann
    • Philipp Riegger

Ältere Einträge

Das Neueste ...
Älteres ...

Blog abonnieren

XML RSS 0.91 feed
XML RSS 1.0 feed
XML RSS 2.0 feed
ATOM/XML ATOM 0.3 feed
ATOM/XML ATOM 1.0 feed
XML RSS 2.0 Kommentare
XML OPML 1.0 feed

Blog Badges

Valid XHTML 1.1
Valid CSS!
Valid RSS
XML Sitemap
Coded by hand
Serendipity PHP Weblog

© bawue.net | Impressum