Router sa dostane na internet tunelom, zatiaľ čo notebook za ním stále hlási adresu ISP. Pridávanie pravidiel prijatia nepomáha, a toto zlyhanie je poučné: filtrovanie odpovedá, či paket smie prejsť, nie kam ide. Voľbu rozhrania už urobil dopyt na trasu, ktorý o vašom zozname klientov nič nevie. Opravte dopyt a firewall už nie je podozrivý.

Filtrovacie pravidlo nemôže vybrať rozhranie

Tok paketov na Linux routeri najprv vykoná rozhodnutie o trase a potom hák forward. Keď pravidlo zodpovedá odchádzajúcemu tunelovému zariadeniu, jadro už rozhodlo, že tunel je cesta von. Ak hlavná tabuľka stále uprednostňuje predvolenú trasu cez WAN, paket ide k ISP a pravidlo prijatia, ktoré ste práve napísali, ho nikdy neuvidí. Tento jediný fakt o poradí vysvetľuje, prečo stránka nových pravidiel firewallu nič nezmení.

Príklad nižšie používa LAN 192.168.8.0/24 na br-lan, tunelové zariadenie tun0 a jeden set-top box na 192.168.8.23, ktorý by mal ísť tunelom.

Prečítajte si dopyt skôr, než budete upravovať pravidlá

Požiadajte jadro, aby vyriešilo trasu v mene tohto klienta. Odpoveď obsahuje odchádzajúce zariadenie a zdrojovú adresu, ktorá by bola vybraná, a to je všetko, čo potrebujete na potvrdenie diagnózy. Ak odpoveď uvádza zariadenie WAN, paket nikdy nemal šancu dostať sa k vášmu pravidlu.

ip -4 route get 198.51.100.7 from 192.168.8.23

Zopakujte dopyt pre klienta, ktorý by mal zostať na obvyklej ceste. Keď obe odpovede uvádzajú rovnaké zariadenie, politika podľa zdroja ešte neplatí a oprava patrí do smerovania, nie do filtrovania.

Pripojte tabuľku ku klientom, ktorých chcete pokryť

Smerovanie podľa politík vkladá dopyt na pravidlá pred hlavnú tabuľku. Vytvorte tabuľku, ktorej predvolená trasa je tunel, potom ju pripojte k selektoru: vstupné rozhranie, zdrojová adresa alebo značka firewallu. Priority určujú poradie a hlavná tabuľka je hlboko v zozname na 32766, takže pravidlo s nízkym číslom sa prezerá prvé. Selektory rozhrania pokrývajú každého klienta na moste; selektory adresy pokrývajú jeden stroj.

ip -4 route add default dev tun0 table 200
ip -4 rule add iif br-lan lookup 200 priority 200

Rozhrania firmvéru zvyčajne zobrazujú rovnaké objekty ako stránka smerovania podľa politík alebo politiky VPN. Zoznam zariadení je tam ľahšie udržiavať než ručne písané pravidlá a zvyčajne prežije aktualizácie, ktoré menia syntax pravidiel.

Vyberte selektor zámerne. Pravidlo rozhrania je krátke a odolné do budúcnosti, ale zachytí aj vlastnú správnu prevádzku routera prichádzajúcu na tento most. Pravidlo zdroja je presné a vyžaduje úpravu vždy, keď sa zmení zoznam zariadení. Zapíšte si voľbu, pretože ju bude potrebovať ďalší človek, ktorý sa opýta, prečo sa jedno zariadenie správa inak.

Nechajte miestne ciele mimo tunela

Nová tabuľka pozná len trasy, ktoré do nej vložíte. Chýba prefix LAN, takže prevádzka tlačiarne a NAS by šla predvolenou trasou tunela a zmizla. Trasa throw ukončí dopyt v tejto tabuľke a vráti rozhodnutie hlavnej tabuľke.

ip -4 route add throw 192.168.8.0/24 table 200

Ak túto trasu vynecháte, miestne zdieľanie sa pokazí a vlastná správna relácia routera môže zmiznúť, ak je selektor širší, než bolo zamýšľané. Potom vyriešte otázku zdroja: tunelové pakety, ktoré stále nesú adresy LAN, potrebujú, aby druhá strana poznala spiatočnú cestu, zatiaľ čo maskovanie na tuneli tento predpoklad odstraňuje a odstraňuje aj identitu klienta, ktorú by druhá strana videla.

Pravidlá a trasy pridané za behu zmiznú po reštarte alebo aktualizácii firmvéru. Pridajte ich do spúšťacieho mechanizmu routera, raz reštartujte a znova otestujte z klienta: jeho verejnú adresu, druhého klienta, ktorý by mal zostať na WAN, a počítadlá tunela počas nového pripojenia.

Súvisiace články