OpenVPN CA кол куюу ачкычын /etc/openvpn сыртында кармаңыз
CA иш мейкини инсандыктарды чыгарат; кызмат тек жайгаштырылган материалды керектейт. Ар бир ролго өз эсебин, каталогун жана камдык көчүрмөсүн берип, экөөнү тең текшериңиз.
Окуу куралында окшош көрүнгөн эки каталог таптакыр башка иш аткарат. Бирөө сертификат бийлигин кармайт: анын жашыруун ачкычын, сериялык эсептегичин жана ал кол койгон бардык нерсенин жазуусун. Экинчиси демондун иштеп башташы жана кардарларга кызмат көрсөтүшү үчүн керектүү нерселерди кармайт. Экөөнү бир хосттогу бир эсептин астында кармоо бир түштөн кийин ыңгайлуу, ал эми жайгаштыруунун калган өмүрүнө кымбат, себеби анда демон каалаган инсандыкты жарата алган жалгыз ачкычтын жанында иштейт.
CA иш мейкининде эмне бар
PKI каталогу — чыгаруучунун абалы, конфигурация эмес. Анда CA жашыруун ачкычы жана сертификаты, сериялык файл, чыгарылган сертификаттардын индекси жана алардан жасалган ар бир инсандыктын материалы бар.
Сурамга кол коюу ошол абалды өзгөртөт, ошондуктан иш мейкини VPN кызматы иштебеген хосттогу администратор көзөмөлдөгөн эсепке таандык. CA жашыруун ачкычын окуй алган адам сервер ишенген сертификат чыгара алат, ошондуктан ачкычты коргоо — бир файлдагы бүт ишеним модели. Бир кадамды үнөмдөө үчүн аны экинчи жерге көчүрүү коргоого экинчи нерсе жана унутууга экинчи нерсе жаратат. Ар бир кол коюу серияны көбөйтүп, индекске жазуу кошот, ошондуктан иш мейкини — файлдардын папкасы эмес, абалдын бир көчүрмөсү.
CA ачык сертификаты башка. Ал таратууга арналган жана кардарлар менен серверлер бири-бирин ошону менен текшерет.
Демон иштеп баштаганда эмнени окуйт
Иштеп жаткан сервер аз топтомду керектейт: өз сертификатын, өз жашыруун ачкычын, шериктерди текшерүү үчүн CA сертификатын жана тандалган режим талап кылган ачкыч материалын. Ал бул жолдорду баштоодо жана кайра жүктөөдө кайра окуйт.
Ээликти чындап иштеп баштаган бирдикке карата баалоо керек, интерактивдүү root кабыгына карата эмес. Жарыяланган обочолотуу файл системасынын бир бөлүгүн тек окууга боло турган же көрүнбөгөн кыла алат, root менен кол менен жасалган текшерүү ийгиликтүү болсо да.
systemctl show -p User -p Group -p ReadOnlyPaths [email protected]
stat -c '%a %U:%G' /etc/openvpn/server/server.key
runuser -u openvpn -- test -r /etc/openvpn/server/server.key; echo $?Үчүнчү сап — адамдар өткөрүп жиберген сап. Ал демондун өз эсебинен ачкычты окуй алабы деп сурайт, ал эми артыкчылык түшкөндөн кийин суроонун мааниге ээ жалгыз түрү ушул. root менен нөлдүк чыгуу артыкчылык түшкөндөн кийин эмне болорун тууралуу эч нерсе айтпайт.
Ар кандай укукту өзгөртүүдөн мурун эки бузулуу жолун бөлүү керек. Кол коюунун ийгиликсиздиги PKI каталогун, анын ата-эне каталогдорундагы издөө укугун жана чыгаруучуну иштеткен эсепти көрсөтөт. Баштоонун ийгиликсиздиги бирдикти, анын иш каталогун жана сервер конфигурациясында аталган жолдорду көрсөтөт. Бүт даракты баарына окула турган кылуу экөөнүн бирин да оңдобойт жана экөө тең көз каранды болгон чекти алып салат.
CA ачкычын серверге көчүрүү кийин эмне үчүн ийгиликсиз болот
Көчүрмө көбүнчө жөндөө кадамы катары башталат: бирөө VPN хостунда кардарды жаңырткысы келет, ошондуктан CA ачкычы /etc/openvpn ичине түшөт жана жаңыртуу иштейт. Шашылыш иш ийгиликтүү болот, ал эми чек жок болуп кетет.
Андан кийин сервер камдык көчүрүлөт жана кол коюу бийлиги камдык көчүрмөлөргө кошулат. Снапшот, колдоо топтому же конфигурация каталогунун көчүрмөсү эми CA жарактуу болгонго чейин ишенимдүү инсандыктарды чыгаруу жөндөмүн алып жүрөт. Ошол көчүрмөнү кармаган адам сервер кабыл алган ар кандай атка сертификат жасай алат, эч качан чыгарылбаган аттарды да кошкондо. Ошол чыгаруунун жалгыз жазуусу — алар сактоону тандаганы.
Ушундай абалдан калыбына келүү файлды өчүрүү маселеси эмес. Ачкыч ачыкка чыктыбы, жокпу чечиш керек, чыкса CAны айландырыш керек жана ишенимди бардык шериктерге кайра бөлүштүрүш керек. Өзүнчө иш мейкини бүт маектешүүнү болтурбайт.
Эсептер, каталогдор, камдык көчүрмөлөр
Чыгаруучуга өз эсебин жана үй каталогун бериңиз, мүмкүн болсо VPN хосттон тышкары кармаңыз. Демонго башка эсеп бериңиз, жайгаштырылган материалды окуу укугу менен жана сертификат чыгарган эч нерсеге жазуу укугу жок. Ачык сертификаттарды сыртка көчүрүү менен жайгаштырыңыз, ал эми чыгаруучунун жашыруун абалын эч качан ичке тартпаңыз. Эки ролдун камдык көчүрмөсүн өзүнчө жасаңыз, себеби алардын сезимталдыгы жана калыбына келтирүү тарыхы ар башка.
Жокко чыгаргандан кийин сервер конфигурациясы атаган CRL файлын жаңыртыңыз, андан кийин жаңы байланыштар аны окушу үчүн кызматты кайра жүктөңүз. Easy-RSA документтери иш мейкинин жайгашуусун жана кол коюу агымын камтыйт; анын айланасындагы ээлик эрежелери сиздин хост тууралуу чечим бойдон калат. Кызмат эмнени жүктөгөнүн openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate аркылуу тастыктаңыз, кайра жүктөө аны алды деп божомолдогондун ордуна.
Бөлүнүүнү далилдеген сыноо
Тек иштеген учурду эмес, терс учурду да текшериңиз. Долбоор боюнча чыгаруучу эсебинен сертификатка кол коюңуз, андан кийин ошол эле эсеп кызматты иштете албастыгын же сервердин жашыруун ачкычын окуй албастыгын тастыктаңыз. Андан кийин демондун эсеби CA жашыруун ачкычын окуй албастыгын тастыктаңыз.
Бул үч текшерүү бир нече мүнөт алат жана кызматкерлер алмашса да сакталат, себеби алар адат тууралуу эмес, укуктар тууралуу билдирүүлөр. Жыйынтыкты ал камтыган жолдор жана эсептер менен, жана аларды иштеткен күн менен жазыңыз. Болбосо бул жайгаштырууну мураска алган кийинки адам чек эч качан болбогон окуу куралынан чекти кайра чыгарат. Күнү жазылган жазуу — кийинки кароону түштөн кийинкиге эмес, бир нече мүнөткө айландырган нерсе.