Prečo kopírovanie ca.key do každého VPN klienta ničí CA
Klient overuje verejný certifikát CA; kľúč, ktorý podpisuje, nikdy nepotrebuje. Kopírovanie ca.key do každého zariadenia odovzdáva právo vydávať každému, kto si vezme jednu kópiu.
Niekde v pokynoch na inštaláciu sa celý adresár skopíruje na každý notebook, pretože to bolo jednoduchšie než rozhodnúť, ktoré súbory tam patria. Ten adresár obsahuje ca.key a vo chvíli, keď sa dostane na druhé zariadenie, certifikačná autorita prestáva byť autoritou. Každý držiteľ teraz môže vydávať identity, ktorým bude dôverovať zvyšok siete.
To zmätok stojí za jedno vyjasnenie, pretože oba súbory vyzerajú podobne a robia opačné veci.
Overovací materiál a podpisovací materiál
Klient potrebuje verejný certifikát CA, aby overil, že certifikát predložený protistranou podpísala táto autorita. Je to úloha overenia a nepotrebuje žiadne tajomstvo. Podpísanie certifikátu protistrany je iná úloha, ktorú raz vykoná ten, kto CA prevádzkuje, súkromným kľúčom, ktorý nikdy neopustí svoje chránené úložisko. Držať tieto dve úlohy oddelené je celý zmysel dodávania dvoch súborov.
Takže ca.crt patrí do profilu a ca.key nepatrí nikam blízko neho. Názvy súborov sú konvencia, nie záruka, a preto sa typ musí prezrieť, nie odvodiť z názvu.
Architektúra s medziľahlou CA alebo online službou vydávania nie je výnimkou. Je to štandardný spôsob, ako držať schopnosť podpisovať ďalej od koncových bodov a pritom vydávať certifikáty zariadení vo veľkom.
Čo má klient preukázať vlastným kľúčom
Každé zariadenie dostane vlastný pár kľúčov a vlastný certifikát, raz podpísaný CA. Klient predloží tento certifikát a preukáže vlastníctvo zodpovedajúceho súkromného kľúča, a server rozhodne, či ho prijme. To je identita, ktorá sa odvolá, keď sa notebook stratí.
Kontrast je najdôležitejší po krádeži. S identitami pre jednotlivé zariadenia sa jeden odhalený klient odstráni odvolaním alebo odstránením protistrany a zvyšok flotily funguje ďalej.
S uniknutým kľúčom autority sa tak postupovať nedá. Každý certifikát, ktorý kedy podpísal alebo mohol podpísať, sa stáva podozrivým, takže reakciou je výmena dôvery, nie jedno odvolanie. To je projekt, nie tiket.
| File | Role | Belongs on |
|---|---|---|
ca.crt | Public certificate used to verify signatures | Every client profile |
ca.key | Private key that issues certificates | Protected CA storage only |
| client key pair | Proves one device's identity | That device alone |
Prečítajte si súbor, než ho niekam skopírujete
Dva príkazy vám povedia, aký druh objektu držíte, bez toho aby vytlačili akékoľvek tajomstvo. Prvý uvádza subjekt a príznak CA na certifikáte; druhý overí kľúč a oznámi jeho typ. Spustite oba na súboroch v balíku, ktorý sa chystáte distribuovať. Čokoľvek, čo sa overí ako súkromný kľúč, do klientskeho adresára nepatrí.
openssl x509 -in ca.crt -noout -subject -ext basicConstraints openssl pkey -in ca.key -noout -check
Ak druhý príkaz uspeje na súbore, ktorý leží v klientskom balíku, zastavte sa a považujte balík za kompromitovaný. Výstup, ktorý hovorí, že kľúč je platný, hovorí aj to, že je prítomný, a prítomnosť je celý problém.
Všimnite si aj opačný smer: klientsky profil oprávnene obsahuje vlastný súkromný kľúč tohto klienta. Vymazanie každého nájdeného kľúča preruší spojenie bez toho, aby čokoľvek zlepšilo, takže objekt treba pred odstránením identifikovať.
Zvládnutie kľúča, ktorý ste už distribuovali
Nepredpokladajte, že vymazanie lokálnej kópie odvráti expozíciu. Ktokoľvek, kto mal súbor, ho mohol skopírovať, a bezpečný predpoklad je, že to urobil. Postupujte podľa incidentového procesu prevádzkovateľa a vymeňte kotvu dôvery, pričom certifikáty zariadení znova vydáte pod novou CA.
Potom zmeňte balenie, ktoré problém vytvorilo. Posielajte výpis adresára s výslovným zoznamom povolených súborov, držte kľúč CA na stroji, ktorý sa nikdy nepripojí ku klientskej flotile, a zaznamenajte, ktorý systém ho uchováva.
Ak musí autorita vydávať často, presuňte podpisovanie za službu alebo medziľahlú autoritu s úzkym rozsahom a krátkou platnosťou. Budúca chyba tak odhalí časť vydávania, nie koreň dôvery celého nasadenia.