#1 楼
如果要从命令行与NetworkManager进行交互,则可以使用“ nmcli”命令。列出所有NM连接:
nmcli con
开始连接(WiFi,VPN等) ):
nmcli con up id ConnectionName
断开连接:
nmcli con down id ConnectionName
(nmcli联机帮助页中的更多nmcli命令)。
还请注意常规用户通常没有控制网络的权限。将上述命令与
sudo
一起使用对于大多数连接都应该有效,但是VPN可能会因“错误:连接激活失败:没有有效的VPN机密。”而失败,如果出现这种情况,则很可能是VPN密码存储在用户的gnome-keyring中,这使root用户无法访问。此注释解释了原因。要解决此问题,请编辑/ etc / NetworkManager / system-connections / ConnectionName并在
[vpn]
下,将密码标志行更改为:password-flags=0
如果有以
Xauth password-flags
开头的行,请改为。然后在
[vpn]
块下面添加以下内容:[vpn-secrets]
password=YourPassword
(如果在上一步中更改了
Xauth password-flags
行,请改为添加Xauth password=...
。)现在通过以下方式重新启动网络管理器:
sudo service network-manager restart
然后使用
sudo nmcli con up id ConnectionName
启动VPN连接应该没有问题。评论
我希望有一个通用的断开连接命令,可以断开任何VPN,而无需指定其ID。这可能会使此功能(我想要)更易于实现。
–Lonnie Best
2014年7月6日23:15
如果您使用的是ipsec(例如vpnc),则可能还需要在其相应位置添加“ IPSec secret-flags = 0”和“ IPSec secret =
–马特
2014年11月3日,0:01
这仍然不能解决问题:(我收到消息“错误:连接激活失败:未知原因。”
–达诺
2015年3月8日,下午5:12
我收回了...第三次运行命令后,它起作用了。第一次失败很快。第二次失败缓慢。第三次工作!
–达诺
2015年3月8日,下午5:14
清除文字密码?真??有人有安全解决方案吗?
–user447607
16年9月2日在15:24
#2 楼
ihashacks的回答和Matt的评论对我有用...几乎。必须调整一行。我的密码标志行实际显示为:“ Xauth password-flag”。除非我更改为以下内容,否则接受的答案对我不起作用。
[vpn]
...
Xauth password-flag=0
IPSec secret-flags=0
[vpn-secrets]
Xauth password=<my pw> ## This is the one I changed.
IPSec secret=<group pw>
在每次提及密码之前不确定为什么我的vpn连接具有“ Xauth”。 />
(对不起,这是一个新答案,尚无法发表评论。)
评论
这适用于某些类型的VPN,例如Cisco。对于这些情况非常有帮助!但是,有一个错误:一个密钥的正确情况是IPSec机密-否则,NM无法识别它。
–马库斯
2015年9月15日18:00
谢谢Marcus,我已对我的答案进行了更正,因此没有人试图复制/粘贴错字。
–约翰
15年9月16日在17:38
评论
这里详细介绍的vpnc命令对您不起作用吗?另外,此处还提供了有关配置和连接到PPTP的说明。他们不起作用吗?