Hvordan generere LetsEncrypt SSL-sertifikat ved hjelp av CloudFlare DNS-01 Challenge og bruke det på Synology NAS

Hvordan Generere Letsencrypt Ssl Sertifikat Ved Hjelp Av Cloudflare Dns 01 Challenge Og Bruke Det Pa Synology Nas



Disk Station Manager v7 (DSM 7) er operativsystemet til Synology NAS-enheter. Du kan konfigurere Let's Encrypt SSL-sertifikater for din Synology NAS fra DSM 7-nettgrensesnittet. Som standard bruker Synology DSM 7 HTTP-01-utfordringen for å bekrefte eierskapet til domenet (som du vil bruke for din Synology NAS) og utstede et SSL-sertifikat for domenet. Men HTTP-01-utfordringen vil ikke fungere med mindre du har en offentlig IP-adresse og datamaskinen din er tilgjengelig fra internett. Så hvis du vil bruke Let's Encrypt SSL-sertifikatene for ditt hjemmenettverk eller private nettverk, må du bruke DNS-01-utfordringen i stedet. Når DNS-01-utfordringen brukes, verifiserer Let's Encrypt eierskapet til domenet ved å bruke DNS-serveren til domenet. Så det fungerer for private nettverk også. Synology DSM 7-nettgrensesnittet gir dessverre ingen måte å skaffe Let's Encrypt SSL-sertifikater ved å bruke DNS-01-utfordringen.

Heldigvis kan 'acme.sh'-programmet installeres på din Synology NAS og brukes til å generere og fornye Let's Encrypt SSL-sertifikater ved hjelp av DNS-01-utfordringen.







I denne artikkelen vil vi vise deg følgende:



  • Slik installerer du 'sh' på din Synology NAS
  • Slik bruker du 'acme.sh' for å generere et Let's Encrypt SSL-sertifikat (via DNS-01-utfordringen) for domenenavnet du bruker på Synology NAS-en din
  • Slik installerer du det «acme.sh»-genererte Let's Encrypt SSL-sertifikatet på din Synology NAS
  • Slik konfigurerer du DSM 7-operativsystemet til din Synology NAS til å bruke det genererte Let's Encrypt SSL-sertifikatet
  • Slik konfigurerer du Synology NAS til automatisk å fornye de genererte Let's Encrypt SSL-sertifikatene ved hjelp av 'acme.sh'

I denne artikkelen vil vi bruke CloudFlare DNS-serveren til demonstrasjon. Du kan bruke andre DNS-tjenester som støttes av acme.sh også. Alt du trenger å gjøre er å gjøre de nødvendige justeringene.



Emne for innhold:

  1. Opprette en Certadmin-bruker på Synology NAS
  2. Konfigurere CloudFlare DNS Server for LetsEncrypt DNS-01 Challenge
  3. Konfigurere andre DNS-tjenester for LetsEncrypt DNS-01 Challenge
  4. Få tilgang til Synology NAS-terminalen via SSH
  5. Laster ned Acme.sh på din Synology NAS
  6. Installere Acme.sh på din Synology NAS
  7. Generer et Let's Encrypt SSL-sertifikat ved hjelp av Acme.sh for din Synology NAS
  8. Installere Let's Encrypt SSL-sertifikatet på din Synology NAS ved hjelp av Acme.sh
  9. Sette Let's Encrypt SSL-sertifikatet som standard på Synology NAS
  10. Konfigurer Synology NAS til å automatisk fornye et Let's Encrypt SSL-sertifikat ved hjelp av Acme.sh
  11. Konklusjon
  12. Referanser

Opprette en Certadmin-bruker på Synology NAS

Først bør du opprette en ny administratorbruker på din Synology NAS for å generere og fornye Let's Encrypt SSL-sertifikatene.





For å opprette en ny admin-bruker på Synology NAS, klikk på Kontrollpanel [1] > Brukergruppe [2] fra DSM 7-nettgrensesnittet.



Klikk på 'Opprett' fra fanen 'Bruker'.

Skriv inn 'certadmin' som brukernavn [1] , en valgfri kort beskrivelse for brukeren [2] , brukerens påloggingspassord [3] , og klikk på 'Neste' [4] .

For å opprette en administratorbruker, merk av for 'administratorer'-gruppen fra listen [1] og klikk på 'Neste' [2] .

Klikk på 'Neste'.

Klikk på 'Neste'.

Klikk på 'Neste'.

Klikk på 'Neste'.

Klikk på 'Ferdig'.

