Cum se implementează certificatul ZeroSSL în Apache și Nginx?

Să ne uităm la obținerea unui certificat GRATUIT SSL / TLS de la ZeroSSL și să îl implementăm în serverele web Apache și Nginx.


Introducere

Este posibil să fi auzit multe despre termenii precum HTTP și HTTPS. În primele zile, un protocol a fost definit, care a fost numit ca Protocolul de transfer HyperText (HTTP). Este o modalitate de a comunica de la browser la serverul web. Când se întâmplă această comunicare, datele care călătoresc pe un protocol HTTP, trebuie doar să călătorească în formatele de text clare. Datorită acestui fapt, s-a realizat că comunicarea HTTP nu este sigură, iar hackerii au putut să atace și să intercepteze mesajele importante și sensibile.

Pentru a rezolva această problemă, HTTPS protocolul a intrat în imagine. Este un protocol sigur și acronimul înseamnă Protocolul de transfer HyperText de securitate. Pur și simplu face criptarea datelor atunci când comunicarea se întâmplă, iar datele călătoresc din browserul web către serverul web. Așadar, dacă vreun hacker ridică informațiile, acestea sunt criptate.

Cum funcționează HTTPS?

Protocolul HTTPS funcționează pe oricare dintre cele două lucruri, adică SSL (Secure Socket Layer) sau TLS (Transport Layer Security). Ambele instrumente folosesc PKI (Public Key Infrastructure). PKI, la rândul său, folosește două chei, adică. chei publice și private. Orice este criptat folosind cheia publică poate fi decriptat folosind cheia privată și invers.

Când instalăm un certificat SSL / TLS pe ​​site-ul nostru web, „criptarea datelorFuncția este activată. SSL este utilizat ca punct de control pentru a garanta securitatea datelor care sunt schimbate pe Internet între browserul utilizatorului și serverul site-ului web.

Obținerea certificatului ZeroSSL

ZeroSSL este o autoritate de certificare (CA) care face lucrului foarte ușor pentru toată lumea să instaleze un certificat pentru a asigura securitatea site-ului. Puteți obține până la 3 certificate cu valabilitate de 90 de zile în mod gratuit.

SSL zero

  • Înscrieți-vă cu ZeroSSL
  • După logare, pagina de mai jos va apărea. Click pe ‘Certificat nou. “

  • Introduceți adresa URL pe care doriți să o securizați și faceți clic pe butonul „Urmatorul pas.

  • Selectați certificatul de 90 de zile și Următorul

  • Să continuăm cu opțiunea de auto-generare CSR

  • Continuați cu planul „gratuit”

În continuare, va trebui să verificați proprietatea domeniului. Există câteva opțiuni.

  • DNS – dacă puteți adăuga o înregistrare DNS
  • E-mail – dacă puteți primi e-mailul către [Email protected]
  • Încărcare fișier – dacă puteți încărca un fișier la rădăcina domeniului

Alege ce funcționează pentru tine. Voi continua cu înregistrarea DNS.

  • Am adăugat CNAME și sunt gata să verific domeniul.

  • În cele din urmă, odată verificat, certificatul SSL este gata de descărcare.

Iată certificatele mele descărcate.

E timpul să o implementăm.

Implementarea pe Apache

Următoarele, voi instala Apache pe Ubuntu.

Conectați-vă la server și instalați folosind comanda apt-get.

sudo apt-get install apache2

Să aflăm dacă Apache rulează folosind comanda systemctl.

[Email protected]: ~ # statusctl status apache2
● apache2.service – Serverul HTTP Apache
Încărcat: încărcat (/lib/systemd/system/apache2.service; activat; presetarea furnizorului: activată)
Drop-In: /lib/systemd/system/apache2.service.d
└─apache2-systemd.conf
Activ: activ (în funcție) din Sat 2020-05-23 16:15:56 UTC; Acum 3 zile
Proces: 7852 ExecStop = / usr / sbin / apachectl stop (cod = ieșit, status = 0 / SUCCESS)
Proces: 14179 ExecStart = / usr / sbin / apachectl start (cod = ieșit, status = 0 / SUCCESS)
PID principal: 14196 (apache2)
Sarcini: 55 (limită: 2362)
CGroup: /system.slice/apache2.service
├─14196 / usr / sbin / apache2 -k start
├─14199 / usr / sbin / apache2 -k start
└─14200 / usr / sbin / apache2 -k start

23 mai 16:15:56 geekflare-lab systemd [1]: Pornirea serverului HTTP Apache…
23 mai 16:15:56 geekflare-lab apachectl [14179]: AH00558: apache2: Nu s-a putut determina în mod fiabil numele de domeniu complet calificat al serverului, folosind 127.0.1.1. Setați „Serviți
23 mai 16:15:56 geekflare-lab systemd [1]: A pornit serverul HTTP Apache.

Grozav, rulează.

Domeniul meu (lab.geekflare.com) indică deja acest server Apache.

Dar, după cum vedeți, acesta nu este securizat și, prin urmare, vom configura certificatul pe care l-am obținut de la ZeroSSL.

  • Să creăm un director numit sslCA sub / etc pentru a stoca fișierele de certificat.

cd / etc
mkdir sslCA

  • Transferați fișierele în folderul nou creat pe server

[Email protected]: / etc / sslCA # ll
în total 20
drwxr-xr-x 2 root root 4096 18 mai 12:13 ./
drwxr-xr-x 92 root root 4096 22 mai 06:07 ../
-rw-r – r– 1 rădăcină rădăcină 2430 18 mai 05:37 ca_bundle.crt
-rw-r – r– 1 rădăcină rădăcină 2292 mai 18 05:37 certificate.crt
-rw-r – r– 1 root root 1702 18 mai 05:37 private.key

  • Activați modulul SSL

sudo a2enmod SSL

  • Va trebui să repornim serverul web, astfel încât modificările să poată fi recunoscute.

repornire serviciu sudo apache2

  • Următorul pas este să configurați fișierele de certificare în fișierul de configurare SSL Apache.

cd / etc / apache2 / mods-disponibil

  • Numele fișierului este ssl.conf. Trebuie să adăugăm următoarele în directivă.

SSLEngine activat
SSLCertificateFile /etc/SSLCA/certificate.crt
SSLCertificatKeyFile /etc/SSLCA/private.key
SSLCertificatChainFile /etc/SSLCA/ca_bundle.crt

  • Salvați fișierul și ieșiți: wq!

După efectuarea repornirii, SSL va fi activat pe site. Accesăm site-ul folosind https: //

Și, după cum vedeți, „Conexiunea este sigură ”. Înseamnă că certificatul SSL a fost aplicat cu succes serverului nostru web.

Implementarea pe Nginx

Nginx este localizat în depozitele implicite ale Ubuntu, astfel încât este posibil să îl instalați de aici folosind sistemul de ambalare corespunzător.

  • Comanda de mai jos este utilizată pentru instalarea „Nginx“.

sudo apt instala nginx

  • După ce instalarea are succes, putem porni Nginx folosind comanda de mai jos.

systemctl start nginx

  • Verificați starea Nginx.

[Email protected]: ~ # statusctl status nginx
● nginx.service – Un server web de înaltă performanță și un server proxy invers
Încărcat: încărcat (/lib/systemd/system/nginx.service; activat; presetarea furnizorului: activată)
Activ: activ (în funcțiune) începând cu marti 2020-05-19 06:54:00 UTC; acum 4 zile
Documente: om: nginx (8)
Proces: 8634 ExecStop = / sbin / start-stop-daemon –quiet –stop –retry QUIT / 5 –pidfile /run/nginx.pid (cod = ieșit, status = 0 / SUCCESS)
Proces: 8661 ExecStart = / usr / sbin / nginx -g daemon activat; master_process pe; (cod = iesit, status = 0 / SUCCESS)
Proces: 8653 ExecStartPre = / usr / sbin / nginx -t -q -g daemon pornit; master_process pe; (cod = iesit, status = 0 / SUCCESS)
PID principal: 8664 (nginx)
Sarcini: 2 (limită: 2362)
CGroup: /system.slice/nginx.service
├─8664 nginx: demon proces / usr / sbin / nginx -g activat; master_process pe;
└─8707 nginx: proces lucrător

19 mai 06:54:00 geekflare-lab systemd [1]: Pornire Un server web de înaltă performanță și un server proxy invers…
19 mai 06:54:00 geekflare-lab systemd [1]: nginx.service: Nu a reușit să analizeze PID din fișierul /run/nginx.pid: argument nevalid
19 mai 06:54:00 geekflare-lab systemd [1]: Started Un server web de înaltă performanță și un server proxy invers.

  • Așa cum era de așteptat, browserul va afișa avertismentul, deoarece conexiunea la acest site nu este sigură.

Să implementăm rapid certificarea pentru a asigura securitatea site-ului utilizând HTTPS.

  • Să creăm fișierul example.com.conf la locația /etc/nginx/conf.d. Conținutul fișierului va arăta ca mai jos.

Server {
asculta 443 SSL default_server;
ascultați [::]: 443 SSL default_server;
nume_ server lab.geekflare.com lab.geekflare.com;
root / var / www / html;
}

  • Acum este necesar să adăugați un nume de fișier certificat în fișierul nginx.conf, care se află în directorul „/ etc / nginx”.
  • Adăugați următoarele în directiva http

ssl_certificate /etc/sslCA/certificate.crt;
ssl_certificate_key /etc/sslCA/private.key;

  • Reporniți Nginx pentru a verifica modificările

systemctl restart nginx

Și aici mergem.

Vrei să înveți Nginx? Verifica asta cursuri fundamentale.

Testarea configurației SSL / TLS

Configurația implicită poate fi vulnerabilă și sugerez cu tărie testarea site-ului dvs. după implementarea certificatului. Există o serie de instrumente online pe care le puteți consulta aici.

Concluzie

Sper că acest lucru vă oferă o idee de a obține un certificat de la ZeroSSL și de a-l implementa pe cele mai populare două servere web.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map