Proxy rẹ tí a fọwọ́ sí ń ṣiṣẹ́ lórí host àfòpiná kan níbi tí ó ti ń gbọ́ nínú loopback nìkan, nítorí náà kò sí ohunkóhun ní ìta ẹ̀rọ yẹn tí ó lè dé ọ̀dọ̀ rẹ̀. Ìwọ kò nílò VPN tàbí proxy tuntun; ìwọ nílò ebute kan ti ẹ̀rọ yẹn tí a gbé dé ebute kan tìrẹ. Ìtọ́jú àdúgbò ṣe gbogbo èyí gan-an, ó sì nílò pàṣẹ kan pẹ̀lú ètò ohun-èlò kan. Ìdàrúdàpọ̀ sábà wá láti inú dídàpọ̀ àdírẹ́sì loopback tí ó jẹ́ ti ẹ̀rọ wo.

Pinnu bóyá proxy dúró ṣinṣin ti wà tẹ́lẹ̀

Ìlànà yìí ń tọ́jú iṣẹ́ tí ó ti ń ṣiṣẹ́ tẹ́lẹ̀. Bí host jìnnà bá ní daemon SSH nìkan tí kò sì ní proxy, kò sí ìtọ́jú tó pọ̀ tó yóò dá ọ̀kan, a ó sì kọ ìsopọ̀ náà sílẹ̀ láti ẹ̀gbẹ́ jìnnà. Jẹ́rìí pé proxy so mọ́ra, ebute wo ni tirẹ̀, àti bóyá ó ń gbọ́ lórí 127.0.0.1 tàbí lórí àdírẹ́sì interface pàtó kan, nítorí àdírẹ́sì yẹn ni ìtọ́jú gbọ́dọ̀ fọ̀kàn sí.

Jíjẹ́rìí èyí kọ́kọ́ ń gbà ọ́ lọ́wọ́ àtúnṣe ebu rẹ tí kò tíì so mọ́ ohunkóhun rí.

Kọ́ ìtọ́jú náà kí o sì ka pàṣẹ náà

Ìrísí tí o fẹ́ ń so ebute loopback kan lórí kọ̀mpútà àgbékọ́ rẹ, ó sì so ó láti ẹ̀gbẹ́ server dé àdírẹ́sì proxy bí server ti rí i.

ssh -NT -o ControlPath=none -o ExitOnForwardFailure=yes \
  -L 127.0.0.1:13128:127.0.0.1:3128 [email protected]

-N ń tẹ̀ pàṣẹ jìnnà mọ́lẹ̀, -T sì ń tẹ̀ pínpín termios mọ́lẹ̀, nítorí ebu ni o fẹ́, kì í ṣe shell. Àdírẹ́sì loopback àkọ́kọ́ ni ibi tí kọ̀mpútà àgbékọ́ ń gbọ́; ẹ̀kejì ni server SSH ń yanjú, nítorí náà 127.0.0.1 níbẹ̀ túmọ̀ sí proxy lórí ẹ̀rọ yẹn. ExitOnForwardFailure ń mú kí pàṣẹ náà kùnà ní gbangba bí ebute àdúgbò bá ti dí, dípò bíbẹ̀rẹ̀ ìpàdé tí kò tọ́jú ohunkóhun. Kọ àdírẹ́sì àfojúsùn bí server ti yanjú rẹ̀, nítorí orúkọ tí kọ̀mpútà àgbékọ́ rẹ nìkan lè yanjú yóò kùnà ní ẹ̀gbẹ́ kejì.

Ìlànà server fúnra rẹ̀ wà ní ipa kí ohunkóhun nínú èyí tó ṣiṣẹ́. AllowTcpForwarding gbọ́dọ̀ gbà á láàyè, PermitOpen sì lè dín àwọn àfojúsùn àti ebute tí ìpàdé lè dé kù, nítorí náà server ṣì lè kọ ìtọ́jú tí oníbàárà gbà. Ìkọ̀sílẹ̀ ń farahàn gẹ́gẹ́ bí àṣìṣe ìtọ́jú tàbí ikanni ní ọ̀dọ̀ oníbàárà, kíkà ìfiránṣẹ́ yẹn sì yá ju ṣíṣe àtúnṣe pàṣẹ lọ.

