Il-klijent jieħu indirizz, is-server iwieġeb għall-ping, u kull paġna xorta tispiċċa f'timeout. Ħafna nies jibdew jeditjaw il-profil tal-klijent f'dan il-punt, li normalment huwa xogħol fix-xejn: ladarba t-tunnel jogħla, is-server irid iġib ruħu bħal router. Tliet kundizzjonijiet iridu jżommu fl-istess ħin qabel ma packet joħroġ u tiġi lura tweġiba, u s-sintomu huwa l-istess tkun liema hi li hija nieqsa.

Għaliex tunnel li jaħdem xorta m'għandux ħruġ 'il barra

Il-kernel irid jgħaddi packets bejn l-interfaces, li b'mod awtomatiku huwa mitfi fuq il-biċċa l-kbira tad-distribuzzjonijiet ta' Linux. It-traffiku irid jiġi tradott għal indirizz li d-dinja ta' barra tista' twieġeb għalih, sakemm kull router upstream diġà jaf it-triq lura għas-subnet tat-tunnel. It-triq tal-forwarding tal-firewall trid tippermetti t-traffiku fiż-żewġ direzzjonijiet, inkluż it-tweġibiet.

Kull waħda minn dawn tista' tiġi ffissata b'mod separat, u dan huwa n-nassa. L-attivazzjoni tal-forwarding mingħajr regola ta' traduzzjoni tħalli l-packets joħorġu b'sors privat u mingħajr triq lura. Iż-żieda tat-traduzzjoni mingħajr regola ta' forwarding tħalli l-kernel jaqa' l-packet pass aktar tard.

Għalhekk ittestja t-tliet saffi minflok il-klijent, u ibdel waħda kull darba sabiex ir-riżultat ikollu tifsira.

Il-forwarding huwa swiċċ tal-kernel li trid tagħmel permanenti

Iċċekkja l-valur attwali qabel ma tbiddlu, imbagħad issettjah u kkonferma li l-bidla daħlet fis-seħħ.

sysctl net.ipv4.ip_forward
sysctl -w net.ipv4.ip_forward=1
sysctl net.ipv4.ip_forward

L-ewwel kmand jirrapporta l-valur attwali, it-tieni jissettjah waqt it-tħaddim, u t-tielet jipprova li l-kitba ħadmet. Il-valur waqt it-tħaddim jisparixxi fl-istartjar mill-ġdid li jmiss, u għalhekk sessjoni li taħdem tista' tinkiser wara manutenzjoni mingħajr ebda bidla fil-konfigurazzjoni.

Agħmilha permanenti fi fajl taħt /etc/sysctl.d/, imbagħad applika dak il-fajl minflok ma terġa' tibda sabiex issir taf. Fuq FreeBSD l-ekwivalenti huwa net.inet.ip.forwarding, b'gateway_enable=YES f'rc.conf għall-permanenza. Apparat li jirrapporta l-forwarding mitfi jispjega klassi sħiħa ta' rapporti „il-packets jaslu u xejn ma jerġa' lura”. Iċċekkja l-issettjar wara kull aġġornament ukoll, għax kernel mibni mill-ġdid jew immaġini ta' apparat mibdula jistgħu jerġgħu jissettjawh mingħajr ma jgħidu lil ħadd.

Agħżel masquerade jew indirizz tat-traduzzjoni wieħed fiss

B'indirizz ta' barra dinamiku, masquerading hija l-forma korretta l-aktar sempliċi. Semmi s-subnet tat-tunnel bħala s-sors u l-interface ta' barra bħala l-ħruġ.

iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -o eth0 -j MASQUERADE

B'indirizz pubbliku statiku, it-traduzzjoni tas-sors għal dak l-indirizz eżatt hija aktar prevedibbli u aktar faċli biex tiġi awditjata.

iptables -t nat -A POSTROUTING -s 10.9.0.0/24 -j SNAT --to-source 198.51.100.10

