У меня установлен клиент Shrew для подключения к cisco VPN.
(примечание: anyconnect по-королевски срывается, и я потратил несколько часов, пытаясь заставить его работать; у меня строптивый запускался в течение 2 минут после его установки.)
В любом случае, я могу нормально подключиться, и это работает.
Что мне нужно сделать, так это запланировать подключение. Например, раз в день я хочу, чтобы процесс запускал shrew, автоматически подключался к vpn, а затем запускал сценарий SQL. Как только сценарий будет завершен, я хочу, чтобы строптивый отключился от VPN.
Пока у меня есть следующее:
"C:\Program Files\ShrewSoft\VPN Client\ipsecc.exe" -r ClientSite -u MyUser -p MyPassword -a
Когда это работает, Shrew подключается и запускает интерфейс VPN. Однако эта строка не возвращается, пока кто-нибудь не нажмет кнопку «отключить».
Идеи?
Я открыл исходный код некоторого кода, который управляет соединениями строптивых и повторными соединениями. Пользовательский интерфейс хорошо изолирован от ядра, поэтому его можно легко модифицировать, чтобы делать все, что вам нужно.
Проверьте это на https://github.com/CamW/shrew-reconnect если тебе интересно.
Отключение
ShrewSoft VPN не имеет параметров командной строки для отключения. Единственная простая альтернатива - отправить задачу закрыть процессу, например:
taskkill.exe /IM ipsecc.exe
Конечно, это повлияет на все процессы ipsecc, если у вас будет несколько активных VPN.
Неблокирующий старт
Вы можете использовать что-то вроде команды «start», чтобы запустить команду ipsecc, не блокируя пакетный процесс.
C:\Windows\system32>start /?
Starts a separate window to run a specified program or command.