在OpenWRT上用Passwall搭建VLESS VPN的详细步骤
通过OpenWRT上的Passwall,你可以为整个局域网部署VLESS VPN服务。这不仅能保障网络流量隐私,还能绕过区域限制,并支持双层VPN串联。所需条件:一台OpenWRT路由器(完整版至少需256MB内存)和有效的VLESS服务器订阅服务。
首先,将设备恢复出厂设置,以清除可能冲突的软件——如其他VPN客户端、DoH/DoT服务或流量分析工具。
路由器准备阶段
- 通过有线连接至路由器(默认IP为192.168.0.1或192.168.1.1)。
- 登录Web管理界面,进入 系统 → 备份/刷写固件,点击 执行重置。
- 重启后配置WAN口:输入来自运营商的IP地址、网关及DNS信息。若启用了MAC地址过滤,请在 网络 → 接口 → 设备 → WAN 中修改WAN接口的MAC地址。
确认客户端设备可正常访问互联网。
安装Passwall
通过SSH连接:
- Windows用户:推荐使用PuTTY。
- macOS/Linux用户:运行命令
ssh [email protected](请根据实际IP调整)。
执行以下单行命令安装脚本:
rm -f passwallx.sh && wget https://raw.githubusercontent.com/amirhosseinchoghaei/Passwall/main/passwallx.sh && chmod 777 passwallx.sh && sh passwallx.sh
- 选择选项1(内存<256MB)或选项2(内存>256MB)。
- 等待安装完成,然后执行
reboot重启设备。
可选:恢复主机名:
uci set system.@system[0].hostname='OpenWRT'
uci commit system
echo $(uci get system.@system[0].hostname) > /proc/sys/kernel/hostname
reboot
确认 服务 → Passwall 菜单已出现。
导入并启用VLESS节点
- 进入 服务 → Passwall → 节点订阅 → 添加,填写名称及服务商提供的订阅链接。
- 点击 手动订阅。节点将在 节点列表 中自动更新,并显示延迟测试结果。
- 在 基础设置 → 主节点 中选择目标节点,并开启 主开关。核心状态应显示为 运行中。
使用 curl ip.me 或 whatismyipaddress.com 验证客户端公网IP——此时应显示为VPN服务器的IP地址。
日志查看:通过 服务 → Passwall → 查看日志 进行排查。
配置设备排除规则
若需让特定设备不走VPN:
- 在Wi-Fi客户端设置中关闭MAC地址随机化(安卓设备建议为每个网络固定MAC)。
- 进入 服务 → Passwall → ACL → 添加:
- 源:输入设备的MAC地址。
- TCP/UDP 不转发端口:设为 全部。
- 点击 保存并应用。
- 启用该规则及 主开关。
被排除的设备将保留原始ISP分配的IP地址。
典型应用场景:
- 实现全网隐私保护。
- 按需绕过地区封锁。
- 双层VPN架构:路由器隐藏资源给第一层服务商,客户端再隐藏自身IP给第二层。
关键注意事项
- 兼容性:仅支持 toh.openwrt.org 列表中的路由器型号。
- 资源优化:内存低于256MB时,请使用Passwall变体1,避免因内存溢出导致崩溃。
- 安全性:出厂重置可清除临时文件与潜在冲突;务必使用个人专属的VLESS订阅。
- 验证机制:检查节点延迟、公网IP及日志输出是否正常。
- 排除规则:必须使用固定MAC地址,动态MAC会导致规则失效。
常见问题排查指南
| 问题 | 解决方案 |
|------|----------|
| 重置后无法上网 | 重新配置WAN参数,启用MAC克隆功能 |
| Passwall安装失败 | 检查内存容量;内存不足时改用变体1 |
| 节点无法更新 | 使用手动订阅方式,并检查日志错误信息 |
| VPN连接失败 | 选择延迟低的节点,确保核心状态为“运行中” |
| 排除规则无效 | 确保MAC地址固定且端口设置为“全部” |
— Editorial Team
暂无评论。