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-гийн нууц түлхүүрийг уншиж чадахгүйг батал.
Эдгээр гурван шалгалт хэдэн минут болдог бөгөөд ажилтнууд солигдсон ч тэсдэг, учир нь тэд зуршил биш, зөвшөөрлийн тухай мэдэгдэл юм. Үр дүнг хамрагдсан зам, бүртгэлүүд болон ажиллуулсан огноотой нь хамт бич. Эс бөгөөс энэ байршуулалтыг өвлөн авах дараагийн хүн хил хязгаар хэзээ ч байгаагүй заавраас түүнийг дахин гаргана. Огноотой бүртгэл нь дараагийн хяналтыг үдээс хойш биш, хэдэн минутын ажил болгодог зүйл юм.