It-tieni forma ġġorr nassa tal-manutenzjoni: indirizz kodifikat bl-iebes li jinbidel aktar tard iżomm it-tunnel jaħdem waqt li l-aċċess għall-internet jieqaf bil-kwiet. Jew uża masquerade jew aġġorna r-regola kull darba li l-fornitur iċaqlaqlek. L-interface hija importanti wkoll, għax router li jaqsam it-tunnel upstream tiegħu stess irid jittraduċi minn dak it-tunnel u mhux mill-WAN fiżika.

It-tabella tal-filtru hija t-tielet bieb

Il-forwarding u t-traduzzjoni jistgħu jkunu t-tnejn korretti waqt li l-packet xorta jmut fit-tabella tal-filtru. ufw huwa ħati frekwenti: il-politika tiegħu tal-forwarding tiġi bħala DROP, u l-bqija tal-konfigurazzjoni tista' tidher perfettament korretta waqt li dak l-issettjar wieħed joqtol it-traffiku. Li tgħolliha hija deċiżjoni ta' sigurtà deliberata u mhux kaxxa tal-verifika.

iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -o tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

L-ewwel regola tippermetti traffiku ġdid mit-tunnel lejn barra, u t-tieni tippermetti biss tweġibiet lura. Issikka t-tnejn għas-subnet tat-tunnel u d-destinazzjoni li beħsiebek, għax aċċettazzjoni ġenerali fuq l-interface tat-tunnel iddawwar il-VPN f'punt ta' ħruġ miftuħ għal kull min jista' jawtentika.

Tunnel bil-pont jeħtieġ tweġiba differenti. L-indirizz jappartjeni lill-pont, mhux lill-port fiżiku, għalhekk l-iskjavitù tal-interface ineħħi l-indirizz li kellu qabel u l-host jidher mhux aċċessibbli sakemm il-pont innifsu jieħu wieħed, li dhclient br0 jista' jipprovdi. Dak il-falliment jidher bħala problema tal-VPN u huwa problema tat-tieni saff. Iċċekkja l-indirizz tal-pont innifsu qabel ma tmiss il-firewall, għax bidla fil-filtru ma tistax tissewwi host li m'għadx għandu indirizz minn fejn jibgħat.

Fejn wieħed iħares meta paġna qatt ma tgħabbi

Agħmel ping lill-indirizz tat-tunnel tas-server biex tipprova li t-tunnel jeżisti. Imbagħad ħaddem traceroute mill-klijent għal indirizz pubbliku u aqra fejn jieqaf: fis-server il-packet jasal imma ma jiġix mgħoddi jew tradott; lil hinn mis-server il-problema hija upstream u barra minn idejk.

ping -c 3 10.9.0.1
traceroute -n 198.51.100.10

L-ewwel kmand jipprova li t-tunnel iġorr it-traffiku sas-server innifsu, u t-tieni juri kemm jasal packet lejn barra. Traċċa li tintemm fl-indirizz tat-tunnel tindika lejn forwarding jew traduzzjoni fis-server, filwaqt li traċċa li tieqaf hop aktar tard tindika lejn il-fornitur jew it-triq lura tar-router upstream.

Fis-server, osserva l-interface ta' barra waqt li klijent jgħabbi paġna. Traffiku li joħroġ b'indirizz tas-sors privat ifisser li t-traduzzjoni hija nieqsa, u l-ebda tweġiba ifisser li t-triq tal-forwarding jew it-triq lura upstream qed twaqqgħu.

Jekk il-klijenti remoto jridu wkoll jilħqu hosts fuq il-LAN tas-server, ftakar li l-LAN teħtieġ triq lura għas-subnet tat-tunnel. Dan huwa routing u mhux traduzzjoni, u dan huwa l-pass li l-aktar jinħażen wara li t-triq tal-internet finalment taħdem.

Artikli relatati