Introducere

A CA (AC) este o entitate responsabilă de eliberarea certificatelor digitale pentru a verifica identitățile pe internet. Deși alegerile publice și publice reprezintă o alegere populară pentru a verifica identitatea site-urilor web și a altor servicii care sunt furnizate publicului larg, CAS private sunt utilizate în general pentru grupuri închise și servicii private.

Crearea unei certificări private Autoritatea vă va permite să configurați, să încercați și să executați programe care necesită conexiuni criptate între un client și un server. Cu o AC privată, puteți emite certificate pentru utilizatori, servere sau programe individuale și servicii în cadrul infrastructurii dvs.

Câteva exemple de programe Linux care utilizează propriile AC-uri private sunt OpenVPN și marionetă. De asemenea, puteți configura serverul web pentru a utiliza certificatele emise de o AC privată pentru a se potrivi cu mediile de dezvoltare și simulare la serverele de producție care utilizează TLS pentru a cripta conexiunile.

În acest ghid, vom învăța cum să se stabilească Up O autoritate privată de certificare pe un server Debian 10 și cum să genereze și să semneze un certificat de testare utilizând noul dvs. AC. De asemenea, veți afla cum să importați certificatul de curent alternativ de pe serverul CA în magazinul de certificate din sistemul de operare, astfel încât să puteți verifica lanțul de încredere între serverele AC și la distanță sau utilizatorii. În cele din urmă, veți învăța cum să revocați certificatele și să distribuiți o listă de revocare a certificatelor pentru a vă asigura că numai utilizatorii și sistemele autorizate pot utiliza serviciile care se bazează pe AC.

Condiții preliminare

pentru a urmări Acest tutorial, va trebui să aveți acces la un server Debian 10 pentru a găzdui serviciul OpenVPN. Va trebui să configurați un utilizator non-root cu sudo înainte de a începe acest ghid. Puteți urmări Ghidul inițial de configurare a serverului Debian 10 pentru a configura un utilizator cu permisiunile corespunzătoare. Tutorialul comun va înființa, de asemenea, un firewall, presupus să rămână în întregul ghid.

Acest server va fi numit AC Server în acest tutorial.

Asigurați-vă că AC Serverul este un sistem autonom. Acesta va fi utilizat numai pentru a importa, semna și revoca aplicațiile de certificare. Nu ar trebui să gestioneze alte servicii și, în mod ideal, va fi offline sau complet închis când nu lucrați activ cu AC.

Notă: ultima secțiune a acestui tutorial este opțională dacă doriți să aflați mai multe despre semnătura și revocarea certificatelor. Dacă alegeți să urmați acești pași de practică, veți avea nevoie de un al doilea server Debian 10 sau puteți utiliza, de asemenea, propriul computer local Linux care rulează sub Debian sau Ubuntu sau distribuții derivate din unul sau altul.

Pasul 1 – Instalarea Easy-RSA

Prima sarcină a acestui tutorial este de a instala setul de scripturi easy-rsa pe serverul dvs. AC. easy-rsa este un instrument de gestionare a autorităților de certificare pe care îl veți folosi pentru a genera o cheie privată și un certificat de rădăcină publică, pe care îl veți folosi apoi pentru a semna cererile și serverele clienților care se vor construi pe AC .

Conectați-vă la serverul AC ca utilizator sudo non-root pe care l-ați creat în timpul pașilor de configurare inițială și rulați următoarele:

  • sudo apt update
  • sudo apt install easy-rsa

Vi se va solicita să descărcați pachetul și să îl instalați. Apăsați pe y pentru a confirma că doriți să instalați pachetul.

În acest moment, aveți tot ce aveți nevoie, instalat și gata de utilizare ușoară. În pasul următor, veți crea o infrastructură cheie cheie, atunci veți începe să vă construiți autoritatea de certificare.

Pasul 2 – Pregătirea unui director de infrastructură cheie de chei publice

acum pe care îl aveți Instalat easy-rsa, este timpul să creați un schelet al infrastructurii cheie (ICP) pe serverul AC. Asigurați-vă că sunteți încă conectat ca un utilizator non-root și creați un director easy-rsa Asigurați-vă că nu utilizați sudo pentru a rula una dintre următoarele comenzi, deoarece utilizatorul dvs. normal trebuie să se ocupe și Interacționați cu AC fără privilegii înalte.

  • mkdir ~/easy-rsa

Aceasta va crea un nou director numit easy-rsa în folderul de bază .Vom folosi acest director pentru a crea linkuri simbolice care indică fișierele easy-rsa pe care am instalat-o în pasul anterior. Aceste fișiere sunt amplasate în folderul /usr/share/easy-rsa de pe serverul AC.

Creați legăturile simbolice (symlinks) cu comanda ln:

  • ln -s /usr/share/easy-rsa/* ~/easy-rsa/

Notă: În timp ce alte ghiduri vă pot cere să copiați fișierele de pachete easy-rsa în dvs. Directorul ICP, acest tutorial adoptă o abordare a legăturii simbolice. Prin urmare, orice actualizare a pachetului easy-rsa va reflecta automat în scripturile ICP.

pentru a restricționa accesul la noul dvs. director. ICP, face sigur că numai proprietarul o poate accesa folosind comanda chmod:

  • chmod 700 /home/sammy/easy-rsa

În cele din urmă, inițializați ICP în easy-rsa

  • cd ~/easy-rsa
  • ./easyrsa init-pki
Output
init-pki complete; you may now create a CA or requests.Your newly created PKI dir is: /home/sammy/easy-rsa/pki

După finalizarea acestei secțiuni, Aveți un director care conține toate fișierele necesare pentru a crea o autoritate de certificare. În secțiunea următoare, veți crea cheia privată și certificatul public pentru AC.

Pasul 3 – Crearea unei autorități de certificare

Înainte de a putea crea cheia și privat Certificat de AC, trebuie să creați și să alimentați un fișier numit vars cu unele valori implicite. În primul rând, mergeți în directorul easy-rsa, apoi veți crea și modifica fișierul vars cu nano sau editorul dvs. de text preferat:

  • cd ~/easy-rsa
  • nano vars

Odată ce fișierul este deschis, lipiți Următoarele linii și modificați fiecare valoare evidențiată pentru a reflecta propriile informații despre organizație. Lucrul important aici este să aveți grijă să nu lăsați niciuna dintre valorile în alb:

~/easy-rsa/vars
set_var EASYRSA_REQ_COUNTRY "US"set_var EASYRSA_REQ_PROVINCE "NewYork"set_var EASYRSA_REQ_CITY "New York City"set_var EASYRSA_REQ_ORG "DigitalOcean"set_var EASYRSA_REQ_EMAIL "[email protected]"set_var EASYRSA_REQ_OU "Community"set_var EASYRSA_ALGO "ec"set_var EASYRSA_DIGEST "sha512"

când ați terminat, salvați și închideți fișierul. Dacă utilizați nano, puteți să o faceți apăsând CTRL+X, apoi Y și ENTER (intrare) pentru a confirma. Acum sunteți gata să vă construiți AC.

Pentru a crea perechea de radio publici și privată pentru autoritatea dvs. de certificare, executați din nou comanda ./easy-rsa, , de data aceasta cu

În ieșire, veți vedea câteva linii în versiunea opensSl și veți fi solicitați pentru a introduce o expresie de acces pentru perechea ta cheie. Asigurați-vă că alegeți o frază de acces solidă și scrieți-o într-un loc sigur. Va trebui să introduceți fraza de acces de fiecare dată când va trebui să interacționați cu CA, de exemplu pentru a semna sau revoca un certificat.

Veți fi, de asemenea, solicitat să confirmați numele comun (CN) al AC . Numele comun este numele folosit pentru a desemna această mașină în contextul autorității de certificare. Puteți introduce orice șir pentru numele comun al CA, dar, din motive de simplitate, apăsați ENTER pentru a accepta numele implicit.

Output
. . .Enter New CA Key Passphrase:Re-Enter New CA Key Passphrase:. . .Common Name (eg: your user, host, or server name) :CA creation complete and you may now import and sign cert requests.Your new CA certificate file for publishing is at:/home/sammy/easy-rsa/pki/ca.crt

Notă: Dacă Nu doriți ca o parolă să fie solicitată de fiecare dată când interacționați cu AC, puteți rula comanda build-ca cu nopass, ca aceasta :

  • ./easyrsa build-ca nopass

Aveți acum două fișiere importante – și ~/easy-rsa/pki/private/ca.key – care constituie componentele publice și private ale unei autorități de certificare.

  • ca.crt este dosarul certificatului public al Ca. Utilizatorii, serverele și clienții vor utiliza acest certificat pentru a verifica dacă fac parte din aceeași rețea de încredere. Fiecare utilizator și server care utilizează CA va trebui să aibă o copie a acestui fișier. Toate părțile se vor baza pe certificatul public pentru a se asigura că o persoană nu merge pentru un sistem și nu efectuează un atac de om în mijloc.

  • ca.key este cheia privată pe care CA le folosește pentru a semna cheile și certificatele de servere și clienți. Dacă un intrus accesează AC și, la rândul său, la fișierul dvs. ca.key, va trebui să vă distrugeți AC. De aceea, fișierul dvs. ca.key ar trebui să fie numai pe mașina dvs. AC și mașina dvs. AC trebuie să fie în mod ideal menținută offline atunci când nu semnează cererile de certificate, pentru a măsura securitatea suplimentară.

cu aceasta, AC este în vigoare și este gata să fie utilizat pentru a semna cererile de certificate și pentru a revoca certificatele.

Pasul 4 – Distribuiți Certificatul public al CA

AC este acum configurat și gata să acționeze ca o rădăcină de încredere pentru toate sistemele pe care doriți să le configurați pentru ao folosi. Puteți adăuga certificatul CA la serverele OpenVPN, servere web, servere de e-mail etc. Orice utilizator sau server care trebuie să verifice identitatea unui alt utilizator sau server din rețeaua dvs. ar trebui să aibă o copie a fișierului ca.crt importat în magazinul de certificate al sistemului său de operare.

Pentru a importa certificatul de curent alternativ de la un al doilea sistem Linux ca un alt server sau computer local, primiți mai întâi o copie a fișierului serverul dvs. AC. Puteți utiliza comanda pentru a scoate într-un terminal, apoi copiați-l și introduceți-l într-un fișier de pe cel de-al doilea computer care contează certificatul. De asemenea, puteți utiliza instrumente cum ar fi scp pentru a transfera fișierul între sisteme. Cu toate acestea, vom folosi o copie-pastă cu nano în acest pas, deoarece funcționează pe toate sistemele.

ca utilizator non rădăcină de pe serverul AC, executați Următoarea comandă:

  • cat ~/easy-rsa/pki/ca.crt

Va exista o ieșire în terminalul dvs. care va arăta ca următoarele:

Output
-----BEGIN CERTIFICATE-----MIIDSzCCAjOgAwIBAgIUcR9Crsv3FBEujrPZnZnU4nSb5TMwDQYJKoZIhvcNAQELBQAwFjEUMBIGA1UEAwwLRWFzeS1SU0EgQ0EwHhcNMjAwMzE4MDMxNjI2WhcNMzAw. . .. . .-----END CERTIFICATE-----

copiați totul, inclusiv liniile -----BEGIN CERTIFICATE----- și – -----END CERTIFICATE----- și liniuțele.

În cel de-al doilea sistem Linux, utilizați nano sau editorul dvs. de text preferat pentru a deschide un fișier numit /tmp/ca.crt:

  • nano /tmp/ca.crt

lipiți conținutul pe care tocmai l-ați copiat de pe serverul AC în editor. Când ați terminat, salvați și închideți fișierul. Dacă utilizați nano, puteți să o faceți apăsând CTRL+X, apoi Y și ENTER (intrare) pentru a confirma.

Acum că aveți o copie a fișierului ca.crt pe cel de-al doilea sistem Linux , este timpul să importăm certificatul în magazinul de certificate a sistemului său de operare.

pe sistemele bazate pe Debian și Ubuntu, rulați următoarele comenzi pentru a importa certificatul:

debian și Ubuntu Distribuții derivate
  • cp /tmp/ca.crt /usr/local/share/ca-certificates/
  • update-ca-certificates

Pentru a importa certificatul de server AC pe un sistem bazat pe CentOS, Fedora sau Redhat, copiați și lipiți conținutul fișierului din sistem Ca și în exemplul anterior într-un fișier numit /tmp/ca.crt. Apoi veți copia certificatul în /etc/pki/ca-trust/source/anchors/, apoi veți executa comanda update-ca-trust.

CentOS, Fedora, Redhat Distributions
  • sudo cp /tmp/ca.crt /etc/pki/ca-trust/source/anchors/
  • update-ca-trust

Al doilea sistem Linux va avea încredere acum la orice certificat care a fost semnat de serverul AC.

Notă: dacă tu Utilizați AC cu serverele web și dacă utilizați browserul Firefox, va trebui să importați direct certificatul ca.crt public în Firefox. Firefox nu utilizează magazinul local de sisteme de operare. Pentru mai multe detalii despre cum să adăugați certificatul dvs. CA la Firefox, consultați acest element de la Mozilla de la configurația CA (AC) în Firefox.

Dacă utilizați AC pentru a integra un mediu Windows sau computere desktop , vă rugăm să consultați documentația privind modul de utilizare certutil.exe pentru a instala un certificat CA.

Dacă utilizați acest tutorial ca o condiție prealabilă pentru un alt tutorial, Sau dacă știți cum să semnați și să revocați certificate, vă puteți opri aici. Dacă doriți să aflați mai multe despre modul de a semna și revoca certificatele, următoarea secțiune opțională va explica fiecare proces în detaliu.

(opțional) – Crearea cererilor de semnare a certificatelor și revocarea certificatelor

Următoarele secțiuni ale tutorialului sunt opționale. Dacă ați efectuat toți pașii anteriori, aveți o autoritate de certificare complet configurată și operațională pe care o puteți utiliza ca o condiție prealabilă pentru alte tutoriale. Puteți importa fișierul ca.crt de la CA și verificați rețeaua dvs. Certificatele care au fost semnate de CA.

Dacă doriți să vă antrenați și să aflați mai multe despre cum să semnați cererile de certificate și cum să revocați certificatele, aceste secțiuni opționale vor explica modul în care funcționează cele două procese.

(opțional) – Creation și semnătura unei cereri de certificat de practică

Acum că aveți o AC gata de utilizare, puteți să vă antrenați pentru a genera o cheie privată și o solicitare de certificat pentru a vă familiariza cu procesul de semnare și distribuție. /p>

Aplicație pentru semnătura certificatelor (CSR) constă din trei părți: o cheie publică, acreditări la sistemul de solicitare și o semnătură a cererii în sine, care este creată utilizând cheia privată a părții solicitante. Cheia privată va fi păstrată secretă și va fi utilizată pentru a cuantifica informațiile pe care le poate descifra oricine cu certificatul public semnat.

Următorii pași vor fi executați pe sistemul cel de-al doilea sistem Linux, Ubuntu sau o distribuție derivate din unul dintre aceste sisteme. Acesta poate fi un alt server de la distanță sau o mașină locală Linux, cum ar fi un laptop sau un computer desktop. Ca easy-rsa nu este disponibil în mod implicit pe toate sistemele, vom folosi instrumentul openssl pentru a crea o cheie privată și un certificat de practică.

este de obicei instalat în mod implicit pe majoritatea distribuțiilor Linux, dar doar pentru a fi sigur, rulați următoarele pe sistemul dvs.

  • sudo apt update
  • sudo apt install openssl

Când vi se solicită instalarea openssl, introduceți y pentru a continua pașii de instalare. Acum sunteți gata să creați o practică CSR cu .

Primul pas pe care trebuie să-l urmați pentru a crea un CSR este generarea unei chei private. Pentru a crea o cheie privată utilizând openssl, creați un director „practice-csr” și apoi generați o cheie în interiorul acestuia. Vom face această interogare Un server fictiv numit sammy-server, spre deosebire de crearea unui certificat care este utilizat pentru a identifica un utilizator sau alt AC.

  • mkdir ~/practice-csr
  • cd ~/practice-csr
  • openssl genrsa -out sammy-server.key
Output
Generating RSA private key, 2048 bit long modulus (2 primes). . .. . .e is 65537 (0x010001)

Acum că aveți o cheie privată, puteți crea un CSR corespunzător, din nou folosind . Tu va fi invitat să umple o serie de domenii cum ar fi țara, statul și orașul. Puteți introduce un . dacă doriți să lăsați un câmp gol, dar să fiți conștienți de faptul că dacă este real CSR, este mai bine să utilizați valorile corecte ale locației dvs. și ale organizației dvs.:

  • openssl req -new -key sammy-server.key -out sammy-server.req
Output
. . .-----Country Name (2 letter code) :USState or Province Name (full name) :New YorkLocality Name (eg, city) :New York CityOrganization Name (eg, company) :DigitalOceanOrganizational Unit Name (eg, section) :CommunityCommon Name (eg, your name or your server's hostname) :sammy-serverEmail Address :Please enter the following 'extra' attributesto be sent with your certificate requestA challenge password :An optional company name :

Dacă doriți să adăugați Automati Aceste valori ca parte a invocării decât prin intermediul promptului interactiv, puteți trece „argumentul -subj la openssl. Asigurați-vă că ați modificat valorile evidențiate pentru a se potrivi cu locul dvs. de practică, organizația dvs. și în numele serverului dvs.:

  • openssl req -new -key sammy-server.key -out server.req -subj \
  • /C=US/ST=New\ York/L=New\ York\ City/O=DigitalOcean/OU=Community/CN=sammy-server

Pentru a verifica conținutul unui a CSR, puteți juca într-un fișier de interogare cu openssl și examinați câmpurile din interiorul

  • openssl req -in sammy-server.req -noout -subject
Output
subject=C = US, ST = New York, L = New York City, O = DigitalOcean, OU = Community, CN = sammy-server

Odată ce sunteți mulțumit de obiectul solicitării certificatului dvs., copiați fișierul sammy-server.req pe serverul dvs. AC utilizând

În această etapă, ați generat o solicitare de semnare a certificatului pentru un server fictiv numit sammy-server. Într-un scenariu real, cererea poate proveni dintr-un server web de dezvoltare sau simulare care are nevoie de un certificat TLS pentru teste sau un server OpenVPN care necesită un certificat, astfel încât utilizatorii să se poată conecta la un VPN. În timpul următorului pas, vom trece la semnarea cererii de semnare a certificatului utilizând cheia privată a serverului AC.

(opțional) – Semnătura unui CSR

în anterior Pasul, ați creat o solicitare de certificat de practică și o cheie pentru un server fictiv. Ați copiat-o în directorul de pe serverul AC, emulând procesul pe care l-ați folosi dacă ați avut clienți sau servere reale care vă trimit solicitări CSR care trebuie semnate.

Continuarea scenariului fictiv, serverul AC trebuie să importe acum certificatul de practică și să-l semneze.Odată ce o cerere de certificare este validată de CA și Relaying la un server, clienții care au încredere în autoritatea de certificare vor fi, de asemenea, capabili să aibă încredere în certificatul nou emis.

cum vom funcționa. În cadrul ICP al AC AC În cazul în care utilitatea easy-rsa este disponibil, pașii de semnătură vor folosi utilitarul easy-rsa pentru facilitarea lucrurilor, în loc să utilizați direct așa cum am făcut în exemplul anterior.

Primul pas pentru a semna CSR fictiv este de a importa cererea de certificare utilizând scriptul easy-rsa

Output
. . .The request has been successfully imported with a short name of: sammy-serverYou may now use this name to perform signing operations on this request.

Acum puteți semna cererea care rulează scriptul easyrsa cu sign-req urmat de tipul de interogare și numele comun care este inclus în CSR. Tipul de interogare poate fi fie clientserver sau ca. Pe măsură ce antrenim cu un certificat pentru un server fictiv, asigurați-vă că utilizați tipul de interogare serveur:

  • ./easyrsa sign-req server sammy-server

În ieșire, vi se va cere să verificați dacă interogarea provine dintr-o sursă fiabilă. Introduceți yes apoi apăsați ENTER pentru a confirma:

Output
You are about to sign the following certificate.Please check over the details shown below for accuracy. Note that this requesthas not been cryptographically verified. Please be sure it came from a trustedsource or that you have verified the request checksum with the sender.Request subject, to be signed as a server certificate for 3650 days:subject= commonName = sammy-serverType the word 'yes' to continue, or any other input to abort. Confirm request details: yes. . .Certificate created at: /home/sammy/easy-rsa/pki/issued/sammy-server.crt

dacă Ați criptat cheia AC, vi se va cere parola în acest moment.

Odată ce acești pași sunt completați, ați semnat CSR sammy-server.req în utilizarea Cheia privată a serverului AC în . Fișierul rezultat ” conține cheia de criptare publică a serverului de practică, precum și o nouă semnătură a serverului AC. Scopul semnăturii este de a spune nimănui care are încredere în CA că poate avea încredere, de asemenea, certificatul de server de practică sammy-server

Dacă această interogare se referă la un server real Ca un server web sau un server VPN, ultimul pas de pe serverul AC ar fi distribuirea noului sammy-server.crt și ca.crt de la AC Server la serverul de la distanță care a făcut interogarea CSR:

În acest moment, ar trebui să puteți utiliza certificatul emis cu ceva ca un web Server, un VPN, un instrument de gestionare a configurației, un sistem de baze de date sau în scopuri de autentificare a clienților.

(opțional) – Revocarea unui certificat

Este posibil să trebuiască să revocați un certificat la împiedicați utilizarea unui utilizator sau a unui server. Laptopul unei persoane a fost furat, un server web a fost compromis sau un angajat sau un contractor a părăsit organizația dvs.

Pentru a revoca un certificat, procedura generală urmează următorii pași:

  1. Revocați certificatul cu comanda ./easyrsa revoke client_name
  2. Generați un nou LRC cu comanda ./easyrsa gen-crl
  3. transferați fișierul crl.pem Actualizat la server sau servere care depind de AC și pe aceste sisteme, copiați fișierul în directorul (director) cerute pentru programele Consultați-l.
  4. Reporniți toate serviciile care utilizează CA și fișierul LRC.

Puteți utiliza acest proces pentru a revoca în orice moment certificatele pe care le-ați emis anterior . Vom face detalii în detaliu fiecare pas în următoarele secțiuni, începând cu comanda iv id = „555506be”

revocați un certificat

pentru a revoca un certificat, Navigați la directorul easy-rsa de pe serverul AC:

  • cd ~/easy-rsa

următor, lansați scriptul easyrsa cu opțiunea revoke, urmat de numele clientului pe care doriți să îl revocați: În urma exemplerii de practică de mai sus, numele comun al certificatului este :

  • ./easyrsa revoke sammy-server

Vi se va cere să confirmați revocarea introducând yes :

Output
Please confirm you wish to revoke the certificate with the following subject:subject= commonName = sammy-serverType the word 'yes' to continue, or any other input to abort. Continue with revocation: yes. . .Revoking Certificate 8348B3F146A765581946040D5C4D590A. . .

Notă Valoarea evidențiată pe linia Revoking Certificate Această valoare este numărul unic de serie a certificatului care este reluat. Dacă doriți să revizuiți lista de revocare la ultimul pas din această secțiune pentru a verifica dacă certificatul este acolo, veți avea nevoie de această valoare.

După confirmarea acțiunii, AC va revoca certificatul. Cu toate acestea, sistemele la distanță care depind de CA nu au nicio modalitate de a verifica dacă certificatele au fost revocate.Utilizatorii și serverele vor putea fi întotdeauna în măsură să utilizeze certificatul până când lista certificatelor revocate CA (LCR) este distribuită tuturor sistemelor care depind de AC.

În etapa următoare, veți genera un LCR sau o actualizare un fișier crl.pem.

Generarea unei liste de revocare a certificatelor

Acum, dacă ați revocat un certificat, este important să actualizați lista de Certificatele revocate pe serverul dvs. AC. Odată ce ați actualizat lista de revocări, veți putea ști ce utilizatori și care sisteme au certificate valabile în AC.

Pentru a genera un LRC, rulați comanda easy-rsa cu opțiunea gen-crl în timp ce rămâneți în directorul ~/easy-rsa:

  • ./easyrsa gen-crl

Dacă ați folosit o expresie de acces atunci când creați fișierul ca.key, vi se va solicita să o introduceți. Comanda gen-crl va genera un fișier numit crl.pem, care conține lista actualizată a certificatelor revocate pentru această AC.

Apoi, va trebui să transferați fișierul actualizat crl.pem la toate serverele și clienții care depind de acest AC de fiecare dată când executați comanda gen-crl. În caz contrar, clienții și sistemele vor putea accesa întotdeauna serviciile și sistemele care utilizează CA, deoarece aceste servicii trebuie să cunoască starea de revocare a certificatului.

H4> Transfer o listă de revocare a certificatului acum Că ați generat un LCR pe serverul AC, trebuie să îl transferați la sistemele de la distanță care depind de AC. Pentru a transfera acest fișier pe servere, puteți utiliza comanda scp.

Notă: Acest tutorial explică modul de a genera și distribui manual un LCR. Deși există metode mai puternice și automate pentru distribuirea și verificarea listelor de revocare, cum ar fi capsulă OCSP, configurarea acestor metode depășește acest element.

Asigurați-vă că sunteți conectat la serverul dvs. AC ca a Utilizator non-root și efectuați următoarele operații, înlocuind numele IP sau DNS al serverului propriu în loc de :

că fișierul este pe sistemul la distanță, ultimul pas este actualizarea tuturor serviciilor cu noua copie a listei de revocare.

Actualizarea serviciilor care acceptă un LCR

Enumerarea pașilor de actualizare a serviciilor care utilizează fișierul crl.pem depășește domeniul de aplicare al acestui tutorial. În general, va trebui să copiați fișierul crl.pem în locația furnizată de serviciu și apoi reporniți-o utilizând systemctl.

Odată ce ați actualizat serviciile dvs. cu noul fișier crl.pem, serviciile dvs. vor putea respinge conexiunile client sau serverele care utilizează un certificat revocat.

Revizuirea și verificarea conținutului unui LCR

Dacă doriți să examinați un fișier CRL, de exemplu pentru a confirma o listă de certificate revocate, utilizați comanda Înainte de directorul dvs. easy-rsa de pe serverul AC:

  • cd ~/easy-rsa
  • openssl crl -in pki/crl.pem -noout -text

Puteți, de asemenea, să rulați această comandă pe orice Server sau sistem care are instrumentul openssl instalat cu o copie a fișierului crl.pem. De exemplu, dacă ați transferat fișierul crl.pem la al doilea sistem și doriți să verificați dacă certificatul de sammy-server este revocat, puteți Utilizați o comandă ca următoarele, prin introducerea numărului de serie pe care ați notat anterior când ați revocat certificatul în loc de numărul evidențiat aici:

  • openssl crl -in /tmp/crl.pem -noout -text |grep -A 1 8348B3F146A765581946040D5C4D590A
Output
Serial Number: 8348B3F146A765581946040D5C4D590A Revocation Date: Apr 1 20:48:02 2020 GMT

Observați modul în care comanda pentru a verifica numărul de serie unic pe care l-ați observat în etapa de revocare. Acum puteți verifica conținutul listei de revocare a certificatului pe orice sistem care se bazează pe acesta pentru a restricționa accesul la utilizatori și servicii.

Concluzie

În acest tutorial, ați creat un privat Autoritatea de certificare utilizând pachetul Easy-RSA pe un server independent Debian. Ați învățat cum funcționează modelul de încredere între părțile care se bazează pe autoritatea de certificare.De asemenea, ați creat și ați semnat o aplicație de semnătură a certificatelor (CSR) pentru un server de practică și apoi ați învățat să revocați un certificat. În cele din urmă, ați învățat cum să generați și să distribuiți o listă de revocare a certificatelor (RCP) pentru orice sistem care depinde de CA pentru a vă asigura că utilizatorii sau serverele care nu ar trebui să acceseze serviciile sunt împiedicate.

Puteți acum Livrați certificate pentru utilizatori și utilizați-le cu servicii precum OpenVPN. De asemenea, puteți utiliza CA pentru a configura serverele web de dezvoltare și simulare cu certificate pentru a vă asigura mediile de non-producție. Utilizarea unui AC cu certificatele TLS în timpul dezvoltării vă poate ajuta să vă asigurați că codul și mediile dvs. sunt la fel de mult posibil pentru mediul dvs. de producție.

Dacă doriți să aflați mai multe despre utilizarea OpenSSL, vizitați pagina noastră de principii esențiale OpenSSL : Lucrul cu certificatele SSL, cheile și CSR-urile private conțin o mulțime de informații suplimentare pentru a vă ajuta să vă familiarizați cu principiile fundamentale ale OpenSSL. P.>

Leave a comment

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