De certadmin brukeren skal nå opprettes på din Synology NAS.

Konfigurere CloudFlare DNS Server for Let's Encrypt DNS-01 Challenge

For å bruke CloudFlare DNS-serveren til Let's Encrypt DNS-01-utfordringen, må du generere et CloudFlare DNS-token. Du kan generere et CloudFlare DNS-servertoken fra CloudFlare-dashbordet. For mer informasjon, les denne artikkelen .

Konfigurere andre DNS-tjenester for Let's Encrypt DNS-01 Challenge

'Acme.sh' støtter andre DNS-tjenester. Hvis du ikke vil bruke CloudFlare DNS, kan du bruke en av de 'acme.sh'-støttede DNS-tjenestene. Konfigurasjonen er litt annerledes for forskjellige DNS-tjenester. For mer informasjon, sjekk 'acme.sh' DNS API-veiledningen .

Få tilgang til Synology NAS-terminalen via SSH

For å installere 'acme.sh' og generere og installere et Let's Encrypt SSL-sertifikat på din Synology NAS, må du få tilgang til terminalen på din Synology NAS. For mer informasjon om hvordan du aktiverer SSH-tilgang på Synology NAS og tilgang til terminalen på Synology NAS, les denne artikkelen .

Når du har aktivert SSH-tilgang på Synology NAS, åpner du en terminalapp på datamaskinen og kjører følgende kommando:

$ ssh certadmin@

Du vil bli bedt om å skrive inn påloggingspassordet til certadmin bruker. Skriv inn påloggingspassordet til certadmin bruker av Synology NAS og trykk på . Du bør være logget på din Synology NAS som certadmin bruker.

Laster ned Acme.sh på din Synology NAS

For å laste ned den nyeste versjonen av 'acme.sh'-klienten, kjør følgende kommando:

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

Den siste versjonen av 'acme.sh'-klientarkivet 'acme.sh.zip' bør lastes ned i '/tmp'-katalogen på din Synology NAS.

Installere Acme.sh på din Synology NAS

For å trekke ut '/tmp/acme.sh.zip'-arkivet i '/usr/local/share'-katalogen på din Synology NAS, kjør følgende kommando og skriv inn påloggingspassordet til certadmin-brukeren og trykk når du blir bedt om passordet. '/tmp/acme.sh.zip'-arkivet bør pakkes ut i '/usr/local/share/acme.sh-master'-katalogen.

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

For enkelhets skyld, gi nytt navn til 'acme.sh-master'-katalogen til bare 'acme.sh' med følgende kommando:

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

Å lage certadmin brukereier av '/usr/local/share/acme.sh'-katalogen og dens innhold, kjør følgende kommando:

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

Generer et Let's Encrypt SSL-sertifikat ved hjelp av Acme.sh for din Synology NAS

For å generere et Let's Encrypt SSL-sertifikat for domenenavnet du bruker på din Synology NAS, naviger til '/usr/local/share/acme.sh'-katalogen som følger:

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

Nå må du eksportere de nødvendige DNS API-token-miljøvariablene. Vi bruker CloudFlare DNS for å administrere domenenavnet som vi bruker på vår Synology NAS. Så, for oss, er alt vi trenger å gjøre å eksportere miljøvariabelen CF_Token med verdien av CloudFlare DNS API-token. Hvis du bruker en annen DNS-tjeneste, sjekk 'acme.sh' DNS API-dokumentasjonen for variablene du må eksportere for at 'acme.sh' skal fungere med DNS-tjenesten din.

$ export CF_Token=''

Eksporter også de nødvendige Synology-miljøvariablene slik at 'acme.sh' kan installere de genererte SSL-sertifikatene på din Synology NAS.

$ eksport SYNO_User
$ export SYNO_Password='Your_certadmin_login_Password'
$ export SYNO_Certificate='La oss kryptere'
$ eksport SYNO_Create=1

For å generere et Let's Encrypt SSL-sertifikat for «*.nodekite.com» (jokertegn)-domenenavnet ved å bruke CloudFlare DNS-plugin ( –dns dns_cf ), kjør følgende kommando:

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

Hvis du bruker andre DNS-tjenester, må du endre DNS-plugin-modulen (–dns ) i forrige kommando tilsvarende. For mer informasjon, sjekk 'acme.sh' DNS API-dokumentasjonen .

Et Let's Encrypt SSL-sertifikat blir generert. Det tar en stund å fullføre.

På dette tidspunktet bør Let's Encrypt SSL-sertifikatet genereres.

