Data postarii 2012-11-24      Subiect: Generare certificat SSL      Categorie: Securitate server

Imi este frica sa platesc cu cardul pe diferite site-uri!
Nu am incredere in plata online!

 

Tot mai des auzim aceste intrebari si multi nu inteleg de ce?

 

     De obicei traficul web este trimis necriptat prin Internet. Oricine are acces la instrumentele potrivite poate spiona acest trafic. In mod evident, acest lucru poate duce la probleme, in special in cazul in care securitatea si confidentialitatea datelor tale este necesara, cum ar fi datele cardurilor de credit si a tranzactiilor bancare (hotii cibernetici au extras peste 21 milioane de euro din conturi bancare, din zona euro, in anul 2011, conform datelor FBI), interceptarea datelor  personale, pierderea identitatii online, pe care o alta persoana (cracker) o dobandeste si poate obtine de asemenea foloase financiare in locul tau.

   Secure Socket Layer este folosit pentru a cripta fluxul de date  intre serverul web si client web (browser-ul).

Cand vine vorba de transfer de date securizat de obicei folosim certificate SSL. Cel mai des le intalnim pe siteurile web (https – portul 443), dar aceleasi certificate se pot folosi si pentru transmiterea securizata a mailurilor (smtp) sau transferul datelor (ftpes sau sftp).

      Exista doua tipuri de certificate SSL: cele generate de un CA – “Certificate Authority” (trusted) si cele generate local (untrusted). Certificatele trusted se cumpara de la un furnizor sau distribuitor, si carora nu dorim sa le facem reclama, pentru ca suntem siguri ca le veti putea identifica. Cele untrusted in schimb sunt folosite pentru testarea aplicatiilor care trebuie sa functioneze in mod securizat sau pentru uz propriu unde ne intereseaza doar transferul criptat al datelor nu si o confirmare a identitatii si sunt generate local.

Pentru a genera un certificat in Linux avem nevoie de pachetul OpenSSL care vine de obicei odata cu distributia folosita, iar generarea este destul de precisa:

Generarea unei chei private

 

Intr-un sistem de criptare asimetrica este nevoie de doua chei: una publica si una privata. Cheia privata o vom genera mai departe. Dupa cum ii spune numele “privata”, la aceasta cheie nu trebuie sa aiba nimeni acces.

      Generarea se face folosind comanda openssl:

 

#openssl genrsa -des3 -out dlsit.key 1024



Secure Socket Layer

 

 

 

Parametrii de dupa openssl ii spun comenzii ca vrem sa generam o cheie privata (genrsa) folosind algoritmul des3 cu criptare pe 1024 de biti, iar cheia sa fie salvata in fisierul dlsit.key.

 

Generarea unui CSR

 

Acum ca avem cheia privata, urmatorul pas ar fi sa generam CSR-ul (Certificate Signing Request). Vom folosi in continuare comanda openssl care ne va cere cateva informatii referitoare la certificat:

 

#openssl req -new -key dlsit.key -out dlsit.csr

 

 

Secure Socket Layer

 

Informatiile cerute la acest pas, mai putin parola, vor putea fi verificate odata ce folosim certificatul. Sunt informatii pe care le pot vedea toti cei care vor folosi certificatul.

 

Stergerea parolei din cheia privata

 

La primul pas a fost necesara setarea unei parole, parola de care nu avem nevoie in majoritatea cazurilor. Pentru a scoate parola vom folosi din nou comanda openssl:

 

#cp dlsit.key dlsit.key.first

 

#openssl rsa -in dlsit.key.first -out dlsit.key

 

 

Secure Socket Layer

 

Generarea certificatului

 

Acum ca avem CSR-ul si am scos parola din cheia privata putem genera certificatul:

 

#openssl x509 -req -days 365 -in dlsit.csr signkey dlsit.key -out dlsit.crt

 

 

Secure Socket Layer

 

Vom avea patru fisiere: dlsit.crt, dlsit.csr, dlsit.key si dlsit.key.first. Pentru ca certificatul sa poata fi folosit avem nevoie doar de dlsit.key (cheia privata) si dlsit.crt (certificatul generat cu rol de cheie publica). Aceste doua fisiere vor fi necesare cand vrem sa instalam certificatul.

 

Binenteles in locul localhost.localdomain veti folosi numele real al domeniului dvs, noi nu am facut altceva decat sa va explicam posibilitatea integrarii acestor chei in serverul apache.

 

#cd /etc/httpd/conf

 

#vi httpd.conf (se configureaza httpd.conf ca in figura de mai jos)

 

#service httpd restart



Secure Socket Layer

 

 

 

Secure Socket Layer

 

 

Secure Socket Layer

 

www.dlsit.ro   >> design - linux - servicii - it.ro Pentru orice problema tehnica contactati-ne