Jak vygenerovat certifikát LetsEncrypt SSL pomocí CloudFlare DNS-01 Challenge a použít jej na Synology NAS

Jak Vygenerovat Certifikat Letsencrypt Ssl Pomoci Cloudflare Dns 01 Challenge A Pouzit Jej Na Synology Nas



Disk Station Manager v7 (DSM 7) je operační systém zařízení Synology NAS. Certifikáty Let’s Encrypt SSL pro zařízení Synology NAS můžete nakonfigurovat z webového rozhraní systému DSM 7. Ve výchozím nastavení používá Synology DSM 7 výzvu HTTP-01 k ověření vlastnictví domény (kterou chcete používat pro zařízení Synology NAS) a vydání certifikátu SSL pro doménu. Výzva HTTP-01 však nebude fungovat, pokud nemáte veřejnou IP adresu a váš počítač není dostupný z internetu. Pokud tedy chcete používat certifikáty Let’s Encrypt SSL pro vaši domácí síť nebo privátní síť, musíte místo toho použít výzvu DNS-01. Když se použije výzva DNS-01, Let’s Encrypt ověří vlastnictví domény pomocí serveru DNS domény. Takže to funguje i pro privátní sítě. Webové rozhraní Synology DSM 7 bohužel neposkytuje žádný způsob, jak získat certifikáty Let’s Encrypt SSL pomocí výzvy DNS-01.

Naštěstí lze na váš Synology NAS nainstalovat program „acme.sh“, který slouží ke generování a obnovování certifikátů Let’s Encrypt SSL pomocí výzvy DNS-01.







V tomto článku vám ukážeme následující:



  • Jak nainstalovat „sh“ na váš Synology NAS
  • Jak pomocí „acme.sh“ vygenerovat certifikát Let’s Encrypt SSL (prostřednictvím výzvy DNS-01) pro název domény, kterou používáte na svém zařízení Synology NAS
  • Jak nainstalovat certifikát Let’s Encrypt SSL vygenerovaný „acme.sh“ na vaše zařízení Synology NAS
  • Jak nakonfigurovat operační systém DSM 7 vašeho zařízení Synology NAS tak, aby používal vygenerovaný certifikát Let’s Encrypt SSL
  • Jak nakonfigurovat zařízení Synology NAS tak, aby automaticky obnovovalo vygenerované certifikáty Let’s Encrypt SSL pomocí „acme.sh“

V tomto článku použijeme pro demonstraci server CloudFlare DNS. Můžete použít jiné Služby DNS, které podporuje acme.sh také. Stačí provést potřebné úpravy.



Téma obsahu:

  1. Vytvoření uživatele Certadmin na Synology NAS
  2. Konfigurace serveru DNS CloudFlare pro výzvu LetsEncrypt DNS-01
  3. Konfigurace dalších služeb DNS pro výzvu LetsEncrypt DNS-01
  4. Přístup k Synology NAS terminálu přes SSH
  5. Stahování Acme.sh do vašeho Synology NAS
  6. Instalace Acme.sh na váš Synology NAS
  7. Generování certifikátu Let's Encrypt SSL pomocí Acme.sh pro váš Synology NAS
  8. Instalace certifikátu Let’s Encrypt SSL na váš Synology NAS pomocí Acme.sh
  9. Nastavení certifikátu Let’s Encrypt SSL jako výchozího na vašem zařízení Synology NAS
  10. Nakonfigurujte zařízení Synology NAS na automatické obnovení certifikátu Let's Encrypt SSL pomocí Acme.sh
  11. Závěr
  12. Reference

Vytvoření uživatele Certadmin na Synology NAS

Nejprve byste měli na svém zařízení Synology NAS vytvořit nového administrátora, který vygeneruje a obnoví certifikáty Let’s Encrypt SSL.





Chcete-li vytvořit nového administrátora na Synology NAS, klikněte na Kontrolní panel [1] > Uživatelská skupina [2] z webového rozhraní DSM 7.



Klikněte na „Vytvořit“ na kartě „Uživatel“.

Jako uživatelské jméno zadejte „certadmin“. [1] , volitelný krátký popis pro uživatele [2] , přihlašovací heslo uživatele [3] a klikněte na „Další“ [4] .

Chcete-li vytvořit uživatele admin, zaškrtněte v seznamu skupinu „administrators“. [1] a klikněte na „Další“ [2] .

Klikněte na „Další“.

Klikněte na „Další“.

Klikněte na „Další“.

Klikněte na „Další“.

Klikněte na „Hotovo“.

The certadmin nyní by měl být vytvořen uživatel na vašem zařízení Synology NAS.

Konfigurace serveru DNS CloudFlare pro výzvu Let's Encrypt DNS-01 Challenge

