Каждый раз, когда я подключаюсь к Cisco VPN с помощью встроенного VPN-клиента, он запрашивает пароль. Мне интересно, есть ли способ автоматически сохранить пароль, например, с помощью цепочки для ключей?
Это похоже на очень раздражающую и давнюю ошибку в Mac OS X/macOS.
10.6: Сохраните пароль Cisco IPSec в связке ключей:
В Mac OS X Snow Leopard добавлена поддержка соединений Cisco IPSec VPN, то есть простого IPSec с аутентификацией XAuth и mode_cfg.
Это делает его двухуровневым для аутентификации: во-первых, машинная аутентификация с паролем (общим секретом) или сертификатом X509. Затем традиционная пара «имя пользователя-пароль» для XAuth, которую вы можете ввести и сохранить в полях «Имя учетной записи» и «Пароль» соответственно при настройке соединения. Проблема в том, что даже несмотря на то, что вы ввели свой пароль, и он, по-видимому, правильно сохранен в цепочке для ключей, Mac OS X продолжает приставать к вам, чтобы вы вводили пароль вручную каждый раз, когда вы подключаетесь. Оказывается, это просто ошибка с простым исправлением.
Откройте приложение Keychain Access, выберите системную связку ключей и найдите в списке сохраненную запись пароля XAuth. В поле «Вид» будет указано «Пароль IPSec XAuth». Откройте его, затем на вкладке «Контроль доступа» нажмите кнопку «Плюс», чтобы добавить другое приложение. Файл, который нам нужно выбрать, /usr/libexec/configd, находится в скрытой папке. Чтобы перейти туда, нажмите Command+ Shift+ G, введите /usr/libexec, затем выберите configd в диалоговом окне. Сохраните изменения и все — ваш сохраненный пароль теперь должен работать.
Еще одно руководство с красивыми картинками: https://anders.com/guides/native-cisco-vpn-on-mac-os-x/
По-видимому, для использования встроенных инструментов ipsec-vpn необходимо применить то же ручное исправление добавления configd в приложения, разрешенные связкой ключей.
VPN ipsec запрашивает сохраненный пароль:
Симптомы:
В Mac OS X Snow Leopard (10.6.x) вам будет предложено ввести пароль VPN, даже если вы ранее сохранили его в связке ключей. Вы используете IPSec на встроенном VPN-клиенте в Mac OS X Snow Leopard.
Объяснение:
Это вызвано проблемой с элементом Keychain Access для подключения VPN IPSec. Двухминутное исправление уладит это для вас.
Решение:
- Запустите доступ к связке ключей, щелкнув Приложения > Утилиты > Доступ к связке ключей.
- На левой верхней панели в разделе «Связки ключей» выберите «Система».
- Слева внизу в разделе «Категория» выберите «Все элементы».
- В правой части экрана прокрутите вниз и найдите два элемента с названием VPN (IPSec).
- Дважды щелкните VPN (IPSec), тип которой — IPSec XAuth Password.
- Нажмите кнопку/вкладку «Контроль доступа». Приложения, которым разрешено использовать этот элемент связки ключей, будут показаны ниже. Если вас попросят ввести пароль, введите его.
- Щелкните знак плюс (+)
- Когда появится окно Finder, нажмите Cmd+ Shift+ Gна клавиатуре.
- Когда появится диалоговое окно «Перейти к папке», введите /usr/libexec
- Нажмите Перейти
- Когда появится папка /usr/libexec, прокрутите до configd, выберите ее и нажмите «Добавить».
- Нажмите Сохранить изменения
- Закройте доступ к связке ключей и попробуйте снова подключиться к VPN.
Я нашел аккуратное обходное решение с AnyConnect CLI и Keychain .
Идея состоит в том, чтобы сохранить мои учетные данные AnyConnect в связке ключей и использовать интерфейс командной строки AnyConnect для доступа к моим сохраненным учетным данным и подключения к VPN. Он даже хорошо работает с двухфакторной авторизацией.
Скажем, я хочу подключиться foo.bar.com
с учетной записью acc
и паролем pas
.
acc
и pas
подключите в связке ключей (под логином, а не iCloud) с именемfookey
/usr/local/bin
)/opt/cisco/anyconnect/bin/vpn connect foo.bar.com -s << EOM
0 # foo.bar.com doesn't require two factor authorization
acc # vpn account
$(sudo security find-generic-password -ws fookey) # look up [pas] from keychain
EOM
При таком подходе мне не нужно каждый раз вводить свой пароль от vpn, и я не буду писать свой пароль в файлы без шифрования :)
Если вы не знакомы с bash-скриптом:
/opt/cisco/anyconnect/bin/vpn connect -s
переходит в неинтерактивный режим.<< EOM ... EOM
называется here-docs , который использует строку для замены файла. Очень полезно создавать сценарии интерактивного интерфейса командной строки, записывая каждый ответ в виде новой строки.security
это хороший инструмент для доступа к вашей связке ключей из командной строки./opt/cisco/anyconnect/bin/vpn
? Вручную введите имя пользователя и пароль без каких-либо сценариев.
Мартин Бин
LаngLаngС
Хендрик