Android-ൽ നിന്ന് VPN പ്രൊഫൈൽ എക്സ്പോർട്ട് ചെയ്യുന്നത് ഒരു ബാക്കപ്പ് ഘട്ടം പോലെ തോന്നുന്നു, അത് വാഗ്ദാനം ചെയ്യുന്ന മെനു ആ മതിപ്പ് തിരുത്താൻ ഒന്നും ചെയ്യുന്നില്ല. നിങ്ങളുടെ കൈവശം അവശേഷിക്കുന്നത് ഒരു parser ഇൻപുട്ട്, ഓപ്പറേറ്റിംഗ് സിസ്റ്റം ഒരിക്കലും തിരികെ നൽകാനിടയില്ലാത്ത ഒരു കീ, ആ ഫോണിന് തന്നെ നൽകിയ ഒരു അനുമതി എന്നിവയാണ്. ഇവ മൂന്നും വേർതിരിക്കുക, ഉപയോഗപ്രദമായ ചോദ്യം ഉയരും: പുതിയ ഉപകരണത്തിൽ ഇനിയും ഏത് ഭാഗമാണ് കാണാത്തത്?

ഫയൽ എളുപ്പമുള്ള ഭാഗമാണ്. ബാക്കിയുള്ള രണ്ടെണ്ണം മാറ്റം പ്രവർത്തിക്കുമോ എന്ന് തീരുമാനിക്കുന്നു.

എക്സ്പോർട്ട് ചെയ്ത പ്രൊഫൈലിൽ യഥാർത്ഥത്തിൽ എന്താണുള്ളത്

വിശ്വസിക്കുന്നതിന് മുമ്പ് ഫയൽ ഒരു ടെക്സ്റ്റ് എഡിറ്ററിൽ തുറക്കുക. OpenVPN പ്രൊഫൈൽ ഒരു ചെറിയ കോൺഫിഗറേഷൻ ഭാഷയാണ്: remote, proto, data-ciphers, ഒപ്പം പലപ്പോഴും ക്ലയന്റ് തന്റെ TLS സ്റ്റാക്കിന് നൽകുന്ന ഇൻലൈൻ <ca>, <cert>, <key> അല്ലെങ്കിൽ <tls-crypt> ബ്ലോക്കുകൾ. WireGuard കോൺഫിഗർ പരന്നതാണ്: [Interface]-ൽ PrivateKey, Address എന്നിവ ഉണ്ട്, തുടർന്ന് ഓരോ എൻഡ്പോയിന്റിനും PublicKey, AllowedIPs, Endpoint വഹിക്കുന്ന ഒരു [Peer] ഉണ്ട്. IKEv2 കീ ബ്ലോക്കുകൾക്ക് പകരം പേലോഡ് നിഘണ്ടുകളുള്ള .mobileconfig ആയി വരുന്നു.

ആ വാചകങ്ങളിൽ ഒന്നും തന്നെ ഒറ്റയ്ക്ക് ഒരു ക്രെഡൻഷ്യലല്ല. ക്രെഡൻഷ്യൽ സ്വകാര്യ കീയാണ്, ഓരോ ഫോർമാറ്റും അത് ഉള്ളിൽ പതിപ്പിക്കുകയോ അത് സൃഷ്ടിച്ച ക്ലയന്റിനുള്ളിൽ മാത്രം പരിഹരിക്കപ്പെടുന്ന ഒരു ഉപനാമത്തിലേക്ക് ചൂണ്ടുകയോ ചെയ്യുന്നു.

Android-ൽ കീ യഥാർത്ഥത്തിൽ എവിടെയാണ് താമസിക്കുന്നത്

Android ആപ്പ് ഡാറ്റ /data/data/<package>-ന് കീഴിൽ സൂക്ഷിക്കുന്നു, ആ ആപ്പിന്റെ UID-ക്ക് മാത്രം വായിക്കാനാകും. root ചെയ്യാത്ത ഫോണിൽ നിന്ന് മറ്റൊരു ആപ്പിന്റെ സ്വകാര്യ ഡയറക്ടറി പകർത്താൻ പിന്തുണയുള്ള മാർഗമില്ല, Android 12 അത് ഒഴിവാക്കിയതിനും ക്ലയന്റുകൾ allowBackup="false" പ്രഖ്യാപിക്കാൻ തുടങ്ങിയതിനും ശേഷം adb backup പൊതുവായ ഉത്തരമല്ലാതായി. അതിനാൽ Android ക്ലയന്റിൽ നിന്നുള്ള എക്സ്പോർട്ട് എന്നത് ആ ക്ലയന്റ് നടപ്പിലാക്കുന്നതിനെയാണ് അർത്ഥമാക്കുന്നത്, ഫയൽസിസ്റ്റത്തിന്റെ പകർപ്പല്ല.

