Буруу VPN гэрчилгээг цуцалсан уу? Сэргээх сонголт ба хязгаар
CA-д хүрэхээс өмнө олгогч, серийн дугаар, шалтгааны кодыг тодорхойл. Байнгын цуцлалт, гэрчилгээний түр зогсоол, элсэлтийн завсарлага гэсэн гурван засвар бий.
Хэн нэгэн CA консол дээр гэрчилгээг цуцалсан бөгөөд одоо хэрэглэгч холбогдож чадахгүй байна. Эхний зөн совин нь цуцлалтыг буцаахыг хайх боловч ихэнх PKI-д ийм зүйл байхгүй: цуцлалт нь серийн дугаарын тухай зарласан баримт бөгөөд дэмжигдсэн буцах зам нь шинэ гэрчилгээ, урвуу бичлэг биш. Доорх шалгалтуудыг дараалан хийгээрэй, учир нь ямар засвар хийхийг зөвшөөрөх нь шалтгааны код болон түлхүүр хэзээ нэгэн цагт ил болсон эсэхээс хамаарна.
Хүнийг биш, гэрчилгээг тодорхойл
Нийтлэг нэрс давтагддаг. Өнгөрсөн улиралд дахин бүртгүүлсэн хэрэглэгч ижил CN, өөр серийн дугаартай хоёр гэрчилгээтэй байж болох бөгөөд нэгийг нь цуцалсан ч нөгөө нь ажилласаар байна. Эхлээд яг объектыг тодорхойл:
openssl x509 -in client.crt -noout -serial -issuer -subject -dates
openssl crl -in ca.crl -noout -text | head -40
Серийн дугаар, олгогч, цуцалсан огноо, CRL-д бүртгэсэн шалтгааныг бич. Дараа нь тэр серийн дугаарыг аль төхөөрөмжүүд танилцуулж байгааг батал, учир нь цуцалсан гэрчилгээ зөөврийн компьютер, утас, нөөц чиглүүлэгч дээр суулгагдсан хэвээр байж болох бөгөөд зөвхөн нэг рүү нь хүрэх солилт хоёр дахь тохиолдол үүсгэдэг.
Хурдан зан үйлийн шалгалт юуг ч өөрчлөхгүйгээр төлөвийг батална:
openssl verify -crl_check -CAfile ca.crt -CRLfile ca.crl client.crt
Хэрэв гэрчилгээг цуцалсан гэж мэдээлбэл CRL болон клиент санал нийлнэ; хэрэв цэвэр баталгаажвал таны гарт байгаа клиент нь цуцалсан нь биш бөгөөд хайлт үргэлжилнэ.
CA нь түр зогсоол эсвэл байнгын цуцлалт ашигласан эсэхийг шалга
RFC 5280 certificateHold-г түр төлөв, removeFromCRL-г түүнийг чөлөөлөх дохио гэж тодорхойлдог. Тэр амьдралын мөчлөг бодит боловч энэ нь ерөнхий буцаах товч биш. Шалтгааны кодыг уншихад олгогч чөлөөлөлтийг дэмжихээр төлөвлөж байсан эсэхийг хэлнэ.
Хавх нь түр санаа нь түр бичлэг гэсэн үг гэж үзэх явдал юм. Хэрэв CA-ийн бичлэгт keyCompromise эсвэл cessationOfOperation байвал товчийг дарсан хүний санаа юу байсан ч гэрчилгээ байнга цуцлагдсан байна. Харин чөлөөлөлтийг хэрэгжүүлдэггүй CA дээр certificateHold гэж тэмдэглэсэн бичлэг нь чөлөөлөлт хэзээ ч нийтлэгдэхгүй тул практикт байнгын байна.
OpenSSL-д суурилсан CA-ууд хязгаарыг харуулдаг. ca команд нь -crl_reason утгуудыг, түүний дотор certificateHold болон removeFromCRL-ыг хүлээн авдаг боловч дельта CRL үүсгэдэггүй — OpenSSL CA баримт бичиг өөрийн CRL гаралтын хувьд энэ хязгаарыг дурддаг. Серийн дугаарыг зүгээр орхидог бүрэн CRL нь "энэ бичлэг чөлөөлөгдсөн" гэж хэлдэг дельтаас өөр нийтлэх загвар тул OpenSSL-д суурилсан VPN CA-д removeFromCRL-ыг наахад стандартаар тодорхойлсон чөлөөлөлт гарахгүй.
Хэрэв түлхүүр ил болсон байж болзошгүй бол солино уу
Цуцалсан гэрчилгээ нь энэ түлхүүрт цаашид итгэх боломжгүй гэсэн мэдэгдэл юм. Хэрэв цуцлалт үндсэндээ зөв байсан бол — зөөврийн компьютер алдагдсан, түлхүүр хуваалцсан диск рүү хуулагдсан, хувийн түлхүүр тасалбарт наагдсан — ижил гэрчилгээг сэргээх нь зориудын дагуу ажиллаж байсан аюулгүй байдлын шийдвэрийг буцаана.
Бүртгэлийн процессоор шинэ түлхүүрийн хосыг олгож, шинэ профайлыг түгээж, хуучин серийн дугаарыг бүх насаар нь цуцалсан хэвээр үлдээ. Серийн дугаар эсвэл хурууны хээгээр танихыг бэхэлдэг бүх зүйлийг шинэчил, үүнд элсэлтийн жагсаалт, төхөөрөмжийн бүртгэл, тодорхой гэрчилгээ хүлээдэг хяналт орно.
Хуучныг сэргээх тав тухын үндэслэл бодит боловч үүнд чимээгүй бус, тодорхой хариулах хэрэгтэй. "Хэрэглэгчид өнөөдөр хандалт хэрэгтэй" нь олголтыг хурдасгах шалтгаан, хариуцлага хүлээх боломжгүй түлхүүрийн цуцлалтыг буцаах шалтгаан биш.
Хэрэв захиргааны алдаа байсан бол хяналт дор солино уу
Цуцлалт зүгээр л буруу байсан бөгөөд түлхүүр хэзээ ч ил болоогүй бол засвар нь засварлалт биш, хяналттай солилт хэвээр байна. Олгогчийн дэмжигдсэн процессыг ашигла, серийн дугаар болон олголтын түүхийг бүрэн бүтэн байлга, хоёр уруу татсан товчлолоос зайлсхий: index.txt дахь төлвийн тэмдэгтийг R-аас буцааж V болгох, шинэ гэрчилгээ серийн дугаарыг дахин ашиглахын тулд олголтын мөрийг устгах.
OpenSSL CA дээр мэдээллийн сан табаар тусгаарлагдсан бөгөөд буруу уншихад хялбар тул гараар засварлах нь сэтгэл татам болдог:
awk -F'\t' '$1=="R" {print $4, $3, $6}' index.txt
Унш, битгий бич. Файлыг засварлах нь дараагийн CRL-ийг ямар ч аудитын ул мөргүйгээр өөрчилдөг бөгөөд анхны мөрийг хадгалсан аливаа хоёр дахь CA хуулбар эсвэл нөөц хуулбар дараа нь түүнтэй зөрчилдөнө.
Солилтыг олгосны дараа ердийн механизмаар шинэ CRL нийтэлж, клиентүүд авахыг зөвшөөр. CRL-ийг устгах, түүний насжилтыг тэг болгох эсвэл клиентийн профайлд цуцлалтын шалгалтыг идэвхгүй болгох нь CA-ийн хэзээ нэгэн цагт нийтэлсэн бусад бүх цуцлалтыг сулруулж нэг хэрэглэгчийг засдаг.
Шинэ элсэлтийг баталж, бичлэгийг хадгал
Аль хэдийн нээлттэй байсан сессээр бус, шинэ холболтоор туршиж үз. Амьд туннель шинэ гар барилтын хийсэн элсэлтийн шалгалтыг дахин хийхгүй байж болох бөгөөд CRL кэш нь клиент шинэчлэгдэх хүртэл холбогдсоор байж болно гэсэн үг. Салгаж, дахин холбогдож, серверийн логт аль серийн дугаар хүлээн авагдсаныг батал.
Юу болсныг одоо ч шинэ байхад бүртгэ: аль серийн дугаар, хэн, ямар шалтгаанаар, ямар солилт олгогдож, CRL хэзээ дахин нийтлэгдсэн. Тэр бичлэг л дараагийн цуцлалтын хяналтыг боломжтой болгож, алдааг нуухгүй шийдвэрлэсний баталгаа болно.
Ирээдүйд богино түр зогсоолтод, байршуулалтад байгаа бол элсэлтийн түр зогсоолын механизм ашигла — таних давхаргад идэвхгүй болгосон бүртгэл, хасагдсан бүлгийн гишүүнчлэл, хадгалагдсан клиентийн профайл. Энэ нь түр бодлогын шийдвэрийг олгогдсон гэрчилгээ цаашид итгэлтэй эсэх асуудлаас тусгаарладаг бөгөөд анх удаа алдагдсан ялгаа нь яг энэ байсан.