Sáfà tàbí ẹ̀rọ onígbà: èwo OpenVPN ẹ̀ka lórí Pi tó ní ipa méjì
Àwọn OpenVPN méjì ń pín Pi kan: ọ̀kan ń gba àwọn olùṣàmúlò tí ń rìn kiri, èkejì ń pe olùpèsè tó wà lókè. Ka orúkọ ẹ̀ka àti àpò kí o tó tún ọ̀kan nínú wọn bẹ̀rẹ̀.
Àwọn ìlànà OpenVPN méjì ń ṣiṣẹ́ lórí Pi kan tí ó ń gba àwọn olùṣàmúlò tí ń rìn kiri bákannáà tí ó sì ń dé ọ̀dọ̀ olùpèsè tó wà lókè, wọn kò sì fi ohunkóhun pín yàtọ̀ sí ẹ̀rọ. Ọ̀kan ń gbọ́ àwọn ọ̀nà abẹ́lẹ̀ tí ń wọlé nígbà tí èkejì ń pe jáde. Ọ̀kọ̀ọ̀kan ń ka àpò tirẹ̀, ọ̀kọ̀ọ̀kan sì ní ọ̀nà ìkùnà tirẹ̀. Títún èyí tí kò tọ́ bẹ̀rẹ̀ ni ọ̀nà tó wọ́pọ̀ jù fún àtúnṣe ẹ̀rọ onígbà láti fi dàgbà olùgbọ́ níbẹ̀.
So orúkọ ẹ̀ka mọ́ àpò tí ó ń gbé wọlé
Upstream 2.6 ń pèsè ẹ̀ka àpẹẹrẹ méjì, [email protected] àti [email protected]. Àpẹẹrẹ sáfà ń bẹ̀rẹ̀ ní /etc/openvpn/server ó sì ń gbé %i.conf wá láti ibẹ̀. Àpẹẹrẹ ẹ̀rọ onígbà ń bẹ̀rẹ̀ ní /etc/openvpn/client. Ẹ̀ka tí a pè ní roaming lè wà ní ibi méjèèjì lẹ́ẹ̀kan náà, gẹ́gẹ́ bí sáfà àti gẹ́gẹ́ bí ẹ̀rọ onígbà, pẹ̀lú ìṣètò méjì tí kò ní ìsopọ̀ àti kò sí ìsopọ̀ kankan láàárín wọn yàtọ̀ sí okun.
Bèèrè lọ́wọ́ systemd dípò ẹ̀rọ àwọn fáìlì, nítorí àwọn olùdá àpò ń fi àwọn fáìlì àfikún kún tí wọ́n lè yí àpò iṣẹ́ tàbí àwọn àríyànjiyàn tí bínárì ń gbà padà.
systemctl list-units --type=service 'openvpn-*@*' systemctl cat [email protected] systemctl show -p WorkingDirectory -p ExecStart [email protected]
Àṣẹ àkọ́kọ́ ń ṣe àkójọ gbogbo ẹ̀ka tí a dá, pẹ̀lú àwọn tí ó kùnà tí ó sì wà ní ìgbé. Èkejì ń tẹ̀wé fáìlì ẹ̀ka pẹ̀lú àbójútó kankan. Ẹ̀kẹta ni ọ̀nà tó yára jù láti rí àwọn òtítọ́ méjì tí ń pinnu ìbéèrè náà: àpò tí ìlànà ti bẹ̀rẹ̀ àti ọ̀nà ìṣètò tí a fún un.
Ṣe ìpinnu pẹ̀lú ìtọ́sọ́nà àpò, kì í ṣe orúkọ ìfarapa
Ẹ̀ka sáfà ní èbúté ìgbọ́ ó sì ń gba àwọn ìsopọ̀. Gbígbé rẹ̀ tí a ti ṣe ààtò ni ìwọlé àdúgbò àti ìjáde àdúgbò lórí Pi, nígbà tí ìrìnàjò tí ó ń fi jáde fún àwọn olùṣàmúlò ń tẹ̀lé ọ̀nà gbígbé jáde tí ó sì ń tẹ̀lé àkójọ ìlànà mìíràn. Ẹ̀ka ẹ̀rọ onígbà kò ní olùgbọ́ ní ìtumọ̀ yẹn: ó ń pe ẹlẹgbẹ́ rẹ̀, nítorí náà gbígbé rẹ̀ tí a ti ṣe ààtò ni ìjáde àdúgbò sí ìpele tó wà nísàlẹ̀.
Ìyàtọ̀ yẹn ń sọ ibi tí ìlànà kan yẹ kí ó wà. Ìlànà tí ó bá ìfarapa inú ẹ̀wọ̀n gbígbé jáde mu ń gbà ìrìnàjò tí ìtọ́sọ́nà ti yàn tẹ́lẹ̀ nìkan; kò yan ọ̀nà rárá. Nígbà tí àwọn àpò olùṣàmúlò tí ń rìn kiri bá jáde lọ́nà tí kò tọ́, ẹ̀wọ̀n tí a yẹ kí a yẹ̀wò ni forward, kì í ṣe output.
Wo àwọn èbúté kí o tó ṣe àbáyò. Sáfà tí a so mọ́ udp/1194 ń fi èbúté ìgbọ́ hàn. Ẹ̀rọ onígbà ń fi ìsopọ̀ pẹ̀lú àdírẹ́sì olùpèsè hàn àti kò sí ohunkóhun tí ń gbọ́.
ss -lunp | grep openvpn ss -unp state established '( dport = :1194 or sport = :1194 )'
Ọ̀nà àkọ́kọ́ ti ẹ̀ka kan lè mú àwọn ìdáhùn ti èkejì
redirect-gateway tí ẹ̀rọ onígbà tó wà lókè ń tì ń fi ọ̀nà àkọ́kọ́ sílẹ̀ tí ó ń bá gbogbo ohun mìíràn lórí ẹ̀rọ jà, pẹ̀lú àwọn ìdáhùn tí sáfà ń fi ránṣẹ́ sí àwọn olùṣàmúlò tí ń rìn kiri. OpenVPN ń ṣe ìyàtọ̀ fún àdírẹ́sì ẹlẹgbẹ́ tirẹ̀ kí ọ̀nà abẹ́lẹ̀ lè wà ní àrúgẹ́, ṣùgbọ́n ìyàtọ̀ yẹn kò sọ ohunkóhun nípa fọ́nù tí ó wà lórí nẹ́tíwọ́kì òtẹ́ẹ̀lì.
Àmì náà sábà kì í dọ́gba. Ìfọwọ́ kan náà ń parí, ẹ̀rọ onígbà ń jábọ̀ pé ó ti so, ìrìnàjò sì ń kú lẹ́yìn àpò ìdáhùn àkọ́kọ́. Ìtọ́sọ́nà ìlànà tí ó dá lórí orísun, tàbí àmì àpò tí a fi --mark gbé sórí ẹ̀ka sáfà, ń pa ìṣàn méjèèjì mọ́ ọ̀tọ̀ọ̀tọ̀; kò sí ọ̀kan nínú wọn tí ó jẹ́ àkójọ ìlànà pípé fúnrarẹ̀, àti pé àwọn méjèèjì nílò àwọn ọ̀nà tí ó wà láàyè nínú tábìlì tí wọ́n yàn.
Dán ìpinnu àdúgbò wò dípò ipò ọ̀nà abẹ́lẹ̀, nítorí kọ́npútà ń yan orísun àti ìfarapa kí OpenVPN tó rí àpò náà.
ip route get 203.0.113.44 ip rule show
Tún ipa kan bẹ̀rẹ̀ kí o sì fi hàn pé èkejì là á
Ìtẹ̀léra ṣe pàtàkì nígbà tí àwọn ipa méjèèjì bá sinmi lórí ìpele nísàlẹ̀ kan náà. Tún ẹ̀rọ onígbà bẹ̀rẹ̀ ní àkọ́kọ́ bí ọ̀nà tó wà lókè bá gbọ́dọ̀ wà kí a tó lè gbé ìrìnàjò olùṣàmúlò jáde, kí o sì tún sáfà bẹ̀rẹ̀ ní àkọ́kọ́ nígbà tí o bá ń yí olùgbọ́ rẹ̀ tàbí adágún rẹ̀ nìkan padà. Bó ti wù kó rí, jẹ́rìí àwọn ẹ̀ka méjèèjì lẹ́yìn náà, nítorí ìgbìyànjú tí ó kùnà lè fi ipa mìíràn sílẹ̀ ní ṣíṣe pẹ̀lú ipò àtijọ́.
Kọ ipò ìdúró kí o tó yí padà: ṣé pípàdánù ọ̀nà abẹ́lẹ̀ tó wà lókè ń dí àwọn olùṣàmúlò tí ń rìn kiri, tàbí ó ń padà sí ìsopọ̀ òkè ti Pi fúnra rẹ̀? DNS àti IPv6 pẹ̀lú nílò ìdáhùn tí ó ṣe kedere, nítorí olùyẹ̀wò tí a tì sábà ń gbé pẹ́ ju ọ̀nà tí ó mú kí ó wúlò lọ.
systemctl restart [email protected] systemctl is-active [email protected] journalctl -u [email protected] -n 20 --no-pager
Gbà ìyípadà náà nìkan nígbà tí ohun mẹ́ta bá wà ní òtítọ́ lẹ́ẹ̀kan náà: ìsopọ̀ tuntun tí ń wọlé ń parí, ohun èlò tí a gbé jáde ń dé ibi tí ó ń lọ nípasẹ̀ ìjáde tí a retí, àwọn ìlànà méjèèjì sì ń jábọ̀ ẹlẹgbẹ́ tí wọ́n ń retí. Bí ọ̀kan nínú mẹ́ta bá kùnà, o ti yí ẹ̀ka tí kò tọ́ tàbí ọ̀nà tí kò tọ́ padà, ìgbésẹ̀ tó kàn sì ni kíka ẹ̀ka náà lẹ́ẹ̀kan sí i dípò títún ohunkóhun mìíràn bẹ̀rẹ̀.