Мунун көбүн чечкен суроо архивди кантип шифрлейсиз дегенде эмес. Ал — CA жеке ачкычыңыз өз контейнеринен такыр чыга алабы. Эгер ачкыч файл болсо, бүт CA каталогун бир шифрленген блокко көчүрүп, бир нече мүнөттө бүтүрө аласыз. Эгер ал HSM ичинде же ачкычты алууга болбойт деп белгилеген токенде жашаса, андай көчүрмө жок, жана планыңыз жеткирүүчүнүн ороп калыбына келтирүү жол-жобосу тууралуу планга айланат. Эки модель тең иштейт, ар башкача иштен чыгат, жана сиз аман кала алган бузулуш — долбоорлоого татыктуу ошол.

Эки камдык модель кайда бөлүнөт

A модели — каталог көчүрмөсү. OpenSSL стилиндеги CA — жумушчу каталог, бир сертификат эмес: ca.key же cakey.pem, ca.crt, чыгаруу маалымат базасы, serial жана crlnumber эсептегичтери жана openssl.cnf. Ошол каталогду симметриялык шифр менен бекитиңиз, натыйжаны экинчи алып жүрүүчүгө көчүрүңүз, ал эми калыбына келтирүү — ачуу, текшерүү, кол коюу. Чыгаруучуга керектүүнүн баары чогуу жүрөт, анын ичинде эч ким жазганын эстебеген жумалар бою жокко чыгаруу тарыхы.

B модели — ачкычты кармоо. Ачкыч PKCS#11 модулунун ичинде жаралат жана алынбайт деп белгиленет; модуль аны камдык үчүн ороп алат, бирок эч бир процесс эч качан чийки байттарды окубайт. Ошондо сиздин камдык көчүрмөңүз туура тартипте калыбына келтирилиши керек болгон эки артефакт: ошол модулдар үй-бүлөсү гана ача алган оролгон ачкыч блогы, кошумча маалымат базасынын, конфигурациянын жана сертификаттардын жөнөкөй көчүрмөсү.

AttributeEncrypted archiveHSM key backup
What you storeone encrypted filewrapped blob plus CA records
Who can restore itanyone holding the passphraseholder of the module and the blob, often vendor support
If a copy leaksattacker with the passphrase becomes the CAblob is inert without the matching module
What usually breaks itforgotten passphrase, one damaged copyreplacement module rejects the blob, contract gap

Салыштыруу эч качан кайсы модель абстракттуу түрдө күчтүүрөөк деген жөнүндө эмес. Ал сиздин командаңыз түнкү саат 2де чындап ойгоо турган адамдар менен кайсынысын калыбына келтире алары жөнүндө. Эч ким чече албаган архив жана эч ким сынабаган HSM блогу бирдей пайдасыз. Айырма — архивдин бузулушу пароль менеджеринде көрүнөт, ал эми HSMдин бузулушу колдоо келишиминде жашырылат.

Ар бир CA камдык көчүрмөсү эмнени камтышы керек

Эки модель тең бирдей жазуулар топтомун талап кылат. OpenSSL CAда бул файлдар: index.txt — ар бир чыгарылган сертификатка бир сап, абалы, мөөнөтү, serial жана субъекти камтылат, андан кийин index.txt.attr, кийинки чыгарылуучу serialды кармаган serial, кийинки CRL номерин кармаган crlnumber жана CAңыз чындап иштеген dir, policy жана default_days бар openssl.cnf. openssl-ca колдонмосу ошол эсептегичтердин ар бири эмнени башкарарын түшүндүрөт. easy-rsa ошол эле маалыматты pki/ астында кармайт, ал эми vars файлы сертификаттын талааларын аныктайт.

Ачкыч жана сертификат — кайра кура албаган бөлүктөр. Маалымат базасы — эстен калыбына келтире албаган бөлүк. index.txtти өткөрүп жиберүү сизге дагы эле жаңы сертификаттарга кол коюуга мүмкүндүк берет, жана бул дал тузак: кардар сертификаттын күчү жоюлдубу деп сураганда анын жоктугун билип каласыз. CAнын манжа изин камдыктан тышкары жазып коюңуз, ошондо калыбына келтирүү сиз ишенген маани менен салыштырылат, жаңы эле калыбына келтирген файл менен эмес.

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

Чыгаруучуну бутактабаган калыбына келтирүү сынактары

Бирдей субъекти жана бирдей ачкычы бар эки иштеп турган CA түпнускага ишенген ар бир кардарга бирдей көрүнөт. Бирдей номери бар, бирок мазмуну башка эки CRL — кардарлардын сиз жок кылган сертификатты үнсүз кабыл алышынын жолу. Калыбына келтирүүнү кардарларыңызга маршруту жок хостто же бир жолку VMде иштетиңиз жана сынак жараткан CRLды эч качан жарыялабаңыз.

