Jẹ́ kí Ọ̀kan Nínú Àwọn Oníbàárà OpenVPN Ṣe SSH sí Òmíràn Láì Ṣí Adágún náà
Fi client-to-client pamọ́, jẹ́ kí kérnẹ́lì gbé ìṣàn kan kọjá, kí ìyókù adágún náà wà ní títì. Ìlànà méjì lórí sáfà àti ọ̀kan lórí ibi tí ó ń lọ.
Oníbàárà kan nílò láti dé iṣẹ́ SSH ti oníbàárà mìíràn, kí ìyókù adágún náà sì wà ní àdádúró bí ó ti rí báyìí. Yíyanilẹ́nu náà ni client-to-client, tí ó ń tan àǹfààní láàárín àwọn ẹlẹgbẹ́ fún gbogbo ènìyàn lẹ́ẹ̀kan náà tí ó sì ń fi ìpinnu lé OpenVPN lọ́wọ́ dípò kérnẹ́lì. Ìdáhùn tí ó kúnjú ìwọ̀n ń fi yíyanilẹ́nu yẹn pamọ́ tí ó sì ń jẹ́ kí ìtọ́sọ́nà àti ògiri iná ti sáfà fúnra rẹ̀ gbé ìṣàn kan gan-an.
Ìlànà ṣe pàtàkì ju ọ̀rọ̀ ìlànà lọ, nítorí àwọn ọ̀nà méjì náà ń gbé àpò náà sí àwọn ibi tí ó yàtọ̀. Mímọ èyí tí o yàn ń ṣàlàyé ìlànà tí ó dà bí ẹni pé kò ṣe ohunkóhun àti ẹlẹgbẹ́ tí ó ń so mọ́ra láìsí rẹ̀.
Ibi tí client-to-client ti ń gbé àpò náà lọ
Tí client-to-client bá wà ní ṣíṣí, sáfà ń gbé àpò ẹlẹgbẹ́ kọjá ní inú dípò kí ó tún un rán jáde nípasẹ̀ ẹ̀rọ ojú-ọnà, nítorí náà àpò náà kò dé ọ̀nà gbígbéjáde kérnẹ́lì rárá. Ìyẹn rọrùn, ó sì tún túmọ̀ sí pé ògiri iná rẹ kò rí ìṣàn tí ó yẹ kí ó máa ṣọ́. Fi àṣàyàn náà pamọ́ kí sáfà sì tọ́ àpò náà jáde lẹ́ẹ̀kan sí i nípasẹ̀ ojú-ọnà kan náà, èyí tí ó gbé e síwájú netfilter. Ojú-ọnà kan náà wọlé, ojú-ọnà kan náà jáde, ẹ̀wọ̀n FORWARD sì ní ohùn.
Ìpààrọ̀ náà ṣe kedere: o ń jèrè kókó ìlànà kan, o sì ń gba iṣẹ́ ìtọ́sọ́nà àti gbígbéjáde tí ọ̀nà kúkúrú ń ṣe fún ọ. Iṣẹ́ yẹn kéré fún ìṣàn kan, ó sì ń dàgbà pẹ̀lú gbogbo ìyàtọ̀ tí o bá fi kún. Ka àwọn ìyàtọ̀ náà báyìí, nítorí pé inú àkójọ ìlànà ni ìlànà láàárín àwọn ẹlẹgbẹ́ wà ní tòótọ́.
Ọ̀nà tí àpò ẹlẹgbẹ́ ń gbà ní tòótọ́
Rò pé iṣẹ́ Linux Community OpenVPN 2.6, ìṣiṣẹ́ TUN nínú ààyè olùṣe dípò DCO, ẹ̀ka subnet, tun0, àti adágún 10.44.0.0/24 pẹ̀lú oníbàárà A ní 10.44.0.21 àti oníbàárà B ní 10.44.0.37. Pẹ̀lú ẹ̀ka subnet, àdírẹ́sì àti bọ́ọ̀dù ààbò tí A gbà ti bo adágún náà tẹ́lẹ̀, nítorí náà A ń rán àpò náà sí ẹ̀rọ ojú-ọnà láì nílò ọ̀nà àfikún tí a ti tì. Ṣàyẹ̀wò ọ̀nà tí ó ń ṣiṣẹ́ lórí A dípò kí o rò pé ọ̀kan wà.
Lórí sáfà àpò náà dé pẹ̀lú àdírẹ́sì sí B, tí kì í ṣe àdírẹ́sì agbègbè, nítorí náà a ń gbé e kọjá. Gbígbéjáde IPv4 gbọ́dọ̀ wà ní ṣíṣí kí ìyẹn lè ṣẹlẹ̀ rárá, ìwádìí ọ̀nà sì gbọ́dọ̀ rán àpò náà jáde lẹ́ẹ̀kan sí i nípasẹ̀ tun0. Nítorí náà ògiri iná rí ìṣàn tí a gbé kọjá pẹ̀lú ojú-ọnà kan náà ní ẹ̀gbẹ́ méjèèjì, ìyẹn sì ni kúlẹ̀kúlẹ̀ tí ọ̀pọ̀lọpọ̀ àkójọ ìlànà ń pàdánù. Kò sí ìtumọ̀ orísun tí a nílò níbí, àti pípa àdírẹ́sì A mọ́ láìyẹsẹ̀ ni ó ń jẹ́ kí B lè lo ìlànà tirẹ̀ tí ó dá lórí orísun.
Ìlànà méjì lórí sáfà, ní ìtòlẹ́sẹẹsẹ yìí
Ìlànà mẹ́ta ń gbé gbogbo àṣẹ náà: gbígbéjáde, ìyàtọ̀ tọkọtaya, àti ìfilọ́lẹ̀ àìdábọ̀ fún tọkọtaya ojú-ọnà. Ìlànà gbígba ń dárúkọ tọkọtaya àti iṣẹ́ náà, nítorí náà àṣẹ náà ń yege lórí adágún tí ó ń dàgbà. Gbé e síwájú ìkọ̀sílẹ̀ gbogbogbòò èyíkéyìí fún ìrìnàjò ojú-ọnà-sí-ojú-ọnà, nítorí ìbámu àkọ́kọ́ ni ó ń ṣẹ́gun:
sysctl -w net.ipv4.ip_forward=1
iptables -A FORWARD -i tun0 -o tun0 -s 10.44.0.21 -d 10.44.0.37 -p tcp --dport 22 -j ACCEPT
iptables -A FORWARD -i tun0 -o tun0 -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i tun0 -o tun0 -j DROPÀwọn àṣẹ yẹn jẹ́ àpẹẹrẹ, wọ́n sì wà nínú ọ̀nà tí agbàlejò rẹ bá ń lò láti tọ́jú àwọn ìlànà; ìfisi ní àkókò ṣíṣe ń parẹ́ ní ìgbà tí ó tẹ̀lé. Ìlànà tí ó ní ipò ni ó ń jẹ́ kí àwọn ìdáhùn B àti ìfọwọ́sowọ́pọ̀ TCP padà wá láìsí ìgbà gbígba kejì tí a fi wéra.
Ṣàyẹ̀wò àwọn olùka lẹ́yìn náà dípò àkójọ ìlànà, nítorí ìlànà tí kò bámu rárá dà bí èyí tí ó ń ṣiṣẹ́. Tí àwọn olùka bá dúró ní òdo, àpò náà kò ń gbà ọ̀nà tí o rò.
Ohun tí B ṣì gbọ́dọ̀ gbà
B ni ó ń ṣe iṣẹ́ SSH, nítorí náà B ni ó ń pinnu bóyá ohun kan ń gbọ́rọ̀ ní àdírẹ́sì ojú-ọnà àti bóyá ògiri iná agbàlejò tirẹ̀ gbà orísun náà. Àṣẹ nẹ́tíwọ́kì lórí sáfà kì í ṣe àṣẹ fún àkọsílẹ̀ èyíkéyìí lórí B, ìmúdájú kọ́kọ́rọ́ agbàlejò àti ìmúdájú olùṣe ṣì ń ṣiṣẹ́ bí ó ti rí láti ibikíbi mìíràn.
Dán ìpẹ̀lẹ́ náà wò ní àkọ́kọ́: ìsopọ̀ SSH tuntun láti A sí àdírẹ́sì ojú-ọnà B, tí a gbà pẹ̀lú kọ́kọ́rọ́ agbàlejò tí a retí. Lẹ́yìn náà dán ẹlẹgbẹ́ mìíràn tàbí ibùdókọ̀ mìíràn wò kí o sì jẹ́rìí pé a kọ̀ ọ́, nítorí àṣẹ tí ń gbà ohun gbogbo ní ìdákẹ́jẹ́ kò yàtọ̀ sí èyí tí ó ń ṣiṣẹ́ títí yóò fi ṣe pàtàkì. Ẹ̀ka méjèèjì ìdánwò yẹn ṣe pàtàkì, ẹ̀ka kejì sì ni èyí tí àwọn ènìyàn ń fò.
Kọ àwọn àdírẹ́sì tí a yàn, àwọn ọ̀nà tí ó ń ṣiṣẹ́ lórí àwọn oníbàárà méjèèjì àti àwọn ìlànà gbógbóò lórí sáfà àti lórí B. Ping tí ó ṣàṣeyọrí sí ẹnubodè tàbí ibùdókọ̀ tí ó ṣí lórí sáfà kò fi èyíkéyìí nínú èyí hàn, nítorí àwọn méjèèjì lè jẹ́ òtítọ́ nígbà tí gbígbéjáde láàárín àwọn ẹlẹgbẹ́ ṣì wà ní dídènà. Kọ àwọn nọ́mbà yẹn nígbà tí ojú-ọnà ṣì wà lókè, nítorí àdírẹ́sì tí oníbàárà ń gbà lẹ́yìn àtúnso lè jẹ́ òmíràn.