10

У меня возникли небольшие трудности с Cisco AnyConnect v3.1 в отношении автоматического входа в систему. Я должен оставаться подключенным к одному серверу весь день каждый день, и было бы здорово, если бы мне не приходилось выкапывать свой пароль из 16 символов каждый день. Я бы хотел, чтобы клиент входил автоматически, но на данный момент я даже не уверен, что это возможно.

Я должен отметить, что программное обеспечение AnyConnect предоставлено мне нашей хостинговой компанией, и я, ни кто-либо в моей организации, не имеем доступа к управлению. Я видел, что на веб-сайтах есть такая часть программного обеспечения, которая называется «Редактор профиля AnyConnect», но Cisco не разрешила мне скачать без действительного имени пользователя.

Я был в %appdata%\local\cisco\cisco anyconnect secure mobility client\preferences.xml чтобы просмотреть мои предпочтения, а также %programdata%\Cisco\Cisco AnyConnect Secure Mobility Client\Profile\ANYCONNECT.XML чтобы просмотреть мой профиль настройки. Ни один из них нигде не показал, что я смогу хранить свои учетные данные. Я даже несколько раз ломал свой профиль, пытаясь подкрутить мой пароль местами. Это не сработало, пойди разберись.

Наконец, я нашел это сообщение на форуме, в котором, по-видимому, указывались "отпечатки" сертификата клиента и сервера, а также что-то, называемое токеном SDI.

Отказ от ответственности: я - веб-разработчик внешнего вида днем, и прошло довольно много времени с тех пор, как мне приходилось заниматься сетевым управлением для себя, извините за вопрос noob!

3 ответа3

15

Вот мой сценарий для запуска Cisco AnyConnect Mobility Client v3.1 и входа в систему автоматически. Сохраните этот сценарий как FILENAME.vbs, замените ПАРОЛЬ своим паролем, замените путь к исполняемому файлу VPN-клиента, если это необходимо (возможно, нет), и вам также может понадобиться настроить время второго спящего режима в зависимости от скорости вашего соединения (мой работает надежно на 5000, но ваш может потребоваться меньше / больше времени, чтобы позвонить домой). Я прикрепил мой к моей панели задач, но вы также можете активировать его.

Set WshShell = WScript.CreateObject("WScript.Shell")

WshShell.Run """%PROGRAMFILES(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpnui.exe"""

WScript.Sleep 3000

WshShell.AppActivate "Cisco AnyConnect Secure Mobility Client"

WshShell.SendKeys "{TAB}"
WshShell.SendKeys "{TAB}"
WshShell.SendKeys "{ENTER}"

WScript.Sleep 5000

WshShell.SendKeys "PASSWORD"
WshShell.SendKeys "{ENTER}"
4

Я использую что-то вроде этого:

set FILE=%TEMP%\tmp
echo connect your.host.name> %FILE%
(echo 0)>> %FILE%
echo yourUserName>> %FILE%
echo yourPassWord>> %FILE%
"C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s < %FILE%

(Обновление: почему круглые скобки вокруг echo 0? Это должно напомнить вам, когда вы делаете выбор, отличный от 0 , что 1> или 2> имеют специальное значение, перенаправляя соответственно stdout или stderr - но не повторяя 1 или 2 . Таким образом, мы остаемся в безопасности с (echo 0) .)

Это немного более кратко:

(echo connect your.host.name& echo 0& echo yourUserName& echo yourPassWord& echo.) > %FILE%
more %FILE% | "C:\Program Files\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s

Однако, если вы хотите добиться того же самого без временного файла, это не работает для меня - мне было бы интересно, почему:

(echo connect your.host.name& echo 0& echo yourUserName& echo yourPassWord) | "%ProgramFiles(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s

Обновление: это работает, найдено через https://stackoverflow.com/a/29747723/880783:

(echo connect your.host.name^& echo 0^& echo yourUserName^&echo yourPassWord^&rem.) | "%ProgramFiles(x86)%\Cisco\Cisco AnyConnect Secure Mobility Client\vpncli.exe" -s

Все эти варианты зависят, конечно, от конфигурации вашего сервера (особенно от выбранной вами группы VPN). Чтобы выяснить, что вам нужно ввести, один раз вызовите vpncli.exe без каких-либо параметров, начните с connect your.host.name , а затем отметьте, что вам предлагается.

Обновление: это дает дополнительное преимущество, предлагая полную свободу в отношении сервера, имени пользователя и пароля, и не зависит от каких-либо значений спящего режима (что всегда трудно, если ваша система имеет тенденцию быть занятой чем-то другим).

3

Я отвечаю на свой собственный вопрос этим ответом "Мех" - это не то, что я хотел, и я с радостью приму другой ответ, который может лучше ответить на мой первоначальный вопрос.

Поскольку с автоматическим входом мне не везло, следующей лучшей вещью, о которой я мог подумать, было автоматическое копирование моего смехотворно длинного пароля в буфер обмена. В Windows я создал файл .bat с этим в теле:

echo|set /p=MyPassword|clip

Где "MyPassword" - ваш действительный пароль.

При двойном щелчке этот файл скопирует ваш пароль в буфер обмена для быстрого входа в систему. Лучше чем ничего!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .