Javni prefiks za VPN klijente: šta zapravo kvari
Posuđeni javni prefiks sam po sebi ne izlaže klijente. On hvata odredišta koja pripadaju nekome drugom i mijenja značenje kada tunel padne.
Klijentski pul odabran zato što brojevi izgledaju uredno je ruta koja čeka da bude instalirana. Prefiks ne mora biti privatni da bi VPN radio, a korištenje bloka koji pripada nekome drugom također ne izlaže vaše korisnike internetu automatski. Ono što radi jeste da te adrese znače nešto drugo dok je tunel podignut, a zatim ponovo znače nešto drugo kada padne. Prođite kroz pet provjera ispod po redu i zaustavite se tamo gdje je odgovor „dodijeljeno negdje drugdje“.
Dodjela nije najava
Stavljanje adrese na tunelski interfejs ne najavljuje je internetu. Javna dostupnost zahtijeva rutu, autorizovanu putanju i provajdera voljnog da je nosi, a ništa od toga se ne pojavljuje zato što je klijent dobio adresu iz pula. Firewall politika i autorizacija hosta su opet odvojene odluke.
Zato rizik nije ono što većina ljudi pretpostavlja. Posuđeni prefiks ne čini vaše klijente dostupnim; on čini odredišta nekoga drugog nedostupnim s vaših klijenata, što je drugačiji kvar s drugačijim vlasnikom. Nitko nije napadnut i nikakva najava ne izlazi. Korisnik jednostavno ne može otvoriti stranicu koja je radila jučer, a helpdesk nema razloga sumnjati na VPN pul.
Razlika je važna kada birate pul. Da je vaša jedina briga bila izlaganje internetu, javni blok bi izgledao siguran jer ga ništa ne najavljuje. Brine lokalna ruta koju klijent instalira za taj prefiks, a ta ruta se instalira bez obzira na to vidi li je još neko.
Šta klijentska ruta zapravo hvata
Kada se tunel podigne, klijent dobija rutu za prefiks pula i ta ruta pobjeđuje zadanu rutu za svako odredište unutar njega. Zahtjev prema legitimnom hostu u tom bloku sada ide prema VPN-u umjesto prema internetu. Da li će propasti, visjeti ili stići na pogrešan server zavisi od toga šta vaša strana radi s njim.
ip route get 198.51.100.20 ip -br addr show tun0 traceroute -n 198.51.100.20
Pokrenite pretragu s podignutim tunelom i ponovo sa spuštenim. Adresa znači jedno u prvom slučaju i nešto potpuno drugačije u drugom, a svaka aplikacija koja je keširala vezu ili razrješenje imena kroz taj prelaz ponašat će se nedosljedno. Tu nedosljednost je teže podržavati od čistog kvara, jer zavisi od tajminga. Korisnik koji se ponovo poveže u pogrešnom trenutku dobija drugačije iskustvo od onog koji to ne uradi.
Zato ni poznata IP adresa nije dokaz identiteta. Zadržite provjeru sertifikata i imena servera za stvarno odredište, jer numerička adresa do koje ste došli prije pet minuta sada može pripadati drugoj komunikaciji.
Uporedite pul sa svakom mrežom koju znate
RFC 1918 izdvaja tri bloka za privatnu upotrebu: 192.168.0.0/16, 172.16.0.0/12 i 10.0.0.0/8. Milioni odvojenih organizacija ih ponovo koriste, pa je privatno izjava o dodjeli i nikada obećanje da niko drugi nije odabrao iste brojeve.
Uporedite kandidat-pul sa kancelarijskim LAN mrežama, cloud VPC-ima, drugim VPN pulovima, partnerskim vezama i opsezima koje udaljeni radnici vjerovatno imaju kod kuće. Kućni slučaj nije razlog za izmišljanje čudnog prefiksa; to je razlog da pul ostane mali i dokumentovan.
Uskladite dodjelu s onim ko posjeduje rutiranje i zabilježite povratnu putanju na istom mjestu. Pul do kojeg niko ne može rutirati natrag je pul koji će biti ponovo otkriven tokom ispada. Stavite pul u isti dokument kao i opsege lokacija, a ne u klijentsku konfiguraciju koju je uređivala samo jedna osoba. Dokument je ono što sljedeći sudar čini izbježivim.
Kada je javno adresiranje pravi odgovor
Organizacije s ispravno dodijeljenim globalnim prostorom mogu sasvim izgraditi VPN pul s javnim adresama, a neke to rade namjerno kako bi izbjegle translaciju. Taj dizajn i dalje zahtijeva rutiranje, validaciju izvora, pravila pristupa i autentifikaciju klijenata; dodjela ne daje ništa od toga.
Ono što daje jeste jedinstvenost, svojstvo koje posuđenom prefiksu nedostaje. Ako posjedujete blok, ruta koju vaš klijent instalira pokazuje na adrese koje su zaista vaše, a značenje se ne mijenja kada tunel padne.
Ne dodajte NAT automatski da nadoknadite izbor pula. Rutirano privatno rješenje s eksplicitnim povratnim rutama je čistije od translacije primijenjene zato što adresiranje nikada nije planirano, a IPv6 traži vlastiti namjerni plan, a ne kopiju pretpostavki IPv4.
Povucite loš pul bez gubitka pristupa
Ako je pul već implementiran, napravite inventar prije nego što ga promijenite: rezervacije adresa, instalirane rute, DNS zapise koji se razrješavaju u blok, firewall opsege i aplikacije koje o njima zavise. Zatim zakažite promjenu s istom pažnjom kao i svaki drugi prelaz rutiranja. Najavite je ljudima koji će to primijetiti, jer će njihove sesije pasti kada se pul premjesti. Tiha promjena adresiranja klijenata stvara zahtjeve za podršku koji izgledaju nepovezano s poslom.
Sačuvajte put oporavka koji ne zavisi od pula koji uklanjate, jer trenutak kada ga povučete je trenutak kada vaš udaljeni pristup može nestati s njim. Zatim provjerite oba smjera: predviđena privatna odredišta još rade, a internet odredišta koja su prije bila hvatana sada se razrješavaju na svoje prave vlasnike.
Želite pul koji mrežni tim može dodijeliti, rutirati i povući kao jednu koherentnu stvar. Format adrese sam po sebi ne uspostavlja ni sigurnost ni povezanost.