Darí ohun-èlò kan sí ìtọ́jú náà

Ṣètò ohun-èlò náà láti lo proxy HTTP ní http://127.0.0.1:13128, pẹ̀lú ẹ̀rí ìdánimọ̀ bí proxy jìnnà bá nílò wọn. Pa ìjẹ́rìí ìwé-ẹ̀rí ohun-èlò fúnra rẹ̀ mọ́ fún àwọn àfojúsùn HTTPS, nítorí ebu proxy kò rọ́pò rẹ̀. Ìtọ́jú dúró ṣinṣin ti iṣẹ́ kan ni èyí, nítorí náà a gbọ́dọ̀ sọ fún ohun-èlò náà pé proxy wà, kì í ṣe kí a jẹ́ kí ó ṣàwárí ọ̀kan fúnra rẹ̀.

Àyẹ̀wò kíákíá kí a tó ṣètò ohunkóhun tí ó dúró: curl -x http://127.0.0.1:13128 -I https://example.com, èyí tí ó ń dán ọ̀nà HTTP CONNECT tí proxy gbọ́dọ̀ ṣe àtìlẹ́yìn fún.

Pa agbára mọ́ ibi tí ó ti wà

Proxy jìnnà ṣì ń pinnu àwọn àfojúsùn àti ọ̀nà tí ó gbà láàyè, ìwọlé SSH sì kò gbọ́dọ̀ fún gbogbo àkọsílẹ̀ ní relay wẹ́ẹ̀bù gbogbogbò ní ìdákẹ́jẹ́. Sísopọ̀ mọ́ 127.0.0.1 lórí kọ̀mpútà àgbékọ́ ń yẹra fún pípọ̀n ebute náà sí nẹ́tíwọ́kì àdúgbò rẹ, kò sì jẹ́ kí ebute náà di àṣírí kúrò lọ́wọ́ àwọn ìlànà mìíràn lórí ẹ̀rọ kan náà. Yíyí ìsopọ̀ yẹn padà sí àdírẹ́sì wildcard láti pín proxy náà ni ọ̀nà tí relay ìmọ́lẹ̀ tí a kò ṣàkóso fi ń wáyé.

Gbígbé SSH ń dáàbò bo ìfò bọ̀ láti dé server. Lẹ́yìn ibi yẹn proxy ń ṣí ìsopọ̀ tirẹ̀ fúnra rẹ̀, nítorí náà ìbéèrè HTTP lasan sí àfojúsùn kan máa ń wà ní lasan ní ìkẹ́yìn server, bí ó tilẹ̀ jẹ́ pé a ti fi ààmì ìkọ̀kọ̀ bo apá àkọ́kọ́.

Jẹ́rìí àwọn ìpẹ̀kun méjèèjì, kí o sì tún ṣe mọ́

Ṣíṣe ìtọ́jú ebu àdúgbò àti àṣeyọrí iṣẹ́ jìnnà jẹ́ àbájáde ọ̀tọ̀ọ̀tọ̀, ipò àgbáyọ pàṣẹ sì ń sọ fún ọ nípa èkíní nìkan. Yẹ̀wò bí olùgbọ́ kan wà pẹ̀lú ss -ltn, kí o sì ṣe ìbéèrè ohun-èlò tí a gbà láàyè àti ìbéèrè tí proxy gbọ́dọ̀ kọ̀. Bí méjèèjì bá hu ìwà bí a ti retí, ọ̀nà náà jẹ́ gidi; bí ebu bá wà tí gbogbo ìbéèrè sì kùnà, proxy ń kọ̀ tàbí kò lè dé àfojúsùn.

Nígbà tí o bá parí, dá ìlànà SSH tí ó ni í dúró, yọ ètò proxy kúrò nínú ohun-èlò náà, kí o sì jẹ́rìí pé ebute àdúgbò ti lọ dípò fífi olùgbọ́ kan tí yóò wà pẹ́ ju iṣẹ́ náà lọ.

Àwọn àpilẹ̀kọ tó jọra