Fejn tmur in-NAT tal-VPN f'before.rules ta' UFW u kif ttestjaha
Linja NAT f'before.rules trid tkun ġewwa sezzjoni tat-tabella valida b'COMMIT. Ipparsja l-kandidat b'iptables-restore --test qabel ma terġa' tgħabbi UFW.
Regola NAT li taħdem meta tittajpja fis-shell tfalli meta tpejjepha f'before.rules, għax dan il-fajl mhuwiex skript. Huwa dokument fil-format tar-restawr b'sezzjonijiet tat-tabelli, dikjarazzjonijiet tal-ktajjen u markatur COMMIT għal kull tabella. Linja fil-post żbaljat jew twaqqaf ir-restawr kollu jew tarmi bil-kwiet regoli li kont taħseb li hemm. Il-proċedura hawn taħt tqiegħed il-framment fejn il-qafas jistenna u tipprova r-riżultat qabel l-għeluq mill-ġdid li jmiss.
Kmand tas-shell mhuwiex fajl tar-restawr
Linja li tibda b'iptables -t nat hija struzzjoni lill-binarju iptables, filwaqt li l-fajl li jaqra UFW huwa deskrizzjoni ta' sett komplet ta' regoli. Id-differenza mhix kosmetika: il-format tar-restawr irid ikun jaf f'liema tabella jinsab, liema ktajjen jeżistu u fejn tintemm it-tabella. Kmanda mpejjpa f'dak id-dokument hija jew żball tas-sintassi jew, agħar, regola mwaħħla mat-tabella żbaljata. Il-qafas jgħabbi dawn il-fajls permezz ta' għodda tar-restawr propju għax huma dikjarattivi u mhux sekwenzjali.
Id-dokument jitgħabba wkoll kollu kemm hu, għalhekk sezzjoni waħda ħażina tista' twaqqaf l-applikazzjoni tal-bqija tal-fajl. Għalhekk żball żgħir fi framment NAT iġib miegħu r-regoli tal-filtru, u hekk bidla fil-firewall issir waqfa.
Qiegħed il-framment ġewwa s-sezzjoni tat-tabella eżistenti
Framment NAT għandu forma, u l-forma hija aktar importanti mit-test tar-regola ġewwa fih. L-intestatura tat-tabella tiftaħ is-sezzjoni, id-dikjarazzjonijiet tal-ktajjen jistabbilixxu l-kontaturi, ir-regoli jsegwu, u COMMIT jagħlaq is-sezzjoni.
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.55.0.0/24 -o ens3 -j MASQUERADE
COMMIT
Il-pool u l-interface hawn fuq huma postijiet għall-valuri tiegħek; l-istruttura hija l-parti li tiswa li tikkopja. Jekk il-fajl diġà fih sezzjoni *nat, żid ir-regola ġewwa dik is-sezzjoni minflok tiftaħ it-tieni waħda, għax il-format jistenna COMMIT wieħed għal kull tabella u żewġ sezzjonijiet għall-istess tabella huma tiswija li qed tistenna li sseħħ. Żomm id-definizzjonijiet tal-ktajjen tad-distribuzzjoni sħaħ, inkluż dawk li żied il-fornitur għall-integrazzjoni tiegħu stess. Il-manwal tal-qafas UFW jiddokumenta l-fajls before, user u after flimkien mar-rekwiżit ta' COMMIT li jaqbel.
Jekk il-fajl jirriżulta vojt, tmiluhx minn tutorial. Ikkonferma liema pakkett jippossjedih u x'inhi fil-fatt il-politika ħajja, għax fajl persistenti vojt ma jippruvax li l-kernel m'għandux regoli, u sett ta' regoli mgħobbi ma jippruvax li t-tgħabbi li jmiss ikollu fajl komplet x'jaqra. L-ewwel erġa' stabbilixxi l-linja bażi appoġġjata, imbagħad erġa' applikaha l-bidliet tas-sit fuqha.
Ittestja l-kandidat mingħajr ma tapplikah
L-għodda tar-restawr tista' tipparsja u tibni sett ta' regoli mingħajr ma tapplikah, u dan huwa l-irħas test disponibbli. Mexxiha fuq kopja protetta minflok fuq il-fajl ħaj, u aqra t-test tal-iżball mhux biss l-istat tal-ħruġ. Falliment fil-parsja jsemmi linja u normalment tabella, li huwa aktar minn dak li jgħidlek tgħabbi fallut.
sudo cp /etc/ufw/before.rules /root/before.rules.bak
sudo iptables-restore --test < /root/before.rules.bak
echo "exit: 0"
Li tgħaddi dik il-verifika tipprova li d-dokument jiġi pparsjat u xejn aktar. Ma tippruvax li l-kandidat għadu fih kull katina li UFW jiddependi fuqha, li jippermetti biss is-sorsi li kellhek ħsieb, jew li l-amministrazzjoni mill-bogħod tibqa' aċċessibbli. Dawn huma reviżjonijiet separati, u l-aħħar waħda tiswa sessjoni oħra miftuħa qabel tibda.
Agħżel l-għodda li taqbel mal-backend installat u mal-familja tal-indirizzi. Host li jmexxi l-backend nft permezz tas-saff tal-kompatibilità jeħtieġ il-kmand korrispondenti, u r-regoli IPv6 jgħixu f'fajl kompletament differenti.
Żomm il-forwarding, in-NAT u l-politika tal-aċċess mifruda
It-traduzzjoni tas-sors issolvi problema tal-indirizzar u ma tagħti xejn. Il-forwarding huwa permess separat ikkontrollat minn sysctl u mit-tabella tal-filtru, u dan huwa dak li n-nies jinsieh meta tunnel jagħti r-rotta imma ma jgħaddix traffiku. Il-politika tal-aċċess hija t-tielet deċiżjoni dwar liema sorsi jistgħu jaslu għal liema servizzi, u l-ebda regola NAT ma tesprimiha. Li żżomm it-tlieta mifruda huwa dak li jagħmel falliment dijanjostikabbli minflok sintomu wieħed vag.
sysctl net.ipv4.ip_forward
sudo iptables -t nat -S POSTROUTING
sudo iptables -S FORWARD
Aqra dawn it-tliet outputs flimkien, mhux wieħed wieħed. Regola masquerade b'forwarding diżattivat tipproduċi klijent li jikkonnettja u ma jasal imkien, li min-naħa tal-klijent jidher eżatt bħal ħsara fir-rotta u jibgħat lin-nies lejn il-fajl żbaljat. It-tabella tal-filtru hija wkoll il-post fejn jinħeba accept wisgħin wisq, allura iċċekkja l-politika default tagħha waqt li tkun hemm.
Ivverifika tgħabbi, rifjut u telf tal-VPN
Tliet osservazzjonijiet jagħmlu test tal-aċċettazzjoni komplet: it-tgħabbi jirnexxi, operazzjoni tal-klijent permessa taħdem, u talba li suppost tiġi rrifjutata hija fil-fatt rrifjutata. It-tielet hija dik li tintrema, u hija l-unika prova li l-politika qed tagħmel xi ħaġa.
sudo ufw reload
sudo ufw status verbose
sudo iptables -t nat -L POSTROUTING -n -v
Imbagħad ipprova l-falliment li ddisinjajt għalih. Waqqa' t-tunnel u osserva x'jagħmel il-host, għax politika li taħdem biss sakemm il-VPN huwa mixgħul hija politika b'dipendenza mhux dikjarata. Erġa' tgħabbi għal darba oħra wara biex tipprova li huwa l-fajl, u mhux xi stat eżekuttiv li jibqa', li jipproduċi r-riżultat li jaħdem.
NAT tal-IPv4 ma jgħid xejn dwar IPv6, allura ddikjara l-kopertura maħsuba għaż-żewġ familji fl-istess nota tar-regola. Il-mira hija politika mmaniġġjata koerenti, u framment li ġie pparsjat b'kumbinazzjoni mhuwiex prova tagħha.