VPN mijozingiz sertifikatni tekshirib bo‘lmaganini aytadi va muloqot o‘sha yerda tugaydi. Fayl joyida, server ishlayapti va o‘sha profil o‘tgan oy boshqa noutbukda ishlagan edi. O‘sha bir qatorli ogohlantirish ostida mijoz hamkor sertifikatini to‘rtta darvozadan o‘tkazdi: siz sozlagan sertifikat markazi imzo yo‘liga kafolat beradi, o‘sha yo‘l markazga yetadi, hamkor nomi siz so‘ragan nom va sertifikat endi shu maqsad uchun yaroqli. Yopilgan darvozani toping, tuzatish odatda bitta fayl; o‘sha qadamni tashlab ketsangiz, butun tushdan keyin paketlarni qayta import qilasiz.

Profilni tahrirlashdan oldin muloqotni o‘qing

Sertifikat xatolarining matnini pastdagi kutubxona yozadi, siz o‘rnatgan VPN mahsuloti emas, shuning uchun aniq satr birinchi dalilingizdir. «Mahalliy chiqaruvchining sertifikatini olib bo‘lmaydi» yo‘lga yoki ishonch ankeriga ishora qiladi. «Sertifikat muddati o‘tgan yoki hali amal qilmaydi» vaqtga ishora qiladi. «Sertifikat maqsadi qo‘llab-quvvatlanmaydi» kengaytirilgan kalit ishlatilishiga ishora qiladi. Nom mos kelmasligi qaysi nom kerakligini aytadi. To‘rttasining hech biri mijozni qayta o‘rnatish bilan tuzatilmaydi.

Biror narsani o‘zgartirishdan oldin jurnal darajasini oshiring. OpenVPN uni --verb 4 bilan ishga tushirganingizda qo‘l berib ko‘rishish atrofida tekshirish xatosini xabar qiladi, strongSwan esa o‘zining shaxs va zanjir qarorlarini charon jurnaliga yozadi. Keyin qaysi sertifikatni tekshirayotganingizni tasdiqlang, chunki odamlar odatda diskdagi faylni sinab ko‘radi, profil esa eski nusxani ichiga joylaydi. Profil PEM bloklarini ichiga joylashtirsa, ichkaridagi sertifikat tekshiriladi.

Sertifikat markazi imzolarni shaxslarga qo‘yadi, ruxsatlarga emas

Markaz nom va imzo kalitini saqlaydi. U o‘z siyosatiga ko‘ra ochiq kalitni shu nomga bog‘laydigan sertifikatlar beradi, ularga amal qilish oynasi va foydalanish cheklovlari qo‘shiladi. Mijozingizga chiqaruvchini tanitish uchun faqat markaz sertifikati kerak; unga imzo kaliti hech qachon kerak emas va o‘sha kalitni mijozlarga yuborish ularga joylashtirish ishonadigan har qanday shaxsni yaratish imkonini berardi.

Markazga ishonish uning imzolagan har bir sertifikatini nomzod qiladi, to‘g‘ri hamkorni emas. Xuddi shu ichki CA ning veb-server sertifikati ham nomzod. Shuning uchun nom va maqsad darvozalari bor va shuning uchun buzilgan CA kaliti har qanday bitta serverdan muhimroq: u markaz qachonlardir chiqargan har bir shaxsga yetadi. Mijoz sertifikatlarini har bir qurilma uchun alohida bering, shunda yo‘qolgan noutbuk butun joylashtirish kalitini yangilash emas, bitta bekor qilish bo‘ladi.

Mijoz qurmoqchi bo‘lgan yo‘lni qaytadan quring

Yo‘l hamkor sertifikatidan boshlanib, nol yoki undan ko‘p oraliq sertifikatlardan o‘tib, ishonch omboringizdagi ildizga yetadi. Yetishmayotgan oraliq sertifikat eng keng tarqalgan zanjir nosozligi, va mijoz tomondan u ishonchsiz ildiz kabi ko‘rinadi. Avval bargni o‘qing, keyin yubormoqchi bo‘lgan materialdan OpenSSL yo‘lni qursin.

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

Nol chiqish holati yo‘l o‘sha fayllardan qurilganini bildiradi; nosozlik yetib bo‘lmagan sertifikatni nomlaydi. Agar openssl verify muvaffaqiyatli bo‘lsa-yu mijoz hali rad etsa, farq server aslida nima yuborishida yoki profil qaysi ishonch faylini yuklashida. OpenVPN da oraliq sertifikatlar server sertifikati fayli bilan birga keta oladi yoki --extra-certs bilan alohida beriladi, va bir xil subyekt nomi ostida yozilgan ikkita ildizli paket mijozlaringizdan birini noto‘g‘ri shoxga yuboradi.

Nom va maqsad alohida darvozalar

Zanjir qurish hech qachon nom sizniki ekanini so‘ramaydi. OpenVPN uni faqat profil --verify-x509-name ni o‘rnatganda tekshiradi, va faqat umumiy nomni moslashtirish odati shaxslari subjectAltName da yashaydigan sertifikatlarda buziladi. IKEv2 joylashtirishlari sozlangan shaxsni SAN yozuvlari yoki ajratuvchi nom bilan moslashtiradi, mijozga qarab, va wildcard yoki %any qiymati siz bor deb o‘ylagan taqqoslashni jimgina o‘chiradi.

Keyin vaqt va maqsad keladi. Soati bir necha soat oldinda bo‘lgan noutbuk hali amal qilmaydigan sertifikatni rad etadi, muddati o‘tgan oraliq sertifikat esa barg amalda bo‘lsa ham yo‘lni yiqitadi. Maqsad nosozliklari kengaytirilgan kalit ishlatilishida serverAuth bo‘lmagan yoki qo‘l berib ko‘rishish imzosiga ruxsat bermaydigan keyUsage bo‘lgan sertifikatdan keladi, OpenSSL buni qo‘llab-quvvatlanmaydigan sertifikat maqsadi deb xabar qiladi. To‘g‘ri shablondan qayta chiqaring; bu xabarda tekshirishni o‘chirishga hech qanday sabab yo‘q.

Bekor qilish faqat kimdir uni sozlagan bo‘lsa ishlaydi

CRL yoki OCSP javobi avtomatik tekshirilmaydi. OpenVPN serverida mijoz sertifikatlari ro‘yxat bilan faqat --crl-verify ro‘yxatga ishora qilganda solishtiriladi. Server sertifikatini mijoz tomonidan tekshirish amalga oshirishga bog‘liq va ko‘pincha yo‘q. strongSwan hamkor uchun CRL ga qarashdan oldin o‘zining bekor qilish plaginini va siyosatini talab qiladi.

Bu siz oxir-oqibat oladigan tiketni tushuntiradi: bekor qilingan mijoz sertifikati hali ham ulanadi va hamma bekor qilish buzilgan deb xulosa qiladi. Hech narsa tekshirayotgani yo‘q. CRL ni e’lon qiling va yangilang, yoki mijoz sertifikatlarini eski bekor qilish qisqa vaqtgina muhim bo‘ladigan darajada qisqa umrli tuting, va hodisa paytida kerak bo‘lishidan oldin laboratoriya sertifikatida bekor qilish yo‘lini mashq qiling.

Tekshirishni yoniq tutadigan tuzatish tartibi

Fayllarga tegishdan oldin alomat bo‘yicha tartiblang, chunki jadvalning har bir qatori sizni boshqa obyektga yuboradi.

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

Ro‘yxatni bir o‘tishda bajaring: profil yuklaydigan faylni tasdiqlang, yo‘lni o‘zingiz quring, server oraliq sertifikatni yuborishini tekshiring, soatni solishtiring, SAN ni o‘qing, EKU ni o‘qing, keyin qayta ulanib o‘sha jurnal satri yo‘qolishini kuzating. Agar qurilmaga umuman CA berib bo‘lmasa, pinning halol muqobil, chunki OpenVPN 2.6 --peer-fingerprint ni qabul qiladi va tekshirishni olib tashlash o‘rniga ishonchni bitta kalitgacha toraytiradi. Bu maydonlarning har biri nimani anglatishi uchun RFC 5280 manba.

O'xshash maqolalar