Chcete-li použít server DNS CloudFlare pro výzvu Let’s Encrypt DNS-01, musíte vygenerovat token CloudFlare DNS. Token serveru DNS CloudFlare můžete vygenerovat z řídicího panelu CloudFlare. Pro více informací, přečtěte si tento článek .

Konfigurace dalších služeb DNS pro výzvu Let's Encrypt DNS-01 Challenge

„Acme.sh“ podporuje další služby DNS. Pokud nechcete používat CloudFlare DNS, můžete použít kteroukoli ze služeb DNS podporovaných „acme.sh“. Konfigurace se pro různé služby DNS trochu liší. Pro více informací, zkontrolujte průvodce DNS API „acme.sh“. .

Přístup k Synology NAS terminálu přes SSH

Chcete-li nainstalovat „acme.sh“ a vygenerovat a nainstalovat certifikát Let’s Encrypt SSL na zařízení Synology NAS, musíte mít přístup k terminálu zařízení Synology NAS. Další informace o povolení přístupu SSH na zařízení Synology NAS a přístupu k terminálu zařízení Synology NAS naleznete přečtěte si tento článek .

Jakmile povolíte přístup SSH na zařízení Synology NAS, otevřete na počítači terminálovou aplikaci a spusťte následující příkaz:

$ ssh certadmin@

Budete požádáni o zadání přihlašovacího hesla certadmin uživatel. Zadejte přihlašovací heslo pro certadmin uživatele vašeho Synology NAS a stiskněte tlačítko dále . Měli byste být přihlášeni ke svému Synology NAS jako certadmin uživatel.

Stahování Acme.sh do vašeho Synology NAS

Chcete-li stáhnout nejnovější verzi klienta „acme.sh“, spusťte následující příkaz:

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

Nejnovější verzi klientského archivu „acme.sh“ „acme.sh.zip“ je třeba stáhnout do adresáře „/tmp“ vašeho Synology NAS.

Instalace Acme.sh na váš Synology NAS

Chcete-li rozbalit archiv „/tmp/acme.sh.zip“ v adresáři „/usr/local/share“ vašeho Synology NAS, spusťte následující příkaz a zadejte přihlašovací heslo uživatele certadmin a stiskněte až budete vyzváni k zadání hesla. Archiv „/tmp/acme.sh.zip“ by měl být rozbalen v adresáři „/usr/local/share/acme.sh-master“.

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

Pro zjednodušení přejmenujte adresář „acme.sh-master“ na pouze „acme.sh“ pomocí následujícího příkazu:

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

Chcete-li vytvořit certadmin vlastníka adresáře „/usr/local/share/acme.sh“ a jeho obsahu spusťte následující příkaz:

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

Generování certifikátu Let's Encrypt SSL pomocí Acme.sh pro váš Synology NAS

Chcete-li vygenerovat certifikát Let's Encrypt SSL pro název domény, kterou používáte na zařízení Synology NAS, přejděte do adresáře „/usr/local/share/acme.sh“ následovně:

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

Nyní musíte exportovat požadované proměnné prostředí tokenu DNS API. CloudFlare DNS používáme ke správě názvu domény, který používáme na našem Synology NAS. Za nás tedy stačí exportovat proměnnou prostředí CF_Token s hodnotou tokenu CloudFlare DNS API. Pokud používáte jinou službu DNS, v dokumentaci k DNS API „acme.sh“ vyhledejte proměnné, které potřebujete exportovat aby „acme.sh“ fungoval s vaší službou DNS.

$ export CF_Token=''

Exportujte také požadované proměnné prostředí Synology, aby „acme.sh“ mohl nainstalovat vygenerované certifikáty SSL na váš Synology NAS.

$ export SYNO_User
$ export SYNO_Password='Vaše_přihlašovací_heslo_certadmin'
$ export SYNO_Certificate='Let’s Encrypt'
$ export SYNO_Create=1

Vygenerování certifikátu Let’s Encrypt SSL pro název domény „*.nodekite.com“ (zástupný znak) pomocí pluginu CloudFlare DNS ( –dns dns_cf ), spusťte následující příkaz:

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

Pokud používáte jiné služby DNS, musíte odpovídajícím způsobem změnit plugin DNS (–dns ) v předchozím příkazu. Pro více informací, zkontrolujte dokumentaci k DNS API „acme.sh“. .

Probíhá generování certifikátu Let's Encrypt SSL. Dokončení chvíli trvá.

V tomto okamžiku by měl být vygenerován certifikát Let’s Encrypt SSL.

Instalace certifikátu Let’s Encrypt SSL na váš Synology NAS pomocí Acme.sh

Jakmile bude certifikát Let’s Encrypt SSL vygenerován pro název domény (v tomto případě *.nodekite.com) vašeho zařízení Synology NAS, můžete jej nainstalovat do zařízení Synology NAS pomocí následujícího příkazu:

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

