Mbajeni çelësin e nënshkrimit të CA-së së OpenVPN jashtë /etc/openvpn
Hapësira e punës e CA-së lëshon identitete; shërbimi konsumon vetëm materialin e vendosur. Jepini secilës rol llogarinë, drejtorinë dhe kopjen rezervë të vet, dhe verifikoni të dyja.
Dy drejtori që në një tutorial duken njësoj bëjnë punë krejt të ndryshme. Njëra mban autoritetin e certifikimit: çelësin e tij privat, numëruesin e numrave serialë dhe regjistrin e gjithçkaje që ka nënshkruar. Tjetra mban atë që daemon-i ka nevojë për të nisur dhe për t’u shërbyer klientëve. T’i vendosësh të dyja në të njëjtin host nën të njëjtën llogari është i përshtatshëm për një pasdite dhe i kushtueshëm për pjesën tjetër të jetës së vendosjes, sepse daemon-i atëherë ecën pranë çelësit të vetëm që mund të krijojë çdo identitet që dëshiron.
Çfarë përmban hapësira e punës e CA-së
Një drejtori PKI është gjendje e lëshuesit, jo konfigurim. Përmban çelësin privat dhe certifikatën e CA-së, një skedar numri serial, një indeks të certifikatave të lëshuara dhe materialin për çdo identitet që është prodhuar prej tyre.
Nënshkrimi i një kërkese ndryshon atë gjendje, prandaj hapësira e punës i përket një llogarie të kontrolluar nga administratori në një host ku shërbimi VPN nuk ekzekutohet. Kushdo që mund të lexojë çelësin privat të CA-së mund të lëshojë një certifikatë që serveri do ta besojë, kështu që mbrojtja e çelësit është i gjithë modeli i besimit në një skedar të vetëm. Kopjimi i tij në një vend të dytë për të kursyer një hap krijon një gjë të dytë për të mbrojtur dhe një gjë të dytë për të harruar. Çdo nënshkrim gjithashtu rrit numrin serial dhe shton një zë në indeks, prandaj hapësira e punës është një kopje e gjendjes, jo një dosje skedarësh.
Certifikata publike e CA-së është ndryshe. Është menduar të shpërndahet, dhe është ajo që klientët dhe serverat përdorin për të verifikuar njëri-tjetrin.
Çfarë lexon daemon-i kur niset
Një server që punon konsumon një grup të vogël: certifikatën e vet, çelësin e vet privat, certifikatën e CA-së për të verifikuar partnerët dhe çdo material çelësi që kërkon mënyra e zgjedhur. I lexon ato shtigje në nisje dhe përsëri në ringarkim.
Pronësia duhet të vlerësohet ndaj njësisë që niset në të vërtetë, jo ndaj një shell-i root interaktiv. Sandbox-i i deklaruar mund ta bëjë një pjesë të sistemit të skedarëve vetëm-lexim ose të padukshme edhe kur një provë manuale si root ka sukses.
systemctl show -p User -p Group -p ReadOnlyPaths [email protected]
stat -c '%a %U:%G' /etc/openvpn/server/server.key
runuser -u openvpn -- test -r /etc/openvpn/server/server.key; echo $?Rreshti i tretë është ai që njerëzit e kapërcejnë. I kërkon llogarisë së vetë daemon-it nëse mund ta lexojë çelësin, dhe ky është versioni i vetëm i pyetjes që ka rëndësi pasi privilegjet janë hequr. Një dalje zero si root nuk thotë asgjë për atë që ndodh pas heqjes.
Vlen t’i ndash dy shtigjet e dështimit përpara se të ndryshosh çdo leje. Një dështim nënshkrimi tregon drejtorinë PKI, lejen e kërkimit në drejtoritë e saj prindërore dhe llogarinë që ekzekuton lëshuesin. Një dështim nisjeje tregon njësinë, drejtorinë e saj të punës dhe shtigjet e përmendura në konfigurimin e serverit. Bërja e gjithë pemës e lexueshme nga të gjithë nuk rregullon asnjërën dhe heq kufirin nga i cili varen të dyja.
Pse kopjimi i çelësit të CA-së në server dështon më vonë
Kopja zakonisht fillon si një veprim korrigjimi: dikush do të përtërijë një klient në hostin VPN, kështu që çelësi i CA-së përfundon në /etc/openvpn dhe përtëritja funksionon. Detyra e menjëhershme ka sukses, dhe kufiri ka humbur.
Pastaj serveri ruhet në kopje rezervë, dhe autoriteti i nënshkrimit bashkohet me kopjet. Një snimtim, një paketë mbështetjeje ose një kopje e drejtorisë së konfigurimit tani mbart aftësinë për të lëshuar identitete të besuara për sa kohë CA-ja është e vlefshme. Kushdo që e mban atë kopje mund të krijojë një certifikatë për çdo emër që serveri pranon, përfshirë emra që nuk u lëshuan kurrë. Regjistri i vetëm i atij lëshimi është ai që ata zgjedhin të mbajnë.
Rimëkëmbja nga ajo gjendje nuk është çështje fshirjeje skedari. Duhet të vendosësh nëse çelësi u ekspozua, ta rrotullosh CA-në nëse u ekspozua, dhe të rishpërndash besimin te çdo partner. Një hapësirë pune e veçantë shmang gjithë bisedën.
Llogari, drejtori, kopje rezervë
Jepini lëshuesit llogarinë dhe drejtorinë e shtëpisë të vet, të mbajtura larg hostit VPN kur është praktike. Jepini daemon-it një llogari tjetër, me akses leximi në materialin e vendosur dhe akses shkrimi në asgjë që lëshon certifikata. Vendosni duke kopjuar certifikatat publike nga jashtë dhe kurrë duke tërhequr gjendjen private të lëshuesit nga brenda. Bëni kopje rezervë të dy roleve veçmas, sepse ndjeshmëria dhe historitë e rikthimit të tyre ndryshojnë.
Pas një revokimi, përditësoni skedarin CRL që përmend konfigurimi i serverit, pastaj ringarkoni shërbimin që lidhjet e reja ta lexojnë. Dokumentacioni i Easy-RSA mbulon strukturën e hapësirës së punës dhe rrjedhën e nënshkrimit; rregullat e pronësisë përreth mbeten një vendim për hostin tuaj. Konfirmoni çfarë ngarkoi shërbimi me openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate në vend që të supozoni se ringarkimi e mori.
Një test që vërteton ndarjen
Kontrolloni rastin negativ, jo vetëm atë që funksionon. Nënshkruani një certifikatë nga llogaria e lëshuesit siç është projektuar, pastaj konfirmoni se e njëjta llogari nuk mund të nisë shërbimin ose të lexojë çelësin privat të serverit. Pastaj konfirmoni se llogaria e daemon-it nuk mund të lexojë çelësin privat të CA-së.
Këto tre kontrolle marrin disa minuta dhe i mbijetojnë ndryshimeve të stafit, sepse janë deklarata për lejet, jo për zakonin. Shkruani rezultatin me shtigjet dhe llogaritë që mbuloi, plus datën kur i ekzekutuat. Personi tjetër që trashëgon këtë vendosje do ta nxjerrë ndryshe kufirin përsëri nga një tutorial që nuk e kishte kurrë. Një regjistrim i datuar është gjithashtu ajo që e bën rishikimin tjetër të zgjasë minuta në vend të një pasdite.