Jedan fizički adapter dovoljan je za mnoge VPN poslužitelje, a ni to nije univerzalno rješenje. Šifrirana veza dolazi na taj adapter, VPN proces je dešifrira, a zatim unutarnji promet izlazi kroz virtualno sučelje prije nego što stigne do lokalne usluge ili usmjerenog LAN-a. Hoće li to raditi zavisi od tri uslova: gdje se nalazi odredište, ima li LAN povratni put do skupa klijenata i daje li vam jedna zajednička fizička veza izolaciju na koju tvrdite. Odgovorite na ta tri i broj adaptera slijedi.

Tri uslova koja to odlučuju

Prvi uslov je odredište. Usluzi na samom VPN hostu pristupa se samo kroz sučelje tunela, dok host na LAN-u zahtijeva prosljeđivanje i povratni put. Drugi uslov je taj povratni put, jer LAN uređaj mora znati kako doći do skupa klijenata, bilo rutom bilo prevođenjem na poslužitelju.

Treći uslov je razdvajanje. Jedan adapter znači da svaki paket, šifriran ili ne, dijeli vezu i obično isti lanac pravila, pa zahtjev za izolacijom koji zavisi od odvojenog hardvera jedno sučelje ne ispunjava. To je činjenica o putu, a ne o tome kako je operativni sistem konfigurisan. Možete i dalje filtrirati promet tunela, ali ne možete tvrditi da imate granicu koju nemate.

Nijedan od tri ne odnosi se na broj portova na kućištu. Odnose se na usmjeravanje, vlasništvo nad adresama i to koliko dizajn zavisi od fizičkog razdvajanja.

Dva adaptera ostaju legitimna opcija kada fizičke zone, odvojeni uzlazni linkovi, propusnost ili vanpojasni put za oporavak to opravdavaju. To su konkretni zahtjevi i vrijedi ih navesti prije nego bilo ko naruči hardver.

Kada usluga radi na VPN hostu

Najjednostavniji slučaj ne treba prosljeđivanje. Daemon prima pakete klijenta na sučelju tunela i predaje ih lokalnom socketu, a odgovor se vraća istim sučeljem. Za host je adresa iz skupa klijenata prava lokalna adresa.

Dvije stvari ipak moraju biti ispravne: usluga mora slušati na adresi do koje tunel može doći, a vatrozid hosta mora prihvatati promet koji dolazi na sučelje tunela. Oboje je vidljivo u naredbama ispod.

ss -lntup | grep -E "5432|8080"
ip -brief addr show
ip route get 10.8.0.6 from 10.8.0.1

Vezivanje usluge samo na javnu adresu ili slučajno filtriranje sučelja tunela daje vezu koja stigne do hosta i zatim umre. To izgleda kao kvar VPN-a, a obično je odluka o socketu ili vatrozidu.

Kada je odredište na LAN-u

Ovdje dizajn s jednim adapterom stječe glas da je nezgodan. Poslužitelj mora proslijediti pakete klijenta prema LAN-u, a LAN uređaj mora poslati odgovore natrag u skup klijenata. Ili taj skup nosite kao rutu na LAN-u, ili na poslužitelju prevodite izvornu adresu da se odgovori vraćaju samom poslužitelju.

Oba odgovora su legitimna i propadaju na različite načine. Povratna ruta ostavlja izvornu adresu klijenta vidljivom odredištu, što je dobro za zapise i loše za pravila vatrozida koja pretpostavljaju LAN adrese. Prevođenje drži LAN jednostavnim i skriva identitet klijenta od odredišta.

sysctl net.ipv4.ip_forward
nft list ruleset | grep -A4 'chain forward'
ip route show table main | grep 10.8.0

Asimetričan put klasičan je simptom: zahtjev klijenta stigne, odgovor ode preko drugog usmjerivača i veza istekne bez ikakve greške na oba kraja. Snimite promet na obje strane prije nego zaključite bilo šta o tunelu.

Zašto alias ne stvara drugu zonu

Dodavanje druge adrese istom adapteru ili stvaranje dummy sučelja koje oponaša drugi port mijenja vrlo malo. Paketi i dalje izlaze kroz istu fizičku vezu, isti port na prekidaču i obično isti lanac vatrozida, pa među njima ne nastaje nova granica. To je pogodnost konfiguracije, a ne segmentacija. Tretiranje toga kao granice zone način je na koji zahtjev za izolacijom preživljava samo na papiru.

Odvojena zona traži stvarno razdvajanje na putu, a to je zahtjev koji drugi adapter ispunjava. Ako pravilo zavisi od toga da promet prema VPN-u nikada ne dijeli broadcast domenu s prometom prema LAN-u, jedan kabel ne može dati to svojstvo, bez obzira na to kako je host adresiran.

Gdje proizvod dokumentuje topologiju s više sučelja za određeni način rada, slijedite dokumentaciju tog proizvoda umjesto da izmišljate zaobilazno rješenje. Proizvođači takođe mijenjaju podržane topologije između izdanja, što je još jedan razlog da čitate aktualni vodič, a ne snimak ekrana starog čarobnjaka.

Provjerite raspored prema prometu koji dozvoljavate

Popišite klase prometa koje poslužitelj treba nositi: klijent prema hostu, klijent prema LAN-u, host prema LAN-u i šifriranu vanjsku vezu. Svaka klasa ima izvor, odredište i sučelje, a raspored mora zadovoljiti sve četiri odjednom. Dizajn koji rješava tri od njih obično je onaj koji stvara tikete.

Zatim potvrdite stvarna sučelja i stvarni snimak prometa, a ne dijagram u projektnom dokumentu. Naredbe ispod ispisuju oba prikaza.

ip -brief addr
ip route
tcpdump -ni any udp port 51820 -c 5
tcpdump -ni tun0 -c 5

Ako vanjski snimak pokazuje šifrirani promet, a unutarnji snimak pokazuje dešifrirani promet na sučelju tunela, dok fizički adapter nosi oboje, jedna kartica radi posao. Ako je unutarnji snimak prazan, problem je u tunelu ili u pravilima prosljeđivanja, a ne u broju adaptera. Odredite topologiju prema tim dvama snimcima i tablici usmjeravanja, pa će sljedeća izmjena imati s čime biti uspoređena.

Povezani članci