Архивдин ачыларын гана далилдеген сынак чыгаруу жөнүндө эч нерсе далилдебейт. Маанилүү ырааттуулук: калыбына келтирилген ca.crt манжа изин жазган мааниңиз менен салыштырыңыз, serial акыркы чыгарган сертификатыңыз билдирген мааниге дал келерин ырастаңыз, бир жолку CN үчүн бир сертификат чыгарыңыз жана index.txt сап кошконун көрүңүз, андан кийин ошол сертификаттын күчүн жоюп, CRLды кайра жаратыңыз.

openssl verify -CAfile ca.crt -CRLfile crl.pem -crl_check client.crt
openssl crl -in crl.pem -noout -lastupdate -nextupdate

HSM менен ошол эле сынак модулдан өтөт. Блокту алмаштыруучу түзмөктө ачыңыз, модуль билдирген CA сертификаты жазган манжа изиңизге дал келерин ырастаңыз, ошондон кийин гана кол коюуга уруксат бериңиз. Эгер модулдун өз нерсе кампасы болсо, оролуу ачкыч нерсесин жана анын белгисин камтышы керек, анткени ачкычты башка белги астында калыбына келтирүү ага шилтеме кылган конфигурацияны бузат.

Тандоону аныктаган бузулуу режимдери

Беш бузулуу реалдуу жоготуулардын көбүн түшүндүрөт. Купуянын көз карандысыз көчүрмөсү жок унутулган архив сырсөзү архивди кирпичке айлантат. Бир дисктеги жалгыз көчүрмө ошол диск менен өлөт, ал эми текшерүү суммасы чечмелөө дагы эле иштейби деп эч качан айтпайт. Камдык күнүнөн кийин күчү жоюлган сертификаттар калыбына келтирилгенден кийин кайра жарактуу көрүнөт, ошондуктан камдык интервалыңыз — ошондой эле күчүн жоюунун сокур чекити. Эскирээк serial эсептегичин калыбына келтирүү сериялык номерлерди кайра колдонуп, serialга байланган кэштерди жана CRL издөөлөрүн чаташтырат. Оролгон блоктон баш тарткан алмаштыруучу HSM аппараттык алмаштырууну толук кайра чыгарууга айлантат.

A модели алгачкы төртөөнү начар, бирок көрүнөрлүк түрдө чечет. B модели аларды модуль же жеткирүүчүнүн процесси иштен чыкканга чейин жакшы чечет. Эгер ачкычтарыңыз экспорттолуучу болсо жана команда кичине болсо, шифрленген архив — чынчыл тандоо, эки алып жүрүүчү жана жазуу түрүндөгү сырсөз жол-жобосу менен колдоого алынган. Эгер ачкыч алынбай турган болсо, таптакыр тандооңуз жок, жана иш аны керектеген күнгө чейин жеткирүүчүнүн калыбына келтирүү жолун далилдөөгө өтөт.

Моделди тандоо жана аны пландоо

Үч шарт чечимди чечет. Ачкычты жеткирүүчү процессиз экспорттоого болобу? Калыбына келтирүү сиз али ээлик кылбаган аппараттык каражаттарга түшүшү керекпи? Колдоо кызматы менен талашып жатканда чыгаруу канча убакыт токтоп тура алат? Ошол үчөөгө жооп бериңиз, модел чечилди; андан кийинкинин баары пландоо.

Ар бир кол коюу аземинен кийин жана каалаган конфигурация өзгөртүүсүнөн мурун камдык алыңыз, анткени конфигурация — абалдын бөлүгү. Эки көчүрмөнү ар башка жердеги ар башка алып жүрүүчүлөрдө кармаңыз, бири тармактан тышкары болсун, ал эми чечмелөө купуясын көчүрмөлөргө караганда башка ишеним доменинде кармаңыз. Акыркы ийгиликтүү калыбына келтирүү күнүн камдык жазуусуна жазыңыз. Эч качан калыбына келтирилбеген камдык — гипотеза, көзөмөл эмес.

Билетти жаппас мурун бул беш пунктту ырастаңыз:

  • ca.crt манжа изи камдыктан тышкары бир жерде жазылган.
  • index.txt, serial, crlnumber жана openssl.cnf баары архивдин же блоктор топтомунун ичинде.
  • Сырсөздүн же оролгон ачкычтын сакталышы документтелген жана архивдин ээсинен башка бирөөдө.
  • Калыбына келтирүү обочолонгон хостто бир чыгаруу жана бир күчүн жоюу менен сыналган.
  • Камдык интервалынан келип чыккан күчүн жоюу алдыгы жазуу түрүндө кабыл алынган же кыскартылган.

Тектеш макалалар