Àwọn ojú-ìwé SaaS gbangba lè ṣí sílẹ̀ fún gbogbo ènìyàn nígbà tí àwọn ìṣe àdámọ́ tó wà lẹ́yìn wọn kọ gbogbo ẹni tó wà ní ìta VPN. Ọ̀nà tó mú èyí ṣeéṣe kì í ṣe àkójọ tó pamọ́ tàbí ojú-ìwé ìwọlé ọ̀tọ̀; ó jẹ́ àyẹ̀wò ọ̀nà nẹ́tíwọ́kì tó gbé ìbéèrè náà wá. Bí ẹ̀rí àdírẹ́sì bá ṣì, àyẹ̀wò náà yálà fi àwọn aláṣẹ gidi síta tàbí gba ẹnikẹ́ni tó lè tẹ àkọlé. Bẹ̀rẹ̀ pẹ̀lú ohun tí orísun ń gbà gan-an.

Ohun tí orísun ń gbà gan-an lẹ́yìn ọ̀nà abẹ́lẹ̀

Nígbà tí aṣàwákiri bá dé ojú-ìwé gbangba nípasẹ̀ VPN tó tún ń gbé ìṣàn íńtánẹ́ẹ̀tì, ẹnubodè náà yí ìsopọ̀ padà kí ó tó jáde. SaaS rí àdírẹ́sì ìjáde gbangba ti ẹnubodè, ní ọ̀pọ̀ ìgbà àdírẹ́sì kan tàbí ìwọ̀n kékeré, àti kò rí àdírẹ́sì ọ̀nà abẹ́lẹ̀ kọ̀mpútà ẹ̀rọ-àgbáyé rárá. Ìdí nìyẹn tí fífi 10.90.0.42 kún àkójọ àyọ̀pẹ̀ kùnà, àti ìdí nìyẹn tí fífi gbogbo RFC 1918 kún kùnà pẹ̀lú ohùn tó ga jù: èkejì gba gbogbo nẹ́tíwọ́kì àdáni tó lè dé ọ̀dọ̀ rẹ. Àdírẹ́sì kan ṣoṣo tó yẹ fún àṣẹ ni èyí tí àjọ rẹ gbà ní ìjáde gan-an.

curl -s https://ifconfig.me
dig +short admin.example.com

Pípín ọ̀nà abẹ́lẹ̀ ń fọ́ àbá yìí ní ìdákẹ́jẹ́. Bí VPN kò bá gbé àwọn ọ̀nà ọ́fììsì àdáni nìkan, ìbéèrè sí orúkọ agbàlejò àdámọ́ gbangba jáde nípasẹ̀ ISP àdúgbò, orísun sì rí àdírẹ́sì ibùgbé. Àmì VPN tó so pọ̀ kò fi ohunkóhun hàn nípa ibi-àfọ̀mọ́ pàtó yìí, nítorí náà dán ibi-àfọ̀mọ́ wò, kì í ṣe ọ̀nà abẹ́lẹ̀.

Dúró kí o sì tún ọ̀nà ṣe kí o tó kọ ètò ìṣàkóso èyíkéyìí bí àdírẹ́sì ìjáde bá yàtọ̀ fún olùmúlò kọ̀ọ̀kan. Àṣẹ tó bá àwọn aláṣẹ kan ṣoṣo mu burú ju kí ó máà sí àṣẹ, nítorí ó fi ìṣòro pamọ́ títí ìṣẹ̀lẹ̀ yóò fi ṣẹlẹ̀.

Gbẹ́kẹ̀ lé aláṣẹ tó tún àdírẹ́sì kọ nìkan

Ọ̀pọ̀ ojú-ìwé gbangba wà lẹ́yìn CDN tàbí aláṣẹ yípadà, nítorí náà àdírẹ́sì sọ́kẹ́tì orísun jẹ́ ti ojú iwájú yẹn, kì í ṣe ti alejò. Ojú iwájú sábà ń fi àdírẹ́sì àkọ́kọ́ ránṣẹ́ nínú àkọlé, àti àkọlé yẹn wà lábẹ́ ìṣàkóso olùkọlù, àyàfi bí orísun kò bá gbà á lọ́wọ́ àwọn aláṣẹ tí a mọ̀ nìkan. Ṣètò àkójọ orísun tí a gbẹ́kẹ̀ lé ní kedere kí o sì jẹ́ kí orísun má lè dé láti ibikíbi mìíràn. Láìsí ìlà kejì yẹn, olùkọlù yí aláṣẹ kọjá, ó sì fi àkọlé ránṣẹ́ tààrà.

set_real_ip_from 192.0.2.0/24;
real_ip_header X-Forwarded-For;
real_ip_recursive on;
curl -H 'X-Forwarded-For: 198.51.100.27' https://origin.example.com/admin

Ìdí kanna kan protocol PROXY: ó ṣeé gbẹ́kẹ̀ lé nìkan nígbà tí olùgbọ́ so mọ́ interface tí aláṣẹ lè dé àti pé kò sí ohun mìíràn tó lè dé. Àìsí àyíká àdírẹ́sì gbọdọ̀ mú kí àyẹ̀wò ààbò kùnà, kì í ṣe kí ó já bo sí àṣẹ àìpẹ̀. Àkọlé tí kò sí kì í ṣe ẹ̀rí ọ̀nà tí a gbẹ́kẹ̀ lé.

