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.

Artikli relatati