Giunsa ang Pag-install sa Libre nga Sertipiko sa SSL alang sa Nginx sa Debian 10


Kung nag-set up sa usa ka website, usa sa mga hinungdan nga konsiderasyon nga kinahanglan nimong hunahunaon mao ang seguridad sa imong site. Ang SSL certificate usa ka digital certificate nga nag-encrypt sa datos nga gipadala gikan sa browser sa user ngadto sa web server. Niining paagiha, ang data nga gipadala kompidensyal ug luwas gikan sa mga hacker nga naggamit sa mga packet sniffers sama sa Wireshark aron ma-intercept ug ma-eavesdrop ang imong komunikasyon.

Ang naka-encrypt nga site adunay simbolo sa padlock sa URL bar nga gisundan sa acronym nga https sama sa gipakita sa mosunod nga screenshot.

Usa ka unencrypted nga site kasagaran adunay usa ka \Dili Secure nga pahibalo sa URL bar.

Sa dili pa kita magsugod, siguroha nga ang mosunod nga mga kinahanglanon natagbaw:

  1. Usa ka nagdagan nga pananglitan sa Debian 10 Minimal Server.
  2. Usa ka running instance sa Nginx Web Server nga adunay Domain Setup sa Debian 10.
  3. Usa ka narehistro nga Fully Qualified Domain Name (FQDN) nga adunay A record nga nagpunting sa IP address sa Debian 10 sa imong Domain Provider.

Alang niini nga panudlo, kami adunay linux-console.net nga nagpunting sa IP address nga 192.168.0.104.

Sa kini nga artikulo, among gisusi kung giunsa nimo ma-install ang Let's Encrypt SSL sa Debian 10 aron makakuha usa ka Libre nga Sertipiko sa SSL alang sa gi-host nga site sa Nginx.

Ang Let's Encrypt SSL usa ka libre nga sertipiko gikan sa EFF (Electronic Frontier Foundation) nga balido sulod sa 3 ka bulan ug awtomatik nga gibag-o sa pag-expire. Kini usa ka dali ug barato nga paagi aron ma-encrypt ang imong site kung higpit ang imong mga bulsa.

Kung wala’y dugang nga ado, mag-dive kita ug i-install ang Let's Encrypt sa Nginx web server:

Lakang 1: I-install ang Certbot sa Debian 10

Sa pagsugod kinahanglan namong i-install ang Certbot - usa ka software nga nagkuha sa Let's encrypt digital certificate ug sa ulahi i-deploy kini sa web server. Aron mahimo kini, kinahanglan naton i-install ang python3-certbot-nginx nga pakete. Apan sa dili pa nato kini buhaton, ato una nga i-update ang mga pakete sa sistema.

$ sudo apt update

Ang sunod nga lakang mao ang pag-instalar sa mga dependency nga gikinahanglan sa python3-certbot-nginx package.

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

Karon atong i-install ang python3-certbot-nginx package.

$ sudo apt install python3-certbot-nginx

Lakang 2. Pag-verify sa Nginx Server Block Configuration

Alang sa certbot nga awtomatikong i-deploy Let's encrypt SSL certificate sa Nginx web server, usa ka server block kinahanglan nga ma-configure. Gitabonan namo ang configuration sa Nginx server blocks sa katapusang seksyon sa miaging artikulo.

Kung gisunod nimo pag-ayo, kinahanglan nga adunay usa ka block sa server sa /etc/nginx/sites-available/some_domain. Sa among kaso, ang Nginx server block mahimong

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

Dugang pa , siguroha nga ang server_name nga direktiba katumbas sa imong domain name.

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

Aron makumpirma ang tanan nga mga pag-configure sa Nginx, pagdagan:

$ sudo nginx -t

Ang output sa ibabaw nagpakita nga ang tanan maayo.

Lakang 3: I-configure ang Firewall sa Pag-abli sa HTTPS Port

Sa kaso nga imong gi-configure ug gi-enable ang ufw, ingon sa kanunay nga girekomenda, kinahanglan namon nga tugutan ang protocol sa HTTPS tabok sa firewall aron ang web server ma-access sa tanan.

$ sudo ufw allow 'Nginx Full'

Sunod, i-reload ang firewall aron mabuhat ang mga pagbag-o.

$ sudo ufw reload

Aron mapamatud-an nga gitugotan namon ang protocol pinaagi sa firewall.

$ sudo ufw status

Lakang 4: Pag-deploy sa Let's Encrypt SSL Certificate alang sa Domain

Sa tanan nga mga setting ug mga pag-configure nga gisusi, panahon na aron makuha ug i-deploy ang Let's Encrypt SSL certificate sa domain site.

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

Sa atong kahimtang, kita adunay

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

Sa unang lakang, ikaw pagaaghaton sa Pagsulod sa imong email address. Isulat ang imong adres ug pindota ang Enter.

Sunod, hangyoon ka nga mouyon sa mga termino sa serbisyo. Type A aron magpadayon.

Ang Certbot magpadayon sa pagpangayo alang sa imong pagtugot sa paggamit sa imong email aron ipadala kanimo ang mga pahibalo bahin sa labing bag-ong mga kalamboan sa EFF. Dinhi, mahimo nimong pilion ang pag-opt in o pag-opt out, pag-opt in, i-type ang Y (Oo) ug i-hit Enter. Sa pagdumili sa pag-apil hit N (Dili).

Makontak dayon ang Certbot sa Let's encrypt, i-download ang SSL certificate ug i-deploy kini sa Nginx server block nga imong nahimo.

Sa sunod nga seksyon,  I-type ang 2 aron i-redirect ang naandan nga trapiko sa HTTP ngadto sa HTTPS.

Ang sertipiko i-deploy sa imong Nginx Server ug makadawat ka usa ka pahalipay nga pahibalo aron makumpirma nga ang imong web server na-encrypt na gamit ang Let's Encrypt SSL.

Lakang 5: I-verify ang HTTPS sa Nginx Website

Aron mapamatud-an ang mga pagbag-o pinaagi sa usa ka web browser, i-refresh ang tab sa imong browser ug siguroha nga mamatikdan ang simbolo sa padlock.

I-klik ang padlock icon ug pilia ang 'Certificate' nga opsyon aron makita ang mga detalye sa SSL certificate.

Ang tanan nga mga detalye sa sertipiko ipakita.

Mahimo nimong masuta ang kahimtang sa imong web server pinaagi sa pagsulay sa URL sa imong site sa https://www.ssllabs.com/ssltest/. Kung  ang web server gi-encrypt gamit ang SSL certificate, makakuha ka og A score sama sa gipakita.

Natapos na namon kini nga panudlo. Sa giya, nahibal-an nimo kung giunsa ang pag-install usa ka libre nga sertipiko sa SSL alang sa Nginx sa Debian 10.