Таны VPN клиент сертификатыг шалгаж чадсангүй гэж мэдээлж, харилцан яриа тэнд зогсдог. Файл байгаа, сервер ажиллаж байна, мөн тэр профайл өнгөрсөн сард өөр зөөврийн компьютер дээр ажилласан. Тэр нэг мөр анхааруулгын дор клиент хосын сертификатыг дөрвөн хаалгаар дамжуулсан: таны тохируулсан сертификатын байгууллага гарын үсгийн замыг баталгаажуулна, тэр зам байгууллагад хүрнэ, хосын нэр таны хүссэн нэр, сертификат одоо энэ зорилгод хэрэглэгдэх боломжтой. Хаагдсан хаалгыг ол, засвар нь ихэвчлэн нэг файл; тэр алхмыг алгасвал үдээс хойш бүхэлд нь багцуудыг дахин импортлоно.

Профайлыг засахын өмнө харилцан яриаг уншина уу

Сертификатын алдааны текстийг доорх номын сан бичдэг, таны суулгасан VPN бүтээгдэхүүн биш, тиймээс яг таг тэмдэгт мөр таны эхний нотолгоо. «Локал издателийн сертификатыг авах боломжгүй» зам эсвэл итгэлийн зангуу руу заана. «Сертификатын хугацаа дууссан эсвэл хараахан хүчинтэй биш» цаг руу заана. «Дэмжигдэхгүй сертификатын зорилго» өргөтгөсөн түлхүүрийн хэрэглээ рүү заана. Нэрийн зөрүү нь ямар нэрийг хүссэнийг хэлнэ. Дөрвөөс аль нь ч клиентийг дахин суулгаснаар засагдахгүй.

Ямар нэгэн зүйл солихын өмнө бүртгэлийн түвшинг өсгөнө үү. OpenVPN үүнийг --verb 4-тэй ажиллуулахад гар барилтын орчимд шалгалтын алдааг мэдээлдэг, strongSwan өөрийн таних тэмдэг ба хэлхээний шийдвэрийг charon бүртгэлд бичдэг. Дараа нь та ямар сертификатыг шалгаж байгаагаа баталгаажуул, учир нь хүмүүс ихэвчлэн диск дээрх файлыг турших боловч профайл хуучин хувийг дотроо агуулдаг. Профайл PEM блокуудыг дотроо агуулах үед дотор нь агуулагдсан сертификат нь туршигдана.

Сертификатын байгууллага таних тэмдэгт гарын үсэг зурдаг, зөвшөөрөлд биш

Байгууллага нэр ба гарын үсгийн түлхүүртэй. Тэрээр өөрийн бодлогын дагуу нийтийн түлхүүрийг тэр нэртэй холбосон сертификатуудыг олгодог бөгөөд хүчинтэй байх хугацаа, хэрэглээний хязгаарлалтууд хавсарна. Таны клиентэд издателийг танихын тулд зөвхөн байгууллагын сертификат хэрэгтэй; гарын үсгийн түлхүүр түүнд хэзээ ч хэрэггүй, тэр түлхүүрийг клиентүүдэд илгээх нь тэдэнд байршуулалт итгэдэг аливаа таних тэмдгийг бүтээх чадварыг өгөх байсан.

Байгууллагад итгэх нь түүний гарын үсэг зурсан бүх сертификатыг нэр дэвшигч болгодог, зөв хосыг биш. Мөн дотоод CA-ийн вэб серверийн сертификат ч нэр дэвшигч. Тиймээс нэр ба зорилгын хаалга байдаг бөгөөд эвдэрсэн CA түлхүүр нь ямар ч ганц серверээс чухал: тэр байгууллагын хэзээ нэгэн цагт олгосон бүх таних тэмдэгт хүрдэг. Клиентийн сертификатыг төхөөрөмж бүрт тусад нь олгож, алдагдсан зөөврийн компьютер бүх байршуулалтын түлхүүрийг дахин үүсгэх биш, нэг хүчингүй болголт байх болтугай.

Клиентийн байгуулах гэж буй замыг дахин байгуул

Зам нь хосын сертификатаас эхэлж, тэг буюу түүнээс олон завсрын сертификатаар дамжин таны итгэлийн сан дахь үндэс хүрнэ. Завсрын сертификат дутуу байх нь хамгийн түгээмэл хэлхээний алдаа бөгөөд клиентийн талаас үүнийг итгэмжлэгдээгүй үндэс-ээс ялгах боломжгүй. Эхлээд навчийг уншаад, дараа нь илгээхээр төлөвлөж буй материалаас OpenSSL зам байгуулагтун.