ഐഡന്റിറ്റി പാളി ആപ്പിന് കീഴിലാണ്. ഒരു ക്ലയന്റ് നിങ്ങളുടെ കീ Android Keystore-ലേക്ക് ഇംപോർട്ട് ചെയ്തിട്ടുണ്ടെങ്കിൽ, മെറ്റീരിയൽ അവിടെ സൃഷ്ടിക്കപ്പെടുകയോ പൊതിയുകയോ ചെയ്യുന്നു, പിന്നീടുള്ള എക്സ്പോർട്ടുകൾ ബൈറ്റുകൾക്ക് പകരം Keystore ഉപനാമത്തിലേക്കുള്ള ഒരു റഫറൻസ് വഹിച്ചേക്കാം. ഹാർഡ്വെയർ പിന്തുണയുള്ള കീകൾ ഉടമസ്ഥ ആപ്പിന് പോലും വായിക്കാനാകാത്തവിധം നിർമ്മിച്ചതാണ്, Keystore documentation വിവരിക്കുന്നതുപോലെ, അതിനാൽ ആ ഉപനാമത്തിലേക്ക് ചൂണ്ടുന്ന പ്രൊഫൈൽ അതേ ഫോണിൽ വൃത്തിയായി ഇംപോർട്ട് ചെയ്യപ്പെടുന്നു, മറ്റെവിടെയും പരാജയപ്പെടുന്നു.

അത് തകർന്ന എക്സ്പോർട്ടല്ല. പ്ലാറ്റ്ഫോമിൽ നിന്ന് ആവശ്യപ്പെട്ട സ്വത്താണ്.

ഒരു പ്രൊഫൈൽ എന്താണ് കൊണ്ടുപോകാനാകാത്തത്

വസ്തുക്കളെ ലക്ഷ്യസ്ഥാനം സ്വീകരിക്കുന്നതുമായി താരതമ്യപ്പെടുത്തുക:

വസ്തുകൈമാറുന്നുണ്ടോ?എന്തുകൊണ്ട്
പ്രോട്ടോക്കോളും എൻഡ്പോയിന്റുംഅതെ, ലക്ഷ്യ ക്ലയന്റ് അത് പിന്തുണയ്ക്കുന്നുവെങ്കിൽപ്രൊഫൈലിലെ സാധാരണ വാചകം
CA സർട്ടിഫിക്കറ്റും ഹോസ്റ്റ്നെയിം പരിശോധനയുംസാധാരണയായിപൊതു മെറ്റീരിയൽ, പക്ഷേ ഹോസ്റ്റ്നെയിം സർട്ടിഫിക്കറ്റുമായി പൊരുത്തപ്പെടണം
ക്ലയന്റ് സർട്ടിഫിക്കറ്റ്അതെ, അത് ഓരോ ഉപകരണത്തിനും ബന്ധിച്ചിട്ടില്ലെങ്കിൽസർട്ടിഫിക്കറ്റുകൾ കൈമാറാവുന്നതാണ്; ഒന്ന് എത്ര ഉപകരണങ്ങൾക്ക് ഉപയോഗിക്കാമെന്ന് ഇഷ്യൂ ചെയ്യുന്നയാൾ തീരുമാനിക്കുന്നു
സ്വകാര്യ കീKeystore-ന് പുറത്ത് സൃഷ്ടിച്ചതെങ്കിൽ മാത്രംഹാർഡ്വെയർ പിന്തുണയുള്ള കീകൾ എക്സ്പോർട്ട് ചെയ്യാനാകില്ല, മാറ്റിസ്ഥാപിക്കാൻ മാത്രം
അക്കൗണ്ട്, MFA, SSO സെഷൻഇല്ലടോക്കണുകൾ കാലഹരണപ്പെടുന്നു, അവ ലഭിച്ച ഉപകരണത്തോട് ബന്ധിച്ചിരിക്കുന്നു
റൂട്ടുകൾ, DNS, ആപ്പ് പരിധികോൺഫിഗറേഷൻ വാചകമായി മാത്രംAndroid കണക്ട് ചെയ്യുമ്പോൾ VpnService.Builder വഴി അവ പ്രയോഗിക്കുന്നു
സ്പ്ലിറ്റ്-ടണൽ ആപ്പ് പട്ടികഅപൂർവ്വംപാക്കേജ് നാമങ്ങൾ ഉപകരണങ്ങൾക്കിടയിൽ വ്യത്യാസപ്പെടുന്നു, പട്ടിക ക്ലയന്റ് അവസ്ഥയാണ്

രണ്ട് വരികളാണ് കൂടുതൽ ആശയക്കുഴപ്പം ഉണ്ടാക്കുന്നത്. ഉപകരണത്തിൽ സൃഷ്ടിച്ച് എക്സ്പോർട്ട് ചെയ്യാനാകാത്തതെന്ന് അടയാളപ്പെടുത്തിയ കീ യഥാർത്ഥത്തിൽ ആപ്പ് ഡാറ്റയോടൊപ്പം പോകുന്നു, അതിനാൽ പകരം പുതിയ കീയും അതിന് ഇഷ്യൂ ചെയ്ത സർട്ടിഫിക്കറ്റുമാണ്. പുതിയ ഫോണിലേക്ക് പകർത്തിയ സെഷൻ ടോക്കൺ സാധാരണയായി ആദ്യ റിഫ്രെഷിൽ മരിക്കുന്നു, അത് പരാജയപ്പെട്ട ഇംപോർട്ടായി വായിക്കപ്പെടുന്നു.

ഇംപോർട്ട് ഒരു പാഴ്സ് ആണ്, തുടർന്ന് സമ്മത അഭ്യർത്ഥന

സ്വീകർത്താവിന്റെ ഭാഗത്ത്, ഇംപോർട്ട് ഒരു പാഴ്സും തുടർന്ന് ഒരു കമ്മിറ്റുമാണ്. ക്ലയന്റ് കോൺഫിഗർ വായിക്കുന്നു, പരാമർശിക്കുന്ന ഓരോ ബ്ലോക്കും ഉണ്ടെന്ന് പരിശോധിക്കുന്നു, തുടർന്ന് ടണൽ നിർവചനം സ്വന്തം സാൻഡ്ബോക്സിലേക്ക് എഴുതുന്നു, അതുകൊണ്ടാണ് ഡൗൺലോഡുകളിൽ നിന്ന് തിരഞ്ഞെടുത്ത ഫയൽ പിന്നീട് കണക്ട് ചെയ്യുന്നത് അല്ലാത്തത്.

തുടർന്ന് ഒരു ഫയലിനും ഒഴിവാക്കാനാകാത്ത അനുമതി ഘട്ടം വരുന്നു. ടണൽ സ്ഥാപിക്കുന്നതിന് മുമ്പ് ആപ്പ് VpnService.prepare() വിളിച്ച് നിങ്ങളുടെ സമ്മതം നേടണമെന്ന് Android ആവശ്യപ്പെടുന്നു, അതിനാൽ പുതുതായി ഇംപോർട്ട് ചെയ്ത പ്രൊഫൈൽ ഇപ്പോഴും ഒരിക്കൽ സിസ്റ്റം ഡയലോഗ് കാണിക്കുന്നു. തുടർന്ന് ടണൽ addAddress, addRoute, addDnsServer, ഒപ്പം ഓരോ ആപ്പ് റൂട്ടിംഗിനും addAllowedApplication അല്ലെങ്കിൽ addDisallowedApplication വഴി വ്യക്തമായി നിർമ്മിക്കുന്നു. ഇവയൊന്നും ഒരു എൻഡ്പോയിന്റിൽ നിന്ന് അനുമാനിക്കപ്പെടുന്നില്ല, അതിനാൽ ഒരേ പ്രൊഫൈൽ രണ്ട് ക്ലയന്റുകളിൽ വ്യത്യസ്ത ഫലപ്രദ റൂട്ട് സെറ്റ് ഉണ്ടാക്കാം.

സർട്ടിഫിക്കറ്റ് അടിസ്ഥാനമാക്കിയ സെറ്റപ്പുകൾ ഒരു ശാഖ കൂടി ചേർക്കുന്നു. സെർവർ ഒരു നിർദ്ദിഷ്ട ഉപകരണത്തിന് സർട്ടിഫിക്കറ്റ് ഇഷ്യൂ ചെയ്യുമ്പോൾ, MDM, SCEP എൻറോൾമെന്റ് ചെയ്യുന്നതുപോലെ, രണ്ടാമത്തെ ഫോണിൽ അത് വീണ്ടും ഉപയോഗിക്കുന്നത് സെർവർ ഓരോ ഐഡന്റിറ്റിക്കും ഒരു സെഷൻ നിർബന്ധിക്കുന്നതുവരെ പ്രവർത്തിക്കുകയോ TLS ഹാൻഡ്ഷേക്കിൽ പരാജയപ്പെടുകയോ ചെയ്യുന്നു. വീണ്ടും ഉപയോഗിക്കാൻ പ്ലാൻ ചെയ്യുന്നതിന് മുമ്പ് ഇഷ്യൂ ചെയ്യുന്നയാളുടെ നയം പരിശോധിക്കുക.

പഴയത് വിരമിക്കുന്നതിന് മുമ്പ് പുതിയ ഉപകരണം പരിശോധിക്കുക

പുതിയ ഫോൺ പച്ച ഐക്കണിനേക്കാൾ മെച്ചമായ എന്തെങ്കിലും പാസ് ചെയ്യുന്നതുവരെ പഴയ ഫോൺ കണക്ട് ചെയ്ത് വയ്ക്കുക. പുതിയ ഉപകരണത്തിൽ നിന്നുള്ള എഗ്രസ് വിലാസവും അത് യഥാർത്ഥത്തിൽ ഉപയോഗിച്ച DNS റിസോൾവറും സ്ഥിരീകരിക്കുക. split tunneling പ്രധാനമെങ്കിൽ, ടണൽ ഒഴിവാക്കേണ്ട ഒരു ആപ്പും ഒഴിവാക്കരുതാത്ത ഒരു ആപ്പും തുറക്കുക, ഏതാണ് നിങ്ങളുടെ ഐഎസ്പിയിലെത്തുന്നതെന്ന് നോക്കുക.

ഒരു പരിശോധന എഗ്രസ് വിലാസം തീരുമാനിക്കുന്നു. ഫോൺ ബ്രൗസറിൽ https://ifconfig.me തുറക്കുക, തുടർന്ന് അതേ Wi-Fi-യിലുള്ള ലാപ്ടോപ്പിൽ നിന്ന് curl -s https://ifconfig.me പ്രവർത്തിപ്പിച്ച് രണ്ട് ഉത്തരങ്ങളും നിങ്ങളുടെ ദാതാവ് അനുവദിച്ച വിലാസവുമായി താരതമ്യപ്പെടുത്തുക.

അപ്പോൾ മാത്രം പഴയ ഐഡന്റിറ്റി വിരമിക്കുക, അത് ഇഷ്യൂ ചെയ്യുന്നയാളിലൂടെ ചെയ്യുക: സർട്ടിഫിക്കറ്റ് റദ്ദാക്കുകയോ ഉപകരണം അക്കൗണ്ടിൽ നിന്ന് നീക്കുകയോ ചെയ്യുക. ഡൗൺലോഡുകളിൽ നിന്ന് ഒരു ഫയൽ ഇല്ലാതാക്കുന്നത് ഒന്നും അവസാനിപ്പിക്കുന്നില്ല, കാരണം ഒരേ സർട്ടിഫിക്കറ്റുള്ള രണ്ട് ഉപകരണങ്ങൾ സെർവർ ലോഗിൽ ഒരുപോലെ കാണപ്പെടുന്നു.

എക്സ്പോർട്ട് കൈമാറാൻ പറ്റാത്തതാണെന്ന് തെളിഞ്ഞാൽ, പരിഹാരം പൊതു കോൺഫിഗറേഷൻ ബണ്ടിലല്ല, പുതിയ എൻറോൾമെന്റാണ്. രണ്ടാമത്തെ ഉപകരണത്തിന് പ്രൊഫൈൽ ആവശ്യപ്പെടുക, അല്ലെങ്കിൽ പുതിയ ഫോണിൽ കീ ജോഡി സൃഷ്ടിച്ച് CSR സമർപ്പിക്കുക; മന്ദഗതിയിലാണ്, ഇഷ്യൂ ചെയ്യുന്നയാൾ പിന്തുണയ്ക്കുന്ന വഴിയും അതാണ്.

എന്തെങ്കിലും മായ്ക്കുന്നതിന് മുമ്പ് ചെക്ക്ലിസ്റ്റ് പ്രവർത്തിപ്പിക്കുക: പുതിയ ഉപകരണം കണക്ട് ചെയ്യുന്നു, എഗ്രസ് വിലാസവും DNS-ഉം ഒത്തുപോകുന്നു, ഓരോ ആപ്പ് പരിധിയും നിങ്ങൾ ഉദ്ദേശിച്ചതാണ്, പഴയ ഐഡന്റിറ്റി റദ്ദാക്കിയിട്ടുണ്ട്, സൂക്ഷിച്ച ഏതെങ്കിലും കോൺഫിഗർ ഫയൽ എൻക്രിപ്റ്റ് ചെയ്ത സംഭരണത്തിലുണ്ട്.

അനുബന്ധ ലേഖനങ്ങൾ