Konfigurirajte Lets Encrypt Digital Ocean

Konfigurirajte Lets Encrypt Digital Ocean



Domena spletnega mesta mora imeti šifriranje SSL/TLS, če namerava pridobiti obiskovalce. Potrdila SSL/TLS zagotavljajo močno povezavo med spletnimi strežniki in brskalniki. Prej varnost ni bila glavna skrb. Za spletna mesta je bilo razmeroma pogosto pošiljanje podatkov prek uveljavljenega protokola HTTP. Dandanes mora biti kanal, ki se uporablja za komunikacijo s strežnikom, zavarovan, saj so kibernetski zločini, vključno s krajo identitete, goljufijami s kreditnimi karticami in vohunjenjem, v porastu.

Certifikacijski organ (CA), imenovan Let’s Encrypt, ponuja brezplačna potrdila SSL/TLS, ki omogočajo šifriranje HTTPS na spletnih strežnikih. Je domensko preverjen, zato namenski naslov IP ni potreben. Običajno je priporočljivo, da imate na svojem spletnem mestu omogočen certifikat SSL, da izboljšate svojo uvrstitev v SEO, zlasti v Googlu.







Delovanje Let’s Encrypt

Let’s Encrypt potrdi lastništvo domene, preden zagotovi potrdilo. Ko je žeton potrjen, potrditveni strežnik Let’s Encrypt pošlje zahtevo HTTP za pridobitev datoteke in zagotovi, da DNS zapis domene kaže na strežnik, ki gosti odjemalca Let’s Encrypt.



Zahteve

Pred uporabo programa Let’s Encrypt morate narediti naslednje:



Sledite navodilom v tej prvi vadnici za nastavitev strežnika za Ubuntu 20.04, ko je strežnik Ubuntu 20.04 nastavljen, skupaj s požarnim zidom in nekorenskim uporabnikom z dostopom sudo.





Ime domene z registracijo. V tem članku bo uporabljen myfirstproject1.com. Domeno lahko kupite.

Na vašem strežniku sta konfigurirana naslednja dva zapisa DNS.



  • Zapis »myproject1« z myfirstproject1.com kaže na javni naslov IP vašega strežnika
  • Zapis »myproject2« z myfirstproject2.com kaže na javni naslov IP vašega strežnika.

Nginx mora biti nameščen in zagotoviti morate, da ima vaša domena blok strežnika.

Koraki za namestitev Let’s Encrypt na Digital Ocean

Glavni koraki za namestitev Let’s Encrypt na digitalni ocean so:

Namestitev Certbota

Programska oprema Certbot je primarna potreba za uporabo Let’s Encrypt za pridobitev SSL certifikata. Za namestitev Certbota in njegovega vtičnika Nginx uporabimo naslednji ukaz:

Večina podjetij za skupno gostovanje in nekatera podjetja za gostovanje v oblaku vključujejo Certbot ali podoben vtičnik v ploščo za gostovanje spletnega mesta, ki vam omogoča nakup, obnovitev in upravljanje potrdil SSL/TLS z nekaj kliki.

Medtem ko je »python3-certbot-nginx« paket, ki se uporablja za:

Agenciji Let’s Encrypt CA takoj pokažite, da ste odgovorni za spletno mesto.

  • Vodite evidenco o tem, kdaj je treba vašo licenco nadgraditi in kdaj bo kmalu potekla.
  • Pridobite in namestite potrdilo, ki mu zaupa brskalnik, na kateri koli spletni strežnik.
  • Pomagamo vam pri preklicu potrdila, če bi bilo potrebno.

Certbot je zdaj pripravljen za uporabo, vendar je treba nekatere njegove nastavitve potrditi, preden lahko samodejno nastavi SSL za Nginx.

Preverjanje konfiguracije Nginx

Certbot bi moral biti sposoben samodejno konfigurirati SSL. Mora biti sposoben poiskati ustrezen blok strežnika v vaši konfiguraciji Nginx. Natančneje, to doseže z iskanjem direktive imena strežnika, ki ustreza domeni, za katero zahtevate potrdilo.

Imeti mora že pravilno konfigurirano direktivo o imenu strežnika v strežniškem bloku za domeno, ki jo bomo uporabili na »/etc/nginx/sites-available/myfirstproject1.com«.

Odprite konfiguracijsko datoteko domene v nano ali drugem urejevalniku besedil, da preverite, ali bo datoteka odprta, če obstaja, zaprite urejevalnik in pojdite na naslednje dejanje. Ime strežnika bo videti kot 'ime_strežnika ime_domene www.domain_name.com «, kot je prikazano v spodnjem izrezku.

Če se ne spremeni, ustreza. Potem ko shranite datoteko in zaprete urejevalnik, preverite sintakso vaših konfiguracijskih sprememb. Za preverjanje uporabite naslednja navodila:

$ sudo nginx –t

Ponovno naložite Nginx, da naložite posodobljeno konfiguracijo, potem ko se prepričate, da je sintaksa konfiguracijske datoteke pravilna:

$ sudo systemctl znova naloži nginx

Zdaj lahko Certbot samodejno poišče pravi blok strežnika in ga posodobi. Systemctl je zadolžen za pregledovanje in upravljanje sistema systemd in upravljanje storitev. Služi kot nadomestek demona System V init in je sestavljen iz več sistemskih skrbniških knjižnic, orodij in demonov.

Omogočanje HTTPS prek požarnega zidu

Zahtevana priporočila svetujejo, da omogočite požarni zid UFW. Če želite dovoliti promet HTTPS, morate spremeniti nastavitve.

Možnost stanja UFW nam omogoča ogled najnovejšega stanja UFW. Status UFW prikaže seznam predpisov, če je UFW aktiviran. Seveda, če imate potrebne poverilnice, lahko ukaz zaženete samo kot korenski uporabnik ali tako, da mu predpono dodate sudo.

Omogočite poln profil Nginx in odstranite nepotrebno dovoljenje za profil HTTP Nginx, da omogočite tudi promet HTTPS:

Prejšnji delček prikazuje metodo za omogočanje celotnega prometa iz Nginxa, drugi pa prikazuje, kako izbrisati drug promet, ki smo ga dovolili.

Kako pridobiti SSL certifikat

Certbot s pomočjo vtičnikov ponuja več načinov pridobivanja SSL certifikatov. Konfiguracijo Nginxa in ponovno nalaganje konfiguracije bo po potrebi obravnaval vtičnik Nginx.

Uporabite Certbot, da takoj pridobite SSL certifikat domene. Za označevanje domene je potreben argument »-d«. En certifikat izda Let’s Encrypt za poddomeno www in koren. Pridobiti je treba potrdilo za obe različici, saj bo samo eden za eno različico povzročil opozorilo v brskalniku, če si obiskovalec ogleda drugo različico. Za nove uporabnike vas certbot prosi, da vnesete svoj e-poštni naslov za prvega in potrdite, da se strinjate s pogoji storitve.

Če bi bilo to uspešno, bi vas prosil, da izberete svojo izbiro in pritisnete ENTER. Po posodobitvi konfiguracije se bo Nginx znova naložil in upošteval nove nastavitve. Po zaključku vas bo certbot obvestil, da je bil postopek uspešen.

Zaključek

V tem priročniku smo pokazali, kako namestiti in uporabiti programski certbot Let’s Encrypt, pridobiti potrdilo SSL, nastaviti samodejno posodabljanje za potrdilo SSL in konfigurirati Nginx. Poleg tega smo vam ponudili tudi nekaj primerov situacij, ki lahko povzročijo težave pri kompilaciji pri uporabi Let’s Encrypt Digital Ocean.