Pokud máte povoleno dvoufaktorové ověřování pro certadmin uživatele, obdržíte OTP kód. Musíte zadat kód OTP a stisknout .

Pokud nemáte povoleno dvoufaktorové ověřování pro certadmin uživatele, ponechte jej prázdný a stiskněte .

lis .

Vygenerovaný certifikát Let’s Encrypt SSL by měl být nainstalován na zařízení Synology NAS.

Jakmile je certifikát Let’s Encrypt SSL nainstalován na zařízení Synology NAS, zobrazí se na Kontrolní panel > Bezpečnostní > Osvědčení části webového rozhraní DSM 7 vašeho Synology NAS.

Nastavení certifikátu Let’s Encrypt SSL jako výchozího na vašem zařízení Synology NAS

Chcete-li spravovat certifikáty SSL vašeho Synology NAS, přejděte na Kontrolní panel > Bezpečnostní > Osvědčení z webového rozhraní DSM 7 vašeho Synology NAS.

Chcete-li nově nainstalovaný certifikát Let’s Encrypt SSL nastavit jako výchozí, aby jej nově nainstalované webové služby na vašem zařízení Synology NAS používaly jako výchozí, vyberte certifikát Let’s Encrypt SSL a klikněte na Akce > Upravit .

Zaškrtněte „Nastavit jako výchozí certifikát“ [1] a klikněte na „OK“ [2] .

Certifikát Let’s Encrypt SSL by měl být nastaven jako výchozí certifikát pro vaše zařízení Synology NAS.

Chcete-li nakonfigurovat stávající webové služby vašeho Synology NAS tak, aby používaly certifikát Let’s Encrypt SSL, klikněte na „Nastavení“.

Jak vidíte, všechny webové služby používají certifikát SSL podepsaný sám sebou společnosti Synology.

Chcete-li změnit SSL certifikát pro webovou službu, klikněte na příslušnou rozbalovací nabídku zprava.

Poté z rozbalovací nabídky vyberte certifikát Let’s Encrypt SSL, který chcete pro webovou službu použít.

Stejným způsobem vyberte certifikát Let’s Encrypt SSL pro všechny nainstalované webové služby vašeho Synology NAS a klikněte na „OK“.

Klikněte na „Ano“.

Změny se uplatňují. Dokončení trvá několik sekund.

Jakmile je certifikát Let’s Encrypt SSL aplikován na všechny webové služby vašeho Synology NAS, obnovte webovou stránku a vaše webové rozhraní DSM 7 by mělo používat certifikát Let’s Encrypt SSL.

Konfigurace zařízení Synology NAS pro automatické obnovení certifikátu Let's Encrypt SSL pomocí Acme.sh

Chcete-li nakonfigurovat zařízení Synology NAS tak, aby automaticky obnovovalo certifikát SSL Let’s Encrypt, přejděte na Kontrolní panel > Plánovač úkolů z webového rozhraní DSM 7.

V Plánovači úloh klikněte na Vytvořit > Naplánovaný úkol > Uživatelsky definovaný skript .

Na kartě „Obecné“ zadejte v části „Úkol“ „Obnovit certifikáty SSL“. [1] a z rozbalovací nabídky „Uživatel“ vyberte „certadmin“. [2] .

Na kartě „Plán“ vyberte „Spustit v následujícím datu“ [1] a z rozbalovací nabídky „Opakovat“ vyberte „Opakovat měsíčně“. [2] .

Přejděte na kartu „Nastavení úlohy“, zadejte následující příkaz v části „Skript definovaný uživatelem“ [1] a klikněte na „OK“ [2] .

/usr/local/share/acme.sh/acme.sh –renew –server letsencrypt -d “*.nodekite.com” –home /usr/local/share/acme.sh

Měl by být vytvořen nový úkol. Úloha „Renew SSL Certs“ se bude spouštět každý měsíc a ujistěte se, že je certifikát Let’s Encrypt SSL obnoven před vypršením jeho platnosti.

Závěr

V tomto článku jsme vám ukázali, jak nainstalovat a používat klienta ACME „acme.sh“ k vygenerování certifikátu Let’s Encrypt SSL prostřednictvím výzvy DNS-01 na vašem zařízení Synology NAS. Také jsme vám ukázali, jak nainstalovat vygenerovaný certifikát Let’s Encrypt SSL na vaše zařízení Synology NAS a nakonfigurovat webové služby vašeho zařízení Synology NAS tak, aby jej používaly. Nakonec jsme vám ukázali, jak nakonfigurovat naplánovanou úlohu na zařízení Synology NAS tak, aby se certifikát Let’s Encrypt SSL automaticky obnovoval před vypršením jeho platnosti.

Reference: