Olùgbàlejò ń tẹ̀síwájú dídáhùn SSH lẹ́yìn tí VPN pẹ̀lú ipasẹ̀ kíkún bá gòkè, nígbà tí iṣẹ́ tí a tẹ̀jáde pẹ̀lú Docker lórí ẹ̀rọ kan náà di ìdákẹ́jẹ́. Kò sí àṣìṣe kankan nínú olùgbọ́: ẹ̀rọ ìkójọpọ̀ ń ṣiṣẹ́, àwòrán ibùdó wà, pákẹ́ẹ̀tì sì dé. Ẹ̀rọ ìkójọpọ̀ ní ìlera, ìbéèrè sì dé ọ̀dọ̀ rẹ̀ gan-an. Ohun tí ó yàtọ̀ ni ibi tí ìdáhùn bẹ̀rẹ̀ nígbà tí Linux yan ọ̀nà rẹ̀, ìyàtọ̀ yẹn sì pinnu irú àpẹẹrẹ wo nínú àwọn méjì tí ó wà ní ìsàlẹ̀ yìí tí ìwọ nílò.

Tẹ̀lé tuple náà nípasẹ̀ NAT ibi-àfojúsùn

Gba olùgbàlejò kan ní 192.0.2.10 tí ó ń tẹ̀jáde TCP 2222 sí ẹ̀rọ ìkójọpọ̀ kan ní 172.30.240.5:22. Ìbéèrè láti 198.51.100.25 ni a túmọ̀ kí ó tó dé ọ̀dọ̀ ẹ̀rọ ìkójọpọ̀, ẹ̀rọ ìkójọpọ̀ sì ń dáhùn gẹ́gẹ́ bí ara rẹ̀.

WAN request:      198.51.100.25 -> 192.0.2.10:2222
after DNAT:       198.51.100.25 -> 172.30.240.5:22
container reply:  172.30.240.5:22 -> 198.51.100.25

Ní ìpinnu ọ̀nà olùgbàlejò, ìdáhùn ṣì ń gbé àdírẹ́sì orísun ẹ̀rọ ìkójọpọ̀. Ìtúmọ̀ yíyí padà ń mú tuple tí a tẹ̀jáde padà nígbà tí ó yá, ìdí nìyẹn tí pákẹ́ẹ̀tì fi yàtọ̀ ní ìrísí ní àkókò gan-an tí a ti yan ọ̀nà.

Kí ni ìdí tí òfin olùgbàlejò nìkan fi ń pàdánù rẹ̀

Òfin tí ó ń yan tábìlì WAN fún àwọn pákẹ́ẹ̀tì láti 192.0.2.10 nìkan ń bo àwọn daemon olùgbàlejò fúnra rẹ̀, ó sì ń pàdánù ìdáhùn tí a gbé jáde yìí pátápátá. Àdírẹ́sì orísun lórí ìdáhùn ni 172.30.240.5, kì í ṣe olùgbàlejò.

Àtúnṣe àṣejù ni láti darí ohun gbogbo láti ẹ̀rọ ìkójọpọ̀ nípasẹ̀ WAN, èyí tí ó tún yọ àwọn ìsopọ̀ jáde tí kò ní í ṣe pẹ̀lú ẹ̀rọ ìkójọpọ̀ kúrò nínú VPN. Ìyẹn jẹ́ ètò ìmúlò tí ó yàtọ̀ sí èyí tí a béèrè, ó sì sábà máa ń ya ẹnìkan lẹ́nu nígbà tí ó yá.

Ìbáramu lẹ́yìn DNAT jẹ́ hook mìíràn

Ìwé Docker nípa àwọn odi iná sọ pé àlẹ̀mọ́ olùmúlò àkọ́kọ́ ń rí ibi-àfojúsùn lẹ́yìn DNAT, nítorí náà ìbáramu ibùdó 2222 tí a tẹ̀jáde nínú òfin déédéé kì í ṣe ohun kan náà pẹ̀lú ìbáramu ibùdó 22 ẹ̀rọ ìkójọpọ̀. Tí tuple àkọ́kọ́ bá ṣe pàtàkì, lo ẹ̀rọ ibi-àfojúsùn àkọ́kọ́ tí a ṣàtìlẹ́yìn dípò kí o ka ibùdó tí ó hàn.

Ìdàrúdàpọ̀ hook yìí ń dá àwọn òfin tí ó dàbí ẹni pé ó tọ́ tí kò sì báramu láé. Ṣàyẹ̀wò àwọn kọ́ńtà lórí òfin fúnra rẹ̀ kí o tó tún ètò ìmúlò kọ. Òfin tí kò ní ìkọlu kankan sọ fún ọ pé a ń ṣe àgbéléwò rẹ̀ ní ibi tí pákẹ́ẹ̀tì kò dé láé.

Àpẹẹrẹ A: gbé ìpinnu náà gẹ́gẹ́ bí ipò ìsopọ̀

Àmì ìsopọ̀ lè gbé ìpinnu ìwọlé kọjá ìtúmọ̀, ṣùgbọ́n a gbọ́dọ̀ mú un padà sórí pákẹ́ẹ̀tì kí wíwá ọ̀nà tí ó ṣe pàtàkì tó ṣẹlẹ̀. Àwọn ìgbésẹ̀ ni:

  1. Pamọ́ pápá àmì àti ipò àkọ́kọ́ òfin tí kò fi ara wọn gbá Docker, VPN tàbí ẹnìkan mìíràn tí ó ni ètò ìmúlò.
  2. Dámọ̀ ìsopọ̀ WAN tuntun tí a fẹ́ nìkan ní ibi tí ó wà ṣáájú DNAT níbi tí àfọ̀mọ́ ìsopọ̀ wà.
  3. Kọ ìpinnu náà sórí àmì ìsopọ̀, láìfi ipá mú ìbéèrè àkọ́kọ́ fúnra rẹ̀ wọ inú tábìlì WAN.
  4. Ní ìtọ́sọ́nà ìdáhùn, mú àwọn bíìtì àmì tirẹ̀ nìkan padà sórí pákẹ́ẹ̀tì kí ìtọ́sọ́nà ọ̀nà tó ṣẹlẹ̀.
  5. Yan tábìlì WAN kíkún ní àkókò tí ó tó pẹ́ kí òfin VPN má bàa ṣẹ́gun kọ́.

Tábìlì yẹn nílò àwọn ọ̀nà tí ó so pọ̀ gan-an àti ẹnu-ọ̀nà. Ó tún nílò ìhùwàsí tí a ṣàlàyé nígbà tí ọ̀nà kò sí. Jíjá bọ́ sínú ipasẹ̀ ní ìdákẹ́jẹ́ ni àbájáde tí ó burú jù, nítorí ètò ìṣètò ṣì dàbí ẹni pé ó ń ṣiṣẹ́. Dípò bẹ́ẹ̀, kùnà ní ọ̀nà tí ó dì kí o sì ṣàkọ́sílẹ̀.

Àpẹẹrẹ B: parí lórí olùgbàlejò

Ẹ̀yà iwájú olùgbàlejò tí a ṣètò pẹ̀lú ìmọ̀ọ́nú, bíi aṣojú TCP tàbí aṣojú yíyí padà níwájú ẹ̀rọ ìkójọpọ̀, ń pa ìdáhùn mọ́ bí ó ti ń jáde láti àdírẹ́sì olùgbàlejò. Nígbà náà àwọn òfin tí a kọ fún olùgbàlejò ń hùwà bí a ti retí, ẹ̀rọ ìkójọpọ̀ sì wà lórí nẹ́tíwọ́kì aládàáni rẹ̀.

Iye owó ni apá mìíràn tí ń rìn pẹ̀lú ètò ìṣètò tirẹ̀, ìtọ́jú àdírẹ́sì orísun àti àwọn ìṣàkóso àwọlé. Ó sábà jẹ́ ààlà tí a ṣàtìlẹ́yìn tí ó rọrùn jù, ó sì sábà jẹ́ ìdáhùn tí ó tọ́ nígbà tí ẹnìkan tí ó lè lọ yóò máa tọ́jú ètò ìmúlò ọ̀nà.

Ṣàdánwò ìyípadà, kì í ṣe èrò

Ṣí ìsopọ̀ tuntun tí a fọwọ́ sí láti ẹ̀gbẹ́ gbogbo ènìyàn kí o sì jẹ́rìí pé ìdáhùn ń jáde nípasẹ̀ ẹ̀rọ ìsopọ̀ tí a fẹ́. Lẹ́yìn náà ṣàyẹ̀wò pé ìbéèrè tí kò ní í ṣe pẹ̀lú ẹ̀rọ ìkójọpọ̀ tí ó bẹ̀rẹ̀ ṣì ń tẹ̀lé VPN.

Má ṣe fọ́ tábìlì ìsopọ̀ ẹ̀rọ náà kúrò láti dán òfin kan wò: àwọn àkọsílẹ̀ tí ó wà ń pa àwòrán wọn tẹ́lẹ̀ mọ́, fífọ́ náà sì ń ba gbogbo ohun mìíràn jẹ́ lórí olùgbàlejò. Ìtẹ̀jáde ibùdó ń ṣàlàyé ìwọlé. Kò ṣàlàyé ọ̀nà ìdáhùn. Kọ àpẹẹrẹ tí a yàn pẹ̀lú àwọn orúkọ tábìlì rẹ̀, kí ẹnìkan tí ó kàn má bàa ní láti tún un ṣàwárí nígbà ìṣẹ̀lẹ̀ kan.

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