Izlazna IP adresa VPN-a nije dokaz tunela: šta serveri vide
Dopuštati samo izlazne adrese VPN-a ili Tora sprovodi pravilo o adresi, a ne dokaz tunela. Evo šta svaka strana može i ne može primijetiti.
Neko traži uslugu do koje mogu doći samo korisnici VPN-a, a očigledna implementacija je dopustiti listu izlaznih adresa. Lista čini nešto stvarno: ograničava ko se može povezati. Ona ne dokazuje da je tunel korišten, jer adresa pripada onome ko upravlja izlazom, a taj operater može proslijediti tuđi saobraćaj. Razlika između tih tvrdnji jeste cijeli problem dizajna.
Server vidi jednu adresu po vezi
Veza dolazi s izvornom adresom i odredišnim portom, i to je sve što mrežni sloj izvještava. Kada klijent koristi tunel, paketi koji stižu do vašeg prijemnika dolaze s izlaza ili s prevođenja ispred njega. Vlastita adresa klijenta, obično privatna, nikad se ne pojavljuje. Zato pravilo vatrozida napisano za klijentov lokalni raspon ne čini baš ništa.
Sve nakon te izvorne adrese jesu podaci aplikacije, a aplikacija im može vjerovati samo onoliko koliko ih autentificira.
Provjerite kako izgleda vaš izlaz
Pogledajte put s obje strane prije pisanja pravila. Klijentov pogled na vlastiti izlaz i serverov pogled na vezu dvije su činjenice koje su važne.
curl -sS https://api.ipify.org; echo
ss -tn state established '( sport = :443 )' | headPrva komanda izvještava javnu adresu pod kojom se klijent pojavljuje, a to je vrijednost koju svaka lista dopuštenih mora sadržavati. Druga prikazuje uspostavljene veze na serveru s adresama njihovih sugovornika, i upravo s tim će se pravilo stvarno podudarati. Ako se to dvoje ne slaže s vašim mentalnim modelom, popravite model prije uređivanja politike. Vatrozid oblaka baze podataka, lista dopuštenih aplikacije i balanser opterećenja mogu svaki vidjeti drugi sloj prevođenja.
Može se navesti samo jedan od dva skupa izlaza
Jedan slučaj je provjerljiv u trenutku zahtjeva, a drugi nije, što daje vrlo različita jamstva.
curl -sS https://check.torproject.org/torbulkexitlist | wc -lObjavljena lista Torovih izlaza može se dohvatiti i uporediti, zavisno od starosti liste i vlastite politike svakog izlaza, pa je pravilo odbijanja prema poznatim izlazima provedivo i pregledno. Ne postoji ekvivalentan registar za komercijalne VPN-ove. Adrese se rotiraju, mnogi provajderi ne objavljuju ništa, a tunel može raditi na iznajmljenoj cloud adresi koja nikad nije pripadala VPN-u. Lista koju sastavite snimka je zabilježenih adresa, a njeno proširenje na hostinške raspone dodaje nepovezane poslove bez dodavanja dokaza.
Koristite adrese kao ulaz u politiku, ne kao dokaz
Odredite čemu pravilo služi. Mrežno ograničenje treba ostati usko, zabilježiti primijećenu adresu s datumom i razlogom i dati legitimnim korisnicima put oporavka kada im se izlaz promijeni. Kontrola pristupa treba autentificiran račun ili potpisani token, jer samo oni vežu zahtjev za identitet. Procjena rizika može koristiti adresu kao jedan nepouzdan signal, prihvatajući njegove lažne pozitivne i slijepe tačke. Napisati pravilo kao produktnu odluku iskreno je; napisati ga kao provjeru da tunel postoji nije.
Zrcalni zahtjev, vraćanje stvarne adrese korisnika iza VPN-a, ne uspijeva iz istog razloga: jedna veza nosi jednu adresu, a promjena između sesija dosljedna je s nekoliko objašnjenja. Tretirajte raniju vrijednost kao historiju, ne kao istinu.