Iṣẹ́ méjì tí ó yàtọ̀ pátápátá ni a kójọ sábẹ́ orúkọ VPN tí a ṣe pẹ̀lú ètò, àti ọ̀kan nínú wọn nìkan ni ó wà fún app tí ó wọ́pọ̀ lórí èyíkéyìí nínú àwọn pẹpẹ alágbèéká méjì náà. Èyí àkọ́kọ́ ni títanná profil tí olùlò ti fi pamọ́ tẹ́lẹ̀; èyí kejì ni kíkọ́ tunnel nínú ìlànà tìrẹ. Android fún ọ ní èyí kejì nípasẹ̀ VpnService àti iOS fún ọ ní èyí kejì nípasẹ̀ ẹ̀tọ́ Network Extension, nígbà tí èyí àkọ́kọ́ wà pẹ̀lú ẹ̀rọ, olùní ohun èlò tàbí olùpèsè MDM. Wíwá ìmọ̀ èyí tí ìwọ nílò ní ti gidi sábàá máa ń sọ iṣẹ́ náà di kékeré.

Iṣẹ́ méjì tí ó pín orúkọ kan

Ìmú ṣiṣẹ́ profil tí a fi pamọ́ túmọ̀ sí sísọ fún tunnel tí ó wà tẹ́lẹ̀ pé kí ó gòkè wá: olùgbàlejò, ẹ̀rí ìwọlé, ìlànà ìbáṣepọ̀, gbogbo rẹ̀ ti ṣe àtúnṣe tẹ́lẹ̀ ní ibi tí olùlò lè rí. Kíkọ́ tunnel túmọ̀ sí pé kóòdù rẹ ni ó ni ojú-ìbáṣepọ̀, àyíká àwọn pákítì àti ìlànà ìbáṣepọ̀. Wọ́n dàbí ara wọn nínú àkójọ ọjà, wọ́n kò sì fẹ́rẹ̀ẹ́ pín ìmúṣẹ kankan.

Kò sí pẹpẹ alágbèéká kankan tí ó ṣí èyí àkọ́kọ́ fún app SDK. Ìsopọ̀ tí ó farahàn láìsí pé olùlò ṣe ohunkóhun kò ṣeé yàtọ̀ sí sọ́fíwéè búburú, nítorí náà àwọn ẹ̀rọ méjèèjì fi ẹnubodè ìfohùnṣọ̀kan síwájú gbogbo app tí ó ń gbé ìṣàn.

Android: ẹnubodè ìfohùnṣọ̀kan, kò sì sí API profil

VpnService ti wà láti Android 4.0, ó sì ń jẹ́ kí app ṣe ojú-ìbáṣepọ̀ tun, lẹ́yìn náà kí ó ka àwọn pákítì kí ó sì kọ wọ́n. A gbọ́dọ̀ polongo iṣẹ́ náà pẹ̀lú BIND_VPN_SERVICE, VpnService.prepare() sì ń ṣe àpèjúwe ẹ̀rọ tí ó ń béèrè ìyọ̀nda lọ́wọ́ olùlò. Àpẹẹrẹ pẹpẹ náà, ToyVpn, ni ìṣàlàyé tí ó ṣe kedere jùlọ nípa ìrísí tí a ní lọ́kàn: kóòdù rẹ ni ó ni ojú-ìbáṣepọ̀ àti gbogbo ohun tí ó ń ṣàn kọjá.

Ohun tí kò ṣe ni fífi àfikún kan kún ojú-ìpèsè VPN ti ẹ̀rọ. Kò sí API gbangba fún ìyẹn, àti app Ètò ń tọ́jú àwọn profil rẹ̀ nínú ibi ìpamọ́ tí app tí ó wọ́pọ̀ kò lè dé. Àwọn ìpè sí àwọn kíláàsì tí ó fara sin láti app déédéé ń dá àwọn profil tí ẹ̀rọ kò ní ṣe àkójọ rẹ̀ láé, ìdí nìyẹn tí kóòdù tí ó dàbí ẹni pé ó ń ṣiṣẹ́ nínú ìkọ́ kan fi ń dá ṣíṣẹ́ ní ìdákẹ́jẹ́ẹ́ nínú èyí tí ó tẹ̀lé.

Ọ̀nà tí a ń ṣàkóso yàtọ̀. Olùní ohun èlò tàbí olùní profil lè yan àpò VPN tí ó máa ń tanná nígbà gbogbo nípasẹ̀ àwọn API ìlànà ohun èlò, àti irinṣẹ́ ilé-iṣẹ́ lè fi profil ránṣẹ́ tí olùlò yóò fọwọ́ sí lẹ́yìn náà. Ìyẹn jẹ́ àṣẹ ìṣàkóso ohun èlò, kì í ṣe ìyọ̀nda tí app ń béèrè nígbà ìfiṣe. Tí alábàárò rẹ bá jẹ́ àjọ, èyí ni ọ̀nà tí ó yẹ kí o gbèrò fún; tí alábàárò rẹ bá jẹ́ ènìyàn tí ń fi í sori láti ṣọ́ọ̀bù, kò sí ní rárá.

iOS: ẹ̀tọ́ ni ààlà

iOS pín iṣẹ́ kan náà lọ́nà mìíràn. Olùpèsè VPN ń ṣe olùpèsè tunnel pákítì tàbí aṣojú app lábẹ́ ìlànà Network Extension, àti ẹ̀tọ́ tí ó bá a mu gbọ́dọ̀ jẹ́ fífún akọọlẹ olùdàgbàsókè. Ìṣètò VPN ti ara ẹni nípasẹ̀ NEVPNManager wà fún ọ̀ràn tí ó rọrùn jùlọ, ó sì ṣì ń ṣiṣẹ́ nínú àwòrán ìyọ̀nda kan náà. Apple ń ṣàkọsílẹ̀ gbogbo ojú-ilẹ̀ nínú ìtọ́kasí Network Extension, tí ó yẹ kí a kà kí a tó pinnu ìwọ̀n iṣẹ́ náà.

Kò sí ọ̀nà tí a ṣe àtìlẹ́yìn fún láti ṣí ojú-ìpèsè VPN, ka àwọn ìṣètò tí olùlò fi pamọ́ tàbí bẹ̀rẹ̀ ọ̀kan nínú wọn. Ohun tí olùpèsè lè ṣe ni fi profil ìṣètò ránṣẹ́ fún olùlò láti fi sori, lẹ́yìn náà lo tunnel tí ó jáde nípasẹ̀ àwọn ìpè nẹ́tíwọ́kì déédéé. Olùpèsè MDM ni ó ń yan tunnel fún app kọ̀ọ̀kan nípasẹ̀ òfin ìbéèrè, kì í ṣe app ni ó ń yàn ní àkókò ṣíṣe.

Olùpèsè VPN láti ọ̀dọ̀ olùtà ńlá kì í ṣe ẹ̀rí pé akọọlẹ rẹ lè fi ohun kan náà ránṣẹ́. Àwọn ẹ̀tọ́ yẹn ni a ń béèrè fún akọọlẹ olùdàgbàsókè kọ̀ọ̀kan, a sì ń ṣàyẹ̀wò wọn, nítorí náà ewu àkókò wà lọ́wọ́ Apple, kì í ṣe nínú ètò sprint rẹ.

Desktop ń dé sí ọ̀nà jíjìnnà, ṣùgbọ́n ìní kò yí padà

Windows ni ọ̀ràn tí ó gbà láyè. Add-VpnConnection ń dá àfikún ìwé tẹlifóònù láti inú àpéjọ PowerShell tí a gbé sókè, rasdial sì so ó mọ́ tàbí yà á kúrò láti inú script. App tún lè darí olùpèsè olùtà nípasẹ̀ ìlà àṣẹ tí a ṣàkọsílẹ̀ rẹ̀. Dídá profil náà jẹ́ ìgbésẹ̀ ìṣàkóso síbẹ̀, nítorí àfikún náà ń gbé nínú ìpamọ́ ẹ̀rọ gbogbo.

macOS ń hu ìwà kan náà pẹ̀lú àwọn irinṣẹ́ mìíràn. scutil --nc start àti stop ń ṣiṣẹ́ lórí àwọn iṣẹ́ tí ó ti wà tẹ́lẹ̀, nígbà tí dídá ọ̀kan jẹ́ iṣẹ́ ìṣàkóso ẹ̀rọ. Níní ìlànà lórí kọ̀mpútà gbé kì í sọ ọ́ di olùní ìṣètò náà.

Kí ni kí o kọ́ dípò

Tí ìbéèrè gidi bá ni pé app rẹ dé API inú, tunnel tí olùlò ti ń ṣiṣẹ́ tẹ́lẹ̀ ti tó. Fi àwọn ìbéèrè HTTPS déédéé ránṣẹ́, jẹ́ kí ẹ̀rọ yan ọ̀nà náà, kí o sì dá gbígbìyànjú láti ṣàkóso tunnel dúró. Tí ìbéèrè bá ni pé kí ìṣàn app rẹ nìkan lo tunnel, béèrè VPN fún app kọ̀ọ̀kan nípasẹ̀ ikanni ìṣàkóso, tàbí parí TLS nínú app lòdì sí iṣẹ́ tí ó ṣeé dé láìsí rẹ̀.

Àwọn API tí ó fara sin kì í ṣe ọ̀nà kúkúrú tí ó yẹ kí a gbà. Wọ́n ń yí padà láàrín àwọn ìtúsílẹ̀, wọ́n ń kùnà nínú àyẹ̀wò app, àwọn àṣìṣe tí wọ́n ń dá ń dàbí àṣìṣe nẹ́tíwọ́kì déédéé fún ẹni tí ó jogún kóòdù náà. Ìfiwé kì í ṣe Android lòdì sí iOS; ó jẹ́ níní tunnel lòdì sí béèrè pé kí pẹpẹ darí ìṣàn, àti pé èyí àkọ́kọ́ nìkan ni ó jẹ́ tìrẹ láti kọ́.

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