Укажите имя пользователя и пароль для VPN-подключения
У меня открытая сеть VPN, и я хотел бы всегда иметь подключение, даже до того, как войду в свою учетную запись.
У меня Ubuntu 16.04.2, network-manager-openconnect-gnome
,
Если я запускаю командную строку nmcli con up id <VPN connection name>
он будет работать, однако он запрашивает имя пользователя во всплывающем окне, даже если он помнит мое имя пользователя в видимом тексте; затем он запрашивает пароль, даже он запоминает его (с маркерами), поэтому я не могу использовать nmcli
непосредственно, чтобы выполнить то, что я хочу.
Конечно, я до сих пор не знаю, как сделать его полностью безголовым (я имею в виду запустить его до входа в Ubuntu), но это следующий вопрос после того, как я смогу создать что-то для подключения к openconnect VPN, не спрашивая у меня имя пользователя и пароль.
1 ответ
Хорошо, после проб и ошибок я не нахожу прямого решения, но есть обходной путь, который можно использовать для достижения этой цели.
В основном я пишу сценарий ожидания для отправки имени пользователя и пароля в nmcli. Конкретно это
sudo apt-get install expect
, это установит ожидаемый пакетсоздать файл, назвать его
connectvpn.sh
#!/usr/bin/expect -f spawn nmcli -a con up id <VPN ID> expect "Username:" send "<username>\r" expect "Password:" send "<password>\r" expect "$ "
chmod a+x connectvpn.sh
- Теперь запустите его, и он будет работать
Конечно, недостатком является то, что имя пользователя и пароль будут сохранены в тексте в виде простого текста, но это лучшее решение, которое я могу найти.