duplicate-cn ikki qurilmaga bitta shaxsiyat beradi, ikkita emas
duplicate-cn bitta umumiy nom ostida ikkinchi parallel seansga ruxsat beradi. U hech qachon ikkinchi qurilma shaxsiyati, ikkinchi manzil yoki alohida bekor qilish yaratmaydi.
Profilni planshetga nusxalang, ulanib ko'ring — va noutbuk uzilib qoladi. duplicate-cn qo'shing, ikkalasi ham ulangan holda qoladi va muammo hal bo'lgandek ko'rinadi — toki ikki qurilma bitta tunnel manzili uchun urishib ketmaguncha yoki yo'qolgan planshet butun hisobni oflayn holatga keltirmaguncha. Bu parametr bitta narsani va faqat bitta narsani o'zgartiradi: server allaqachon ko'rgan nom ostida ikkinchi seansga ruxsat beradimi. Odamlar undan kutiladigan hamma narsa — qurilma mustaqilligidan tortib har bir qurilmaga manzil va tanlab bekor qilishgacha — hanuz shaxsiyat orqali hal qilinadi, bu yerda shaxsiyat esa sertifikatdir.
Afsona: ikkinchi seans ikkinchi shaxsiyatdir
Intuitsiya ikki ulanish ikki klient bo'lishi kerak, ikki klient esa o'z huquqlariga ega ikki qurilma bo'lishi kerak deydi. Server buni bunday modellashtirmaydi. U umumiy nomni ko'radi va duplicate-cn yoqilgan bo'lsa, shu nomni olib yurgan bir nechta tirik seansni qabul qiladi, har biri daemon ichida o'z seans holatini oladi.
Bu qabul sertifikat tekshiruviga hech qanday ta'sir qilmaydi. Xuddi shu sertifikat baribir ishonchnoma, xuddi shu kalit baribir maxfiy kalit, va sertifikat subyektiga asoslangan har qanday siyosat baribir ikki marta bir xil qiymatga yechiladi. Ikkinchi seans ikkinchi soket, ikkinchi shaxsiyat emas.
Bu farq hamma narsa ishlab turganda ko'rinmaydi. Ikki qurilmani ajratish kerak bo'lgan paytda juda ko'rinadigan bo'ladi — odatda bu ulardan biri yo'qolgan kun.
Ikki seans bitta nomni bo'lishganda aslida nima o'zgaradi
Bu parametrsiz, allaqachon ulangan umumiy nom ostidagi yangi ulanish avvalgi seansni siqib chiqaradi. Planshet ulanganda noutbuk uzilib qolishining sababi shu, va bu xato emas, ataylab qo'yilgan noaniqlikdan himoya. Parametr bilan ikkala seans ham tirik qoladi va server ularni qurilma bo'yicha emas, seans bo'yicha alohida kuzatadi.
Har bir seans baribir o'z tashqi ulanishini va o'z kelishilgan kalitlarini oladi, shuning uchun parallel o'tkazuvchanlik haqiqatan parallel. Ular bo'lishadigan narsa ishonchnomadan kelib chiqadigan hamma narsa: siyosat qidiruvlari, klientga xos konfiguratsiya, jurnaldagi shaxsiyat va bekor qilish. Seans holati ulanishga tegishli va u bilan birga o'ladi, ishonchnoma darajasidagi faktlar esa ikkalasi uchun ham saqlanadi. Shuning uchun holat chiqishi bir xil nomni ikki marta sanab o'tishi mumkin, hisoblagichlar esa alohida qoladi.
Uning ustida loyihalashdan oldin qurilmangiz aslida nima qilishini tekshiring, chunki parametr ta'sirini parametrning o'zi belgilaydi, rivoyatlar emas:
grep -n 'duplicate-cn\|client-config-dir\|username-as-common-name' /etc/openvpn/server.conf
Siz tayinlagan deb o'ylagan statik manzil
Har bir klient uchun konfiguratsiya nom bo'yicha qidiriladi, va tuzoq shu yerda. Umumiy nom bilan atalgan client-config-dir fayli shu nomdan foydalanadigan har bir qurilmaga qo'llanadi, shuning uchun ichidagi ifconfig-push ikkala qurilmaga bir xil tunnel manzilini beradi. Ikkinchi seans yo o'rnatilmaydi, yo marshrutlash nosozligiga o'xshab to'qnashadi.
Dinamik hovuz tasodifan yaxshiroq ishlaydi, chunki har bir seansga hovuzdan manzil mustaqil ravishda ajratiladi. Bu baribir sizga har bir qurilma uchun barqaror manzil bermaydi va o'sha manzilga bog'langan har bir qurilma siyosatini umuman bermaydi.
Agar joylashtirish username-as-common-name ishlatsa, qidiruv kaliti sertifikat subyekti o'rniga autentifikatsiya qilingan foydalanuvchi nomiga aylanadi, va ikki marta kirgan har kim uchun xuddi shu to'qnashuv takrorlanadi. Konfiguratsiyani boshqaradigan nom har bir qurilma uchun yagona bo'lishi kerak, shundagina qurilmaga xos konfiguratsiya ma'noga ega bo'ladi.
O'chirish paytida umumiy shaxsiyat nima qila olmaydi
Bekor qilish sertifikatga ta'sir qiladi, ko'rsatilgan nomga ham, seansga ham emas. O'sha sertifikatni bekor qiling — nusxasi bor har bir qurilma bir zumda kirishdan mahrum bo'ladi, hech kim bezovta qilishni xohlamaydigan ofisdagi qurilma ham. Uni saqlang — yo'qolgan qurilma ishlashda davom etadi, chunki protokolda uni tasdiqlangan nusxadan ajratadigan hech narsa yo'q.
Jurnallar ham xuddi shu noaniqlikni meros qilib oladi. Holat chiqishi umumiy nom va haqiqiy manzilni ko'rsatadi, ikkalasi ham ikki qurilmaning har biriga tegishli bo'lishi mumkin. Qaysi mashina nima qilganini bilishi kerak bo'lgan hodisa tahlili bu savolga VPN ning o'z yozuvlaridan javob bera olmaydi, jurnal darajasi qanchalik tafsilot bersa ham.
Buning uchun kriptografik aylanma yo'l yo'q. Bir xil sertifikatni taqdim etgan ikki qurilma server uchun bir xil ishtirokchining ikki marta o'zi, va buning aksini da'vo qiladigan har qanday sxema nazorat emas, nomlash konvensiyasidir.
Bo'lishish qachon to'g'ri va uni qanday cheklash kerak
Bo'lishishning qonuniy qo'llanishlari bor: bir nechta sinov mashinasi ishlatadigan laboratoriya hisobi yoki qurilmalar birgalikda boshqariladigan va bekor qilish nozikligi muhim bo'lmagan uy. Bunday hollarda parametrni ataylab yoqing, umumiy ishonchnomani har bir qurilma siyosatidan tashqarida saqlang va seanslar bir manzilda to'qnashmasligi uchun hovuzga joy bering.
Alohida manzillar, alohida jurnallar yoki alohida o'chirish talab qiladigan har bir narsa uchun odatiy ro'yxatdan o'tish yo'li bilan alohida sertifikatlar bering. Bu har bir keyingi tizimga tayanish uchun alohida obyekt beradi, va nomlar allaqachon yagona bo'lgani uchun parametr ahamiyatini yo'qotadi.
Qaysi yo'lni tanlasangiz ham, kirishni emas, boshqaruv modelini sinab ko'ring. Ikkala qurilmani ulang, ularning manzillari har xil ekanini tasdiqlang, so'ng yo'qotishni imitatsiya qiling va ulardan aynan bittasini o'chira olishingizni tekshiring. openvpn(8) qo'llanmasi parametr doirasini belgilaydi; bo'lishish haqiqatan maqbulmi, buni sizning o'chirish tartibingiz belgilaydi.