Redsocks ń gbọ́ lórí loopback ṣùgbọ́n ìrìnàjò VPN kò dé rárá
Olùgbọ́ tí a so mọ́ loopback nìkan kò ní rí ìrìnàjò tí a darí láti tun0 rárá. Ka ibi tí ìdarí náà ń lọ àti ìso socket, tún ìso náà ṣe, lẹ́yìn náà dán wò láti ọ̀dọ̀ oníbàárà gidi.
Òpópó kan gòkè wá, oníbàárà lè ṣe ping sí ẹnubodè, ṣùgbọ́n gbogbo ìbéèrè wẹ́ẹ̀bù tí ó gba ipa ọ̀nà proxy kú. Ìlànà redsocks ń ṣiṣẹ́ àti pé ebute rẹ̀ ń gbọ́, nítorí náà iṣẹ́ náà dàbí aláìlera láti ẹnubodè fúnra rẹ̀. Ohun tí ó kùnà ni ìgbésẹ̀ ìfijíṣẹ́: packet tí a darí láti inú òpópó kò balẹ̀ sórí socket tí o bẹ̀rẹ̀. Àdírẹ́sì ìso àti ibi tí ìdarí náà ń lọ gbọdọ̀ bá ara wọn mu, a sì máa ń yẹ ọ̀kan nínú wọn wò.
Ibi tí packet tí a darí ń balẹ̀ sí gan-an
Proxy tí ó hàn gbangba lórí ẹnubodè ń lo REDIRECT nínú tábìlì nat ní PREROUTING láti tún ibi tí ìsopọ̀ tí ń bọ̀ ń lọ kọ sí ebute àdúgbò. Ibi tí a tún kọ ni àdírẹ́sì àdúgbò bí interface tí packet náà gbà wọlé ṣe rí i, kì í ṣe àdírẹ́sì loopback ti ìlànà tí a bẹ̀rẹ̀ ní ibòmíì. Olùgbọ́ tí a so mọ́ 127.0.0.1 nìkan ń gba àwọn ìsopọ̀ tí ó ti jẹ́ ti àdúgbò lórí host, ìṣẹ̀lẹ̀ yìí sì ni ó ń tẹ̀síwájú ṣiṣẹ́ nígbà tí ìrìnàjò òpópó ń kùnà. Loopback ti oníbàárà fúnra rẹ̀ ni àdírẹ́sì kẹta kò sì ní jẹ́ ibi tí òfin ẹnubodè ń lọ rárá.
Nítorí náà kí o tó fi ọwọ́ kan àwọn ẹ̀rí ìdánimọ̀ ilé oke, fi òtítọ́ méjì múlẹ̀: ibi àdúgbò wo ni òfin náà ń tún kọ sí, àti àdírẹ́sì wo ni a so socket proxy mọ́.
Ka olùgbọ́ àti òfin ìdarí papọ̀
Tẹ ètò socket àti àwọn òfin nat jáde ní ìgbà kan náà, nítorí òfin tí ó ń tọ́ka sí ebute tí kò ní olówó ń rí bí òfin tí ó ń tọ́ka sí àdírẹ́sì tí kò tọ́. sudo ss -ltnp | grep redsocks ń fi àdírẹ́sì ìso àti ìlànà tí ó ní í hàn. sudo iptables -t nat -S PREROUTING ń fi ibi tí REDIRECT ń lọ hàn, sudo iptables -t nat -L PREROUTING -v -n sì ń fi bóyá nǹkan kan bá a mu hàn.
Fífò sókè lọ sínú ẹ̀wọ̀n olùmúlò tí a ń pè ní REDSOCKS kò ṣe nǹkan kan àyàfi bí ẹ̀wọ̀n náà bá wà tí ó sì gbé àwọn ìyọkúró àti ìgbésẹ̀ REDIRECT tí a fẹ́. Ka ẹ̀wọ̀n tí ó ń fò sí pẹ̀lú sudo iptables -t nat -S REDSOCKS dípò kí o rò pé orúkọ náà ń ṣe iṣẹ́ náà.
Lẹ́yìn náà fi ìye méjì wé. Bí òfin náà bá ń darí sí àdírẹ́sì ẹnubodè ní ebute 12345 tí olùgbọ́ sì ń ròyìn 127.0.0.1:12345, àìbámu náà ń ṣàlàyé ìkùnà láìsí ìwádìí mìíràn.
So ní dídín, lẹ́yìn náà dín ohun tí ó lè dé sórí rẹ̀ kù
Ìṣètò àpẹẹrẹ ilé oke fi olùgbọ́ sórí loopback fún ìdí tí ó dára: proxy tí ó hàn gbangba ń gba àwọn ìsopọ̀ lórúkọ ẹnikẹ́ni tí ó lè dé sórí rẹ̀. Yíyí ìso náà padà sí 0.0.0.0 ń tún ìfijíṣẹ́ ṣe àti lẹ́ẹ̀kan náà ń ṣí ebute lórí gbogbo interface, èyí sì jẹ́ ìyípadà ààbò, kì í ṣe àtúnṣe aláìdásí. Yàn láti so mọ́ àdírẹ́sì àdúgbò pàtó tí ìdarí náà ń fi ibi lé, kí o sì pa ebute mọ́ ní àwọn interface tí a kò gbẹ́kẹ̀lé. Bí ìso gbígbòòrò bá ṣeé ṣe kù, fi òfin odi iná host kún tí ó ń gba àyè fún ìwọ̀n orísun òpópó àti ìrìnàjò àdúgbò ti ẹnubodè fúnra rẹ̀ nìkan.
Ṣíṣí ebute lórí interface gbogbogbò kò ní ṣe pàtàkì fún ìrìnàjò VPN tí a darí rárá, nítorí pé ìsopọ̀ náà ń parí ní àdúgbò lẹ́yìn àtúníkọ. Má ṣe fi proxy hàn sí intanẹẹti kí ìdarí àdúgbò lè ṣiṣẹ́.
Fi ìsopọ̀ tuntun láti ọ̀dọ̀ oníbàárà hàn án
Dán wò láti ọ̀dọ̀ oníbàárà VPN gidi pẹ̀lú ìsopọ̀ TCP tuntun, kì í ṣe láti shell lórí ẹnubodè. curl -sS -o /dev/null -w '%{http_code}\n' http://example.com lórí oníbàárà ń ṣe ipa ọ̀nà tí a darí láti ìbẹ̀rẹ̀ dé ìparí.
Lẹ́yìn náà jẹ́rìí sí i pé a ṣì ń kọ ìsopọ̀ tààrà sí olùgbọ́ láti nẹ́tíwọ́kì tí a kò gbẹ́kẹ̀lé, àti pé a kò tún mú ìsopọ̀ oke ti proxy fúnra rẹ̀ pẹ̀lú òfin kan náà. Mímú àtúnṣe ń farahàn bí proxy tí ó so mọ́ ara rẹ̀ tí kò sì parí ìbéèrè rárá. Fi ibi tí proxy ń lọ kún mọ́ àkójọ ìyọkúró, tàbí sàmì sí àwọn packet tí ó ń jáde kí ẹ̀wọ̀n náà kọjá wọn.
Níkẹyìn, rántí ohun tí ipa ọ̀nà yìí kò bo. Ìdarí TCP déédéé ti redsocks kò yí UDP, QUIC tàbí DNS padà sí ìrìnàjò SOCKS, àwọn ibi àdáni sì máa ń nílò ìyọkúró tí ó ṣe kedere. Ìdánwò àdúgbò tí ó ṣàṣeyọrí ń fi ipa ọ̀nà loopback tí kò jẹ́ ìṣòro rárá hàn nìkan.