SSL (Strat Protecție Securizat), și versiunea sa îmbunătățită, TLS (Strat de soclu de transport), sunt protocoale de securitate care sunt utilizate pentru securizarea traficului web trimis din browserul web al unui client către un server web.
Un SSL certificate este un certificat digital care creează un canal sigur între browserul unui client și un server web. Procedând astfel, datele sensibile și confidențiale, cum ar fi datele cardului de credit, acreditările de conectare și altele informațiile extrem de private sunt criptate, împiedicând hackerii să ascultă și să vă fure informație.
Un certificat SSL auto-semnat, spre deosebire de altele SSL certificate care sunt semnate și de încredere de către un Autoritate certificată (CA), este un certificat semnat de o persoană fizică care îl deține.
Este complet gratuit să creați unul și este un mod ieftin de a cripta serverul dvs. web găzduit local. Cu toate acestea, utilizarea unui certificat SSL auto-semnat este foarte descurajată în mediile de producție din următoarele motive:
Acestea fiind spuse, utilizarea unui certificat SSL auto-semnat nu este o idee proastă pentru testarea serviciilor și aplicațiilor pe o mașină locală care necesită TLS / SSL criptare.
În acest ghid, veți afla cum să instalați un certificat SSL auto-semnat local pe Apache server web localhost pe un CentOS 8 sistem server.
Înainte de a începe, asigurați-vă că aveți următoarele cerințe de bază:
tecmint.local
un nume de gazdă pentru serverul nostru.1. Pentru a începe, trebuie să verificați dacă Apache serverul web este instalat și rulează.
$ sudo systemctl status httpd.
Iată rezultatul scontat.
Dacă serverul web nu rulează, îl puteți porni și activa la pornire folosind comanda.
$ sudo systemctl începe httpd. $ sudo systemctl activează httpd.
După aceea, puteți confirma dacă Apache este în funcțiune.
2. Pentru a permite instalarea și configurarea certificatului SSL auto-semnat local, mod_ssl pachetul este obligatoriu.
$ sudo dnf install mod_ssl.
Odată instalat, puteți verifica instalarea acestuia rulând.
$ sudo rpm -q mod_ssl.
De asemenea, asigurați-vă că OpenSSL pachetul este instalat (OpenSSL vine instalat implicit în CentOS 8).
$ sudo rpm -q openssl
3. Cu Apache server web și toate condițiile preliminare verificate, trebuie să creați un director în cadrul căruia să fie stocate cheile criptografice.
În acest exemplu, am creat un director la /etc/ssl/private.
$ sudo mkdir -p / etc / ssl / private.
Acum creați cheia și fișierul certificatului SSL local folosind comanda:
$ sudo openssl req -x509 -nodes -newkey rsa: 2048 -keyout tecmint.local.key -out tecmint.local.crt.
Să aruncăm o privire la ceea ce reprezintă de fapt unele dintre opțiunile din comandă:
4. După generarea fișierului certificat SSL, este timpul să instalați certificatul folosind setările serverului web Apache. Deschideți și editați fișierul /etc/httpd/conf.d/ssl.conf Fișier de configurare.
$ sudo vi /etc/httpd/conf.d/ssl.conf.
Asigurați-vă că aveți următoarele linii între etichetele de gazdă virtuală.
ServerAdmin [e-mail protejat] ServerName www.tecmint.local ServerAlias tecmint.local DocumentRoot / var / www / html SSLEngine on SSLCertificateFile /etc/ssl/private/tecmint.local.crtSSLCertificateKeyFile /etc/ssl/private/tecmint.local.key
Salvați și ieșiți din fișier. Pentru ca modificările să fie efectuate, reporniți Apache folosind comanda:
$ sudo systemctl reporniți httpd.
5. Pentru ca utilizatorii externi să vă acceseze serverul, trebuie să deschideți portul 443 prin firewall așa cum se arată.
$ sudo firewall-cmd --add-port = 443 --zone = public --permanent. $ sudo firewall-cmd --reload.
Cu toate configurațiile la locul lor, porniți browserul și răsfoiți adresa serverului dvs. utilizând adresa IP a serverului sau numele de domeniu utilizând protocolul https.
Pentru a eficientiza testarea, vă recomandăm redirecționarea protocolului HTTP către HTTPS pe serverul web Apache. Acest lucru este astfel încât ori de câte ori navigați pe domeniu în HTTP simplu, acesta va fi redirecționat automat către protocolul HTTPS.
Așadar, răsfoiți domeniul serverului sau adresa IP
https://domain_name/
Veți primi o alertă care vă informează că conexiunea nu este sigură așa cum se arată. Acest lucru va varia de la un browser la altul. După cum ați putea ghici, alerta se datorează faptului că certificatul SSL nu este semnat de Autoritate certificată iar browserul înregistrează acest lucru și raportează că certificatul nu poate fi de încredere.
Pentru a accesa site-ul dvs. web, faceți clic pe „Avansat'Fila așa cum se arată mai sus:
Apoi, adăugați excepția la browser.
În cele din urmă, reîncărcați browserul și observați că acum puteți accesa serverul, deși, pe bara URL va apărea un avertisment care site-ul nu este pe deplin sigur din același motiv pentru care certificatul SSL este auto-semnat și nu este semnat de certificat Autoritate.
Sperăm că acum puteți continua și crea și instala un certificat SSL auto-semnat pe serverul web Apache localhost de pe CentOS 8.