Operaator saadab aadressi ja kasutajanime ning klient küsib CA-faili, sertifikaati ja võtit. Nende kolme kohapeal genereerimine tundub ilmse järgmise sammuna. Selle tulemuseks on sertifikaat, mida usub ainult sinu enda masin. Serveri usaldus on ankurdunud CA-sse, mida sina ei kontrolli, seega käepigistus lõpeb enne, kui see algab.

Usaldus elab serveris, mitte sinu profiilis

Sertifikaadiga autentimine on võrdlemine. Klient esitab sertifikaadi; lüüs kontrollib, kas selle allkirjastas üks selle konfiguratsioonis olev CA.

Sinu profiil nimetab CA-faili, mida klient peaks serveri kontrollimiseks kasutama. See ei saa nimetada CA-d, mida server peaks kasutama sinu kontrollimiseks. See pool konfiguratsioonist ei ole sinu oma.

Ise tehtud sertifikaat ebaõnnestub selles võrdluses ka siis, kui see on tehniliselt täiuslik. Sellel on kehtiv allkiri, subjekt ja kuupäevad, kuid väljaandja on CA, millest lüüs pole kunagi kuulnud. Viga ilmub käepigistuse ajal, pärast seda, kui server on juba sertifikaati küsinud. Miski kliendiprofiilis ei saa vastust muuta.

Miks iseallkirjastatud sertifikaat ei saa seda asendada

Iseallkirjastatud sertifikaat on allkirjastatud omaenda võtmega. Allkiri kontrollitakse sama faili vastu, mis teeb selle isekonsistendiks ja kasutuks kellegi teise lüüsi mandaadina.

Lüüs ei küsi, kas sertifikaat on sisemiselt kooskõlas. Ta küsib, kas usaldusväärne väljaandja selle allkirjastas.

Seetõttu on veateated segadust tekitavad. Klient võib teatada kontrollimise ebaõnnestumisest, mis kõlab serveri probleemina, samal ajal kui server logib tundmatut väljaandjat. Mõlemad kirjeldavad sama mittevastavust vastandlikest otstest.

CSR-i tee hoiab sinu privaatvõtit

Suurema osa tööst saad ikka kohapeal ära teha. Genereeri võtmepaar, ehita avaliku poole ümber sertifikaadi allkirjastamise taotlus ja saada see taotlus operaatorile. Masinast lahkub ainult taotlus. Privaatne pool jääb sinna, kus sa selle genereerisid.

openssl req -new -newkey rsa:3072 -nodes -keyout client.key -out client.csr -subj "/CN=laptop-01"

Operaator allkirjastab taotluse oma CA-ga ja tagastab sertifikaadi. Sinu privaatvõti ei reisinud kunagi ning tulemus aheldub ankrusse, mida lüüs usaldab.

Hallatavad teenused jätavad CSR-i sageli vahele ja väljastavad kogu komplekti. See on mõistlik vahetus, kui sama teenusepakkuja juba lõpetab tunnelit ja hoiab CA-d. Võtme hoiustamine ei parane selle hoidmisega, sest pakkuja võib igal hetkel uue vermida.

Komplektid imporditakse, mitte ei installita

Turvanimeliste nimedega tarnijakomplektid on sageli OpenVPN-i profiilid. Need sisaldavad konfiguratsiooni ja mõnikord sertifikaate ning ei installi midagi. Impordi fail klienti, mis seda protokolli räägib, ja ühendus on seadistatud.

Käsitsemisreegel tuleneb sisust. Kui profiil sisaldab privaatvõtit, on see mandaat ja väärib sama hoolt nagu parool: ei e-posti, ei hoidlat, ei jagatud allalaadimiskausta. Kui operaator tarnib ca.crt, client.crt ja client.key eraldi, hoia neid koos piiravate õigustega ja suuna profiil nende poole.

Lisa kontrollid, mille operaator võis vahele jätta

Ruuteri genereeritud profiilil puudub mõnikord partneri kontroll. remote-cert-tls server nõuab, et partneri sertifikaadil oleks serveri autentimise otstarve, nii et kliendisertifikaati ei saa serverina uuesti esitada. See üks rida on väike muudatus selge põhjendusega.

verify-x509-name läheb kaugemale, kui operaator saab nimetada oodatava subjekti või SAN-i. Mõlemad on profiilile väikesed täiendused ja mõlemad on kaitstavad. Uuri, mida said, enne kui selle impordid.

openssl x509 -in client.crt -noout -issuer -subject -dates
openssl verify -CAfile ca.crt client.crt

Kontrollimise seaded ei ole katkise ahela parandus. Kui väljaandja on vale, on vastuseks sertifikaat õigest CA-st, mitte lipp, mis kontrollimise välja lülitab. Kontrollimise väljalülitamine muudab autentimise ebaõnnestumise avastamata ebaõnnestumiseks.

Küsi ühte komplekti: asutuse sertifikaat PEM-vormingus, selle asutuse allkirjastatud kliendisertifikaat, võti, mille sa genereerisid või mis saabus kanali kaudu, mida usaldad, ja täpne serverinimi, mida sertifikaat peaks esitama. Märgi aegumiskuupäev samasse sõnumisse, sest aegunud sertifikaat näeb kuude pärast välja nagu võrgu rike.

Seotud artiklid