返回博客列表
快连Linux WireGuard配置步骤, 快连如何启用Kill Switch, WireGuard Kill Switch不生效怎么办, Linux系统快连断网保护设置, 快连WireGuard手动配置教程, Kill Switch规则写法, 快连支持哪些Linux发行版, 快连Linux客户端使用方法

快连Linux版如何配置WireGuard并启用Kill Switch?

2026年4月8日快连官方团队协议配置

功能定位与版本演进

在快连Linux版(QuickLink privacy tool)里,WireGuard 被官方称作“极速内核”,主打低 CPU、高吞吐;Kill Switch 则是“一键断网保护”的底层实现,用于在隧道掉线时立刻屏蔽本机外发流量,防止真实 IP 暴露。自 6.2.0 起,Linux 客户端把 Kill Switch 做成 nftables 规则模板,6.4.0 又追加 IPv6 回环段过滤,解决此前仅屏蔽 IPv4 的缝隙。对需要长期挂 PT、远程 SSH 的桌面与轻量服务器场景,这套组合比传统 Openprivacy tool 方案更省资源,也更容易脚本化。

经验性观察:在 100 Mbps 上下对等光纤、Intel N100 小主机上,WireGuard 单核就能跑满,而相同节点 Openprivacy tool 占用 2.5 核且延迟高 8–12 ms。若你曾在深夜批量拉 GitHub Release,切到 WireGuard 后可见排队时间明显缩短。

功能定位与版本演进
功能定位与版本演进

前置检查:内核、权限与软件源

WireGuard 已进入 mainline,但 Kill Switch 依赖 nftables。请确认:

  • 内核 ≥ 5.6(自带 wireguard 模块);若你坚守 Ubuntu 20.04 LTS,请手动升级内核或安装 linux-generic-hwe-20.04。
  • nftables 已替换 iptables;执行 nft list ruleset 能正常回显即可。
  • 客户端以 .deb 安装,需 sudo 权限;AppImage 版默认把规则写入用户命名空间,但 Kill Switch 需要 CAP_NET_ADMIN,建议用 setcap 提权。

提示:若系统仍用 iptables-nft 兼容层,Kill Switch 会优先调用 nft,但回退逻辑偶发双表混用,经验性结论——直接迁移到纯 nftables 最省心。

安装与初次导入节点

1. 官方仓库安装(推荐)

以 Debian 12 为例,导入 QuickLink 仓库公钥后:

sudo apt update && sudo apt install quicklink-wireguard

安装目录 /opt/quicklink 下会附带 ql-wg-cli,支持 JSON 输出,方便脚本解析。

2. 图形界面导入(可选)

若你同时装有 GNOME 版 QuickLink UI,可在“节点列表”右上角点击“+”→“从剪贴板导入 WireGuard 配置”,系统会自动识别 [Interface][Peer] 段落,并写入 ~/.config/quicklink/wireguard/。无桌面环境可跳过,直接走 CLI。

CLI 配置 WireGuard 隧道

1) 拉取节点密钥对

ql-wg-cli login --username 你的账号 --region auto

2) 生成接口配置

ql-wg-cli config --node hk-gia-05 --out /etc/wireguard/ql.conf

3) 启动隧道

sudo systemctl start quicklink-wg@ql

此时 wg show 能看到 latest handshake,但 Kill Switch 尚未激活,掉线后仍会走默认路由。

启用 Kill Switch:nftables 方案

快连把 Kill Switch 拆成两条规则链:

  • ql-ks-pre:优先级 0,允许已建立的 WireGuard UDP 会话继续发包,用于心跳重连。
  • ql-ks-main:优先级 10,丢弃所有非隧道出口流量。

激活命令:

sudo ql-wg-cli killswitch --on --iface ql

脚本会在 /etc/nftables.d/ 下放 ql-ks.nft,并执行 nft -f。你可以用:

nft list chain inet ql-ks ql-ks-main

验证是否已插入 drop 规则。

警告:启用后若手动 systemctl stop quicklink-wg@ql,本机会立刻失连外网,这是预期行为。请先留一个本地终端或 VNC,避免把自己锁在门外。

例外网段:让局域网打印机继续可用

Kill Switch 默认屏蔽 0.0.0.0/0,但家庭 NAS 或打印机在 192.168.1.0/24 段,需要放行。编辑 /etc/quicklink/wg-ks-exceptions.conf,追加:

