So generieren Sie ein LetsEncrypt-SSL-Zertifikat mit der CloudFlare DNS-01 Challenge und verwenden es auf dem Synology NAS

So Generieren Sie Ein Letsencrypt Ssl Zertifikat Mit Der Cloudflare Dns 01 Challenge Und Verwenden Es Auf Dem Synology Nas



Disk Station Manager v7 (DSM 7) ist das Betriebssystem von Synology NAS-Geräten. Sie können die Let’s Encrypt SSL-Zertifikate für Ihr Synology NAS über die DSM 7-Weboberfläche konfigurieren. Standardmäßig verwendet Synology DSM 7 die HTTP-01-Herausforderung, um den Besitz der Domäne (die Sie für Ihr Synology NAS verwenden möchten) zu überprüfen und ein SSL-Zertifikat für die Domäne auszustellen. Die HTTP-01-Herausforderung funktioniert jedoch nur, wenn Sie über eine öffentliche IP-Adresse verfügen und Ihr Computer über das Internet erreichbar ist. Wenn Sie also die SSL-Zertifikate von Let’s Encrypt für Ihr Heimnetzwerk oder privates Netzwerk verwenden möchten, müssen Sie stattdessen die DNS-01-Challenge nutzen. Wenn die DNS-01-Herausforderung verwendet wird, überprüft Let’s Encrypt den Besitz der Domäne anhand des DNS-Servers der Domäne. Es funktioniert also auch für private Netzwerke. Leider bietet die Weboberfläche von Synology DSM 7 keine Möglichkeit, die SSL-Zertifikate von Let’s Encrypt mithilfe der DNS-01-Herausforderung zu erhalten.

Glücklicherweise kann das Programm „acme.sh“ auf Ihrem Synology NAS installiert werden und wird zum Generieren und Erneuern der Let’s Encrypt SSL-Zertifikate mithilfe der DNS-01-Challenge verwendet.







In diesem Artikel zeigen wir Ihnen Folgendes:



  • So installieren Sie „sh“ auf Ihrem Synology NAS
  • So generieren Sie mit „acme.sh“ ein Let’s Encrypt SSL-Zertifikat (über die DNS-01-Herausforderung) für den Domänennamen, den Sie auf Ihrem Synology NAS verwenden
  • So installieren Sie das von „acme.sh“ generierte Let’s Encrypt SSL-Zertifikat auf Ihrem Synology NAS
  • So konfigurieren Sie das DSM 7-Betriebssystem Ihres Synology NAS für die Verwendung des generierten Let’s Encrypt SSL-Zertifikats
  • So konfigurieren Sie Ihr Synology NAS so, dass die generierten Let’s Encrypt SSL-Zertifikate mithilfe von „acme.sh“ automatisch erneuert werden.

In diesem Artikel verwenden wir zur Demonstration den CloudFlare-DNS-Server. Sie können andere verwenden DNS-Dienste, die von acme.sh unterstützt werden sowie. Sie müssen lediglich die notwendigen Anpassungen vornehmen.



Inhaltsthema:

  1. Erstellen eines Certadmin-Benutzers auf dem Synology NAS
  2. Konfigurieren des CloudFlare-DNS-Servers für die LetsEncrypt DNS-01 Challenge
  3. Konfigurieren anderer DNS-Dienste für LetsEncrypt DNS-01 Challenge
  4. Zugriff auf das Synology NAS-Terminal über SSH
  5. Herunterladen von Acme.sh auf Ihr Synology NAS
  6. Installieren von Acme.sh auf Ihrem Synology NAS
  7. Generieren eines Let’s Encrypt SSL-Zertifikats mit Acme.sh für Ihr Synology NAS
  8. Installieren des Let’s Encrypt SSL-Zertifikats auf Ihrem Synology NAS mit Acme.sh
  9. Festlegen des Let’s Encrypt SSL-Zertifikats als Standard auf Ihrem Synology NAS
  10. Konfigurieren Sie das Synology NAS für die automatische Erneuerung eines Let’s Encrypt SSL-Zertifikats mithilfe von Acme.sh
  11. Abschluss
  12. Verweise

Erstellen eines Certadmin-Benutzers auf dem Synology NAS

Zunächst sollten Sie einen neuen Admin-Benutzer auf Ihrem Synology NAS erstellen, um die Let’s Encrypt SSL-Zertifikate zu generieren und zu erneuern.





Um einen neuen Admin-Benutzer auf dem Synology NAS zu erstellen, klicken Sie auf Bedienfeld [1] > Benutzergruppe [2] über die DSM 7-Weboberfläche.



Klicken Sie auf der Registerkarte „Benutzer“ auf „Erstellen“.

Geben Sie als Benutzernamen „certadmin“ ein [1] , eine optionale Kurzbeschreibung für den Benutzer [2] , das Benutzer-Login-Passwort [3] , und klicken Sie auf „Weiter“ [4] .

Um einen Admin-Benutzer zu erstellen, markieren Sie die Gruppe „Administratoren“ in der Liste [1] und klicken Sie auf „Weiter“ [2] .

Klicken Sie auf „Weiter“.

Klicken Sie auf „Weiter“.

Klicken Sie auf „Weiter“.

Klicken Sie auf „Weiter“.

Klicken Sie auf „Fertig“.

Der Zertifikatsadmin Der Benutzer sollte jetzt auf Ihrem Synology NAS erstellt werden.

Konfigurieren des CloudFlare-DNS-Servers für die Let’s Encrypt DNS-01 Challenge

Um den CloudFlare-DNS-Server für die Let’s Encrypt DNS-01-Herausforderung zu verwenden, müssen Sie ein CloudFlare-DNS-Token generieren. Sie können über das CloudFlare-Dashboard ein CloudFlare-DNS-Server-Token generieren. Für mehr Informationen, Lesen Sie diesen Artikel .

Konfigurieren anderer DNS-Dienste für die Let’s Encrypt DNS-01 Challenge

„Acme.sh“ unterstützt andere DNS-Dienste. Wenn Sie das CloudFlare-DNS nicht verwenden möchten, können Sie einen der von „acme.sh“ unterstützten DNS-Dienste verwenden. Die Konfiguration ist für verschiedene DNS-Dienste etwas unterschiedlich. Für mehr Informationen, Sehen Sie sich die DNS-API-Anleitung „acme.sh“ an .

Zugriff auf das Synology NAS-Terminal über SSH

Um „acme.sh“ zu installieren und ein Let’s Encrypt SSL-Zertifikat auf Ihrem Synology NAS zu generieren und zu installieren, müssen Sie auf das Terminal Ihres Synology NAS zugreifen. Weitere Informationen zum Aktivieren des SSH-Zugriffs auf Ihrem Synology NAS und zum Zugriff auf das Terminal Ihres Synology NAS finden Sie unter Lesen Sie diesen Artikel .

Sobald Sie den SSH-Zugriff auf Ihrem Synology NAS aktiviert haben, öffnen Sie eine Terminal-App auf Ihrem Computer und führen Sie den folgenden Befehl aus:

$ ssh certadmin@

Sie werden aufgefordert, das Login-Passwort einzugeben Zertifikatsadmin Benutzer. Geben Sie das Login-Passwort ein Zertifikatsadmin Geben Sie den Benutzer Ihres Synology NAS ein und klicken Sie auf „Weiter“. . Sie sollten bei Ihrem Synology NAS als angemeldet sein Zertifikatsadmin Benutzer.

Herunterladen von Acme.sh auf Ihr Synology NAS

Um die neueste Version des „acme.sh“-Clients herunterzuladen, führen Sie den folgenden Befehl aus:

$ wget -O /tmp/acme.sh.zip https://github.com/acmesh-official/acme.sh/archive/master.zip

Die neueste Version des „acme.sh“-Client-Archivs „acme.sh.zip“ sollte im Verzeichnis „/tmp“ Ihres Synology NAS heruntergeladen werden.

Installieren von Acme.sh auf Ihrem Synology NAS

Um das Archiv „/tmp/acme.sh.zip“ im Verzeichnis „/usr/local/share“ Ihres Synology NAS zu extrahieren, führen Sie den folgenden Befehl aus, geben Sie das Anmeldekennwort des Benutzers „certadmin“ ein und drücken Sie wenn Sie nach dem Passwort gefragt werden. Das Archiv „/tmp/acme.sh.zip“ sollte in das Verzeichnis „/usr/local/share/acme.sh-master“ entpackt werden.

$ sudo 7z x -o /usr/local/share /tmp/acme.sh.zip

