如何使用 NetworkManager 的 nmcli 在控制台上输入密码

如何使用 NetworkManager 的 nmcli 在控制台上输入密码

我想使用 连接到 VPN nmcli。有没有办法让我nmcli从控制台提供密码?

似乎有办法将密码存储/etc/NetworkManager/system-connections/<connection>我似乎无法开始工作。但我宁愿根本不将密码存储在文件中。

在桌面上我每次都输入密码,但是当我sudo nmcli con up id MyVPN通过 SSH 运行时,它在远程桌面上打开 GUI 对话框要求输入密码,这对我来说似乎是一个奇怪的设计决定。如果我例如 VNC 到远程桌面,我不会使用nmcli...

答案1

尝试使用该--ask标志:

nmcli --ask con up id MyVPN

我放弃了,sudo因为它可能是不必要的(而且很危险)。

答案2

这应该在 ubuntu 16.04 上运行:

nmcli --ask con up id MyVPN

让这个工作顺利进行远程控制我还必须添加规则

  /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选项不可用。

相关内容