Popis certifikatov VPN: kaj lahko dokaže knjiga CA
Mapa na strežniku, knjiga CA, seznam preklicev in tabela sej odgovarjajo na različna vprašanja. Pri popisovanju identitet VPN jih imejte ločene.
Vaš prehod sprejme odjemalski certifikat, ki ga še nikoli ni videl, ker je tisto, s čimer je konfiguriran, zaupanja vreden izdajatelj, certifikat pa pride med rokovanjem. Tako naj bi protokol deloval in prav zato je seznam mape na strežniku slab popis. Izdajatelj ve, kaj je ustvaril, strežnik ve, kaj se je povezalo, stanje preklica pa ve, kaj je bilo umaknjeno. Popis, ki te tri zapise zmeša, na koncu trdi nekaj, česar ni rekel nobeden od njih.
Prehod zaupa izdajatelju, ne seznamu datotek
Preverjanje primerja predloženi certifikat z zaupanja vrednim sidrom, zato se identiteta, ki jo je isti izdajatelj ustvaril včeraj, poveže, ne da bi kdaj obstajala na disku strežnika. Za to ni treba ničesar kopirati in nihče tega ne sme odobriti ročno. Zato lastni zapisi strežnika opisujejo prihode, ne populacije identitet, ki bi lahko prišle.
Obratna vrzel je enako neprijetna. Mapa lahko vsebuje potekle certifikate, preklicane in identitete, izdane za naprave, ki nikoli niso bile nameščene. Štetje datotek odgovarja, koliko datotek je, kar je vprašanje, ki ga ni nihče postavil. Začnite namesto tega pri zapisih, ki nosijo pomen.
Štiri vprašanja, štirje različni zapisi
Vsaka vrsta zapisa dobro odgovarja na eno vprašanje in slabo na druga, zato poročilo, ki jih združuje, izgleda popolno, čeprav je na poseben način napačno. Spodnja tabela jih razvršča po vprašanju, ki ga rešujejo, ne po sistemu, ki jih ustvarja.
| Question you are answering | Where the answer lives | How quickly it changes | What it will never show |
|---|---|---|---|
| Was this identity ever created? | The issuer's issuance database | Only when something is issued | Whether the device still exists |
| Is a copy sitting on this host? | The paths you actually inspected | Whenever anyone copies files | Certificates that were never copied here |
| Has the issuer withdrawn it? | Published revocation state | When the issuer next publishes | Withdrawals that are not published yet |
| Is it connected right now? | The live session table | Continuously | Anything about past or future sessions |
Arhiv javnih certifikatov ni skrivnost, ker ne vsebuje zasebnih ključev, ni pa tudi za deljenje. Subjekti in imena naprav razkrivajo operativne podrobnosti in poročilo bi moralo ostati pri občinstvu, ki ga potrebuje. Zasebni ključi ostanejo popolnoma zunaj popisa, ker popis potrebuje metapodatke in ne poverilnic.
Izdajatelj in serijska številka sta edini stabilni ključ
Subjekti se reciklirajo in imena datotek se ponovno uporabljajo, zato lahko ime, ki je lani označevalo eno napravo, zdaj označuje drugo. Nobeno ni ključ in poročilo, zgrajeno na katerem koli od njih, bo na koncu združilo dve identiteti v eno vrstico.
Par izdajatelj in serijska številka enolično identificira certifikat in obe polji prihajata iz samega certifikata. Zapišite ju skupaj s subjektom, datumi veljavnosti, virom, od koder je kopija prišla, in odgovorno osebo ali napravo. Dodajte stanje preklica in namestitve kot ločeni polji z lastnimi časi opazovanja, ker certifikat znotraj svojega okna veljavnosti ni samodejno pooblaščen. Ti dve dejstvi živita v različnih sistemih in njuna združitev skriva primer, ko je bila identiteta umaknjena, medtem ko je njena datoteka še videti aktualna.
Berite en certifikat naenkrat
Nadomestni znak, ki se razteza čez mapo, ni paketni vmesnik in skriva, katera datoteka je dala kateri izhod. Berite metapodatke po posameznem certifikatu in stran preklica berite iz njegovega lastnega artefakta. Referenca OpenSSL x509 navaja polja, ki jih te možnosti izpišejo.
openssl x509 -in <cert>.pem -noout -issuer -serial -subject -dates -fingerprint -sha256
openssl crl -in <issuer>.crl -noout -text | head -n 40
Pri upravljani PKI Easy-RSA poizvedite bazo izdaje prek delovnega toka, ki ga orodje podpira namesto da bi predpostavljali razporeditev map, in izvirnike imejte samo za branje, dokler se popis sestavlja. Oblika knjige je dovolj pravilna, da lahko preštejete veljavne vnose in naštejete umaknjene, ne da bi bazo odprli ročno.
grep -c '^V' pki/index.txt
grep '^R' pki/index.txt | cut -f4,5
Popis, ki preživi naslednjo izdajo
Enkratni izvoz mape zastara v trenutku, ko je izdan naslednji certifikat, zato zgradite poročilo iz delovnega toka izdaje in pustite, da se posodablja kot del običajnega delovanja. To naredi poročilo tudi ponovljivo, kar je pomembno, ko se dva človeka ne strinjata o tem, kaj je bilo izdano.
Rezultat uporabite za odločitve o podaljšanju in umiku iz uporabe in ne kot vajo s preglednico. Brisanje lokalne kopije ne razveljavi oddaljenih kopij, ki že obstajajo. Umaknite identiteto prek konfiguriranega delovnega toka preklica in avtorizacije, nato umik zabeležite z njegovim datumom. Identiteta, ki je izginila s strežnika, a ji izdajatelj še zaupa, ni bila umaknjena iz uporabe, in prav ta razlika loči natančen popis od tistega, ki le pomirja.