Cum se generează un certificat SSL auto-semnat pe Linux

În ghidul de astăzi, vom discuta despre cum să generați un certificat SSL auto-semnat pe Linux, precum și despre cum să le implementați în Apache. SSL devine din ce în ce mai important pe măsură ce internetul devine mai popular. Având în vedere că certificatele gratuite Let’s Encrypt devin o marfă pe care oricine o poate folosi, nu există niciun motiv pentru care cineva să nu folosească SSL – fără a menționa avantajele clasamentului căutării și faptul că browserele și motoarele de căutare vor avea încredere în site-ul dvs.

Cu toate acestea, puteți genera propriul certificat SSL auto-semnat pentru utilizare privată pe serverul dvs. Un motiv important pentru a face acest lucru este criptarea. Deși certificatul dvs. personal nu va însemna nimic pentru browsere, iar vizitatorii vor primi totuși un mesaj de avertizare dacă vă vizitează site-ul direct, puteți fi cel puțin sigur că sunteți protejat împotriva atacurilor „om în mijloc”. Un certificat auto-semnat este un prim pas bun atunci când tocmai testați lucrurile pe serverul dvs. și probabil că nici măcar nu aveți încă un nume de domeniu.

Să începem cu procedura pas cu pas pe cum să creați un certificat SSL auto-semnat pe Linux.

Cuprins

Pasul 1: Creați o pereche de chei RSA

Primul pas în generarea propriului certificat SSL auto-semnat este să utilizați pachetul „openssl” pe Linux / CentOS pentru a crea o pereche de chei RSA. Pentru a face acest lucru, asigurați-vă că aveți pachetul instalat. Dacă nu, instalați-l cu această comandă:

sudo yum install openssl

Este posibil să îl aveți deja disponibil pe sistemul dvs. – acum ar trebui să fie instalat indiferent. Odată ce pachetul este confirmat că este instalat pe sistemul dvs., generați perechea de chei utilizând următoarea comandă:

openssl genrsa -des3 -passout pass:x -out keypair.key 2048

Această comandă utilizează criptarea 2048 biți și scoate un fișier numit keypair.key, așa cum se arată aici:

După cum puteți vedea, cheia a fost generată și plasată în directorul curent.

Pasul 2: extrageți cheia privată în Dosarul „httpd”

Dosarul /etc/httpd este locul în care sistemul de operare păstrează toate elementele importante legate de SSL. Mai întâi, să creăm un folder nou care să conțină toate fișierele noastre legat de cheia noastră privată:

sudo mkdir /etc/httpd/httpscertificate

Am chemat folderul httpscertificate și ne vom referi la acesta cu acel nume pentru toate celelalte exemple din linia de comandă. Puteți denumi folderul orice doriți.

Pentru a extrage cheia privată din fișierul de perechi de chei pe care tocmai l-am creat, tastați fo permițând:

openssl rsa -passin pass:x -in keypair.key -out /etc/httpd/httpscertificate/012.345.678.90.key

Înlocuiți secțiunea cu caractere aldine cu adresa IP a propriului server. Sau dacă puteți accesa site-ul dvs. cu un nume de domeniu, îl puteți utiliza și pe acesta.

Acest lucru va crea un fișier .key în folderul care tocmai am creat. Când se termină acest proces, putem șterge fișierul original al perechii de chei:

rm keypair.key

Pasul 3: Crearea unui fișier „Cerere de semnare a certificatului” (CSR)

Cu cheia, putem crea un fișier special .csr pe care îl putem semna noi înșine sau îl putem trimite unei „Autorități de certificare”. Este într-un format standardizat și poate fi generat cu ușurință cu cheia noastră din pasul anterior. Pentru a-l crea, tastați următoarea comandă:

openssl req -new -key /etc/httpd/httpscertificate/012.345.678.90.key -out /etc/httpd/httpscertificate/012.345.678.90.csr

Din nou, înlocuiți articolele cu caractere aldine cu adresa IP sau numele de domeniu pe care v-ați stabilit la pasul 2. Când rulați această comandă, instrumentul vă va solicita unele informații personale, cum ar fi locația și numele organizației:

Un CA (prescurtare pentru Autoritatea de certificare) poate utiliza aceste detalii pentru a verifica dacă sunteți într-adevăr cine spuneți că sunteți. Încercați să completați câmpurile cu cât mai multe informații.

Odată ce ați terminat de introdus aceste detalii, instrumentul se va termina cu lucrările sale și va plasa un .csr fișier în directorul pe care l-am creat tocmai în acest scop.

Pasul 4: Crearea certificatului „.crt” Fișier

Cu CSR, putem crea fișierul de certificat final ca urmează. Vom folosi acum fișierele noastre .csr și .key pentru a crea fișierul .crt:

Aceasta creează un fișier .crt în locație cu toate celelalte fișiere ale noastre. Acum știm cum să generăm certificatul SSL auto-semnat. Iată o captură de ecran a fișierele finale din folderul nostru de securitate:

Acum trebuie să îi spunem Apache unde sunt aceste fișiere.

Pasul 5: Configurarea Apache pentru a utiliza fișierele

Tot ce trebuie să facem acum este să arătăm Apache unde sunt certificatele noastre autosemnate generate. Mai întâi, trebuie să instalăm pachetul mod_ssl cu comanda:

sudo yum install mod_ssl

Odată terminat, acesta va plasa un fișier ssl.conf din folderul /etc/httpd/conf.d/. Trebuie să modificăm acest fișier implicit. Utilizați editorul de text preferat:

sudo vi /etc/httpd/conf.d/ssl.conf

Acum derulați în jos până găsiți liniile care încep cu:

SSLCertificateFileSSL CertificateKeyFile

Schimbați căile implicite cu căile către fișierul certificat și respectiv fișierul cheie, după cum se arată aici:

Salvați modificările. Acum, reporniți Apache cu:

sudo apachectl restart

Și ați terminat! Când Apache repornește, acesta va fi configurat pentru a permite conexiunile SSL utilizând certificatele SSL auto-semnate generate.

Când vă conectați la adresa IP prin HTTPS data viitoare, veți fi avertizat că nu este un certificat de încredere:

Este ok. Știm asta de când am semnat-o noi înșine! Continuați și vă va duce la site-ul web actual:

Aici puteți vedea că folosește certificatul pe care l-am creat. Nu este prea util pentru nimeni altcineva care vă vizitează site-ul, deoarece nu vă poate verifica identitatea. Dar știți că este sigur și, în plus, că este criptat. Niciun om în mijloc nu atacă!

Acum știți cum să vă generați propriile certificate SSL auto-semnate și să le implementați pe serverul dvs. web Apache.

Dacă sunteți unul dintre administratorii noștri Clienți de găzduire VPS, putem face toate acestea pentru dvs. fără costuri suplimentare. Pur și simplu contactați administratorii noștri de sistem și aceștia vă vor răspunde la cerere cât mai curând posibil.

Leave a Reply

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *