Enabling L2TP over IPSec on Ubuntu 16.04

Ubuntu 16.04 L2TP over IPSec
本文介绍如何在Ubuntu 16.04上配置L2TP over IPSec连接,包括安装必备组件、构建网络管理器、配置构建、替换xl2tpd等步骤。

原文地址:http://blog.z-proj.com/enabling-l2tp-over-ipsec-on-ubuntu-16-04/


Ubuntu has stopped shipping L2TP over IPSec support for Ubuntu since Precise. A workaround for this exists using network-manager-l2tp.

First you must install the prerequisites:

sudo apt install \  
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  

Then build the network manager again:

git clone https://github.com/nm-l2tp/network-manager-l2tp.git  
cd network-manager-l2tp  
autoreconf -fi  
intltoolize  

Make sure no errors have occurred.

Configure the build:

./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

Make sure no errors occurred.

Then make it:

make  
sudo make install  

Remove AppArmor settings for IPSec:

sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.charon  
sudo apparmor_parser -R /etc/apparmor.d/usr.lib.ipsec.stroke  

Replace x2ltpd with libpcap:

sudo apt remove xl2tpd  
sudo apt install libpcap0.8-dev

wget https://github.com/xelerance/xl2tpd/archive/v1.3.6/xl2tpd-1.3.6.tar.gz  
tar xvzf xl2tpd-1.3.6.tar.gz  
cd xl2tpd-1.3.6  
make  
sudo make install  

Now restart your machine.

Network Manager should now have an option to use a L2TP VPN connection.

<think>嗯,用户遇到了在Linux系统中启用wlan0接口监控模式失败的问题,错误提示是"Operation not supported"。这通常意味着网卡驱动或硬件本身不支持监控模式。 用户可能正在进行无线网络安全测试或网络分析,比如使用Wireshark抓取802.11帧,或者运行aircrack-ng等工具。ta的当前进展卡在了基础环境配置阶段,情绪可能有些挫败。 从技术角度看,这个问题需要分三层排查:首先是硬件兼容性,其次是驱动支持,最后是配置命令。特别要注意引用[2]提到的内核驱动中monitor模式的具体实现逻辑,这解释了为什么有些网卡即使加载了驱动也无法支持该模式。 用户提供的四个引用很有价值:引用[1]直接展示了错误现象;引用[2]揭示了驱动层的关键判断逻辑;引用[3]说明网卡识别问题;引用[4]则提供了特定工具的解决方案参考。不过用户没有提到是否使用特定工具如csitool,所以通用解决方案更合适。 排查路径应该从最基础的开始:先用lspci确认网卡型号,因为有些廉价网卡(如某些Realtek型号)确实硬件不支持监控模式。如果硬件支持,再看驱动——引用[3]提到的ifconfig wlan0 up是必要前提,但用户似乎已通过这个步骤。 特别值得注意的是引用[4]提到的编译问题,这提示我们:如果是自己编译的驱动,可能需要清理重建。不过对大多数用户而言,更常见的是需要安装backport驱动,就像解决方案里提到的ath9k_htc那种情况。 最后准备在回答里补充两个技术细节:一是用iw list检查支持模式比iwconfig更可靠;二是airmon-ng套件能自动处理驱动重载。不过后者可能会让输出过于冗长,所以决定放在补充说明里。</think>在 Linux 中启用 `wlan0` 接口的监控模式失败(错误提示:`Operation not supported`)通常由以下原因导致,请按顺序排查: --- ### 🔧 核心排查步骤 1. **检查网卡硬件支持** ```bash sudo iw list | grep -A 10 "Supported interface modes" | grep "monitor" ``` - ✅ **若有输出**:网卡支持监控模式 - ❌ **若无输出**:网卡硬件或驱动不支持(需更换网卡或安装驱动)[^1][^2] 2. **验证驱动兼容性** ```bash lsmod | grep -i <driver_name> # 如 ath9k, rtl88xxau, iwlwifi ``` - **常见问题**: - 开源驱动(如 `ath9k`)通常支持,闭源驱动可能受限 - 部分网卡需安装特定驱动(如 `rtl88xxau` 需手动编译) 3. **尝试替代工具激活** ```bash sudo airmon-ng start wlan0 # 使用 airmon-ng 工具(推荐) ``` - 自动处理驱动冲突(如杀死干扰进程)[^3] - 成功后会生成新接口名(如 `wlan0mon`) 4. **卸载并重载驱动** ```bash sudo modprobe -r <driver_name> # 卸载驱动 sudo modprobe <driver_name> # 重载驱动 sudo ip link set wlan0 up # 重新启用接口 ``` --- ### 🛠 高级解决方案 #### 情况1:网卡驱动不支持 - **安装兼容驱动**(以 Realtek RTL8812AU 为例): ```bash git clone https://github.com/aircrack-ng/rtl8812au.git cd rtl8812au make && sudo make install sudo reboot ``` #### 情况2:内核冲突或进程占用 - **终止干扰进程**: ```bash sudo airmon-ng check kill # 自动结束 NetworkManager 等进程 ``` #### 情况3:USB网卡供电/硬件问题 - 更换USB接口或使用带电源的USB Hub - 检查 `dmesg | grep wlan0` 是否有硬件报错 --- ### 📌 验证监控模式 成功激活后检查: ```bash iwconfig wlan0 | grep Mode # 输出应为:Mode:Monitor ``` --- ### 💎 总结流程 ```mermaid graph TD A[启用失败 Operation not supported] --> B{检查硬件支持 iw list} B -->|支持| C[用 airmon-ng 激活] B -->|不支持| D[更换网卡/编译驱动] C --> E[验证 iwconfig] E -->|成功| F[开始抓包/测试] E -->|失败| G[卸载重载驱动] G --> C ``` > ⚠️ **注意**:虚拟机中通常无法启用监控模式,需使用物理机或兼容的USB网卡。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值