Kā nodrošināt Nginx ar Lets Encrypt vietnē CentOS 8


Let’s Encrypt, kuru 2016. gada aprīlī nodibināja Electronic Frontier Foundation (EFF), ir bezmaksas un automatizēts digitālais sertifikāts, kas nodrošina vietņu TLS šifrēšanu bez maksas un bez maksas.

Let’s Encrypt sertifikāta mērķis ir automatizēt drošības sertifikāta apstiprināšanu, izveidošanu, parakstīšanu, kā arī automātisku atjaunošanu. Šis sertifikāts ļauj šifrētus savienojumus ar tīmekļa serveriem, izmantojot HTTPS protokolu, vienkārši un bez problēmām bez sarežģījumiem. Sertifikāts ir derīgs tikai 90 dienas, pēc kura var aktivizēt automātisko atjaunošanu.

Ieteicams lasīt: Kā nodrošināt Apache, šifrējot SSL sertifikātu CentOS 8

Šajā rakstā mēs parādīsim, kā jūs varat instalēt Let’s Encrypt, lai iegūtu bezmaksas SSL sertifikātu, lai nodrošinātu Nginx tīmekļa serveri CentOS 8 (tās pašas instrukcijas darbojas arī ar RHEL 8). Mēs jums arī paskaidrosim, kā automātiski atjaunot SSL sertifikātu.

Pirms mēs pārliecināmies, ka jums ir pārbaudīti šādi elementi.

1. Pilnībā kvalificēts domēna vārds (FQDN), kas norāda uz tīmekļa servera īpašu IP adresi. Tas ir jākonfigurē jūsu DNS tīmekļa mitināšanas pakalpojumu sniedzēja klienta zonā. Šajā apmācībā mēs izmantojam domēna nosaukumu linuxtechwhiz , kas norāda uz IP adresi 34.70.245.117.

2. To var arī apstiprināt, veicot meklēšanu uz priekšu, izmantojot komandu dig, kā parādīts.

$ dig linuxtechwhiz.info

3. Nginx ir instalēts un darbojas tīmekļa serverī. To var apstiprināt, piesakoties terminālā un palaižot zemāk esošo komandu. Ja Nginx nav instalēts, izpildiet mūsu rakstu, lai instalētu Nginx CentOS 8.

$ sudo systemctl status nginx

4. Varat arī pārbaudīt, tīmekļa pārlūkprogrammā apmeklējot tīmekļa servera URL.

http://server-IP-or-hostname

No URL mēs skaidri redzam, ka vietne nav droša un tādējādi nav šifrēta. Tas nozīmē, ka visus tīmekļa serverim iesniegtos pieprasījumus var pārtvert, jo tas ietver kritisku un konfidenciālu informāciju, piemēram, lietotājvārdus, paroles, sociālās apdrošināšanas numurus un kredītkaršu informāciju, pieminot dažus.

Tagad sasmērēsim rokas un instalēsim Let’s Encrypt.

1. solis. CentOS 8 instalējiet Certbot

Lai instalētu Let’s Encrypt sertifikātu, vispirms ir jāinstalē certbot. Šis ir paplašināms klients, kas no Let’s Encrypt Authority ienes drošības sertifikātu un ļauj automatizēt sertifikāta validāciju un konfigurēšanu tīmekļa servera lietošanai.

Lejupielādējiet certbot, izmantojot čokurošanās komandu.

$ sudo curl -O https://dl.eff.org/certbot-auto

Pēc tam pārvietojiet sertifikātu direktorijā/usr/local/bin.

$ sudo mv certbot-auto /usr/local/bin/certbot-auto

Pēc tam piešķiriet faila atļauju certbot failam, kā parādīts.

$ chmod 0755 /usr/local/bin/certbot-auto

2. solis. Konfigurējiet Nginx servera bloku

Servera bloks Nginx ir ekvivalents virtuālajam resursdatoram Apache. Serveru bloku iestatīšana ne tikai ļauj vienā serverī izveidot vairākas vietnes, bet arī ļauj certbot apliecināt domēna piederību sertifikātu iestādei - CA.

Lai izveidotu servera bloku, palaidiet parādīto komandu.

$ sudo vim /etc/nginx/conf.d/www.linuxtechwhiz.info

Noteikti nomainiet domēna nosaukumu ar savu domēna vārdu. Pēc tam ielīmējiet konfigurāciju zemāk.

server {
   server_name www.linuxtechwhiz.info;
   root /opt/nginx/www.linuxtechwhiz.info;

   location / {
       index index.html index.htm index.php;
   }

   access_log /var/log/nginx/www.linuxtechwhiz.info.access.log;
   error_log /var/log/nginx/www.linuxtechwhiz.info.error.log;

   location ~ \.php$ {
      include /etc/nginx/fastcgi_params;
      fastcgi_pass 127.0.0.1:9000;
      fastcgi_index index.php;
      fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
   }
}

Saglabājiet failu un izejiet no teksta redaktora.

3. solis: CentOS 8 instalējiet Lets Encrypt Certificate

Tagad izmantojiet komandu certbot, lai inicializētu Let’s Encrypt drošības sertifikāta ielādi un konfigurēšanu.

$ sudo /usr/local/bin/certbot-auto --nginx

Šī komanda palaidīs un instalēs vairākas Python paketes un to atkarības, kā parādīts.

Pēc tam sekos interaktīva uzvedne, kā parādīts:

Ja viss noritēja labi, jums vajadzētu būt iespējai redzēt apsveikuma ziņojumu pašā galā.

Lai apstiprinātu, ka jūsu Nginx vietne ir šifrēta, atkārtoti ielādējiet vietni un URL sākumā ievērojiet piekaramās slēdzenes simbolu. Tas norāda, ka vietne ir aizsargāta, izmantojot SSL/TLS šifrēšanu.

Lai iegūtu vairāk informācijas par drošības sertifikātu, noklikšķiniet uz piekaramās slēdzenes simbola un atlasiet opciju ‘Sertifikāts’.

Tiks parādīta plašāka informācija par drošības sertifikātu, kā parādīts zemāk.

Turklāt, lai pārbaudītu drošības sertifikāta izturību, dodieties uz vietni https://www.ssllabs.com/ssltest/ un atrodiet precīzāku un padziļinātu drošības sertifikāta statusa analīzi.

4. solis. Atjaunosim Let’s Encrypt Certificate

Kā mēs redzējām iepriekš, drošības sertifikāts ir derīgs tikai 90 dienas un ir jāatjauno pirms derīguma termiņa beigām.

Varat simulēt vai pārbaudīt sertifikāta atjaunošanas procesu, izpildot komandu:

$ sudo /usr/local/bin/certbot-auto renew --dry-run

Tādējādi tiek pabeigta šī apmācība par Nginx drošību ar Let’s Encrypt on CentOS 8. Let’s Encrypt piedāvā efektīvu un ērtu veidu, kā aizsargāt savu Nginx tīmekļa serveri, kas citādi būtu sarežģīta lieta, ko darīt manuāli.

Jūsu vietnei tagad jābūt pilnībā šifrētai. Dažas nedēļas līdz sertifikāta derīguma termiņam EZF jūs pa e-pastu brīdinās par sertifikāta atjaunošanu, lai izvairītos no pārtraukumiem, kas var rasties sertifikāta, kura derīguma termiņš ir beidzies, dēļ. Tas ir viss šodien puiši!