Ni kifaa kipi cha macOS kinachoweza kulazimisha programu moja kupitia VPN pekee?
Mpaka wa VPN-pekee unahitaji njia na kukataa. Linganisha wasifu kwa kila programu, proksi, vichujio na PF, kisha jaribu programu moja inayokuhusu.
Mstari mmoja katika hati ya mahitaji — “programu hii inaweza kutumia VPN, na kitu kingine chochote hapana” — kwa utulivu unaomba mifumo miwili ambayo hakuna swichi moja inayotoa. Trafiki inahitaji njia kupitia handaki iliyokusudiwa, na trafiki ambayo ingetoka moja kwa moja lazima ikataliwe. Zana zinazofanya moja vizuri na nyingine kabisa hazifanyi ni za kawaida, ndiyo sababu ulinganisho unaouliza tu ikiwa kitu kinaweza kuzuia hujibu kwa kujiamini nusu ya swali. Kwanza andika mpaka, kisha chagua sehemu zinazofunika nusu zake mbili.
Mahitaji mawili yaliyofichwa katika sentensi moja
Uelekezaji ni sehemu inayoweka muunganisho kwenye handaki au proksi. Kukataa ni sehemu inayozuia muunganisho huo huo kutoka kwa njia nyingine yoyote. Sehemu tofauti huzitekeleza, hushindwa kwa njia tofauti, na bidhaa inaweza kuwa bora katika moja bila kusema chochote kuhusu nyingine:
| Approach | Steers traffic | Refuses direct egress | Knows the app identity |
|---|---|---|---|
| Per-app VPN profile | Yes, for the apps it names | Only if a filter or firewall also blocks | Yes, within its own rules |
| Application proxy setting | Partly, for requests that honour it | No | No |
| Content filter | No | Yes | Yes, if the filter is written that way |
| Local PF ruleset | No | Yes, by address and port | Not reliably |
Soma jedwali kama orodha ya ukaguzi na si kama mpangilio. Hakuna safu inayojaza nguzo mbili za kati, na safu zinazozifunika ni sehemu mbili zinazoshirikiana: moja inamiliki njia, nyingine inamiliki kukataa. Nguzo ya utambulisho ni muhimu kwa sababu nyingine, kwa kuwa kanuni isiyoweza kutaja programu haiwezi kutekeleza kanuni kuhusu programu hiyo. Chochote unachoweka, lazima kijibu zote tatu, vinginevyo mpaka katika hati ya mahitaji si mpaka kwenye mashine.
Uelekezaji peke yake huacha njia ya kutoka
Mpangilio wa proksi ya programu ni mfano ulio wazi zaidi wa uelekezaji bila kukataa. Inaweza kuelekeza maombi kutoka kwa programu inayoheshimu proksi ya mfumo, na haifuniki kitu kingine chochote: mchakato msaidizi, kisasisisha, huduma ya chinichini au itifaki tofauti zinaweza kwenda njia yao wenyewe bila kusoma mpangilio huo kamwe. Kwa hiyo kuchagua kituo cha mwisho cha SOCKS kwenye paneli moja hakuundi sera ya kuzuia kutoka moja kwa moja kwa programu. Ikiwa hitaji linahusu programu kwa ujumla, uliza ni sehemu zipi kanuni inazitambua kwa kweli.
Wasifu wa VPN kwa kila programu huelekeza vizuri kuliko proksi, kwa sababu jukwaa huamua ni programu zipi zinaingia handakini badala ya kila programu kuamua yenyewe. Hata hivyo haikatai chochote: wasifu hutoa njia, na trafiki isiyolingana nayo huchukua njia ya kawaida. Pengo hilo ndilo mahali ambapo sehemu ya pili inastahili nafasi yake, na ndiyo sababu bidhaa zinazoonekana kama swichi moja kwa kawaida huwa mbili.
Kukataa peke yake huvunja programu
Nyaraka za Apple kuhusu vichujio vya maudhui zinaeleza uamuzi wa kuruhusu-au-kuzuia kuhusu trafiki inapopita kwenye mrundikano wa mtandao. Uamuzi huo si handaki na si muunganisho wa proksi, kwa kuwa huamua ikiwa kitu kinaweza kuendelea, si wapi kinaenda. Kichujio peke yake hutekeleza kukataa kikamilifu na huacha programu isitumike, ikiwa na kumbukumbu safi na bila maelezo yoyote. Uamuzi wa kichujio unaweza kusimamisha muunganisho lakini hautoi handaki kamwe, kwa hiyo kuunganisha na uelekezaji ni uamuzi wa muundo na si nyongeza ya hiari.
Seti ya kanuni za PF inayosimamiwa ndani ya nchi iko upande wa pili wa wigo huo. Ni uamuzi halali wa usaidizi kwenye mashine inayomilikiwa na msimamizi, na si msingi wa bidhaa inayoweza kusambazwa kiotomatiki, kwa kuwa yeyote anayemiliki seti ya kanuni pia anamiliki mwingiliano wake na watumiaji wengine wa ukuta wa moto, njia yake ya uboreshaji na urejeshaji wake kanuni inapokuwa mbaya. Kuongeza PF kwenye bidhaa hakuondoi swali hilo la umiliki; hulibainisha.
Usambazaji huamua ikiwa kanuni itakuwepo kesho pia
Jinsi Network Extension inavyosambazwa kwenye majukwaa ya Apple hutegemea aina ya mtoa huduma, ufungashaji na toleo la OS lililo mbele yako. Ugani wa programu kwenye macOS hufanya kazi katika mazingira ya mtumiaji na huisha mtumiaji huyo anapotoka, wakati ugani wa mfumo una mazingira ya kimataifa yasiyotegemea kipindi. Ikiwa ulinzi unapaswa kustahimili kutoka, tofauti hiyo ni muundo wote na si tanbihi. Thibitisha njia ya usambazaji kabla ya kuahidi tabia, kwa kuwa msimbo huo huo hutua tofauti kulingana na aina ya ugani inayotumwa.
Upatikanaji wa chanzo ni suala tofauti na utekelezaji. Kusoma hazina hukuambia jinsi kitu kilivyotekelezwa, si kile ambacho faili binary iliyosakinishwa inaruhusiwa kufanya kwenye mashine hii. Uwekaji sahihi, usakinishaji na uidhinishaji bado vinatumika, na maelekezo yaliyojengwa kuzunguka ugani wa kernel uliopitwa na wakati au hila ya kuingiza maktaba yanaeleza jukwaa lingine na msimamo mwingine wa hatari, vyovyote vilivyofanya kazi vizuri wakati mmoja.
Kisa cha kukubalika kinachotaja programu
Chagua kitendo kimoja ambacho programu hufanya yenyewe, andika anwani inayopaswa kufikiwa na ikiwa anwani hiyo ni IPv4 au IPv6, kisha rudia kitendo hicho katika hali iliyoidhinishwa isiyo na handaki. Uendeshaji wa pili lazima utoe kukataa kulikotangazwa na si jaribio la moja kwa moja la kimya. Hicho ndicho kipande ambacho watu huacha bila kubainishwa, na kipande pekee kinachothibitisha kuwa kukataa kuko kabisa. Iendeshe kwanza wakati handaki linapatikana, ili tofauti kati ya matokeo mawili iweze kutoka tu kwa handaki lisilopo.
Kisha pitia mabadiliko yanayotajwa na hitaji: kuanzisha upya programu, mchakato msaidizi kuanza, handaki kuunganishwa upya, mashine kubadilisha mitandao, na kutoka au kuwasha upya pale inapohusika. Ukurasa wa IP ya umma kwenye kivinjari si jaribio la soketi za programu nyingine, kwa hiyo hauwezi kuchukua nafasi ya hili. Pale ambapo hakuna usambazaji unaotumika unaofunika tabia halisi ya programu, mazingira yaliyotengwa yaliyoidhinishwa yenye lango dhahiri na bila njia nyingine ya kutoka ni uamuzi wa kuzuia wenye gharama yake ya usimamizi, si badala ya kisanduku cha kuteua.
Maliza kwa kuandika vitu vinne: programu inaundwa na sehemu zipi, nani anamiliki uelekezaji, nani anamiliki kukataa, na hali ambazo kanuni bado inapaswa kutumika. Hazina ya umma inaweza kuwa kigezo kimoja cha uteuzi, lakini si kimoja cha vinne, na vitu hivyo ndivyo vinavyoamua ikiwa kifaa fulani kinakidhi hitaji la mtandao.