ബാക്കപ്പിനു മുൻപ് VPN ആവശ്യമുള്ള സ്ക്രിപ്റ്റുകൾ പലപ്പോഴും openvpn നേരിട്ട് പ്രവർത്തിപ്പിക്കുന്നു. അത് Tunnelblick ഇതിനകം കൈകാര്യം ചെയ്യുന്ന പ്രൊഫൈൽ, DNS, റൂട്ട് കൈകാര്യം എന്നിവ ഉപേക്ഷിക്കുന്നു. പിന്തുണയുള്ള വഴി Tunnelblick-ന്റെ സ്വന്തം AppleScript ഇന്റർഫേസ് ആണ്, അത് പേരിട്ട കോൺഫിഗറേഷനുവേണ്ടി connect, state, disconnect അഭ്യർത്ഥനകൾ സ്വീകരിക്കുന്നു. അത് ഉപയോഗിക്കുക, ആപ്പ് ഉത്തരവാദിയായി തുടരട്ടെ.

ആപ്പിനോട് സംസാരിക്കുക, openvpn-നോടല്ല

OpenVPN പ്രൊഫൈൽ, എൻജിൻ തിരഞ്ഞെടുപ്പ്, സ്ക്രിപ്റ്റുകൾ, DNS-റൂട്ട് സംയോജനം എന്നിവ Tunnelblick-ന്റേതാണ്. വേറെ openvpn ബൈനറി മറ്റൊരു പ്രവർത്തന ക്രമമാണ്, അതേ കണക്ഷനിലേക്കുള്ള കുറുക്കുവഴിയല്ല.

ആപ്പിന്റെ സ്ക്രിപ്റ്റിംഗ് ഇന്റർഫേസ് വിളിക്കുന്നത് ആ ഉടമസ്ഥത നിലനിർത്തുകയും ഓരോ അഭ്യർത്ഥനയും പരിശോധനായോഗ്യമാക്കുകയും ചെയ്യുന്നു.

ഇവിടത്തെ ഉദാഹരണങ്ങൾ Tunnelblick Applications-ൽ ഉണ്ടെന്നും, പ്രവർത്തിക്കുന്ന കോൺഫിഗറേഷന്റെ പേര് HQ എന്നും, കമാൻഡുകൾ ലോഗിൻ ചെയ്ത Mac ഉപയോക്താവിന്റെ സെഷനിൽ ഓടുന്നു എന്നും അനുമാനിക്കുന്നു. പേര് നിങ്ങളുടെ കൃത്യമായ കോൺഫിഗറേഷനാക്കി മാറ്റുക.

കൃത്യം ഒരു പേരിട്ട പ്രൊഫൈൽ ആരംഭിക്കുക

connect അഭ്യർത്ഥന കോൺഫിഗറേഷനെ പേരിടുന്നു. അവസാനം തിരഞ്ഞെടുത്തതിലേക്ക് ബന്ധിപ്പിക്കാനുള്ള അഭ്യർത്ഥനയല്ല ഇത്.

കോൺഫിഗറേഷന്റെ ഉടമസ്ഥതയുള്ള ഉപയോക്തൃ സെഷനിൽ അത് ഓടിക്കുക:

osascript -e 'tell application "/Applications/Tunnelblick.app" to connect "HQ"'

സാധാരണ സൈൻ-ഇൻ സന്ദേശങ്ങളിലൂടെ കടക്കുക. വിളിക്കുന്ന ആപ്പിന് Tunnelblick നിയന്ത്രിക്കാൻ അനുമതിയുണ്ടോ എന്ന് macOS ചോദിച്ചേക്കാം; അനുവദിക്കുന്നതിന് മുൻപ് ഏത് ആപ്പ്, ഏത് ലക്ഷ്യം എന്ന് പരിശോധിക്കുക. ആ സംഭാഷണം ക്ലിക്ക് ചെയ്ത് കടക്കുന്ന ഓട്ടോമേഷൻ സംഭാഷണത്തിന്റെ ഉദ്ദേശ്യം തന്നെ നശിപ്പിക്കുന്നു.

ടണൽ ഉയരുന്നതിന് മുൻപ് connect അഭ്യർത്ഥന മടങ്ങുന്നു

Tunnelblick-ന്റെ സ്ക്രിപ്റ്റിംഗ് ഗൈഡ് വ്യക്തമാണ്: കണക്ഷൻ പൂർത്തിയാകുന്നതിന് മുൻപ് connect മടങ്ങുന്നു. പൂജ്യം എക്സിറ്റ് സ്റ്റാറ്റസ് അർത്ഥമാക്കുന്നത് അഭ്യർത്ഥന സ്വീകരിച്ചു എന്നാണ്, ട്രാഫിക് ഒഴുകുന്നു എന്നല്ല.

സ്ഥിതി വെവ്വേറെ വായിക്കുക:

osascript -e 'tell application "/Applications/Tunnelblick.app" to get state of first configuration where name = "HQ"'

CONNECTED ഒരു കണക്ഷൻ-സ്ഥിതി ഫലമാണ്. നിങ്ങളുടെ ജോലിക്ക് ആവശ്യമായ സ്വകാര്യ ഉറവിടം എത്താവുന്നതാണെന്ന് അത് ഇപ്പോഴും തെളിയിക്കുന്നില്ല, അതിനാൽ ആശ്രിത ജോലി തുടങ്ങുന്നതിന് മുൻപ് അത് വെവ്വേറെ പരിശോധിക്കുക.

സ്ക്രിപ്റ്റിംഗ് ഇന്റർഫേസിലെ മറ്റ് നിയന്ത്രണങ്ങൾ വിശാലമായ പ്രവർത്തനങ്ങൾ ഉൾക്കൊള്ളുന്നു, ഒരു പ്രൊഫൈൽ മാത്രം മാറുമ്പോൾ ആവശ്യമില്ല.

സമയപരിധിയോടെ കാത്തിരിക്കുക, പിന്നെ പരാജയപ്പെടുക

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

പരിമിത ലൂപ്പ് ഇങ്ങനെയിരിക്കും:

for i in $(seq 1 30); do
  state=$(osascript -e 'tell application "/Applications/Tunnelblick.app" to get state of first configuration where name = "HQ"')
  if [ "$state" = "CONNECTED" ]; then exit 0; fi
  sleep 1
done
echo "tunnel did not reach CONNECTED" >&2
exit 1

മുപ്പത് സെക്കൻഡ് ഒരു ഉദാഹരണമാണ്, സാർവത്രിക ടൈംഔട്ടല്ല. പ്രൊഫൈൽ യഥാർത്ഥത്തിൽ ഉപയോഗിക്കുന്ന പ്രാമാണീകരണ പാതയിൽ നിന്ന് സമയപരിധി തിരഞ്ഞെടുത്ത് വർക്ക്ഫ്ലോ രേഖയിൽ സൂക്ഷിക്കുക.

സ്ഥിതി പരിശോധിച്ച് പേരനുസരിച്ച് വിച്ഛേദിക്കുക

അതേ പ്രൊഫൈൽ നിർത്താൻ അതേ പേരിൽ disconnect വിളിക്കുക. അത് അഭ്യർത്ഥന ഇടുങ്ങിയതായി നിർത്തുകയും മറ്റ് കോൺഫിഗറേഷനുകളെ വെറുതെ വിടുകയും ചെയ്യുന്നു.

osascript -e 'tell application "/Applications/Tunnelblick.app" to disconnect "HQ"'

പ്രൊഫൈലിന്റെ പേരും നിയന്ത്രകനും ഒരുമിച്ച് വർക്ക്ഫ്ലോ രേഖയിൽ സൂക്ഷിക്കുക, പ്രതീക്ഷിക്കുന്ന പ്രാമാണീകരണ, പൂർത്തീകരണ പരിശോധനകളോടൊപ്പം. ആ രേഖയാണ് ആറു മാസത്തിന് ശേഷവും കമാൻഡ് പരിശോധനായോഗ്യമാക്കുന്നത്.

കമ്പ്യൂട്ടറിനൊപ്പം ആരംഭിക്കുന്ന സ്വഭാവം മറ്റൊരു മോഡാണ്. Tunnelblick-ന്റെ രേഖപ്പെടുത്തിയ സ്റ്റാർട്ടപ്പ് ഓപ്ഷനും അത് പ്രതീക്ഷിക്കുന്ന ക്രെഡൻഷ്യൽ ക്രമീകരണവും ഉപയോഗിക്കുക. ലോഗിൻ ചെയ്ത ഡെസ്ക്ടോപ്പ് സെഷനിൽ ഓടുന്ന കമാൻഡും മെഷീനൊപ്പം ആരംഭിക്കുന്ന സേവനവും ഒരേ സന്ദർഭം പങ്കിടുന്നില്ല. ലോഗിൻ ചെയ്തിരിക്കുമ്പോൾ പ്രവർത്തിക്കുന്ന സ്ക്രിപ്റ്റ് ബൂട്ടിൽ ഓടുമെന്ന് കരുതരുത്. സ്റ്റാർട്ടപ്പ് പാത വെവ്വേറെ, അതേ സമയപരിധിയും ലോഗിംഗും ഉപയോഗിച്ച് പരീക്ഷിക്കുക.

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