Obținerea unui certificat SSL de la oricare dintre autoritățile de certificare (CA) majore poate rula 100 USD sau mai mult. Adăugați la amestec știrile care par să indice că nu toate CA-urile stabilite pot avea încredere în 100% din timp și s-ar putea să decideți să ocoliți incertitudinea și să ștergeți costul, fiind propria dvs. autoritate de certificare.
Pași
Partea 1 din 4: Crearea certificatului CA
Pasul 1. Generați cheia privată a CA-ului dvs. prin emiterea următoarei comenzi
-
openssl genrsa -des3 -out server. CA.key 2048
-
Opțiunile explicate
- openssl - numele software-ului
- genrsa - creează o nouă cheie privată
- -des3 - criptează cheia folosind cifrul DES
- -out server. CA.key - numele noii chei
- 2048 - lungimea, în biți, a cheii private (vă rugăm să consultați avertismentele)
- Păstrați acest certificat și parola într-un loc sigur.
Pasul 2. Creați o cerere de semnare a certificatului
-
openssl req -verbose -new -key server. CA.key -out server. CA.csr -sha256
-
Opțiunile explicate:
- req - Creează o cerere de semnare
- -verbose - vă arată detalii despre cerere pe măsură ce este creată (opțional)
- -new - creează o nouă solicitare
- -key server. CA.key - Cheia privată pe care tocmai ați creat-o mai sus.
- -out server. CA.csr - Numele fișierului cererii de semnare pe care o creați
- sha256 - Algoritmul de criptare de utilizat pentru semnarea cererilor (Dacă nu știți ce este, nu modificați acest lucru. Ar trebui să schimbați acest lucru numai dacă știți ce faceți)
Pasul 3. Completați informațiile cât mai mult posibil
-
Numele țării (cod cu 2 litere) [AU]:
S. U. A.
-
Numele statului sau provinciei (numele complet) [Unul stat]:
CA
-
Numele localității (de exemplu, oraș) :
Silicon Valley
-
Numele organizației (de exemplu, compania) [Internet Widgits Pty Ltd]:
wikiHow, Inc.
- Numele unității organizaționale (de exemplu, secțiune) :
-
Nume comun (de exemplu, FQDN server sau numele TĂU) :
-
Adresa de e-mail :
Pasul 4. Autosemnează-ți certificatul:
-
openssl ca -extensions v3_ca -out server. CA-signed.crt -keyfile server. CA.key -verbose -selfsign -md sha256 -enddate 330630235959Z -infiles server. CA.csr
-
Opțiunile explicate:
- ca - Încarcă modulul Autorității de certificare
- -extension v3_ca - Încarcă extensia v3_ca, o necesitate pentru utilizare pe browserele moderne
- -out server. CA-signed.crt - Numele noii chei semnate
- -keyfile server. CA.key - Cheia privată pe care ați creat-o la pasul 1
- -verbose - vă arată detalii despre cerere pe măsură ce este creată (opțional)
- -semnare - Spune openssl că utilizați aceeași cheie pentru a semna cererea
- -md sha256 - Algoritmul de criptare de utilizat pentru mesaj. (Dacă nu știți ce este, nu schimbați acest lucru. Ar trebui să schimbați acest lucru numai dacă știți ce faceți)
- -enddate 330630235959Z - Data de încheiere a certificatului. Notarea este YYMMDDHHMMSSZ unde Z este în GMT, uneori cunoscut sub numele de „Zulu”.
- -infiles server. CA.csr - fișierul de cerere de semnare pe care l-ați creat pasul de mai sus.
Pasul 5. Inspectați certificatul CA
- openssl x509 -noout -text -in server. CA.crt
-
Opțiunile explicate:
- x509 - Încarcă modulul x509 pentru a inspecta certificatele semnate.
- -noout - Nu scoateți textul codat
- -text - afișează informațiile de pe ecran
- -in server. CA.crt - Încărcați certificatul semnat
- Fișierul server. CA.crt poate fi distribuit oricui va folosi site-ul dvs. web sau va utiliza certificate pe care intenționați să le semnați.
Partea 2 din 4: Crearea certificatelor SSL pentru un serviciu, cum ar fi Apache
Pasul 1. Creați o cheie privată
-
openssl genrsa -des3 -out server.apache.key 2048
-
Opțiunile explicate:
- openssl - numele software-ului
- genrsa - creează o nouă cheie privată
- -des3 - criptează cheia folosind cifrul DES
- -out server.apache.key - numele noii chei
- 2048 - lungimea, în biți, a cheii private (vă rugăm să consultați avertismentele)
- Păstrați acest certificat și parola într-un loc sigur.
Pasul 2. Creați o cerere de semnare a certificatului
-
openssl req -verbose -new -key server.apache.key -out server.apache.csr -sha256
-
Opțiunile explicate:
- req - Creează o cerere de semnare
- -verbose - vă arată detalii despre cerere pe măsură ce este creată (opțional)
- -new - creează o nouă solicitare
- -key server.apache.key - Cheia privată pe care tocmai ați creat-o mai sus.
- -out server.apache.csr - Numele fișierului cererii de semnare pe care o creați
- sha256 - Algoritmul de criptare de utilizat pentru semnarea cererilor (Dacă nu știți ce este, nu modificați acest lucru. Ar trebui să schimbați acest lucru numai dacă știți ce faceți)
Pasul 3. Folosiți certificatul CA pentru a semna noua cheie
-
openssl ca -out server.apache.pem -keyfile server. CA.key -infiles server.apache.csr
-
Opțiunile explicate:
- ca - Încarcă modulul Autorității de certificare
- -out server.apache.pem - Numele fișierului certificatul semnat
- -keyfile server. CA.key - Numele fișierului certificatului CA care va semna solicitarea
- -infiles server.apache.csr - Numele fișierului cererii de semnare a certificatului
Pasul 4. Completați informațiile cât mai mult posibil:
-
Numele țării (cod cu 2 litere) [AU]:
S. U. A.
-
Numele statului sau provinciei (numele complet) [Unul stat]:
CA
-
Numele localității (de exemplu, oraș) :
Silicon Valley
-
Numele organizației (de exemplu, compania) [Internet Widgits Pty Ltd]:
wikiHow, Inc.
- Numele unității organizaționale (de exemplu, secțiune) :
-
Nume comun (de exemplu, FQDN server sau numele TĂU) :
-
Adresa de e-mail :
Pasul 5. Salvați o copie a cheii dvs. private într-o altă locație
Creați o cheie privată fără parolă pentru a împiedica Apache să vă solicite o parolă:
-
openssl rsa -in server.apache.key -out server.apache.unsecured.key
-
Opțiunile explicate:
- rsa - Rulează programul de criptare RSA
- -in server.apache.key - Numele cheii pe care doriți să îl convertiți.
- -out server.apache.unsecured.key - Numele fișierului noii chei nesecurizate
Pasul 6. Folosiți fișierul server.apache.pem rezultat împreună cu cheia privată pe care ați generat-o la pasul 1 pentru a vă configura fișierul apache2.conf
Partea 3 din 4: Crearea unui certificat de utilizator pentru autentificare
Pasul 1. Urmați toți pașii din _Crearea certificatelor SSL pentru Apache_
Pasul 2. Convertiți certificatul semnat într-un PKCS12
openssl pkcs12 -export -in user_cert.pem -inkey user_private_key.pem -out user_cert.p12
Partea 4 din 4: Crearea certificatelor de poștă electronică S / MIME
Pasul 1. Creați o cheie privată
openssl genrsa -des3 -out private_email.key 2048
Pasul 2. Creați o cerere de semnare a certificatului
openssl req -new -key private_email.key -out private_email.csr
Pasul 3. Folosiți certificatul CA pentru a semna noua cheie
openssl ca -out private_email.pem -keyfile server. CA.key -infiles private_email.csr
Pasul 4. Convertiți certificatul în PKCS12
openssl pkcs12 -export -in private_email.crt -inkey private_email.key -out private_email.p12
Pasul 5. Creați un certificat de cheie publică pentru distribuire
openssl pkcs12 -export -out public_cert.p12 -in private_email.pem -clcerts -nokeys -name "Cheia publică WikiHow"
sfaturi
Puteți modifica conținutul cheilor PEM prin emiterea următoarei comenzi: openssl x509 -noout -text -in certificate.pem
Avertizări
- Cheile de 1024 biți sunt considerate ca fiind învechite. Cheile de 2048 biți sunt considerate sigure pentru certificatele de utilizator până în 2030, dar sunt considerate insuficiente pentru certificatele rădăcină. Luați în considerare aceste vulnerabilități pe măsură ce vă creați certificatele.
- În mod implicit, majoritatea browserelor moderne vor afișa un avertisment „Certificat de încredere” atunci când cineva vă vizitează site-ul. Au existat numeroase dezbateri cu privire la formularea acestor avertismente, deoarece utilizatorii non-tehnici pot fi prinși neprevăzut. Este adesea cel mai bine să folosiți o autoritate majoră, astfel încât utilizatorii să nu primească avertismente.