So àṣẹ náà pọ̀ mọ́ gbogbo ìṣe ààbò

Fi àyẹ̀wò náà sí ààlà àṣẹ tí gbogbo ìṣe ààbò ń kọjá, kì í ṣe sí ojú-ìwé tó ń ṣe àkójọ. Àwọn ẹgbẹ́ ọ̀nà, middleware tàbí ìpele ètò gbogbo wọn ń ṣiṣẹ́; ẹ̀dà fún olùṣàkóso kọ̀ọ̀kan kò ṣiṣẹ́, nítorí olùṣàkóso tí ẹnìkan yóò fi kún ní ìdámẹ́rìn-ọdún tó ń bọ̀ kò ní ní rẹ̀.

user = requireAuthenticatedSession()
requirePermission(user, "admin")
requireVpnEgress(verifiedClientAddress(request))
performProtectedOperation(user, request)

Ààlà kanna gbọdọ̀ bo JSON API, àwọn ìjáde, URL ìgbàsílẹ̀ tí a fi ọwọ́ sí, àti ìfọwọ́ra WebSocket, nítorí kò sí ọ̀kan nínú wọn tó nílò kí a kọ́kọ́ béèrè ojú-ìwé HTML. Ọ̀nà ìgbàsílẹ̀ tí a dá nígbà tí VPN wà yóò wà ní àṣẹ lẹ́yìn náà àyàfi bí ibi-ìparí ìgbàsílẹ̀ kò bá tún ṣàyẹ̀wò. Àwọn àpéjọ tó pẹ́ gbọdọ̀ ní ìlànà àtúnyẹ̀wò pẹ̀lú, bí bẹ́ẹ̀ kọ́ ìbéèrè kan tí a fìdí rẹ̀ mulẹ̀ yóò di àyọkúrò títí láé. Ìkọ̀sílẹ̀ àìpẹ̀ ni ètò kan ṣoṣo tó ye í kọjá ìyípadà òṣìṣẹ́.

Àwọn kásẹ̀ tí a pín jẹ́ ọ̀nà mìíràn yí àyẹ̀wò ká. Kásẹ̀ tó ti ní ìdáhùn ààbò lè fi í lélẹ̀ láìsí ìkàn sí orísun, nítorí náà fi àmì sí àwọn ìdáhùn àdámọ́ gẹ́gẹ́ bí aládáni, kí o sì pa wọ́n mọ́ síta kúrò nínú ìpamọ́ tí a pín. Bí kásẹ̀ gbọdọ̀ fi wọ́n lélẹ̀, àyẹ̀wò àwọlé gbọdọ̀ ṣiṣẹ́ kí ó tó wà lélẹ̀, èyí tó sábà túmọ̀ sí pé kò lè jẹ́ kásẹ̀ tí a pín rárá.

Dán àwọn ọ̀nà ìkọjá tí o ṣẹ̀ṣẹ̀ dènà wò

Dán mátírìsì dà, kì í ṣe ọ̀nà aláyọ̀: aláṣẹ kan nípasẹ̀ VPN, aláṣẹ kan náà láìsí rẹ̀, ẹni tí kì í ṣe aláṣẹ nípasẹ̀ rẹ̀, àti àkọlé àdírẹ́sì eke. Fi ìbéèrè tààrà sí orísun àti ìbéèrè pẹ̀lú ìdáhùn kásẹ̀ kún, nítorí àwọn méjèèjì ni ó ń kọjá ojú iwájú pátápátá.

curl -sI https://admin.example.com/export.csv
curl -s -H 'X-Forwarded-For: 198.51.100.27' https://origin.example.com/admin
curl -s https://admin.example.com/api/me -o /dev/null -w '%{http_code}\n'

Gbogbo ìbéèrè gbọdọ̀ dá ipò tí ètò ṣèlérí padà, log sì gbọdọ̀ kọ ẹ̀rí àdírẹ́sì tí a lò. Bo IPv6 lọ́tọ̀, nítorí orísun ológun-ìkejì lè rí ìdílé orísun mìíràn ju èyí tí o dán wò. Jẹ́ kí àwọn ìṣe alábàárà déédéé ṣiṣẹ́ ní ìta VPN, bí bẹ́ẹ̀ kọ́ a óò yí ìyípadù padà nígbà àkọ́kọ́ tí alábàárà bá ráhùn. Kọ àbájáde tí a retí fún ìlà kọ̀ọ̀kan kí o tó ṣe é, kí àṣeyọrí ìyàlẹ́nu lè hàn.

Àdírẹ́sì ìjáde fi ọ̀nà nẹ́tíwọ́kì tí a gbà hàn, kì í ṣe ènìyàn àti kì í ṣe ẹ̀rọ tí a ń ṣàkóso. Pa á mọ́ gẹ́gẹ́ bí àṣẹ kan lẹ́gbẹ̀ẹ́ ìjẹ́rìí àti àṣẹ, agbègbè àdámọ́ sì wà ní dín láìsí yí gbogbo ọjà padà sí iṣẹ́ VPN nìkan. Ìyàsọ́tọ̀ yẹn ni àpẹẹrẹ, kì í ṣe ààlà rẹ̀.

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