192.168.1.0/24
fd00::/64

然后重载:

sudo ql-wg-cli killswitch --reload

规则会在 ql-ks-pre 里插入 accept,优先级高于 drop,因此既不掉线,也不泄露外网 IP。

验证与观测方法

1. 掉线模拟

新开终端:

watch -n 1 'curl -s https://ip.example.com'

然后 sudo systemctl stop quicklink-wg@ql,若 Kill Switch 生效,curl 会立刻超时;恢复隧道后,IP 重新变为节点地址。

2. 日志监控

ql-wg-cli 把阻断记录到 /var/log/quicklink/ks.log,默认 30 秒采样一次。可用:

journalctl -u quicklink-wg@ql -f

同时查看握手与 Kill Switch 触发是否同步。

2. 日志监控
2. 日志监控

桌面环境与托盘图标差异

GNOME/KDE 用户若安装 quicklink-ui,托盘会显示“盾牌”图标,右键可一键开关 Kill Switch;无桌面环境时,全部依赖 ql-wg-cli。注意:Wayland 会话下,托盘菜单偶尔无法弹出(经验性观察,约在 6.4.0 出现),解决方法是:

GDK_BACKEND=x11 /opt/quicklink/bin/quicklink-ui

强制回退 X11 协议即可。

故障排查:隧道通但 Kill Switch 未生效

现象:wg show 有握手,关闭隧道后仍能上网。常见原因:

  • 系统同时启用 UFW,规则优先级高于 nft。解决:关闭 UFW 或把 ql-ks 链优先级调到 0。
  • Docker 自带 iptables 规则,插入 FORWARD 接受。解决:在 /etc/docker/daemon.json"iptables": false,重启 Docker。
  • NetworkManager 启动第二个默认路由。解决:把有线连接设为“仅本地链路”,禁止自动默认网关。

逐项排查后,重新执行 ql-wg-cli killswitch --reload

何时不该用 Kill Switch

1) 需要本地抓包调试:规则会屏蔽非隧道流量,导致 tcpdump 看不到外发 SYN。2) 同一主机做旁路由:Kill Switch 会丢弃 LAN 客户端的转发包,必须手动把 br0 段写进例外。3) 双隧道负载均衡:ql-wg-cli 目前仅支持单接口,若你同时跑两条 WireGuard,nft 会冲突,需自行改写链名。

最佳实践清单

  1. 升级至 ≥5.6 内核,避免 DKMS 编译失败。
  2. 启用前先备份原 nftables 规则:nft list ruleset > ~/nft-backup.nft
  3. 把例外网段写进配置文件,而非手动改 nft,防止升级被覆盖。
  4. 每月复查 /var/log/quicklink/ks.log,确认无异常放行。
  5. 若需无人值守,加 systemd 路径监控:ql-wg-cli killswitch --reload,规则 30 秒级热更新。

FAQ(使用 FAQPage Schema)

开启 Kill Switch 后无法 SSH 到主机怎么办?

先把本地局域网段写进 /etc/quicklink/wg-ks-exceptions.conf,再重载;若仍失败,检查是否把 SSH 端口绑定到 0.0.0.0,而非仅隧道地址。

ql-wg-cli 提示“nft: Could not process rule: Operation not supported”?

内核未开启 CONFIG_NF_TABLES;请安装 linux-image-generic 并重启,或改用 iptables-legacy 回退方案(官方不推荐)。

能否在 Docker 容器里跑 WireGuard 同时让 Kill Switch 对外生效?

可以,但需把容器设为 host 网络,或在 docker-compose 加 cap_add: - NET_ADMIN,并把宿主规则挂载到容器内 nft 命名空间。

收尾:下一步行动

至此,你已能在快连Linux版完成 WireGuard 隧道配置,并启用 Kill Switch 防止 IP 泄露。建议立即做一次“断网演练”,确认例外网段、日志与 systemd 状态都符合预期;随后把 ql-wg-cli killswitch --reload 写进每周的自动运维脚本,保持规则随节点更新而同步。若后续官方推出多隧道并行,可再评估是否迁移到自定义 nftables 模板,现阶段单隧道场景下,官方方案已足够稳与省。

WireGuardKill SwitchLinux配置路由表

相关文章