Ajiyar CA mai zaman kanta: rumbun ajiya mai ɓoyewa ko ajiyar maɓallin HSM
Rumbun ajiya mai ɓoyewa ko maɓalli da HSM ya naɗe: yadda ake dawo da kowanne tsarin ajiyar CA na VPN, abin da ya kamata ya ƙunsa, da wace gazawa za ka iya tsira da gaske.
Tambayar da ke yanke mafi yawan wannan ba ita ce yadda kake ɓoye rumbun ajiyar ba. Ita ce ko maɓallin CA na sirrinka zai iya barin kwano nasa kwata-kwata. Idan maɓallin fayil ne, za ka iya kwafe dukan babban fayil ɗin CA cikin ɓoyayyen blok ɗaya ka gama cikin mintuna. Idan yana zaune a cikin HSM ko tokan da ke nuna maɓallin a matsayin wanda ba za a iya fitar da shi ba, wannan kwafin babu shi, kuma shirinka ya koma shiri game da hanyar naɗewa da dawo da mai sayarwa. Dukan tsarin biyu suna aiki, suna gazawa daban, kuma gazawar da za ka iya tsira ita ce wadda ta cancanci yin ƙira a kanta.
Inda tsarin ajiya biyu suka rabu
Tsarin A kwafin babban fayil ne. CA irin ta OpenSSL babban fayil ne na aiki, ba takardar shaida ɗaya ba: ca.key ko cakey.pem, ca.crt, bayanan fitarwa, ƙididdigar serial da crlnumber, da openssl.cnf. Hatimi wannan babban fayil da sifiri mai daidaituwa, matsa sakamakon zuwa wata hanya ta biyu, kuma dawo da shi na nufin buɗewa, tabbatarwa, sa hannu. Duk abin da mai fitarwa yake buƙata yana tafiya tare, har da makonni na tarihin sokewa da babu wanda ya tuna ya rubuta.
Tsarin B riƙe maɓalli ne. Ana ƙirƙirar maɓallin cikin injin PKCS#11 sannan a nuna shi a matsayin wanda ba za a fitar da shi ba; injin na iya naɗe shi don ajiya, amma babu wani tsari da ke karanta ainihin baytukan. Ajiyarka tana zama abubuwa biyu da dole a dawo da su cikin tsari daidai: ɓoyayyen maɓalli da aka naɗe wanda iyalin injin ɗin kaɗai zai iya buɗewa, da kuma kwafin da aka saba na bayanai, saiti da takardun shaida.
| Attribute | Encrypted archive | HSM key backup |
|---|---|---|
| What you store | one encrypted file | wrapped blob plus CA records |
| Who can restore it | anyone holding the passphrase | holder of the module and the blob, often vendor support |
| If a copy leaks | attacker with the passphrase becomes the CA | blob is inert without the matching module |
| What usually breaks it | forgotten passphrase, one damaged copy | replacement module rejects the blob, contract gap |
Kwatancen ba ya taɓa game da wane tsari ya fi ƙarfi a misali. Yana game da wanda ƙungiyarka za ta iya dawo da shi da ƙarfe 2 na dare tare da mutanen da suke farke da gaske. Rumbun da babu wanda zai iya buɗewa da ɓoyayyen HSM da babu wanda ya gwada su ma banza ne. Bambanci shi ne gazawar rumbun tana bayyana a cikin manajan kalmar sirri, kuma gazawar HSM tana ɓoyewa a cikin yarjejeniyar tallafi.
Abin da kowace ajiyar CA dole ta ƙunsa
Dukan tsarin biyu suna buƙatar tarin bayanai ɗaya. A cikin CA ta OpenSSL waɗannan fayilolin su ne index.txt da layi ɗaya ga kowace takardar shaidar da aka fitar wanda ke rufe matsayi, ƙarewa, serial da batun, sannan index.txt.attr, serial da ke riƙe serial na gaba da za a fitar, crlnumber da ke riƙe lambar CRL ta gaba, da openssl.cnf tare da dir, policy da default_days waɗanda CA ɗinka ke aiki da su da gaske. Littafin openssl-ca yana bayyana abin da kowanne daga waɗannan ƙididdiga ke sarrafawa. easy-rsa yana ajiye bayanan nan a ƙarƙashin pki/, tare da fayil ɗin vars da ke yanke filayen takardar shaidar.
Maɓalli da takardar shaida sune sassan da ba za ka iya sake ginawa ba. Bayanan sune sashen da ba za ka iya sake gina su daga ƙwaƙwalwa ba. Tsallake index.txt har yanzu yana barin ka iya sa hannu a sababbin takardu na shaida, kuma wannan ita ce tarko daidai: za ka gano babu shi a karon farko da abokin ciniki ya tambaya ko an soke takardar shaida. Rubuta sawun yatsa na CA a wajen ajiyar, domin a kwatanta dawo da shi da ƙimar da ka amince da ita ba da fayil ɗin da ka dawo da shi yanzu ba.
openssl x509 -in ca.crt -noout -fingerprint -sha256
tar czf ca-state.tar.gz ca.crt ca.key index.txt* serial* crlnumber* openssl.cnf
openssl enc -aes-256-cbc -pbkdf2 -iter 200000 -salt -in ca-state.tar.gz -out ca-state.tar.gz.enc
openssl ca -config openssl.cnf -gencrl -out crl.pem
Gwaje-gwajen dawo da ba sa raba mai fitarwa
CA biyu masu rai da batun ɗaya da maɓalli ɗaya suna kama da juna ga kowane abokin ciniki da ya amince da na asali. CRL biyu masu lamba ɗaya amma abun ciki daban shine yadda abokan ciniki ke karɓar takardar shaidar da ka soke a hankali. Gudanar da dawo da shi a kan mai masauki da ba shi da hanyar zuwa abokan cinikinka, ko a cikin VM na yarjejeniya ɗaya, kuma kada ka taɓa wallafa CRL ɗin da gwajin ya samar.
Gwajin da ke tabbatar kawai an buɗe rumbun ba ya tabbatar da komai game da fitarwa. Tsarin da ke da muhimmanci: kwatanta sawun yatsa na ca.crt da aka dawo da shi da ƙimar da ka rubuta, tabbatar serial ɗin ya dace da abin da takardar shaidarka ta ƙarshe da ka fitar ke nunawa, fitar da takardar shaida ɗaya don CN na yarjejeniya ɗaya ka kalli index.txt ya sami layi, sannan soke wannan takardar ka sake ƙirƙirar CRL.
openssl verify -CAfile ca.crt -CRLfile crl.pem -crl_check client.crt
openssl crl -in crl.pem -noout -lastupdate -nextupdate
Da HSM wannan gwajin yana tafiya ta injin ɗin. Buɗe ɓoyayyen a cikin na'urar maye gurbin, tabbatar takardar shaidar CA da injin ɗin ke bayarwa ta dace da sawun yatsanka da aka rubuta, sannan ka bar ta ta sa hannu. Idan injin ɗin yana da ajiyar abubuwa nasa, naɗewar dole ta rufe abin maɓallin da alamar sa, domin dawo da maɓallin a ƙarƙashin wata alama yana karya saitin da ke nuni gare shi.
Hanyoyin gazawa da ke yanke shawara
Gazawa biyar suna bayyana mafi yawan asarar gaske. Kalmar sirrin ajiya da aka manta ba tare da kwafi mai zaman kansa na sirrin ba tana mai da rumbun tubali. Kwafi ɗaya a faifai ɗaya yana mutuwa tare da wancan faifan, kuma jimillar dubawa ba ta taɓa gaya maka ko buɗewa yana aiki har yanzu. Takardun shaida da aka soke bayan ranar ajiya suna sake nuna inganci bayan dawo da su, don haka tazarar ajiyarka ita ce kuma makahon wurinka na sokewa. Dawo da ƙididdigar serial tsohuwa yana sake amfani da lambobin serial kuma yana rikita ajiyar ajiya da binciken CRL da aka danganta da serial. HSM na maye gurbin da ya ƙi ɓoyayyen da aka naɗe yana mai da canjin kayan aiki cikakkiyar sake fitarwa.
Tsarin A yana magance huɗun farko cikin muni amma a bayyane. Tsarin B yana magance su da kyau har sai injin ɗin ko tsarin mai sayarwa ya gaza. Idan maɓallanka ana iya fitar da su kuma ƙungiyar ƙarama ce, ɓoyayyen rumbun shine zaɓi na gaskiya, tare da tallafin hanyoyi biyu da rubutaccen tsarin kalmar sirri. Idan maɓallin ba za a iya fitar da shi ba ba ka da wani zaɓi kwata-kwata, kuma aikin ya koma tabbatar da hanyar dawowa ta mai sayarwa kafin ranar da za ka buƙace ta.
Zaɓar tsarin da tsara lokacinsa
Sharuddan uku suna yanke shawarar. Za a iya fitar da maɓallin ba tare da tsarin mai sayarwa ba? Dole dawo da shi ya sauka a kan kayan aikin da ba ka mallaka ba tukuna? Har yaushe fitarwa zai iya tsayawa yayin da kake jayayya da tallafi? Amsa waɗannan uku kuma an yanke tsarin; duk abin da ya biyo baya tsari ne na lokaci.
Ɗauki ajiya bayan kowace bikin sa hannu da kafin kowane canjin saiti, domin saitin wani ɓangare ne na yanayin. Riƙe kwafi biyu a kan hanyoyi daban-daban a wurare daban-daban, ɗaya daga cikinsu a wajen layi, kuma riƙe sirrin buɗewa a wani yankin amincewa daban da kwafin. Rubuta ranar dawowa ta ƙarshe da ta yi nasara a kan rikodin ajiyar. Ajiyar da ba a taɓa dawo da ita ba hasashe ne, ba sarrafawa ba.
Kafin ka rufe tikit ɗin, tabbatar da waɗannan abubuwa biyar:
- An rubuta sawun yatsa na ca.crt a wani wuri a wajen ajiyar.
- index.txt, serial, crlnumber da openssl.cnf duk suna cikin rumbun ko tarin blok.
- An rubuta yadda ake riƙe kalmar sirri ko naɗaɗɗen maɓalli, kuma wani ne ba mai rumbun ba ke riƙe da shi.
- An gwada dawo da shi a kan mai masauki keɓaɓɓe da fitarwa ɗaya da sokewa ɗaya.
- An yarda da tazarar sokewar da tazarar ajiyarka ke nunawa a rubuce ko an rage ta.