Tunnel jitla', il-klijent jista' jpingja l-gateway, u kull talba web mill-passaġġ tal-proxy tmut. Il-proċess redsocks qed jaħdem u l-port tiegħu qed jisma', għalhekk is-servizz jidher b'saħħtu mill-gateway stess. Li jfalli huwa l-pass tal-kunsinna: pakkett imbagħat mill-ġdid mit-tunnel ma jinżilx fuq is-socket li tajt bidu. L-indirizz tal-irbit u l-mira tat-tbagħit mill-ġdid iridu jaqblu, u normalment jiġi ċċekkjat biss wieħed minnhom.

Fejn pakkett mibgħut mill-ġdid fil-fatt jinżel

Proxy trasparenti fuq gateway juża REDIRECT fit-tabella nat f'PREROUTING biex jerġa' jikteb id-destinazzjoni ta' konnessjoni li tidħol għal port lokali. Id-destinazzjoni miktuba mill-ġdid hija indirizz lokali kif jara l-interface li wasal fuqha l-pakkett, mhux l-indirizz loopback ta' proċess li tħaddem band'oħra. Semmiegħ marbut biss ma' 127.0.0.1 jaċċetta konnessjonijiet li kienu diġà lokali fuq il-host, u dan huwa eżattament il-każ li jibqa' jaħdem waqt li t-traffiku tat-tunnel ifalli. Il-loopback tal-klijent stess huwa t-tielet indirizz u qatt mhuwa l-mira tar-regola tal-gateway.

Għalhekk qabel ma tmiss il-kredenzjali tal-upstream, stabbilixxi żewġ fatti: liema indirizz lokali r-regola terġa' tikteb għalih, u liema indirizz huwa marbut miegħu s-socket tal-proxy.

Aqra s-semmiegħ u r-regola tat-tbagħit mill-ġdid flimkien

Ipprintja t-tabella tas-sockets u r-regoli nat fl-istess passa, għax regola li tindika port li ħadd ma għandu jidher identika għal regola li tindika l-indirizz ħażin. sudo ss -ltnp | grep redsocks turi l-indirizz tal-irbit u l-proċess li jippossedih. sudo iptables -t nat -S PREROUTING turi l-mira REDIRECT, u sudo iptables -t nat -L PREROUTING -v -n turi jekk xi ħaġa qabzitx magħha.

Qabża għal katina tal-utent bl-isem REDSOCKS ma twettaq xejn sakemm dik il-katina ma teżistix u ma ġġorrx l-esklużjonijiet maħsuba u l-azzjoni REDIRECT. Aqra l-katina li taqbeż għaliha bil-sudo iptables -t nat -S REDSOCKS minflok ma tassumi li l-isem jagħmel ix-xogħol.

Imbagħad qabbel iż-żewġ valuri. Jekk ir-regola tibgħat mill-ġdid lejn indirizz tal-gateway fuq il-port 12345 u s-semmiegħ jirrapporta 127.0.0.1:12345, id-diskrepanza tispjega l-falliment mingħajr ebda dijanjosi oħra.

Irbot b'mod dejjaq, imbagħad illimita x'jista' jilħaq

Il-konfigurazzjoni eżempju tal-upstream tpoġġi s-semmiegħ fuq loopback għal raġuni tajba: proxy trasparenti jaċċetta konnessjonijiet f'isem kulħadd li jista' jilħaq. Il-bdil tal-irbit għal 0.0.0.0 jsewwi l-kunsinna u fl-istess ħin jiftaħ il-port fuq kull interface, li hija bidla ta' sigurtà, mhux tiswija newtrali. Ippreferi rbit mal-indirizz lokali speċifiku li timmira lejh it-tbagħit mill-ġdid, u żomm il-port magħluq fuq interfaces mhux affidabbli. Jekk irbit usa' ma jistax jiġi evitat, żid regola tal-firewall tal-host li tippermetti biss il-firxa tas-sors tat-tunnel u t-traffiku lokali tal-gateway stess.

Il-ftuħ tal-port fuq l-interface pubblika qatt mhu meħtieġ għat-traffiku VPN mibgħut mill-ġdid, għax il-konnessjoni tintemm lokalment wara l-kitba mill-ġdid. Tesponix il-proxy għall-internet biex jaħdem dan it-tbagħit mill-ġdid lokali.

Ipprova b'konnessjoni ġdida minn klijent

Ittestja minn klijent VPN reali b'konnessjoni TCP ġdida, mhux minn shell fuq il-gateway. curl -sS -o /dev/null -w '%{http_code}\n' http://example.com fuq il-klijent jeżerċita l-passaġġ mibgħut mill-ġdid mill-bidu sat-tmiem.

Imbagħad ikkonferma li konnessjoni diretta mas-semmiegħ minn netwerk mhux affidabbli għadha tiġi rrifjutata, u li l-konnessjoni upstream tal-proxy nnifsu ma tinqabadx mill-ġdid mill-istess regola. Il-qbid rikursiv jidher bħala proxy li jgħaqqad miegħu nnifsu u qatt ma jlesti talba. Żid id-destinazzjoni tal-proxy mas-sett tal-esklużjonijiet, jew immarka l-pakketti ħerġin tiegħu biex il-katina taqbiżhom.

Fl-aħħar, ftakar x'ma jkoprix dan il-passaġġ. It-tbagħit mill-ġdid TCP normali ta' redsocks ma jbiddilx UDP, QUIC jew DNS fi traffiku SOCKS, u destinazzjonijiet privati normalment jeħtieġu esklużjonijiet espliċiti. Test lokali b'suċċess juri biss il-passaġġ tal-loopback li qatt ma kien il-problema.

Artikli relatati