Negdje u uputama za postavljanje cijeli se direktorij prekopira na svaki laptop jer je to bilo lakše nego odlučiti koji mu fajlovi pripadaju. Taj direktorij sadrži ca.key, a u trenutku kad stigne na drugi uređaj, certifikacijsko tijelo prestaje biti tijelo. Svaki vlasnik sada može izdavati identitete kojima će vjerovati ostatak mreže.

Zabunu vrijedi razriješiti jednom, jer dva fajla izgledaju slično, a rade suprotno.

Materijal za provjeru i materijal za potpisivanje

Klijentu treba javni certifikat CA da provjeri da je certifikat koji predstavi druga strana potpisalo to tijelo. To je zadatak provjere i ne zahtijeva nikakvu tajnu. Potpisivanje certifikata druge strane drugi je zadatak, izvodi se jednom i to onaj ko upravlja CA, privatnim ključem koji nikada ne napušta zaštićeno spremište. Razdvajanje tih dvaju zadataka cijela je poanta slanja dva fajla.

Zato ca.crt pripada u profil, a ca.key ne pripada nigdje blizu njega. Imena fajlova su konvencija, ne garancija, pa se tip mora pregledati, a ne zaključiti iz imena.

Arhitektura sa posrednim CA ili online servisom za izdavanje nije izuzetak od ovoga. To je standardni način da se sposobnost potpisivanja drži dalje od krajnjih točaka dok se certifikati uređaja izdaju u masi.

Šta klijent treba dokazati vlastitim ključem

Svaki uređaj dobiva vlastiti par ključeva i vlastiti certifikat, jednom potpisan od CA. Klijent predstavlja taj certifikat i dokazuje posjedovanje odgovarajućeg privatnog ključa, a server odlučuje hoće li ga prihvatiti. To je identitet koji se opoziva kad se laptop izgubi.

Kontrast je najvažniji nakon krađe. S identitetima po uređaju jedan izloženi klijent uklanja se opozivom ili uklanjanjem druge strane, a ostatak flote nastavlja raditi.

Procurjeli ključ tijela ne može se tako rješavati. Svaki certifikat koji je ikada potpisao ili mogao potpisati postaje sumnjiv, pa je odgovor zamjena povjerenja, a ne pojedinačni opoziv. To je projekt, a ne tiket.

FileRoleBelongs on
ca.crtPublic certificate used to verify signaturesEvery client profile
ca.keyPrivate key that issues certificatesProtected CA storage only
client key pairProves one device's identityThat device alone

Pročitajte fajl prije nego što ga bilo gdje kopirate

Dvije komande kažu kakav objekt držite, a da ne ispišu nikakvu tajnu. Prva navodi subjekt i CA oznaku na certifikatu; druga provjerava ključ i izvještava o njegovom tipu. Pokrenite obje na fajlovima u paketu koji ćete distribuirati. Sve što se potvrdi kao privatni ključ ne pripada u klijentski direktorij.

openssl x509 -in ca.crt -noout -subject -ext basicConstraints
openssl pkey -in ca.key -noout -check

Ako druga komanda uspije na fajlu koji stoji u klijentskom paketu, zaustavite se i tretirajte paket kao kompromitiran. Izlaz koji kaže da je ključ valjan kaže i da je prisutan, a prisutnost je cijeli problem.

Obratite pažnju i na drugi smjer: klijentski profil legitimno sadrži vlastiti privatni ključ tog klijenta. Brisanje svakog pronađenog ključa prekida vezu ne popravljajući ništa, pa se objekt mora identificirati prije uklanjanja.

Obuzdavanje ključa koji ste već distribuirali

Ne pretpostavljajte da brisanje lokalne kopije poništava izloženost. Svako ko je držao fajl mogao ga je kopirati, a sigurna je pretpostavka da jest. Slijedite incidentni proces operatera i zamijenite sidro povjerenja, ponovno izdajući certifikate uređaja pod novim CA.

Zatim promijenite pakiranje koje je stvorilo problem. Šaljite popis direktorija s izričitim spiskom dopuštenih fajlova, držite CA ključ na mašini koja se nikada ne pridružuje klijentskoj floti i zabilježite koji sistem ga čuva.

Ako tijelo mora izdavati često, premjestite potpisivanje iza servisa ili posrednog tijela s uskim obuhvatom i kratkom valjanošću. Tako buduća greška izlaže dio izdavanja, a ne korijen povjerenja cijele instalacije.

Povezani članci