Kā vienai testa LAN piešķirt savu WireGuard izeju
Ierobežojiet vienu LAN uz WireGuard izeju ar īpašu maršrutēšanas tabulu un nesasniedzamu sargu, kamēr vārteja saglabā parasto WAN noklusējuma maršrutu.
Trīs risinājumi atrisina vienu un to pašu laboratorijas problēmu: mazai LAN ir jāiziet caur WireGuard partneri, kamēr pati vārteja saglabā parasto augšupējo savienojumu. Kārdinošais īsceļš ir pārvietot maršrutētāja noklusējuma maršrutu tunelī, taču tas salauž pašas kārbas pārvaldības ceļu un visu pārējo, ko tā pārsūta. Interesanta iespēja ir politikas balstīta maršrutēšana, kas ierobežota ar vienu saskarni un vienu prefiksu. Izvēlieties starp tām, atbildot uz trim jautājumiem par mašīnu, kas jums patiešām ir.
Izlemiet, kur dzīvo izeja
Pirmais jautājums: vai šis resursdators pārsūta arī kaut kam citam? Īpaša laboratorijas vārteja var iztikt ar pārsūtīšanas politiku, kas pēc noklusējuma visu noraida. Maršrutētājs ar ražošanas pienākumiem to nevar, un konkurējoša noteikumu kopuma uzlikšana virsū pārvaldītam ugunsmūrim ir tieši tas veids, kā tiek plānoti pārtraukumi. Otrais: vai jūs varat pārvaldīt divus politikas objektus un to secību starp pārstartēšanām? Trešais: vai jūsu partneris atļauj jūsu tuneļa avota adresi un piedāvā izeju internetā? Partneris, kas atklāj tikai privātu tīklu, ir cits produkts, un nekāda vietēja maršrutēšanas izmaiņa to nelabo. Ja kāda atbilde ir nē, ievietojiet izeju nosaukumtelpā vai vienreizējā virtuālajā mašīnā.
Nosaukumtelpa vai VM maksā atmiņu un dod jums tīru sprādziena rādiusu. Politikas balstīta maršrutēšana maksā divus noteikumus un atstāj jums vienu kārbu atkļūdošanai.
Izvēlieties izeju, kas atļauj jūsu avotu
Lielākā daļa šīs laboratorijas kļūmju notiek pirms tam, kad pastāv kaut viens ugunsmūra noteikums. Izejas operatoram ir jāpieņem avota adrese, ko jūsu paketes nes pēc tulkošanas, un šajā risinājumā tā ir tuneļa adrese, nevis LAN prefikss. Tāpēc maskēšana pieder risinājumam no paša sākuma, nevis kā vēla papildinājums.
Apstipriniet trīs lietas ar operatoru: partneris atļauj jūsu tuneļa adresi, tas pārsūta IPv4, nevis beidzas uz sevis, un tas piemēro izejas NAT. Bez pirmā jūsu paketes ierodas un pazūd. Bez trešā tās iziet ar privātu avotu un mirst nākamajā lēcienā. Pēc tam pārbaudiet, vai wg-quick neinstalē savu noklusējuma maršrutu, ko novērš Table = off; šis iestatījums nomāc maršrutu veidošanu, nevis partnera AllowedIPs pārbaudes vai tā DNS apstrādi.
Divi politikas objekti veic virzīšanu
Virzīšanai vajag tabulu un noteikumu. Tabulā ir divi maršruti: LAN prefikss ārā no LAN saskarnes un noklusējuma maršruts ārā no tuneļa. Noteikums sūta tabulā to satiksmi, kas ierodas LAN saskarnē un nes šo prefiksu. Izmantojiet iif selektoru kopā ar avota atbilstību, jo vārtejas pašas WireGuard paketes rodas lokāli un nekad neatbilst ienākošai saskarnei.
Sargs nāk pirms meklēšanas, nevis pēc tās. Šī secība ir visa risinājuma drošības īpašība.
Sargs ir otrais noteikums uz tā paša selektora, kura spriedums ir unreachable. Piešķiriet tam augstāku skaitlisko prioritāti, lai meklēšana joprojām uzvarētu, kamēr tunelis ir uzlika. Kad tuneļa maršruts pazūd, meklēšana neko neatgriež un sargs aptur meklēšanu, nevis ļauj tai iekrist galvenās tabulas WAN noklusējumā.
ip rule add from 192.168.50.0/24 iif lan0 lookup 51861 pref 1000
ip rule add from 192.168.50.0/24 iif lan0 unreachable pref 1001
ip route add table 51861 default dev wg0
Aizveriet atkāpšanās spraugu, pirms to atverat
Vispirms instalējiet sargu un pēc tam meklēšanu. Darot otrādi, paliek sekunžu logs, kurā testa klienta satiksme var sasniegt augšupējo savienojumu.
Filtrs pabeidz attēlu. forward āķī pieņemiet virzienu no LAN uz tuneli testa prefiksam un nodibināto atgriešanās virzienu, pēc tam izmetiet visu pārējo; šī prefiksa NAT uz tuneļa saskarni iet postrouting. Tieši policy drop atstāšana pārsūtīšanas ķēdē pārvērš pazudušo maršrutu klusumā, nevis noplūdē. Apgrieztā ceļa filtrēšanai tuneļa saskarnē vajag vaļīgu režīmu, jo publiskam avotam, kas ierodas atkapsulēts, labākais apgrieztais maršruts ir WAN pusē. Linux ņem augstāko no all un saskarnes vērtībām, tāpēc tuneļa saskarnes iestatīšana nav tas pats, kas validācijas vājināšana visur.
Pierādiet to ar kļūmes gadījumu
Uzdodiet kodolam precīzu jautājumu, nosaucot klienta avota adresi un saskarni, pa kuru tas ierodas. Meklēšana bez abiem atbild uz citu jautājumu un abos gadījumos izskatīsies pareiza. Pēc tam apskatiet ugunsmūra skaitītājus, partnera pārsūtīšanas stāvokli un paša klienta pakalpojumu.
Pareizi pārbaudiet noņemšanu. Apturiet tuneli, atstājot noteikumu un filtru savā vietā: klientam vajadzētu apstāties, un vārtejas pašas satiksmei jāturpina darboties. Pēc tam apturiet partneri, neaiztiekot vietējo saskarni, un tas ir gadījums, kas noķer risinājumus, kuri paļaujas tikai uz maršruta esamību. Visbeidzot pārstartējiet un vēlreiz pārbaudiet noteikumu secību, jo demontāžas āķis, kas noņem sargu, atdod visu risinājumu galvenajai tabulai. Pierakstiet tabulas numuru, prioritātes un saskarņu nosaukumus izmaiņu biļetenā, jo nākamais cilvēks, kas pievienos noteikumu, būs tas, kurš to salauzīs.