Wéi installéiere Dir Gratis SSL Zertifikat fir Nginx op Debian 10


Wann Dir eng Websäit opstellt, ass ee vun de Schlësselbedéngungen déi Dir am Kapp sollt hunn d'Sécherheet vun Ärem Site. En SSL Zertifika ass en digitale Zertifika deen Daten verschlësselt déi vum Benotzer säi Browser op e Webserver geschéckt ginn. Op dës Manéier sinn d'Donnéeën, déi geschéckt ginn, vertraulech a sécher vu Hacker, déi Packet Sniffers wéi Wireshark benotzen fir Är Kommunikatioun z'ënnerscheeden an ze oflauschteren.

E verschlësselte Site huet e Padlock Symbol an der URL Bar gefollegt vum Akronym https wéi am folgenden Screenshot gewisen.

En onverschlësselte Site huet normalerweis eng Net Secure Notifikatioun an der URL Bar.

Ier mer ufänken, gitt sécher datt déi folgend Ufuerderunge erfëllt sinn:

  1. Eng Lafen Instanz vum Debian 10 Minimal Server.
  2. Eng Lafen Instanz vum Nginx Web Server mat Domain Setup op Debian 10.
  3. En registréierte Fully Qualified Domain Name (FQDN) mat dem A Rekord, deen op d'IP Adress vum Debian 10 op Ärem Domain Provider weist.

Fir dësen Tutorial hu mir linux-console.net op d'IP Adress 192.168.0.104 uginn.

An dësem Artikel ënnersicht mir wéi Dir Let's Encrypt SSL op Debian 10 installéiere kënnt fir e Gratis SSL Zertifika fir Nginx gehoste Site ze kréien.

Let's Encrypt SSL ass e gratis Zertifika vun der EFF (Electronic Frontier Foundation) dat valabel ass fir 3 Méint an automatesch erneiert beim Verfall. Et ass en einfachen a bëllege Wee fir Äre Site ze verschlësselen wann Är Taschen enk sinn.

Ouni vill weider Ado, loosst eis dauchen an installéieren Let's Encrypt op Nginx Webserver:

Schrëtt 1: Installéiert Certbot an Debian 10

Fir unzefänken musse mir Certbot installéieren - ass eng Software déi de Let's encrypt digital Certificate hëlt a spéider op engem Webserver ofsetzt. Fir dëst z'erreechen, musse mir de python3-certbot-nginx Package installéieren. Awer ier mer dat maachen, loosst eis éischt d'Systempakete aktualiséieren.

$ sudo apt update

De nächste Schrëtt ass d'Ofhängegkeeten z'installéieren déi vum python3-certbot-nginx Package erfuerderlech sinn.

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

Loosst eis de python3-certbot-nginx Package installéieren.

$ sudo apt install python3-certbot-nginx

Schrëtt 2. Nginx Server Block Configuratioun z'iwwerpréiwen

Fir certbot automatesch z'installéieren Loosst eis SSL Zertifikat op Nginx Webserver verschlësselen, muss e Serverblock konfiguréiert ginn. Mir hunn d'Konfiguratioun vun Nginx Serverblocken op der leschter Sektioun vum viregten Artikel iwwerdeckt.

Wann Dir streng gefollegt hutt, sollt Dir e Serverblock op /etc/nginx/sites-available/some_domain hunn. An eisem Fall wäert den Nginx Serverblock sinn

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

Zousätzlech, gitt sécher datt d'Server_name Direktiv mat Ärem Domainname entsprécht.

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

Fir ze bestätegen datt all Nginx Konfiguratiounen an der Rei sinn, lafen:

$ sudo nginx -t

D'Output uewen weist datt alles gutt ass.

Schrëtt 3: Konfiguréiert d'Firewall fir den HTTPS Port opzemaachen

Am Fall wou Dir ufw konfiguréiert an aktivéiert hutt, wéi ëmmer recommandéiert ass, musse mir den HTTPS Protokoll iwwer d'Firewall erlaben, sou datt de Webserver fir jiddereen zougänglech ass.

$ sudo ufw allow 'Nginx Full'

Als nächst lued d'Firewall nei fir d'Ännerungen auszeféieren.

$ sudo ufw reload

Fir z'iwwerpréiwen datt mir de Protokoll duerch d'Firewall erlaabt hunn.

$ sudo ufw status

Schrëtt 4: Deployéieren Let's Encrypt SSL Certificate for Domain

Mat all Astellungen a Konfiguratiounen am Scheck, ass et Zäit fir Let's Encrypt SSL Zertifikat op Domain Site ze sichen an z'installéieren.

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

An eisem Fall wäerte mir hunn

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

Am éischte Schrëtt wäert Dir gefrot ginn Är E-Mailadress anzeginn. Gidd Är Adress an dréckt Enter.

Als nächst sidd Dir gefrot fir d'Konditioune vum Service ze stëmmen. Typ A fir weiderzemaachen.

Certbot wäert weidergoen fir Är Zoustëmmung ze froen fir Är E-Mail ze benotzen fir Iech Notifikatiounen iwwer déi lescht Entwécklungen am EFF ze schécken. Hei kënnt Dir entscheeden fir opt oder opt out, fir optéieren , Typ Y (Jo) a dréckt Enter. Fir d'Participatioun ze refuséieren Hit N (Nee).

Certbot kontaktéiert dann Let's encrypt, luet den SSL Zertifika erof an deploy et op den Nginx Serverblock deen Dir scho erstallt hutt.

An der nächster Sektioun, Typ 2 fir den üblechen HTTP-Traffic op HTTPS ze redirectéieren.

Den Zertifika gëtt op Ären Nginx Server ofgesat an Dir kritt eng Gratulatiounsnotifikatioun fir ze bestätegen datt Äre Webserver elo verschlësselt ass mat Let's Encrypt SSL.

Schrëtt 5: Verifizéiert HTTPS op Nginx Websäit

Fir d'Ännerungen iwwer e Webbrowser z'iwwerpréiwen, erfrëscht Äre Browser-Tab a gitt sécher d'Hengelschlosssymbol ze bemierken.

Klickt op de Padlock Ikon a wielt 'Zertifikat' Optioun fir SSL Zertifika Detailer ze gesinn.

All Zertifikat Detailer ginn ugewisen.

Dir kënnt de Status vun Ärem Webserver weider verifizéieren andeems Dir d'URL vun Ärem Site op https://www.ssllabs.com/ssltest/ testen. Wann de Webserver mat engem SSL Zertifika verschlësselt ass, kritt Dir en A Score wéi gewisen.

Mir sinn um Enn vun dësem Tutorial komm. Am Guide hutt Dir geléiert wéi Dir e gratis SSL Zertifika fir Nginx op Debian 10 installéiere kënnt.