VPN პროვაიდერის შეცვლა: დაგეგმეთ ჰოსტის სახელი და არა მხოლოდ IP
ახალი DNS ჩანაწერი არსებულ სესიებს არ გადაადგილებს. დაგეგმეთ, ვინ აკონტროლებს სახელს, როდის ხსნის მას თითოეული კლიენტი და როგორ გააუქმებთ ძველ ბოლო წერტილს.
თქვენი DNS ჩანაწერი სწორია, შემცვლელი ჯანსაღია და მაინც ზოგი კლიენტი საათობით ურეკავს ძველ მისამართს. რამდენიმე მაშინვე ვარდება იმ სახელზე, რომელიც იხსნება და არასდროს პასუხობს. ორივე შედეგი ერთი ხარვეზიდან მოდის: ჰოსტის სახელი ცვლის იმას, რასაც კლიენტი ეძებს, და არა იმას, როდის ეძებს, და არც იმას, რისი იმედი აქვს პასუხის მოსვლისას.
სიმპტომი: სწორი ჩანაწერი, მოძველებული გვირაბები
სახელის შემნახველი პროფილი არ არის კლიენტი, რომელიც მას განუწყვეტლივ ხსნის. უმეტესობა მას ერთხელ ხსნის, კონფიგურაციის გამოყენებისას ან გვირაბის აწევისას, შემდეგ კი იმ მისამართს სესიის დასრულებამდე იყენებს. გრძელი TTL ამის თავზე არის მიზეზი, რის გამოც გადასვლა უნდა დაიგეგმოს ხელახალი დაკავშირებების გარშემო და არა DNS-ის რედაქტირების.
ორივე ქცევა ხარვეზი არ არის და სწორედ ეს ხდის სიმპტომს დამაბნეველს. კლიენტი მუშაობს ადრე მიღებული პასუხით და სერვერის მხარეს არაფერი აჩვენებს, რომელი პასუხი იყო. დაგეგმეთ ხელახალი დაკავშირება ტექნიკური მომსახურების ფანჯარაში და უთხარით მომხმარებლებს, რას დაინახავენ, ან გაატარეთ ფანჯარა ბილეთებზე პასუხის გაცემაში. იდენტური შეტყობინებების რიგი ჩვეულებრივი შედეგია.
ვინ აკონტროლებს სახელს და რას ამოწმებს კლიენტი
ზონაზე კონტროლი განსაზღვრავს, რამდენად სწრაფად შეიძლება მიგრაციის წინსვლა. შეინახეთ ჩანაწერი ისეთ რეგისტრატორთან, სადაც შეგიძლიათ შესვლა, და ჩაწერეთ, კიდევ ვის შეუძლია მისი შეცვლა.
ნდობა სახელს არ მიჰყვება. TLS-ზე დაფუძნებულ კლიენტს შეუძლია სერტიფიკატის იდენტობის ან ჩამაგრებული სახელის შემოწმება, მაშინ როცა WireGuard ავთენტიფიცირებს პარტნიორის საჯარო გასაღებს და ჰოსტის სახელს საერთოდ უგულებელყოფს. ეს განსხვავება წყვეტს, საკმარისია თუ არა DNS-ის რედაქტირება, თუ თითოეულ პროფილს ახალი ანაბეჭდი სჭირდება. ჩანაწერის ცვლილება არასდროს არ უნდა აძლევდეს უფლებას ბოლო წერტილს, რომელიც არავის დაუმტკიცებია.
ადმინისტრაციული და აღდგენის წვდომა შორს დაიჭირეთ საჯარო კლიენტის სახელისგან. ჰოსტინგის ანგარიშის დაკარგვა არ უნდა გაგიტაცოთ იმ ჩანაწერიც, რომელიც კლიენტებს გადამისამართებს. აღდგენის გზა შეინახეთ ისეთ ადგილას, რომელიც არ არის დამოკიდებული იმ პროვაიდერზე, რომელსაც ტოვებთ.
როდის კითხულობს თითოეული კლიენტი სახელს ხელახლა
გადაწყვეტის დრო თითოეული კლიენტის თვისებაა, ამიტომ სანამ გადასვლის ფანჯარას დაპირდებით, შეამოწმეთ ის იმპლემენტაცია, რომელსაც ნამდვილად აწვდით. wg-quick ხსნის ბოლო წერტილს ინტერფეისის აწევისას და ინახავს ამ მისამართს გვირაბის გადატვირთვამდე. OpenVPN კლიენტი სახელს ეძებს დაკავშირებისას, და ხელახლა შეხედავს თუ არა ხელახალი დაკავშირებისას, დამოკიდებულია მის პარამეტრებზე.
| Client | When it resolves | What it verifies |
|---|---|---|
| wg-quick | At interface start, cached for the session | Peer public key, not the name |
| OpenVPN 2.6 | On connect, possibly again on reconnect | Certificate identity or pinned name |
| Mobile clients | May hold the answer across sleep or a network change | Platform trust store, same certificates |
მობილური კლიენტები ჩვეულებრივი სიურპრიზია, რადგან მათ შეუძლიათ გადაწყვეტილი მისამართი შეინახონ ძილის ან ქსელის შეცვლის განმავლობაში. გამოაქვეყნეთ A და AAAA ჩანაწერები მხოლოდ მაშინ, თუ შემცვლელი ორივე ოჯახში პასუხობს. ერთ ოჯახში მპასუხობ მისამართი მეორეზე არაფერს ამტკიცებს, და მკვდარი AAAA ჩანაწერი ყოველ ცდას დროის ლიმიტს უმატებს. დააფიქსირეთ გადაწყვეტის ქცევა თითოეული მხარდაჭერილი კლიენტისთვის, შემდეგ გამოსცადეთ იმ მოწყობილობებზე, რომლებსაც ხალხი ნამდვილად იყენებს.
ხელახალი დაკავშირება უმეტეს კლიენტში მომხმარებლის მოქმედებაა და სერვერს არ შეუძლია მისი იძულება. ჩასვით ეს ნაბიჯი ტექნიკური მომსახურების ჩანაწერში, ერთი სტრიქონით იმის შესახებ, თუ რას დაინახავს მომხმარებელი, როცა ეს მოხდება.
გადადით მტკიცებულებებზე დაყრდნობით, შემდეგ გააუქმეთ ძველი ბოლო წერტილი
გადართვამდე დაამტკიცეთ თითოეული ფენა შემცვლელზე: მსმენელი პასუხობს, ფაირვოლი პორტს ატარებს, მარშრუტები სწორად ბრუნდება, სახელი ახალ მისამართზე იხსნება და ცნობილი იდენტობა მიიღება. მსმენელი, რომელიც კავშირს იღებს, არ არის იგივე, რაც ხელის ჩამორთმევას ასრულებს, ამიტომ გამოსცადეთ ხელის ჩამორთმევა და არა პორტი. მიმდინარე გაუქმების სია კონფიგურაციის გვერდით შეინახეთ, რადგან აღდგენილი სარეზერვო ასლი პარტნიორების სიას ისევ ისე ქმნის, როგორც იყო, და ხელახლა გახსნიდა უკვე დახურულ წვდომას. ჩაწერეთ, რომელი იდენტობით გამოსცადეთ, რადგან «ეს მუშაობს» არ არის მტკიცებულება, რომელიც ვინმეს შეუძლია გაიმეოროს.
getent hosts vpn.example.com
ss -lunp | grep 51820
wg show wg0 latest-handshakes
გადასვლის დროს თვალი ადევნეთ კავშირის ცდებს ორივე ბოლო წერტილზე ერთი და იმავე იდენტობისთვის. კლიენტი, რომელიც ჯერ კიდევ ძველი მისამართის წინააღმდეგ ავთენტიფიცირდება, პროფილია ან შენახული პასუხი, რომელიც არასდროს გადაადგილებულა. გააუქმეთ ძველი ბოლო წერტილი თარიღიანი გეგმით, რადგან ერთ იდენტობას მიმღები ორი სერვისი ორ კარს ღიად ტოვებს.
გადასვლის ტესტი არის აპლიკაციის სესია ახალი ბოლო წერტილის გავლით და არა ping. როგორც კი ეს სესია იმუშავებს და ძველი ბოლო წერტილი სრული ხელახალი დაკავშირების ციკლის განმავლობაში არცერთ ნებადართულ ცდას არ ჩაწერს, გადატანა დასრულებულია.