openssl x509 -in server.crt -noout -subject -issuer -dates
openssl verify -CAfile root.crt -untrusted intermediate.crt server.crt
openssl verify -show_chain -CAfile root.crt -untrusted intermediate.crt server.crt

Гарах төлөв тэг гэдэг нь зам тэдгээр файлаас байгуулагдсаныг илэрхийлнэ; алдаа нь хүрч чадаагүй сертификатыг нэрлэнэ. Хэрэв openssl verify амжилттай болж, клиент буруу хэвээр байвал ялгаа нь сервер үнэндээ юу илгээж байгаа эсвэл профайл ямар итгэлийн файлыг ачаалж байгаад байна. OpenVPN-д завсрын сертификатууд серверийн сертификатын файлтай хамт явж болно эсвэл --extra-certs-тэй тусад нь өгч болно, нэг субъектийн нэрийн дор бичигдсэн хоёр үндэстэй багц таны нэг клиентийг буруу салбар руу илгээнэ.

Нэр ба зорилго нь тусдаа хаалга

Хэлхээ байгуулах нь нэр таных уу гэж хэзээ ч асуудаггүй. OpenVPN үүнийг зөвхөн профайл --verify-x509-name тохируулах үед шалгадаг бөгөөд зөвхөн нийтлэг нэрийг тааруулах хуучин дадал нь таних тэмдэг нь subjectAltName-д амьдардаг сертификатууд дээр эвдэрдэг. IKEv2 байршуулалтууд тохируулсан таних тэмдгийг SAN бичлэгүүд эсвэл ялгаатай нэртэй тааруулдаг, клиентээс хамаарч, wildcard эсвэл %any утга нь танд байна гэж бодсон харьцуулалтыг чимээгүй унтраана.

Дараа нь цаг ба зорилго ирнэ. Цаг нь хэдэн цагаар түрүүлж явдаг зөөврийн компьютер хараахан хүчинтэй биш сертификатыг татгалзаж, хугацаа дууссан завсрын сертификат навч хүчинтэй байхад зам сүйтгэнэ. Зорилгын алдаа нь өргөтгөсөн түлхүүрийн хэрэглээнд serverAuthгүй сертификат эсвэл гар барилтын гарын үсгийг зөвшөөрдөггүй keyUsage-аас гардаг бөгөөд OpenSSL үүнийг дэмжигдэхгүй сертификатын зорилго гэж мэдээлдэг. Зөв загвараас дахин олго; тэр мессежид шалгалтыг унтраах ямар ч шалтгаан байхгүй.

Хүчингүй болголт зөвхөн хэн нэгэн тохируулсан тохиолдолд ажиллана

CRL эсвэл OCSP хариуг автоматаар шалгадаггүй. OpenVPN сервер дээр клиентийн сертификатуудыг жагсаалттай зөвхөн --crl-verify түүн рүү заах үед харьцуулна. Серверийн сертификатыг клиентийн талаас шалгах нь хэрэгжүүлэлтээс хамаардаг бөгөөд ихэвчлэн байдаггүй. strongSwan хосын CRL-ийг харахын өмнө өөрийн хүчингүй болголтын залгуур ба бодлогыг шаарддаг.

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

Шалгалтыг асаалттай үлдээх засварын дараалал

Файлуудад хүрэхийн өмнө шинж тэмдгээр эрэмбэл, учир нь хүснэгтийн мөр бүр таныг өөр объект руу илгээдэг.

Client saysMost likely gateFirst check
unable to get local issuer certificatetrust anchor or missing intermediateyour own openssl verify against the files the profile loads
expired or not yet validvalidity windowleaf and intermediate dates against the device clock
unsupported certificate purposeextended key usageserverAuth present, keyUsage allows the handshake
name mismatchpeer identitysubjectAltName entries versus the profile name

Жагсаалтыг нэг удаад гүйцэтгэ: профайлын ачаалж буй файлыг баталгаажуул, замыг өөрөө байгуул, сервер завсрын сертификатыг илгээж байгаа эсэхийг шалга, цагийг харьцуул, SAN-ыг унш, EKU-г унш, дараа нь дахин холбогдож мөн тэр бүртгэлийн мөр алга болохыг ажигла. Хэрэв төхөөрөмжид CA огт өгөх боломжгүй бол бэхлэлт нь шударга хувилбар, учир нь OpenVPN 2.6 --peer-fingerprint-г хүлээн авч, шалгалтыг арилгахын оронд итгэлийг нэг түлхүүрт хүртэл нарийсгана. RFC 5280 нь эдгээр талбар бүр ямар утгатай болохын лавлагаа юм.

Холбоотой нийтлэлүүд