Installere Let's Encrypt SSL-sertifikatet på din Synology NAS ved hjelp av Acme.sh

Når Let's Encrypt SSL-sertifikatet er generert for domenenavnet (*.nodekite.com i dette tilfellet) til din Synology NAS, kan du installere det på din Synology NAS med følgende kommando:

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

Hvis du har en tofaktorautentisering aktivert for certadmin bruker, vil du motta en OTP-kode. Du må skrive inn OTP-koden og trykke .

Hvis du ikke har tofaktorautentisering aktivert for certadmin bruker, la den stå tom og trykk .

trykk .

Det genererte Let's Encrypt SSL-sertifikatet bør installeres på din Synology NAS.

Når Let's Encrypt SSL-sertifikatet er installert på din Synology NAS, vil det vises på Kontrollpanel > Sikkerhet > Sertifikat delen av DSM 7-nettgrensesnittet til din Synology NAS.

Sette Let's Encrypt SSL-sertifikatet som standard på Synology NAS

For å administrere SSL-sertifikatene til din Synology NAS, naviger til Kontrollpanel > Sikkerhet > Sertifikat delen fra DSM 7-nettgrensesnittet til din Synology NAS.

For å angi det nylig installerte Let's Encrypt SSL-sertifikatet som standard, slik at de nylig installerte nettjenestene på Synology NAS-en din vil bruke det som standard, velger du Let's Encrypt SSL-sertifikatet og klikker på Handling > Redigere .

Kryss av for 'Angi som standardsertifikat' [1] og klikk på 'OK' [2] .

Let's Encrypt SSL-sertifikatet bør settes som standardsertifikat for din Synology NAS.

For å konfigurere de eksisterende nettjenestene til din Synology NAS til å bruke Let's Encrypt SSL-sertifikatet, klikk på 'Innstillinger'.

Som du kan se, bruker alle nettjenestene Synologys selvsignerte SSL-sertifikat.

For å endre SSL-sertifikatet for en nettjeneste, klikk på den respektive rullegardinmenyen fra høyre.

Deretter velger du Let's Encrypt SSL-sertifikatet du vil bruke for nettjenesten fra rullegardinmenyen.

På samme måte velger du Let's Encrypt SSL-sertifikatet for alle de installerte nettjenestene til din Synology NAS og klikker på 'OK'.

Klikk på 'Ja'.

Endringene blir tatt i bruk. Det tar noen sekunder å fullføre.

Når Let's Encrypt SSL-sertifikatet er brukt på alle netttjenestene til din Synology NAS, oppdater nettsiden og DSM 7-nettgrensesnittet ditt skal bruke Let's Encrypt SSL-sertifikatet.

Konfigurere Synology NAS til å automatisk fornye Let's Encrypt SSL-sertifikatet ved å bruke Acme.sh

For å konfigurere Synology NAS til å automatisk fornye Let's Encrypt SSL-sertifikatet, naviger til Kontrollpanel > Oppgaveplanlegger fra DSM 7-nettgrensesnittet.

Fra Oppgaveplanleggeren klikker du på Skape > Planlagt oppgave > Brukerdefinert skript .

Fra 'Generelt'-fanen skriver du inn 'Forny SSL-sertifikater' i 'Oppgave'-delen [1] og velg 'certadmin' fra rullegardinmenyen 'Bruker'. [2] .

Fra 'Tidsplan'-fanen, velg 'Kjør på følgende dato' [1] og velg 'Gjenta månedlig' fra rullegardinmenyen 'Gjenta'. [2] .

Naviger til fanen 'Oppgaveinnstillinger', skriv inn følgende kommando i delen 'Brukerdefinert skript' [1] , og klikk på 'OK' [2] .

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

En ny oppgave bør opprettes. Oppgaven 'Forny SSL-sertifikater' kjøres hver måned og sørg for at Let's Encrypt SSL-sertifikatet fornyes før det utløper.

Konklusjon

I denne artikkelen viste vi deg hvordan du installerer og bruker 'acme.sh' ACME-klienten til å generere et Let's Encrypt SSL-sertifikat via DNS-01-utfordringen på din Synology NAS. Vi viste deg også hvordan du installerer det genererte Let's Encrypt SSL-sertifikatet på din Synology NAS og konfigurerer nettjenestene til din Synology NAS for å bruke det. Til slutt viste vi deg hvordan du konfigurerer en planlagt oppgave på Synology NAS for automatisk å fornye Let's Encrypt SSL-sertifikatet før det utløper.

Referanser: