Samopodpisan ali javni CA za VPN: kaj se v resnici spremeni
Samopodpisana in javna potrdila šifrirajo tunel VPN na enak način. Resnična razlika je, kdo jamči za strežnik in kdo mora zaupati tej trditvi.
Prispete na stran potrdil v nastavitvi VPN, vidite brezplačno samopodpisano možnost poleg plačanega javnega CA, in vprašanje zveni kot varnostna izbira. V resnici je izbira občinstva. Obe možnosti šifrirata tunel z istimi primitivnimi elementi, in obe postaneta brez vrednosti, če zasebni ključ izteče. Razlikuje ju to, kdo podaja trditev o identiteti strežnika in kdo je v položaju, da to trditev preveri.
Potrdilo opravlja dve nalogi, ki se zamenjujeta
Potrdilo poveže javni ključ z imenom, ključ pa opravlja delo šifriranja in podpisovanja. Podpis na potrdilu je ločena izjava: neka oblast je preverila, da ime pripada temu imetniku ključa. Samopodpisano potrdilo to izjavo poda o sebi, kar sploh ni trditev tretje strani.
Javna spletna mesta potrebujejo različico s tretjo stranjo, ker obiskovalci pridejo brez predhodnega odnosa in se zanašajo na shrambo zaupanja brskalnika. Odjemalec VPN ni tujec. Daste mu potrdilo CA ali pripnete potrdilo strežnika v profilu, ki ga namesti, zato preverjanje poteka točno proti oblasti, ki ste jo izbrali. Noben komercialni CA ne mora biti vključen, da bi to preverjanje kaj pomenilo.
Moč nastale seje izhaja iz velikosti ključa in šifrirnega nabora, ne od podpisnika. Zato je samopodpisano potrdilo "manj šifrirano" imenovati preprosto napačno; je manj široko jamčeno, kar je druga lastnost.
Kje javni CA zasluži svojo pristojbino
Najjasnejši primer je skrbniška stran. Če morajo sodelavci, pogodbeniki ali kdor koli brez pripravljenega profila odpreti spletni vmesnik strežnika VPN brez opozorila brskalnika, javno zaupanja vredno potrdilo odpravi to trenje. Brskalnik že zaupa podpisniku, zato ni ničesar za uvoziti in ničesar za razložiti.
To udobje ima stroške, ki jih je vredno imenovati pred nakupom. Podaljšanje mora biti avtomatizirano, sicer se mesto po razporedu pokvari, javna potrdila razkrijejo ime gostitelja v dnevnikih preglednosti potrdil, omejitve hitrosti izdajanja pa kaznujejo skript, ki preveč vneto poskuša znova. Nič od tega ni razlog za izogibanje javnemu CA, je pa operativno delo, ki ga zasebni CA premakne drugam.
Česar javno potrdilo ne počne, je overjanje vaših uporabnikov. Identiteta odjemalca je ločena odločitev, sprejeta s potrdili odjemalca, gesli ali drugim dejavnikom, in CA, ki podpiše strežnik, ne pove nič o tem, kdo se lahko poveže z njim.
Kje zasebni CA ustreza VPN
Za zasebni VPN z znanim naborom odjemalcev je upravljanje lastnega CA običajna izbira. CA ustvarite enkrat, podpišete potrdilo strežnika z imenom, ki ga bodo odjemalci uporabljali, in potrdilo CA razdelite v vsakem profilu. Vsak odjemalec nato preveri strežnik proti vaši oblasti, in nobena zunanja stran ne izve imena gostitelja.
Stroški so resnični, a omejeni. Brskalniki bodo opozorili, ko nekdo neposredno odpre skrbniško stran, ker brskalnik nima razloga zaupati vašemu CA. Razdeljevanje profilov postane del uvajanja, in menjava CA pomeni dotakniti se vsakega odjemalca. To so sprejemljive cene za storitev z desetimi ali petdesetimi znanimi uporabniki in boleče za javno končno točko s tisoči.
En pogoj naredi celotno ureditev veljavno: preverjanje se mora zgoditi. Odjemalec, nastavljen tako, da ignorira napake potrdil, sprejme kateri koli strežnik, ki predstavi kakršno koli potrdilo, zato jamstvo identitete izgine, medtem ko šifriranje ostane. Ta nastavitev je resnična slabost v večini zgodb o tem, da je "samopodpisano nevarno".
Zasebni ključ CA odloča, kaj boste lahko storili pozneje
Presenečenje običajno pride mesece pozneje, ko želite dodati napravo. Izdaja potrdila odjemalca zahteva zasebni ključ CA, prav tako izdelava seznama preklicev. Če ste podedovali strežnik, ki ima datoteke potrdila in ključa, ne pa ključa CA, ne morete podpisati ničesar novega. Vaše možnosti so znova zgraditi PKI in vsakemu odjemalcu dati novo potrdilo CA, ali preiti na overjanje z geslom, kar je drugačen varnostni model in ne obnovi izgubljenega.
Na istem območju živita dve manjši pasti. Skripti easy-rsa predpostavljajo, da stojite v imeniku, ki jih vsebuje, zato napaka o manjkajoči datoteki običajno pomeni napačno mesto in ne poškodovane namestitve. In zasnova samo s potrdili je povsem zakonita: lahko zahtevate potrdila odjemalcev brez vnaprej deljenega ključa, če ima vsak odjemalec enega in strežnik preveri verigo.
Izdajte eno potrdilo na napravo namesto enega skupnega potrdila odjemalca za celo ekipo. Izgubljen prenosnik vas potem stane ene preklice namesto ponovne izdaje za vse.
Preverite, kaj ste podedovali
Preden načrtujete kakršno koli spremembo, preberite potrdilo, ki ga že imate:
$ openssl x509 -in server.crt -noout -subject -issuer -dates
subject=CN = vpn.example.net
issuer=CN = vpn.example.net
notAfter=Nov 3 09:00:00 2027 GMT
$ openssl verify -CAfile ca.crt server.crt
server.crt: OK
Če je izdajatelj enak subjektu, je potrdilo samopodpisano, kar je oblikovalska izbira, ne napaka. Datumi vam povedo, kdaj bo podaljšanje postalo nečija težava, in uspešno preverjanje proti CA, ki ga nameravate dobaviti, potrdi, da veriga deluje, preden jo preizkusi en sam odjemalec.
Nato izbirajte glede na občinstvo in distribucijo: javni CA, ko morajo neznani brskalniki zaupati skrbniški strani, zasebni CA, ko vsak odjemalec prejme profil, ki ga nadzorujete. Nobenega odgovora ni bolj šifriranega od drugega.