Xerus - 网络管理器缺少 L2TP 插件?

Xerus - 网络管理器缺少 L2TP 插件?

在我的 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.

我似乎找不到应该包含它的包。安装 xl2tpd 和 strongswan 没有帮助。以下是我可以使用的 Network-Manager 插件的完整列表:

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

我尝试安装第三方 VPN 客户端并进行设置,而不是使用 Network-Manager,但我测试的两个客户端(Ike 和另一个)在安全设置方面非常冗长。我只有 VPN 服务器地址、我的用户名、密码和 NT 域。如果 Network-Manager 不再支持 L2TP,我很乐意尝试另一个客户端,但可能需要 ELI5 手册。任何提示都将不胜感激

答案1

不确定这个问题问了 6 个月后人们是否还感兴趣,但我想我有一个解决方案。这在 Kubuntu 16.10 上对我有用。

编译

正如 user563731 提到的,network-manager-l2tp 插件在 Ubuntu 或 Debian 存储库中不可用,必须从源代码进行编译。

  1. 安装编译所需的软件包:

    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
    
  2. 从 network-manager-l2tp GitHub 存储库下载源代码并进入新创建的目录:

    git clone https://github.com/nm-l2tp/network-manager-l2tp.git
    cd network-manager-l2tp
    
  3. 运行从存储库下载的 autogen.sh 脚本:

    ./autogen.sh
    
  4. 按照 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
    
  5. 使用 make 进行编译。这可能需要一些时间:

    make
    
  6. 将生成的文件复制到正确的位置。据我所知,尽管该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/
    

其他解决方法和故障排除

我只列出了我遇到的问题。如需更多故障排除,请务必查看下面“来源”部分中的链接。

AppArmor 拒绝访问 charon 或 stroke

连接时,您可能会在 /var/log/syslog 中看到类似“apparmor DENIED /usr/lib/ipsec/charon”或“读取套接字失败:权限被拒绝”的错误。此问题的解决方法是禁用 charon 和 stroke 的 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

端口 1701 繁忙,请使用临时端口

/var/log/syslog 中出现此错误表明 xl2tpd 已在运行。请确保守护进程未运行:

systemctl stop xl2tpd

然后禁用它以确保它不会在下次重启时再次启动:

systemctl disable xl2tpd

network-manager-l2tp 插件喜欢根据需要启动和停止这个守护进程,所以最好把它禁用。

我遇到的小问题,没有解决办法,但也不是太糟糕

  • 在 VPN 连接期间,/var/log/syslog 中充斥着“xl2tpd:network_thread:无法找到调用或隧道来处理数据包。” 我不知道这是什么意思,也不知道如何修复它。
  • 当 VPN 断开连接时,它会留下一个“ppp0”网络接口。当重新连接时,它会创建一个新的“ppp1”网络接口。它似乎会无限期地这样做,直到您重新启动才会删除任何一个。
  • VPN 隧道另一端的远程 DNS 服务器不会自动分配。我必须手动将 DNS 设置添加到连接设置中的“IPv4”选项卡中。

来源

答案2

您可以使用

sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp  
sudo apt-get update  
sudo apt-get install network-manager-l2tp  

为 ubuntu 16.04 安装支持 L2TP 的网络管理器 l2tp

从源代码构建的演练:http://blog.z-proj.com/enabling-l2tp-over-ipsec-on-ubuntu-16-04/

答案3

NetworkManager-l2tp 是 NetworkManager 1.2 的 VPN 插件,它提供对 L2TP 和 L2TP/IPsec(即 L2TP over IPsec)连接的支持。

目前,您需要从源代码构建 network-manager-l2tp,请参阅:

答案4

我遇到了同样的问题。首先完成主安装:

sudo add-apt-repository ppa:nm-l2tp/network-manager-l2tp  
sudo apt-get update  
sudo apt-get install network-manager-l2tp

安装完成后,安装附加包:

sudo apt-get install network-manager-openvpn-gnome

它帮我解决了问题。

相关内容