在我的 Windows 7 机器上,我使用 Cisco AnyConnect 远程访问我的工作场所网络。现在和 Xerus 一起玩。我使用 nmcli 设置了 L2TP VPN 连接,但激活它的运气并不好:
root@hannahdesktop:~# nmcli connection up work-VPN Error: Connection activation failed: The VPN service 'org.freedesktop.NetworkManager.l2tp' was not installed.
Run Code Online (Sandbox Code Playgroud)
我似乎找不到应该包含它的包。安装 xl2tpd 和 strongswan 没有帮助。以下是我可以使用的网络管理器插件的完整列表:
root@hannahdesktop:~# apt-cache search network-manager
network-manager - network management framework (daemon and userspace tools)
network-manager-dev - network management framework (development files)
network-manager-gnome - network management framework (GNOME frontend)
network-manager-pptp - network management framework (PPTP plugin core)
network-manager-pptp-gnome - network management framework (PPTP plugin GNOME GUI)
network-manager-iodine - network management framework (iodine plugin core)
network-manager-iodine-gnome - network management framework (iodine plugin GNOME GUI)
network-manager-openconnect - network management framework (OpenConnect plugin)
network-manager-openconnect-gnome - network management framework (OpenConnect plugin GNOME GUI)
network-manager-openvpn - network management framework (OpenVPN plugin core)
network-manager-openvpn-gnome - network management framework (OpenVPN plugin GNOME GUI)
network-manager-ssh - network management framework (SSH plugin core)
network-manager-ssh-gnome - network management framework (SSH plugin GNOME GUI)
network-manager-strongswan - network management framework (strongSwan plugin)
network-manager-vpnc - network management framework (VPNC plugin core)
network-manager-vpnc-gnome - network management framework (VPNC plugin GNOME GUI)
mate-gnome-main-menu-applet - GNOME start menu applet for MATE
strongswan-nm - strongSwan plugin to interact with NetworkManager
Run Code Online (Sandbox Code Playgroud)
我尝试安装第三方 VPN 客户端并设置它们而不是网络管理器,但是我测试的两个(Ike 和另一个)在安全设置方面非常冗长。我所拥有的只是 vpn 服务器地址、我的用户名、密码和 NT 域。如果 Network-Manager 不再支持 L2TP,我很乐意尝试另一个客户端,但可能需要 ELI5 手册。任何提示将不胜感激
小智 12
不确定在问这个问题 6 个月后人们是否仍然感兴趣,但我想我有一个解决方案。这在 Kubuntu 16.10 上对我有用。
正如 user563731 提到的,network-manager-l2tp 插件在 Ubuntu 或 Debian 存储库中不可用,必须从源代码编译。
安装编译所需的包:
sudo apt install git intltool libtool network-manager-dev libnm-util-dev libnm-glib-dev libnm-glib-vpn-dev libnm-gtk-dev libnm-dev libnma-dev ppp-dev libdbus-glib-1-dev libsecret-1-dev libgtk-3-dev libglib2.0-dev xl2tpd strongswan
Run Code Online (Sandbox Code Playgroud)从 network-manager-l2tp GitHub 仓库下载源代码,进入新创建的目录:
git clone https://github.com/nm-l2tp/network-manager-l2tp.git
cd network-manager-l2tp
Run Code Online (Sandbox Code Playgroud)运行从存储库下载的 autogen.sh 脚本:
./autogen.sh
Run Code Online (Sandbox Code Playgroud)配置 README 文件中为 Debian/Ubuntu 指定的编译选项:
./configure \
--disable-static --prefix=/usr \
--sysconfdir=/etc --libdir=/usr/lib/x86_64-linux-gnu \
--libexecdir=/usr/lib/NetworkManager \
--localstatedir=/var \
--with-pppd-plugin-dir=/usr/lib/pppd/2.4.7
Run Code Online (Sandbox Code Playgroud)用 make 编译。这可能要花点时间:
make
Run Code Online (Sandbox Code Playgroud)将生成的文件复制到适当的位置。据我所知,尽管make进程创建了大量文件,但只需要复制 4 个文件:
cp nm-l2tp-service.name /usr/lib/NetworkManager/VPN/
cp nm-l2tp-service.conf /etc/dbus-1/system.d/
cp src/nm-l2tp-service /usr/lib/NetworkManager/
cp src/.libs/nm-l2tp-pppd-plugin.so /usr/lib/pppd/2.4.7/
Run Code Online (Sandbox Code Playgroud)我只列出我遇到的问题。如需其他故障排除,请务必查看下方“来源”部分中的链接。
AppArmor 拒绝访问卡戎或中风
连接时,您可能会在 /var/log/syslog 中看到“apparmor DENIED /usr/lib/ipsec/charon”或“从套接字读取失败:权限被拒绝”的错误。解决方法是禁用卡戎和中风的 AppArmor 配置文件:
sudo ln -s /etc/apparmor.d/usr.lib.ipsec.charon /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.charon
sudo ln -s /etc/apparmor.d/usr.lib.ipsec.stroke /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.stroke
Run Code Online (Sandbox Code Playgroud)
端口 1701 繁忙,请使用临时端口
出现在 /var/log/syslog 中的此错误表示 xl2tpd 已在运行。确保守护进程没有运行:
systemctl stop xl2tpd
Run Code Online (Sandbox Code Playgroud)
然后禁用它以确保它不会在下次重新启动时再次启动:
systemctl disable xl2tpd
Run Code Online (Sandbox Code Playgroud)
network-manager-l2tp 插件喜欢按需启动和停止这个守护进程,所以最好禁用它。
我遇到的小问题,我没有解决方案,但并不太可怕
小智 1
NetworkManager-l2tp 是 NetworkManager 1.2 的 VPN 插件,它提供对 L2TP 和 L2TP/IPsec(即 L2TP over IPsec)连接的支持。
目前,您需要从源代码构建network-manager-l2tp,请参阅: