Kif Tinstalla Ċertifikat SSL Ħieles għal Nginx fuq Debian 10


Meta twaqqaf websajt, waħda mill-kunsiderazzjonijiet ewlenin li għandu jkollok f'moħħok hija s-sigurtà tas-sit tiegħek. Ċertifikat SSL huwa ċertifikat diġitali li jikkripta dejta li tintbagħat mill-browser tal-utent lil server tal-web. Dan il-mod, id-dejta mibgħuta hija kunfidenzjali u sigura minn hackers li jużaw packet sniffers bħal Wireshark biex jinterċettaw u jisimgħu l-komunikazzjoni tiegħek.

Sit encrypted għandu simbolu tal-katnazz fil-bar tal-URL segwit mill-akronimu https kif muri fil-screenshot li ġej.

Sit mhux ikkodifikat normalment ikollu notifika \Mhux Sikura fil-bar tal-URL.

Qabel ma nibdew, kun żgur li r-rekwiżiti li ġejjin ġew sodisfatti:

  1. Istanza li taħdem ta' Debian 10 Minimal Server.
  2. Istanza li taħdem ta' Nginx Web Server b'Setup tad-Dominju fuq Debian 10.
  3. Isem tad-Dominju Kwalifikat Sħiħ irreġistrat (FQDN) bir-rekord A li jindika l-indirizz IP tad-Debian 10 fuq il-Fornitur tad-Dominju tiegħek.

Għal dan it-tutorja, għandna linux-console.net indikat l-indirizz IP 192.168.0.104.

F'dan l-artikolu, aħna neżaminaw kif tista 'tinstalla Let's Encrypt SSL fuq Debian 10 biex tikseb Ċertifikat SSL Ħieles għal sit ospitat Nginx.

Let's Encrypt SSL huwa ċertifikat b'xejn mill-EFF (Electronic Frontier Foundation) li huwa validu għal 3 xhur u li jġedded awtomatikament malli jiskadi. Huwa mod faċli u irħis biex tikkriptja s-sit tiegħek jekk il-bwiet tiegħek huma stretti.

Mingħajr ħafna aktar dewmien, ejja nidħlu u ninstallaw Let's Encrypt fuq is-server tal-web Nginx:

Pass 1: Installa Certbot f'Debian 10

Biex nibdew irridu ninstallaw Certbot - huwa softwer li jġib iċ-ċertifikat diġitali Let's encrypt u aktar tard jużah fuq server tal-web. Biex inwettqu dan, irridu ninstallaw il-pakkett python3-certbot-nginx. Iżda qabel ma nagħmlu dan, ejja l-ewwel naġġornaw il-pakketti tas-sistema.

$ sudo apt update

Il-pass li jmiss huwa li tinstalla d-dipendenzi meħtieġa mill-pakkett python3-certbot-nginx.

$ sudo apt install python3-acme python3-certbot python3-mock python3-openssl python3-pkg-resources python3-pyparsing python3-zope.interface

Issa ejja ninstallaw il-pakkett python3-certbot-nginx.

$ sudo apt install python3-certbot-nginx

Pass 2. Verifika tal-Konfigurazzjoni tal-Blokk tas-Server Nginx

Biex iċ-ċertbot juża awtomatikament Ejja nikkriptaw iċ-ċertifikat SSL fuq is-server tal-web Nginx, jeħtieġ li jiġi kkonfigurat blokk tas-server. Aħna koprejna l-konfigurazzjoni tal-blokki tas-server Nginx fl-aħħar taqsima tal-artikolu preċedenti.

Jekk segwejt bil-ħerqa, għandu jkollok blokk tas-server f'/etc/nginx/sites-available/some_domain. Fil-każ tagħna, il-blokk tas-server Nginx se jkun

/etc/nginx/sites-available/linux-console.net

Barra minn hekk, kun żgur li d-direttiva server_name tikkorrispondi mal-isem tad-dominju tiegħek.

server_name linux-console.net linux-console.net;

Biex tikkonferma l-konfigurazzjonijiet kollha ta 'Nginx huma fl-ordni, mexxi:

$ sudo nginx -t

L-output ta 'hawn fuq jindika li kollox huwa tajjeb.

Pass 3: Ikkonfigura l-Firewall biex tiftaħ il-Port HTTPS

Fil-każ li għandek ufw ikkonfigurat u attivat, kif dejjem irrakkomandat, jeħtieġ li nħallu l-protokoll HTTPS madwar il-firewall sabiex is-server tal-web ikun aċċessibbli għal kulħadd.

$ sudo ufw allow 'Nginx Full'

Sussegwentement, erġa' tagħbija l-firewall biex taffettwa l-bidliet.

$ sudo ufw reload

Biex tivverifika li ppermettejna l-protokoll permezz tal-firewall.

$ sudo ufw status

Pass 4: L-iskjerament ta' Let's Encrypt SSL Certificate for Domain

Bl-issettjar u l-konfigurazzjonijiet kollha kkontrollati, wasal iż-żmien li ġġib u tuża ċertifikat SSL Let's Encrypt fuq is-sit tad-dominju.

$ sudo certbot --nginx -d domain-name  -d www.domain-name.com 

Fil-każ tagħna, ikollna

$ sudo certbot --nginx -d linux-console.net -d linux-console.net

Fl-ewwel pass, inti tkun imħeġġeġ biex Daħħal l-indirizz elettroniku tiegħek. Ittajpja l-indirizz tiegħek u agħfas Enter.

Sussegwentement, tintalab taqbel mat-termini tas-servizz. Ittajpja A biex tipproċedi.

Certbot jipproċedi biex jitlob il-kunsens tiegħek biex juża l-email tiegħek biex jibgħatlek notifiki dwar l-aħħar żviluppi fl-EFF. Hawnhekk, tista' tagħżel li tagħżel li tidħol jew li ma tagħmilx barra, li tidħol , ittajpja Y (Iva) u agħfas Enter. Biex tonqos il-parteċipazzjoni hit N (Le).

Certbot imbagħad se jikkuntattja Ejja kriptaġġ, niżżel iċ-ċertifikat SSL u skjerah fil-blokk tas-server Nginx li diġà ħloqt.

Fit-taqsima li jmiss,  Ittajpja 2 biex tindirizza mill-ġdid it-traffiku HTTP tas-soltu għal HTTPS.

Iċ-ċertifikat se jiġi skjerat fuq is-Server Nginx tiegħek u int tirċievi notifika ta' kongratulazzjoni biex tikkonferma li s-server tal-web tiegħek issa huwa encrypted bl-użu ta' Let's Encrypt SSL.

Pass 5: Ivverifika HTTPS fuq il-Websajt Nginx

Biex tivverifika l-bidliet permezz ta' web browser, aġġorna t-tab tal-browser tiegħek u kun żgur li tinnota s-simbolu tal-katnazz.

Ikklikkja fuq l-ikona tal-katnazz u agħżel l-għażla 'Ċertifikat' biex tara d-dettalji taċ-ċertifikat SSL.

Id-dettalji kollha taċ-ċertifikat se jintwerew.

Tista' tivverifika aktar l-istatus tas-server tal-web tiegħek billi tittestja l-URL tas-sit tiegħek fuq https://www.ssllabs.com/ssltest/. Jekk  is-server tal-web huwa kodifikat bl-użu ta' ċertifikat SSL, ikollok punteġġ A kif muri.

Wasalna fl-aħħar ta 'dan it-tutorja. Fil-gwida, tgħallimt kif tinstalla ċertifikat SSL b'xejn għal Nginx fuq Debian 10.