我使用 NetworkManager、OpenConnect 和 network-manager-openconnect-gnome 包建立了有效的 VPN 连接,但每次连接到网络时都必须手动启动它,和我每次都必须手动输入密码。
我怎样才能让它自动连接并记住我的密码(安全地)?
我已选中“配置 VPN”页面上的“自动连接”框,但这似乎没有效果。我还选中了弹出框中的“开始自动连接”框,这确实避免了在该窗口中按下连接按钮的需要,但似乎与启动整个过程无关。窗口中没有记住密码的选项,但也许其他地方有?
答案1
通过网络管理器设置 VPN 连接时选择自动连接选项应该意味着 VPN 确实会自动连接,但是由于错误,它无法工作:https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/280571
不过,它仍然可以通过变通方法实现,其中一种方法是使用VPN自动连接
- 通过网络设置正常设置 VPN,确保自动连接已选择:
- 从下载页面下载适当的.deb 文件:http://sourceforge.net/projects/vpnautoconnect/files/ (64 位以 amd64 结尾,32 位以 i386 结尾)。
- 双击下载的.deb 文件并安装。
- 运行 VPNautoconnect 应用程序
- 选择优先从 VPNautoconnect 菜单
- 单击小箭头创建一个新选项卡,然后在其中选择您的无线连接家长联系下拉菜单中,您的 VPNVPN 连接下拉菜单。然后点击节省
现在,只要选定的无线网络连接起来,您的 VPN 就应该自动连接(如果您使用多个无线网络,则需要在首选项菜单中为每个想要在使用时自动连接到 VPN 的网络创建一个新选项卡)。
答案2
在 Ubuntu Gnome 16.04 中,我在网络连接中找不到用于编辑每个网络 VPN 设置的 GUI 选项。对我来说,解决方案是在终端中手动输入以下内容启动“网络连接”面板:
nm-连接编辑器
然后编辑所需的网络并添加 VPN 连接。
答案3
在18.04,以及一些以前的版本,甚至没有图形用户界面设置自动启用VPN现在連線。
因此,我启用自动连接到以太网,然后使用自动启动配置文件和脚本设置 VPN 连接。
添加包含以下内容的vpn.desktop
文件~/.config/autostart
[Desktop Entry]
Name=Start VPN connection
GenericName=Network helper
Comment=Start automatically VPN connection
Exec=/home/me/bin/vpn-start.sh
Terminal=false
Type=Application
Icon=network-vpn
Categories=Network;
StartupNotify=false
X-GNOME-Autostart-enabled=true
这将调用一个可以放在任何地方的文件,但我已经将其放入/home/me/bin/
并调用它vpn-start.sh
#/bin/bash
LANG=C
while ! nmcli dev status|grep -q connected; do
sleep 1
done
exec nmcli con up '<name of your vpn connection>'
您需要输入 VPN 连接的名称。在 的输出中查找它nmcli con show
。
使用 使其可执行chmox +x vpn-start.sh
。
并注销并重新登录进行测试。
答案4
似乎autoconnect
不适用于 VPN 配置文件,但你可以改用secondaries
。请参阅此处https://manpages.debian.org/testing/network-manager/nm-settings.5.en.html。 我做了什么:
列出所有现有连接:
sudo \ls -l /etc/NetworkManager/system-connections/
打开相应 VPN 连接的文件(my-VPN
就我而言):
sudo gedit /etc/NetworkManager/system-connections/my-VPN
然后复制uuid
。它应该看起来像这样5a9bde6f-54ge-4h41-8754-f1a2977fa564
。
打开你的 Wi-fi 连接文件:
sudo gedit /etc/NetworkManager/system-connections/My-Wi-Fi
并添加secondaries
带有copyed的属性uuid
。它应该看起来像这样:
[connection]
id=My-Wi-Fi
uuid=1ab56231-9401-48c7-82de-a9ffghtyeac4
type=wifi
interface-name=wlo1
permissions=
secondaries=5a9bde6f-54ge-4h41-8754-f1a2977fa564;
timestamp=1649182910
[wifi]
...
之后重新启动 NetworkManager 或您的计算机:
systemctl restart NetworkManager
现在每次你连接My-Wi-Fi
my-VPN
到