Der Einfachheit halber benennen Sie das Verzeichnis „acme.sh-master“ mit dem folgenden Befehl in „acme.sh“ um:

$ sudo mv -v /usr/local/share/acme.sh-master /usr/local/share/acme.sh

Um das zu machen Zertifikatsadmin Benutzerbesitzer des Verzeichnisses „/usr/local/share/acme.sh“ und seines Inhalts, führen Sie den folgenden Befehl aus:

$ sudo chown -Rfv certadmin /usr/local/share/acme.sh

Generieren eines Let’s Encrypt SSL-Zertifikats mit Acme.sh für Ihr Synology NAS

Um ein Let’s Encrypt SSL-Zertifikat für den Domänennamen zu generieren, den Sie auf Ihrem Synology NAS verwenden, navigieren Sie wie folgt zum Verzeichnis „/usr/local/share/acme.sh“:

$ cd /usr/local/share/acme.sh

Jetzt müssen Sie die erforderlichen DNS-API-Token-Umgebungsvariablen exportieren. Wir verwenden das CloudFlare-DNS, um den Domänennamen zu verwalten, den wir auf unserem Synology NAS verwenden. Für uns müssen wir also lediglich die Umgebungsvariable CF_Token mit dem Wert des CloudFlare-DNS-API-Tokens exportieren. Wenn Sie einen anderen DNS-Dienst verwenden, Suchen Sie in der DNS-API-Dokumentation „acme.sh“ nach den Variablen, die Sie exportieren müssen damit „acme.sh“ mit Ihrem DNS-Dienst funktioniert.

$ export CF_Token=''

Exportieren Sie außerdem die erforderlichen Synology-Umgebungsvariablen, damit „acme.sh“ die generierten SSL-Zertifikate auf Ihrem Synology NAS installieren kann.

$ export SYNO_User
$ export SYNO_Password='Ihr_certadmin_login_Password'
$ export SYNO_Certificate='Let's Encrypt'
$ export SYNO_Create=1

So generieren Sie mit dem CloudFlare-DNS-Plugin ein Let’s Encrypt SSL-Zertifikat für den Domänennamen „*.nodekite.com“ (Wildcard) ( –dns dns_cf ), führen Sie den folgenden Befehl aus:

$ ./acme.sh --serverletsencrypt --issue --dns dns_cf --home $PWD -d '*.nodekite.com'

Wenn Sie andere DNS-Dienste verwenden, müssen Sie das DNS-Plugin (–dns ) im vorherigen Befehl entsprechend ändern. Für mehr Informationen, Sehen Sie sich die DNS-API-Dokumentation „acme.sh“ an .

Ein Let’s Encrypt SSL-Zertifikat wird generiert. Es dauert eine Weile, bis es fertig ist.

Zu diesem Zeitpunkt sollte das Let’s Encrypt SSL-Zertifikat generiert werden.

Installieren des Let’s Encrypt SSL-Zertifikats auf Ihrem Synology NAS mit Acme.sh

Sobald das Let’s Encrypt SSL-Zertifikat für den Domänennamen (*in diesem Fall .nodekite.com) Ihres Synology NAS generiert wurde, können Sie es mit dem folgenden Befehl auf Ihrem Synology NAS installieren:

$ ./acme.sh -d '*.nodekite.com' --deploy --deploy-hook synology_dsm --home $PWD

Wenn Sie eine Zwei-Faktor-Authentifizierung für aktiviert haben Zertifikatsadmin Benutzer erhalten Sie einen OTP-Code. Sie müssen den OTP-Code eingeben und drücken .

Wenn Sie die Zwei-Faktor-Authentifizierung für nicht aktiviert haben Zertifikatsadmin Benutzer, lassen Sie es leer und drücken Sie .

Drücken Sie .

Das generierte Let’s Encrypt SSL-Zertifikat sollte auf Ihrem Synology NAS installiert sein.

Sobald das Let’s Encrypt SSL-Zertifikat auf Ihrem Synology NAS installiert ist, wird es auf dem angezeigt Bedienfeld > Sicherheit > Zertifikat Abschnitt der DSM 7-Weboberfläche Ihres Synology NAS.

Festlegen des Let’s Encrypt SSL-Zertifikats als Standard auf Ihrem Synology NAS

Um die SSL-Zertifikate Ihres Synology NAS zu verwalten, navigieren Sie zu Bedienfeld > Sicherheit > Zertifikat Abschnitt über die DSM 7-Weboberfläche Ihres Synology NAS.

