A webhely domainjének SSL/TLS titkosítással kell rendelkeznie, ha látogatókat kíván szerezni. Az SSL/TLS-tanúsítványok erős kapcsolatot biztosítanak a webszerverek és a böngészők között. Korábban a biztonság nem volt komoly gond. Viszonylag gyakori volt, hogy a webhelyek a beépített HTTP protokollon keresztül szállítottak adatokat. Manapság azonban a szerverrel való kommunikációhoz használt csatornát biztonságossá kell tenni, mert egyre nő a kiberbűnözés, beleértve a személyazonosság-lopást, a hitelkártya-csalást és a kémkedést.
A Let’s Encrypt nevű tanúsító hatóság (CA) ingyenes SSL/TLS-tanúsítványokat kínál, lehetővé téve a HTTPS titkosítást a webszervereken. Domain ellenőrzött, így nem szükséges dedikált IP-cím. Általában azt tanácsoljuk, hogy engedélyezzen egy SSL-tanúsítványt a webhelyén, hogy javítsa SEO rangsorát, különösen a Google-on.
A Let’s Encrypt munkái
A Let’s Encrypt megerősíti a domain tulajdonjogát, mielőtt tanúsítványt adna ki. A token érvényesítésekor a Let’s Encrypt érvényesítési kiszolgáló HTTP-kérést küld a fájl beszerzéséhez, és biztosítja, hogy a tartomány DNS-rekordja a Let’s Encrypt klienst üzemeltető kiszolgálóra mutasson.
Követelmények
A Let’s Encrypt használata előtt a következőket kell tennie:
Az Ubuntu 20.04 első kiszolgálóbeállítási útmutatójában található utasításokat követve, az Ubuntu 20.04 kiszolgáló beállítása után tűzfallal és egy nem root felhasználóval, aki sudo hozzáféréssel rendelkezik.
Egy domain név regisztrációval. Ebben a cikkben a myfirstproject1.com címet használjuk. Vásárolhat domaint.
A következő két DNS-rekord van konfigurálva a kiszolgálón.
- A myfirstproject1.com „myproject1” rekordja a szerver nyilvános IP-címére mutat
- A myfirstproject2.com „myproject2” rekordja, amely a szerver nyilvános IP-címére mutat.
Az Nginx-et telepíteni kell, és meg kell győződnie arról, hogy a domainben van szerverblokk.
A Let’s Encrypt telepítésének lépései a Digital Oceanen
A Let’s Encrypt digitális óceánra történő telepítésének fő lépései a következők:
Certbot telepítése
A Certbot szoftver az elsődleges szükséglet a Let’s Encrypt használatához SSL-tanúsítvány megszerzéséhez. A Certbot és az Nginx bővítmény telepítéséhez a következő parancsot használjuk:
A legtöbb megosztott tárhelyszolgáltató és néhány felhőszolgáltató cég beépíti a Certbotot vagy egy hasonló beépülő modult a webhely-tárhely panelbe, amely lehetővé teszi SSL/TLS-tanúsítványok vásárlását, megújítását és adminisztrálását néhány kattintással.
Míg a „python3-certbot-nginx” egy olyan csomag, amely a következőkre szolgál:
Azonnal mutassa be a Let’s Encrypt CA-nak, hogy Ön felelős a webhelyért.
- Jegyezze fel, mikor kell frissíteni a licencét, és mikor jár le.
- Szerezzen be és telepítsen egy böngésző által megbízható tanúsítványt bármely webszerverre.
- Szükség esetén segít a tanúsítvány visszavonásában.
A Certbot készen áll a használatra, de bizonyos beállításokat meg kell erősíteni, mielőtt automatikusan beállíthatja az SSL-t az Nginx számára.
Az Nginx konfigurációjának ellenőrzése
A Certbotnak képesnek kell lennie az SSL automatikus konfigurálására. Képesnek kell lennie megtalálni a megfelelő szerverblokkot az Nginx konfigurációjában. Pontosabban, ezt úgy éri el, hogy megkeresi a kiszolgálónév direktívát, amely megfelel annak a tartománynak, amelyre tanúsítványt kér.
A kiszolgálónév direktívának már megfelelően konfigurálva kell lennie a tartományhoz tartozó kiszolgálóblokkban, amelyet az „/etc/nginx/sites-available/myfirstproject1.com” címen fogunk használni.
Nyissa meg a tartománykonfigurációs fájlt a nano-ban vagy egy másik szövegszerkesztőben, és ellenőrizze, hogy a fájl megnyílik-e, ha létezik, zárja be a szerkesztőt, és lépjen a következő műveletre. A kiszolgáló neve így fog kinézni: „kiszolgáló_név tartománynév www.domain_name.com ', ahogy az alábbi részletben látható.
Ha nem változik, akkor megfelel. A fájl mentése és a szerkesztő bezárása után ellenőrizze a konfigurációs módosítások szintaxisát. Ellenőrizze a következő utasításokat:
$ sudo nginx –tTöltse be újra az Nginx-et a frissített konfiguráció betöltéséhez, miután megbizonyosodott arról, hogy a konfigurációs fájl szintaxisa helyes:
$ sudo systemctl reload nginxMost a Certbot automatikusan megkeresi a megfelelő szerverblokkot, és frissíti azt. A Systemctl felelős a rendszerrendszer és a szolgáltatáskezelés ellenőrzéséért és kezeléséért. A System V init démon helyettesítőjeként szolgál, és számos rendszeradminisztrációs könyvtárból, eszközből és démonból áll.
HTTPS engedélyezése a tűzfalon keresztül
A szükséges ajánlások azt javasolják, hogy engedélyezze az UFW tűzfalat. A HTTPS-forgalom engedélyezéséhez módosítania kell a beállításokat.
Az UFW állapot opció lehetővé teszi, hogy megtekintsük az UFW legutóbbi állapotát. Az UFW állapota a szabályozások listáját jeleníti meg, ha az UFW aktiválva van. Természetesen, ha rendelkezik a szükséges hitelesítő adatokkal, akkor a parancsot csak root felhasználóként vagy sudo előtagként futtathatja.
Engedélyezze az Nginx Full profilt, és távolítsa el a szükségtelen Nginx HTTP-profil-engedélyt, hogy engedélyezze a HTTPS-forgalmat is:
Az előző részlet azt a módszert mutatja be, amely lehetővé teszi a teljes forgalmat az Nginx-ről, a második pedig azt, hogyan törölheti a többi, általunk engedélyezett forgalmat.
SSL-tanúsítvány beszerzése
A bővítmények segítségével a Certbot többféle módot kínál az SSL-tanúsítványok beszerzésére. Az Nginx konfigurációját és a konfiguráció újratöltését az Nginx plugin kezeli, ha szükséges.
Használja a Certbotot a domain SSL-tanúsítványának azonnali megszerzéséhez. A tartomány jelzéséhez „-d” argumentum szükséges. A Let’s Encrypt egy tanúsítványt ad ki a www aldomain és a gyökér számára. Mindkét verzióhoz be kell szerezni a tanúsítványt, mivel ha bármelyik verzióhoz csak egy van, akkor a böngésző figyelmeztetést küld, ha a látogató a másik verziót tekinti meg. Új felhasználók esetén a certbot arra kéri, hogy először adja meg e-mail címét, és erősítse meg, hogy elfogadja a szolgáltatási feltételeket.
Ha ez sikeres lenne, a rendszer kérni fogja, hogy válassza ki, és nyomja meg az ENTER billentyűt. A konfiguráció frissítése után az Nginx újratölti, és figyelembe veszi az új beállításokat. A befejezés után a certbot értesíti Önt, hogy az eljárás sikeres volt.
Következtetés
Ebben az útmutatóban bemutattuk a Let’s Encrypt szoftver certbot telepítését és használatát, SSL-tanúsítvány beszerzését, az SSL-tanúsítvány automatikus frissítésének beállítását és az Nginx konfigurálását. Ezen kívül néhány példát mutattunk be azokra a helyzetekre, amelyek összeállítási problémákat okozhatnak a Let’s Encrypt Digital Ocean használata során.