VPN-szolgáltató váltása: a gazdagénevet tervezze meg, ne csak az IP-t
Egy új DNS-rekord nem mozgatja a meglévő munkameneteket. Tervezze meg, ki irányítja a nevet, mikor oldja fel azt minden kliens, és hogyan vonja ki a régi végpontot.
A DNS-rekordja helyes, a csere egészséges, és mégis néhány kliens órákat tölt a régi cím tárcsázásával. Néhányan azonnal elbuknak egy néven, amely feloldható, és soha nem válaszol. Mindkét eredmény egyetlen hiányosságból fakad: a gazdagépnév megváltoztatja, mit keres egy kliens, nem azt, mikor keresi, és nem azt, miben bízik, amikor a válasz megérkezik.
A tünet: helyes rekord, elavult alagutak
Egy nevet tároló profil nem olyan kliens, amely folyamatosan feloldja azt. A legtöbb egyszer oldja fel, a konfiguráció alkalmazásakor vagy amikor az alagút feljön, majd újrahasználja azt a címet a munkamenet végéig. A tetejére rakott hosszú TTL az oka annak, hogy az átállást az újracsatlakozások köré kell tervezni, nem a DNS szerkesztése köré.
Egyik viselkedés sem hiba, és éppen ez teszi zavaróvá a tünetet. A kliens egy korábban kapott válasszal dolgozik, és semmi a kiszolgáló oldalán nem mutatja, melyik válasz volt az. Tervezze be az újracsatlakozást a karbantartási ablakba, és mondja el a felhasználóknak, mit fognak látni, vagy töltse az ablakot a jegyek megválaszolásával. Azonos jelentések sora a szokásos eredmény.
Ki irányítja a nevet, és mit ellenőriz a kliens
A zóna feletti ellenőrzés dönti el, milyen gyorsan haladhat egy migráció. Tartsa a rekordot olyan regisztrátornál, ahová be tud jelentkezni, és írja le, ki más tudja megváltoztatni.
A bizalom nem követi a nevet. Egy TLS-alapú kliens ellenőrizheti egy tanúsítvány identitását vagy egy rögzített nevet, míg a WireGuard a partner nyilvános kulcsát hitelesíti, és teljesen figyelmen kívül hagyja a gazdagépnevet. Ez a különbség dönti el, elég-e a DNS szerkesztése, vagy minden profilnak új ujjlenyomat kell. Egy rekordváltozás soha ne hatalmazzon fel olyan végpontot, amelyet senki nem hagyott jóvá.
Tartsa távol az adminisztratív és helyreállítási hozzáférést a nyilvános kliensnévtől. Egy tárhelyfiók elvesztése ne kerüljön a klienseket átirányító rekordba is. A helyreállítási útvonalat olyan helyen tárolja, amely nem függ az elhagyott szolgáltatótól.
Mikor olvassa újra a nevet az egyes kliensek
A feloldás időzítése kliensenkénti tulajdonság, ezért ellenőrizze a ténylegesen szállított implementációt, mielőtt átállási ablakot ígér. A wg-quick az interfész feljövetelekor oldja fel a végpontot, és addig tartja meg a címet, amíg az alagút újra nem indul. Az OpenVPN-kliens csatlakozáskor keresi a nevet, és hogy újracsatlakozáskor újra megnézi-e, a beállításaitól függ.
| 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 mobil kliensek a szokásos meglepetés, mert alvás vagy hálózatváltás alatt is megtarthatják a feloldott címet. Csak akkor tegyen közzé A és AAAA rekordokat, ha a csere mindkét családban válaszol. Az egyik családban válaszoló cím semmit nem bizonyít a másikról, és egy halott AAAA rekord időtúllépést ad minden kísérlethez. Dokumentálja a feloldási viselkedést minden támogatott klienshez, majd teszteljen azokon az eszközökön, amelyeket az emberek ténylegesen használnak.
Az újracsatlakozás a legtöbb kliensben felhasználói művelet, és a kiszolgáló nem tudja kikényszeríteni. Tegye ezt a lépést a karbantartási megjegyzésbe, egy sorral arról, mit fog látni a felhasználó, amikor megtörténik.
Bizonyítékok alapján álljon át, majd vonja ki a régi végpontot
A váltás előtt bizonyítsa minden réteget a cserénél: a figyelő válaszol, a tűzfal átengedi a portot, az útvonalak helyesen térnek vissza, a név az új címre oldódik fel, és egy ismert identitás elfogadásra kerül. Egy kapcsolatot elfogadó figyelő nem ugyanaz, mint amelyik befejez egy kézfogást, ezért a kézfogást tesztelje, ne a portot. Tartsa az aktuális visszavonási listát a konfiguráció mellett, mert egy visszaállított biztonsági mentés újra létrehozza a partnerlistát úgy, ahogy volt, és újra megnyitná a már lezárt hozzáférést. Jegyezze fel, milyen identitással tesztelt, mert az «működik» nem olyan bizonyíték, amelyet bárki megismételhet.
getent hosts vpn.example.com
ss -lunp | grep 51820
wg show wg0 latest-handshakes
Az átállás alatt figyelje a kapcsolódási kísérleteket mindkét végponton ugyanarra az identitásra. Egy kliens, amely még mindig a régi cím ellen hitelesít, olyan profil vagy gyorsítótárazott válasz, amely soha nem mozdult el. Egy dátumozott terv szerint vonja ki a régi végpontot, mert két szolgáltatás, amely ugyanazt az identitást fogadja el, két ajtót hagy nyitva.
Az átállási teszt egy alkalmazás-munkamenet az új végponton keresztül, nem ping. Amint az a munkamenet működik, és a régi végpont egyetlen engedélyezett kísérletet sem naplóz egy teljes újracsatlakozási ciklus alatt, a költözés befejeződött.