Um das neu installierte Let’s Encrypt SSL-Zertifikat als Standard festzulegen, sodass die neu installierten Webdienste auf Ihrem Synology NAS es standardmäßig verwenden, wählen Sie das Let’s Encrypt SSL-Zertifikat aus und klicken Sie auf Aktion > Bearbeiten .

Aktivieren Sie „Als Standardzertifikat festlegen“ [1] und klicken Sie auf „OK“ [2] .

Das SSL-Zertifikat von Let’s Encrypt sollte als Standardzertifikat für Ihr Synology NAS festgelegt werden.

Um die vorhandenen Webdienste Ihres Synology NAS für die Verwendung des Let’s Encrypt SSL-Zertifikats zu konfigurieren, klicken Sie auf „Einstellungen“.

Wie Sie sehen, verwenden alle Webdienste das selbstsignierte SSL-Zertifikat von Synology.

Um das SSL-Zertifikat für einen Webdienst zu ändern, klicken Sie rechts auf das entsprechende Dropdown-Menü.

Wählen Sie dann aus dem Dropdown-Menü das Let’s Encrypt SSL-Zertifikat aus, das Sie für den Webdienst verwenden möchten.

Wählen Sie auf die gleiche Weise das Let’s Encrypt SSL-Zertifikat für alle installierten Webdienste Ihres Synology NAS aus und klicken Sie auf „OK“.

Klicken Sie auf „Ja“.

Die Änderungen werden übernommen. Der Vorgang dauert einige Sekunden.

Sobald das Let’s Encrypt SSL-Zertifikat auf alle Webdienste Ihres Synology NAS angewendet wird, aktualisieren Sie die Webseite und Ihre DSM 7-Weboberfläche sollte das Let’s Encrypt SSL-Zertifikat verwenden.

Konfigurieren des Synology NAS für die automatische Erneuerung des Let’s Encrypt SSL-Zertifikats mithilfe von Acme.sh

Um Ihr Synology NAS so zu konfigurieren, dass das SSL-Zertifikat von Let’s Encrypt automatisch erneuert wird, navigieren Sie zu Bedienfeld > Aufgabenplaner über die DSM 7-Weboberfläche.

Klicken Sie im Taskplaner auf Erstellen > Geplante Aufgabe > Benutzerdefiniertes Skript .

Geben Sie auf der Registerkarte „Allgemein“ im Abschnitt „Aufgabe“ „SSL-Zertifikate erneuern“ ein [1] und wählen Sie „certadmin“ aus dem Dropdown-Menü „Benutzer“. [2] .

Wählen Sie auf der Registerkarte „Zeitplan“ die Option „Am folgenden Datum ausführen“ aus. [1] und wählen Sie „Monatlich wiederholen“ aus dem Dropdown-Menü „Wiederholen“. [2] .

Navigieren Sie zur Registerkarte „Aufgabeneinstellungen“ und geben Sie im Abschnitt „Benutzerdefiniertes Skript“ den folgenden Befehl ein [1] , und klicken Sie auf „OK“ [2] .

/usr/local/share/acme.sh/acme.sh –renew –serverletsencrypt -d „*.nodekite.com“ –home /usr/local/share/acme.sh

Es sollte eine neue Aufgabe erstellt werden. Die Aufgabe „SSL-Zertifikate erneuern“ wird jeden Monat ausgeführt und stellt sicher, dass das Let’s Encrypt SSL-Zertifikat erneuert wird, bevor es abläuft.

Abschluss

In diesem Artikel haben wir Ihnen gezeigt, wie Sie den ACME-Client „acme.sh“ installieren und verwenden, um ein Let’s Encrypt SSL-Zertifikat über die DNS-01-Challenge auf Ihrem Synology NAS zu generieren. Wir haben Ihnen auch gezeigt, wie Sie das generierte Let’s Encrypt SSL-Zertifikat auf Ihrem Synology NAS installieren und die Webdienste Ihres Synology NAS für die Verwendung konfigurieren. Abschließend haben wir Ihnen gezeigt, wie Sie eine geplante Aufgabe auf Ihrem Synology NAS konfigurieren, um das Let’s Encrypt SSL-Zertifikat automatisch zu erneuern, bevor es abläuft.

Verweise: