Сақтық көшірме алдында 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"'

Әдеттегі кіру сұрауларынан өтіңіз. macOS шақырған қолданбаға Tunnelblick-ті басқаруға рұқсат бар-жоғын сұрауы мүмкін; рұқсат бермес бұрын қай қолданба мен қай мақсат екенін тексеріңіз. Сол диалогты автоматты түрде басып өтетін автоматизация диалогтың мәнін жояды.

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-тің құжатталған іске қосу опциясын және ол күтетін тіркелгі деректерінің параметрін қолданыңыз. Жүйеге кірген жұмыс үстелі сессиясында орындалған команда мен машинамен бірге басталатын қызмет бір контексті бөліспейді. Кіру кезінде жұмыс істейтін скрипт жүктелу кезінде де істейді деп болжамаңыз. Іске қосу жолын бөлек, сол мерзіммен және журналмен сынаңыз.

Қатысты мақалалар