Введите пароль для `nmcli con up` в терминале 14.04

Я пытаюсь подключиться к своему VPN с помощью терминала. Мой пароль VPN - это TOTP, поэтому я не могу сохранить его в файле конфигурации подключения. Когда я пытаюсь подключиться, появляется диалоговое окно для ввода пароля. Я хочу сделать это в самом терминале, поскольку я могу сгенерировать свой TOTP из скрипта. Я просто не мог понять, как. Есть ли способ указать пароль в командной строке или отправить пароль из командной строки в диалоговое окно?

1
задан 20 May 2016 в 14:32

4 ответа

Вы можете обновление записи пароль в отдельный файл. Это работает на меня:

echo "vpn.secrets.password:MY_PASSWORD" > /my/vpn/password
nmcli con up uuid MY_UUID passwd-file /my/vpn/password
4
ответ дан 21 May 2016 в 00:32

Последний администратор сети в Ubuntu 14.04 0.9.8.8 и как Вы сказали, не поддерживает ту функцию. Функция для принятия пароля, кажется, была представлена в 1.11.1-dev, по крайней мере, в документах. https://github.com/NetworkManager/NetworkManager/commit/b19e4d37b6272834cb98a000cfa7bc247607e2f7#diff-a86a2b799f258f5c584a76d83 0e845db

Я не нашел другой способ передать в пароле или, кажется, что нужно обновить администратора сети или обновить Ubuntu.

0
ответ дан 3 December 2019 в 06:31

Можно установить пароль с помощью следующей команды:

nmcli con mod VPNID vpn.secrets "password=VPNPASS"

где VPNPASS является паролем VPN.

Для этого для работы необходимо включить возможность хранения пароля в NetworkManager, как показано в этом изображении.

Я использую Ubuntu 16.04.

1
ответ дан 3 December 2019 в 06:31

Есть более элегантный и безопасный способ обойти это. Сохраните свой пароль в gnome-keyring:

~$ sudo apt install libsecret-tools
~$ secret-tool store --label='vpn' vpn_name your_unique_vpn_name

Теперь давайте создадим скрипт для запуска VPN. Ключ, который должен быть предоставлен, кстати, может отличаться. В моем примере это vpn.secrets.cert-pass. Скрипт нужно поместить в ~/bin/.

#!/bin/sh -e

vpn=your_vpn_connections_name

tmp=$(mktemp)
chmod 600 $tmp
printf "vpn.secrets.cert-pass:$(secret-tool lookup vpn_name your_unique_vpn_name)">$tmp
nmcli c u "$vpn" passwd-file $tmp
rm $tmp
1
ответ дан 17 January 2020 в 08:14

Другие вопросы по тегам:

Похожие вопросы: