如何使用NetworkManager的nmcli在控制台上输入密码
我想用nmcli
连接到VPN。 有没有办法允许我从控制台提供nmcli
的密码?
似乎有办法将密码存储在/etc/NetworkManager/system-connections/
, 我似乎无法正常工作 。 但我不想将密码存储在文件中。
在桌面上我每次输入密码,但是当我通过SSH运行sudo nmcli con up id MyVPN
时,它会在远程桌面上打开一个GUI对话框,询问我的密码,这对我来说似乎是一个奇怪的设计决定。 如果我有远程桌面的VNC,我不会使用nmcli
…
尝试使用--ask
标志:
nmcli --ask con up id MyVPN
我放弃了sudo
因为它可能是不必要的(而且很危险)。
这应该适用于ubuntu 16.04:
nmcli --ask con up id MyVPN
为了让这个工作在ssh上我还必须添加规则
/etc/polkit-1/localauthority/90-mandatory.d
一个名为90-ssh-network-control.pkla
的内容:
[Network Manager - Control network nmcli] Identity=unix-user:yourusername Action=org.freedesktop.NetworkManager.network-control ResultAny=yes ResultInactive=yes ResultActive=yes
另一个名为90-ssh-own-network.pkla
的除了Action字段外,用以下内容替换:
Action=org.freedesktop.NetworkManager.settings.modify.own
在14.04LTS上--ask
选项不可用。