duplicate-cn iki cihaza bir şəxsiyyət verir, iki deyil
duplicate-cn bir ümumi ad altında ikinci paralel sessiyaya icazə verir. Heç vaxt ikinci cihaz şəxsiyyəti, ikinci ünvan və ya ayrı ləğvetmə yaratmır.
Profili planşetə kopyalayın, qoşulun — noutbuk düşür. duplicate-cn əlavə edin, ikisi də qoşulu qalır və problem həll olunmuş kimi görünür, ta ki iki cihaz eyni tunel ünvanı üstündə dalaşana və ya itirilmiş bir planşet bütün hesabı oflayn hala salana qədər. Bu seçim bir şeyi və yalnız bir şeyi dəyişir: serverin artıq gördüyü ad altında ikinci sessiyaya icazə verib-verməməsini. Cihaz müstəqilliyindən tutmuş hər cihaz üçün ünvana və seçmə ləğvetməyə qədər insanların düzəldəcəyini gözlədiyi hər şey yenə də şəxsiyyətlə həll olunur, buradakı şəxsiyyət isə sertifikatdır.
Mif: ikinci sessiya ikinci şəxsiyyətdir
İntuisiya belədir: iki bağlantı iki müştəri olmalıdır, iki müştəri isə öz hüquqları olan iki cihaz olmalıdır. Server bunu belə modelləşdirmir. O, ümumi ad görür və duplicate-cn aktiv olduqda həmin adı daşıyan birdən çox canlı sessiyanı qəbul edir; hər biri daemon daxilində öz sessiya vəziyyətini alır.
Bu qəbulun sertifikat yoxlamasına heç bir aidiyyəti yoxdur. Eyni sertifikat yenə də etimad sənədidir, eyni açar yenə də şəxsi açardır və sertifikat subyektinə bağlanmış istənilən siyasət yenə də iki dəfə eyni qiymətə çevrilir. İkinci sessiya ikinci soketdir, ikinci şəxsiyyət deyil.
Bu fərq hər şey işləyəndə görünməzdir. İki cihazı bir-birindən ayırmaq lazım gələn anda isə çox görünən olur — bu da adətən onlardan birinin itirildiyi gündür.
İki sessiya eyni adı paylaşanda həqiqətən nə dəyişir
Seçim olmadan, artıq qoşulmuş ümumi ad altında yeni bağlantı əvvəlki sessiyanı sıxışdırıb çıxarır. Planşet qoşulanda noutbukun düşməsinin səbəbi budur və bu, səhv deyil, qəsdən qoyulmuş qeyri-müəyyənlik sipəridir. Seçimlə isə hər iki sessiya canlı qalır və server onları cihaza görə deyil, sessiyaya görə ayrıca izləyir.
Hər sessiya yenə də öz xarici bağlantısını və öz razılaşdırılmış açarlarını alır, ona görə paralel ötürmə qabiliyyəti həqiqətən paraleldir. Paylaşdıqları şey etimad sənədindən törəyən hər şeydir: siyasət axtarışları, müştəriyə xas konfiqurasiya, jurnal şəxsiyyəti və ləğvetmə. Sessiya vəziyyəti bağlantıya aiddir və onunla birlikdə ölür, etimad sənədi səviyyəsindəki faktlar isə hər ikisi üzrə qalır. Buna görə status çıxışı eyni adı iki dəfə sadalaya bilər, sayğaclar isə ayrı qalır.
Üzərində dizayn qurmazdan əvvəl qurulumuzun həqiqətən nə etdiyini təsdiqləyin, çünki seçimin təsirini seçim özü müəyyən edir, uydurmalar deyil:
grep -n 'duplicate-cn\|client-config-dir\|username-as-common-name' /etc/openvpn/server.conf
Təyin etdiyinizi sandığınız statik ünvan
Hər müştəri üçün konfiqurasiya ada görə axtarılır və tələ budur. Ümumi adın şərəfinə adlandırılmış client-config-dir faylı həmin addan istifadə edən hər cihaza tətbiq olunur, ona görə içindəki ifconfig-push hər iki cihaza eyni tunel ünvanını verir. İkinci sessiya ya qurulmur, ya da marşrutlaşdırma xətasına bənzəyən şəkildə toqquşur.
Dinamik hovuz təsadüfən daha yaxşı davranır, çünki hər sessiyaya hovuzdan müstəqil şəkildə ünvan ayrılır. Bu yenə də sizə hər cihaz üçün sabit ünvan vermir və o ünvana bağlanmış hər cihaz üçün siyasət də qətiyyən vermir.
Yerləşdirmə username-as-common-name istifadə edirsə, axtarış açarı sertifikat subyekti yerinə autentifikasiya olunmuş istifadəçi adı olur və iki dəfə daxil olan hər kəs üçün eyni toqquşma təkrarlanır. Konfiqurasiyanı idarə edən ad hər cihaz üçün unikal olmalıdır ki, hər cihaz üçün konfiqurasiya məna daşısın.
Paylaşılan şəxsiyyətin silinmə vaxtı edə bilmədiyi şeylər
Ləğvetmə sertifikat üzərində işləyir, nə göstərilən ad, nə də sessiya üzərində. O sertifikatı ləğv edin — surəti olan hər cihaz, o cümlədən heç kimin narahat etmək istəmədiyi ofisdəki cihaz, dərhal girişi itirir. Saxlayın — itirilmiş cihaz işləməyə davam edir, çünki protokolda onu təsdiqlənmiş surətdən fərqləndirən heç nə yoxdur.
Jurnallar da eyni qeyri-müəyyənliyi miras alır. Status çıxışı ümumi ad və real ünvan göstərir və hər ikisi iki cihazdan hər hansı birinə aid ola bilər. Hansı maşının nə etdiyini bilməli olan insident araşdırması bu suala VPN-in öz qeydlərindən cavab verə bilməz, jurnal səviyyəsi nə qədər təfərrüat versə də.
Bunun üçün kriptoqrafik çıxış yolu yoxdur. Eyni sertifikatı təqdim edən iki cihaz server üçün eyni iştirakçının iki dəfə təkrarıdır və əksini iddia edən hər hansı sxem nəzarət deyil, sadəcə adlandırma konvensiyasıdır.
Paylaşma nə vaxt doğrudur və onu necə məhdudlaşdırmaq olar
Paylaşmanın qanuni istifadələri var: bir neçə test maşınının istifadə etdiyi laboratoriya hesabı və ya cihazların birlikdə idarə olunduğu və ləğvetmə dəqiqliyinin əhəmiyyət daşımadığı ev. Belə hallarda seçimi qəsdən aktivləşdirin, paylaşılan etimad sənədini hər cihaz siyasətindən kənarda saxlayın və hovuza yer verin ki, sessiyalar ünvanda toqquşmasın.
Ayrı ünvanlar, ayrı jurnallar və ya ayrı silinmə tələb edən hər şey üçün normal qeydiyyat yolu ilə ayrı sertifikatlar verin. Bu, hər aşağı axın sisteminə dayanacaq fərqli bir obyekt verir və seçim əhəmiyyətini itirir, çünki adlar artıq unikaldır.
Hansı yolu seçsəniz seçin, girişi deyil, idarəetmə modelini sınaqdan keçirin. Hər iki cihazı qoşun, fərqli ünvanlara sahib olduqlarını təsdiqləyin, sonra itkini simulyasiya edin və onlardan yalnız birini silə bildiyinizi yoxlayın. openvpn(8) təlimatı seçimin əhatəsini müəyyən edir; paylaşmanın həqiqətən məqbul olub-olmadığını isə sizin silinmə prosedurunuz müəyyən edir.