最近墙又高了一些,对于在国内的转发机器,特别明显,基本上转发机场都死翘翘了,反正都逃不过长城的嗅探,我把我的搭设给Gemini查看了下,他说我在裸奔,然后给我了一个方案,纯技术层面探讨。
原来方案
广州 (独立 VPS) -> 福州-台湾专线iepl> 台湾家宽ss协议
专线(IEPL)免疫墙,但国内段在“裸奔”IEPL(国际以太网专线)本质上是二层/三层的物理或逻辑直连,确实不过公网的 GFW(防火长城),这是它的核心优势。但数据在进入福州 IEPL 入口之前,需要经过:你 -> 广州腾讯云 -> 福州 这个漫长的国内公网链路。
致命弱点: 国内公网虽然没有 GFW 的墙外阻断机制,但国内各大云服务商(特别是大厂)内部有着极其严苛的 DPI(深度包检测)风控系统。他们要查的不是你有没有爬墙,而是“这台服务器是否被当作非法的流量中转站”。
Shadowsocks协议在现代 DPI 面前毫无伪装能力
SS 协议的设计初衷是加密(Encryption),而不是混淆(Obfuscation)。它的纯随机字节流特征和特定的握手包长度,在如今基于机器学习的流量审计模型中比明文还要显眼,极易受到主动探测(Active Probing)。
当你的 SS 流量从广州流向福州时,广州机房的安全系统看到的是一条长时间保持活跃、流量上下行高度对称、且没有任何标准应用层协议(如 HTTP/TLS)特征的未知加密数据流。这相当于你在国内公网上直接拉响了“我在做代理中继”的警报。
流量多次转发
转发了2次,普通的“端口转发”(TCP/UDP 盲转):这意味着广州和福州节点只是充当了“传话筒”。你最初的 SS 协议流量的明文指纹、包大小、时序特征,会一字不落地暴露在广州和福州的云防火墙面前。两次转发,等于让国内云厂商的 DPI 探头看了两遍高清无码的非法特征。
gost性能差
每经过一次 GOST 转发,数据包都要经历:网卡 -> 内核态 -> 用户态 (GOST) -> 内核态 -> 网卡 的极其漫长且消耗 CPU 的上下文切换过程。 你搞了“广州 -> 福州”两次转发,这意味着这套沉重的流程要翻倍。这会导致极高的网络延迟(Latency Jitter)、TCP 拥塞控制混乱,以及潜在的 MTU(最大传输单元)碎片化问题。直白点说:机器 CPU 跑满了,网速却卡成了 PPT。
新的方案
用 WireGuard 在广州和福州之间拉一条纯内网的 UDP 隧道,然后通过 Linux 原生的 iptables 把你的流量“塞”进去。Udp2raw 巧妙在使用 FakeTCP(伪造 TCP) 模式进行流量封装。
第一阶段:系统网络基建(两台机器都要执行)
在台湾和广州的两台机器上,分别执行:
# 开启 IPv4 和 IPv6 的内核转发
echo "net.ipv4.ip_forward = 1" | sudo tee -a /etc/sysctl.conf
echo "net.ipv6.conf.all.forwarding = 1" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# 安装原生 WireGuard
sudo apt update && sudo apt install wireguard -y
第二阶段:生成加密秘钥(两台机器都要执行)
WireGuard 采用非对称加密,不需要账号密码,全靠公私钥对认门。 在台湾和广州的两台机器上,分别执行以下命令生成秘钥,并用记事本把输出的结果记下来,绝不能搞混!
# 进入配置目录并生成秘钥
cd /etc/wireguard/
umask 077
wg genkey | tee privatekey | wg pubkey > publickey
# 查看并记录台湾/广州的私钥 (Private Key)
cat privatekey
# 查看并记录台湾/广州的公钥 (Public Key)
cat publickey
第三阶段:配置台湾节点(作为隧道核心服务端)
既然台湾是直通的,我们就让它安静地监听端口等待连接。 在台湾机器上,编辑配置文件:sudo nano /etc/wireguard/wg0.conf 填入以下内容(请注意替换中文标记的部分):
[Interface]
# 台湾机器 WireGuard 服务端私钥
# 这是你之前贴过的旧私钥;如果你已经换了新密钥,这份配置只能作为旧版配置使用
PrivateKey = uEWJo68xxxxxxxxxxxxQeKWbDUA=
# 台湾机器在 WireGuard 内网里的地址
Address = 10.13.13.1/24
# WireGuard 服务端监听端口
# 这个 UDP 51820 不需要对公网开放,因为外部会通过 wstunnel 进来
ListenPort = 51820
# WireGuard over WSS/TCP 建议压低 MTU,减少分片和断流
MTU = 1280
# 允许广州机器通过 wg0 访问台湾本机 TCP 8388
PostUp = iptables -w -C INPUT -i %i -s 10.13.13.2 -p tcp --dport 8388 -j ACCEPT 2>/dev/null || iptables -w -I INPUT 1 -i %i -s 10.13.13.2 -p tcp --dport 8388 -j ACCEPT
# 允许广州机器通过 wg0 访问台湾本机 UDP 8388
PostUp = iptables -w -C INPUT -i %i -s 10.13.13.2 -p udp --dport 8388 -j ACCEPT 2>/dev/null || iptables -w -I INPUT 1 -i %i -s 10.13.13.2 -p udp --dport 8388 -j ACCEPT
# 允许广州机器 ping 台湾 wg0,方便排查
PostUp = iptables -w -C INPUT -i %i -s 10.13.13.2 -p icmp -j ACCEPT 2>/dev/null || iptables -w -I INPUT 1 -i %i -s 10.13.13.2 -p icmp -j ACCEPT
# 停止 wg0 时清理规则;规则不存在也不让 systemd 报错
PostDown = iptables -w -D INPUT -i %i -s 10.13.13.2 -p tcp --dport 8388 -j ACCEPT 2>/dev/null || true
PostDown = iptables -w -D INPUT -i %i -s 10.13.13.2 -p udp --dport 8388 -j ACCEPT 2>/dev/null || true
PostDown = iptables -w -D INPUT -i %i -s 10.13.13.2 -p icmp -j ACCEPT 2>/dev/null || true
[Peer]
# 广州机器 WireGuard 客户端公钥
PublicKey = o27NurcZxxxxxxxxxxxVGk9GqT0=
# 只允许广州机器使用 10.13.13.2
AllowedIPs = 10.13.13.2/32
保存退出(Ctrl+O -> Enter -> Ctrl+X)。 启动台湾端:
sudo systemctl enable --now wg-quick@wg0
第四阶段:配置广州节点(流量劫持与转发点)
这是最核心的一步。我们不仅要连上台湾,还要把广州收到的流量“塞”进隧道。 假设你最终要代理的业务端口是 8388(无论是你的 SS、VLESS 还是正常的 Web 网站端口,这个服务必须已经在台湾机器上运行并监听 0.0.0.0:8388)。
在广州机器上,编辑配置文件:sudo nano /etc/wireguard/wg0.conf
[Interface]
# 广州机器 WireGuard 客户端私钥
# 这是你之前贴过的旧私钥;如果你已经换了新密钥,这份配置只能作为旧版配置使用
PrivateKey = ACbY2kVxxxxxxxxxxWXt45Fc=
# 广州机器在 WireGuard 内网里的地址
# 客户端只代表自己,用 /32 更干净
Address = 10.13.13.2/32
# WireGuard over WSS/TCP 建议压低 MTU
MTU = 1280
# 开启 IPv4 转发
# 因为广州机器要把外部访问 8388 的流量转发进 wg0
PreUp = sysctl -w net.ipv4.ip_forward=1 >/dev/null
# ==============================
# 广州 8388 入口转发到台湾 8388
# ==============================
#
# 目标链路:
# 外部用户 / 小火箭
# → 广州公网IP:8388
# → 广州 iptables DNAT
# → 广州 wg0
# → 台湾 10.13.13.1:8388
#
# 注意:
# 下面假设广州机器公网入口网卡是 eth0。
# 如果广州机器公网网卡不是 eth0,需要把下面所有 eth0 改成真实网卡名。
# 查看命令:
# ip route show default
# TCP 8388:外部访问广州 8388,转发到台湾 WireGuard 内网 IP 10.13.13.1:8388
PostUp = iptables -w -t nat -C PREROUTING -i eth0 -p tcp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388 2>/dev/null || iptables -w -t nat -I PREROUTING 1 -i eth0 -p tcp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388
# UDP 8388:外部访问广州 8388,转发到台湾 WireGuard 内网 IP 10.13.13.1:8388
PostUp = iptables -w -t nat -C PREROUTING -i eth0 -p udp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388 2>/dev/null || iptables -w -t nat -I PREROUTING 1 -i eth0 -p udp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388
# 允许 TCP 8388 从广州公网网卡 eth0 转发进 wg0
PostUp = iptables -w -C FORWARD -i eth0 -o %i -p tcp -d 10.13.13.1 --dport 8388 -j ACCEPT 2>/dev/null || iptables -w -I FORWARD 1 -i eth0 -o %i -p tcp -d 10.13.13.1 --dport 8388 -j ACCEPT
# 允许 UDP 8388 从广州公网网卡 eth0 转发进 wg0
PostUp = iptables -w -C FORWARD -i eth0 -o %i -p udp -d 10.13.13.1 --dport 8388 -j ACCEPT 2>/dev/null || iptables -w -I FORWARD 1 -i eth0 -o %i -p udp -d 10.13.13.1 --dport 8388 -j ACCEPT
# 允许台湾机器的回程流量从 wg0 返回广州公网网卡 eth0
PostUp = iptables -w -C FORWARD -i %i -o eth0 -s 10.13.13.1 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || iptables -w -I FORWARD 1 -i %i -o eth0 -s 10.13.13.1 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
# 对转发到台湾 10.13.13.1:8388 的 TCP 流量做源地址伪装
# 台湾 8388 服务看到的来源会是 10.13.13.2,回包路径稳定
PostUp = iptables -w -t nat -C POSTROUTING -o %i -p tcp -d 10.13.13.1 --dport 8388 -j MASQUERADE 2>/dev/null || iptables -w -t nat -I POSTROUTING 1 -o %i -p tcp -d 10.13.13.1 --dport 8388 -j MASQUERADE
# 对转发到台湾 10.13.13.1:8388 的 UDP 流量做源地址伪装
PostUp = iptables -w -t nat -C POSTROUTING -o %i -p udp -d 10.13.13.1 --dport 8388 -j MASQUERADE 2>/dev/null || iptables -w -t nat -I POSTROUTING 1 -o %i -p udp -d 10.13.13.1 --dport 8388 -j MASQUERADE
# ==============================
# 关闭 wg0 时清理规则
# ==============================
PostDown = iptables -w -t nat -D PREROUTING -i eth0 -p tcp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388 2>/dev/null || true
PostDown = iptables -w -t nat -D PREROUTING -i eth0 -p udp --dport 8388 -j DNAT --to-destination 10.13.13.1:8388 2>/dev/null || true
PostDown = iptables -w -D FORWARD -i eth0 -o %i -p tcp -d 10.13.13.1 --dport 8388 -j ACCEPT 2>/dev/null || true
PostDown = iptables -w -D FORWARD -i eth0 -o %i -p udp -d 10.13.13.1 --dport 8388 -j ACCEPT 2>/dev/null || true
PostDown = iptables -w -D FORWARD -i %i -o eth0 -s 10.13.13.1 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT 2>/dev/null || true
PostDown = iptables -w -t nat -D POSTROUTING -o %i -p tcp -d 10.13.13.1 --dport 8388 -j MASQUERADE 2>/dev/null || true
PostDown = iptables -w -t nat -D POSTROUTING -o %i -p udp -d 10.13.13.1 --dport 8388 -j MASQUERADE 2>/dev/null || true
[Peer]
# 台湾机器 WireGuard 服务端公钥
PublicKey = yP2fnxxxxxxxxxxxxxxxxxxxxxYj5FX8=
# 注意:
# 这里不是台湾公网 IPv6,也不是 443。
# 这里必须指向广州本机 wstunnel client 监听的 UDP 端口。
Endpoint = 127.0.0.1:51821
# 只把台湾 WireGuard 服务端内网 IP 走隧道
AllowedIPs = 10.13.13.1/32
# 保活,防止链路空闲断开
PersistentKeepalive = 25
保存退出。启动广州端:
sudo systemctl enable --now wg-quick@wg0
第五阶段:终极验证
ping 10.13.13.1 -c 4
如果能收到回复,且延迟极低,恭喜你,你的专属 IPv6 内网高速公路已通车! 现在,你只需要把本地客户端(你的电脑/手机)指向 广州的公网 IPv4 地址 和 8388 端口,流量就会以内核级的极限速度,被瞬间“传送”到台湾。
引入 Realm 动态转发
为了解决动态域名解析的问题,同时保持极低的性能损耗,我们需要在台湾机器上部署一个用 Rust 编写的极简四层转发工具 —— Realm。它专为这种场景设计,支持 TCP/UDP 同步转发,且具备自动重新解析 DDNS 的能力,性能远超你之前用的 GOST。
部署实操(仅在台湾机器上执行):
1. 下载并安装 Realm
# 下载编译好的极简二进制程序
wget https://github.com/zhboner/realm/releases/download/v2.6.0/realm-x86_64-unknown-linux-musl.tar.gz
# 解压并赋予执行权限
tar -xvf realm-*.tar.gz
chmod +x realm
# 移动到系统路径
sudo mv realm /usr/local/bin/
2. 编写 Realm 转发配置文件
创建一个配置文件:sudo nano /etc/realm.toml,填入以下内容:
[network]
no_tcp_delay = true # 开启 TCP_NODELAY,极大降低延迟
keep_alive = 30 # 保持连接活跃
[[endpoints]]
# 监听台湾本机的 8388 端口(也就是广州 wg0 隧道砸过来的那个端口)
listen = "0.0.0.0:8388"
# 目标指向你的家宽 SS 域名和端口
remote = "twsn3.xxxxx.ru:20345"
3. 创建 Systemd 守护进程守护它
创建一个后台服务:sudo nano /etc/systemd/system/realm.service
[Unit]
Description=Realm Port Forwarding
After=network-online.target
Wants=network-online.target
[Service]
Type=simple
User=root
# 指定配置文件运行
ExecStart=/usr/local/bin/realm -c /etc/realm.toml
Restart=on-failure
RestartSec=5s
[Install]
WantedBy=multi-user.target
4.启动转发服务
sudo systemctl daemon-reload
sudo systemctl enable --now realm
sudo systemctl status realm
systemctl restart realm
| 命令 | 作用 |
|---|---|
sudo systemctl daemon-reload | 重新读取 .service 配置文件 |
sudo systemctl restart realm | 重启 realm 服务 |
sudo systemctl enable --now realm | 设置开机自启,并立即启动 |
sudo systemctl status realm | 查看服务状态 |
至此,架构完美闭环。 广州收到的流量 -> 塞进 wg0 隧道 -> 台湾机 8388 端口接收 -> Realm 瞬间接管并实时解析 twsn3.uzuma.ru -> 精准投递到台湾家宽 SS。
这种“把 UDP 强行封装进 TCP/TLS 中传输”的做法虽然隐蔽性无敌,但会引入网络工程界臭名昭著的 “TCP over TCP” (TCP 灾难/TCP Meltdown) 问题——当物理链路出现轻微丢包时,内外两层 TCP 的重传机制会发生严重冲突,导致网速断崖式下跌。
WSTunnel伪装
国内公网(广州 -> 福州 IPv6)跑的不再是 WG 的 UDP 乱码,而是一条标准的 HTTPS 加密长连接。在腾讯云的安全探头看来,这台广州服务器只是在和福州的一个节点进行“非常合规的 Web API 交互”或者“看网页视频”。
第一步:在两端安装 WSTunnel 神器
在台湾和广州的机器上,分别下载并解压 WSTunnel:
# 下载编译好的二进制文件
wget https://github.com/erebe/wstunnel/releases/download/v9.2.1/wstunnel_9.2.1_linux_amd64.tar.gz
# 解压
tar -xvf wstunnel_*.tar.gz
# 移动到系统执行目录并赋予权限
sudo mv wstunnel /usr/local/bin/
sudo chmod +x /usr/local/bin/wstunnel
申请证书
绑定域名:tw.xxx.com 绑定到台湾的ip上。SSH 登录到你的台湾机器,我们用最简单粗暴的 acme.sh 工具来白嫖 Let’s Encrypt 的证书。(执行前确保日本机器的防火墙放行了 80 和 443 端口,且没有运行其他占用 80 端口的网页服务)
# 1. 一键安装证书申请工具 acme.sh
curl https://get.acme.sh | sh
source ~/.bashrc
# 2. 申请证书 (把域名换成你刚才解析的那个)
acme.sh --issue -d tw.xxx.com --standalone
# 3. 建个文件夹存证书,并把证书安装过去,方便 wstunnel 随时调用
mkdir -p /etc/wstunnel
acme.sh --install-cert -d tw.xxx.com \
--key-file /etc/wstunnel/key.pem \
--fullchain-file /etc/wstunnel/cert.pem
第二步:台湾节点(服务端)披上伪装
台湾机器的 WireGuard 依然在安静地监听 51820 (UDP)。我们现在要让 WSTunnel 站在它前面,挡住外面的视线。
在台湾机器上,创建一个服务:sudo nano /etc/systemd/system/wstunnel-server.service
[Unit]
Description=WSTunnel Server for WireGuard over WSS
Wants=network-online.target
After=network-online.target wg-quick@wg0.service
[Service]
Type=simple
User=root
# 作用:
# 1. 在台湾机器监听 IPv6 TCP 443
# 2. 使用 WSS,也就是 WebSocket over TLS
# 3. 使用你本机的证书和私钥:
# /etc/wstunnel/cert.pem
# /etc/wstunnel/key.pem
# 4. 只允许流量转发到 127.0.0.1:51820,避免变成开放代理
# 5. 加 path prefix,客户端也必须一致,作为一层简单认证
ExecStart=/usr/local/bin/wstunnel server --log-lvl INFO --restrict-http-upgrade-path-prefix wg-8388-tunnel --restrict-to 127.0.0.1:51820 --tls-certificate /etc/wstunnel/cert.pem --tls-private-key /etc/wstunnel/key.pem wss://[::]:443
Restart=always
RestartSec=5
LimitNOFILE=65536
[Install]
WantedBy=multi-user.target
启动它:
sudo systemctl daemon-reload && sudo systemctl enable --now wstunnel-server
第三步:广州节点(客户端)打包流量
广州机器需要把本地发出的 WireGuard UDP 包,塞进 HTTPS 管道里,射向福州的 IPv6。
先配置广州的 WSTunnel 客户端: 创建服务:
sudo nano /etc/systemd/system/wstunnel-client.service
[Unit]
Description=WSTunnel Client for WireGuard over WSS
Wants=network-online.target
After=network-online.target
# WireGuard 客户端的 Endpoint 指向 127.0.0.1:51821
# 所以 wstunnel-client 应该先于 wg-quick@wg0 启动
Before=wg-quick@wg0.service
[Service]
Type=simple
User=root
# 作用:
# 1. 广州机器本地监听 UDP 127.0.0.1:51821
# 2. WireGuard 客户端把 UDP 包发给 127.0.0.1:51821
# 3. wstunnel client 把 UDP 包封装进 WSS
# 4. 通过台湾 IPv6 的 TCP 443 连到 wstunnel server
# 5. 台湾 wstunnel server 再转发给台湾本机 127.0.0.1:51820
#
# timeout_sec=0:
# 禁止 UDP tunnel 空闲超时关闭,WireGuard 场景建议保留
#
# 注意:
# 这里没有加 --tls-verify-certificate。
# 如果你用的是自签证书,先不要加它。
# 如果你用的是正规域名证书,并且客户端连接域名而不是 IP,可以再考虑加上。
ExecStart=/usr/local/bin/wstunnel client --log-lvl INFO --http-upgrade-path-prefix wg-8388-tunnel -L 'udp://127.0.0.1:51821:127.0.0.1:51820?timeout_sec=0' wss://[IPv6或者域名]:443
Restart=always
RestartSec=5
LimitNOFILE=65536
NoNewPrivileges=true
[Install]
WantedBy=multi-user.target
启动它
sudo systemctl daemon-reload && sudo systemctl enable --now wstunnel-client
在我们这个复杂的架构里,流量要经过:小火箭 -> 广州iptables -> 广州WG -> 广州WSTunnel -> 台湾WSTunnel -> 台湾WG -> 台湾Realm -> 家宽SS。 任何一个环节断了,都会超时。不要瞎猜,我们直接用工程师思维,从外到内、一层层做“X光透视”。
在广州机器上执行:
sudo journalctl -u wstunnel-client -n 20 --no-pager
第二步:检查“内层核心”
sudo wg
第三步:检查“致命的 MTU 陷阱”
第四步:检查“最后一公里”
在广州机器上执行
ping 10.0.0.1 -c 4
大概就是这样。
常用命令
操作对象 (<服务名>) 替换指南:
- WireGuard:
wg-quick@wg0(服务端) 或wg-quick@wg_kr(客户端) - WSTunnel:
wstunnel(服务端) 或wstunnel-fz(客户端) - Realm:
realm
| 动作 | 命令 | 适用场景 |
| 查看运行状态 | systemctl status <服务名> | 看看是不是绿色的 active (running),有没有挂掉。 |
| 重启服务 | systemctl restart <服务名> | 改了配置文件后,必须执行这个让其生效。 |
| 开机自启开关 | systemctl enable <服务名>systemctl disable <服务名> | 决定服务器重启后,这个节点要不要自动连。 |
| 实时滚动日志 | journalctl -u <服务名> -f | 最常用! 像看直播一样看后台报错(按 Ctrl+C 退出)。 |
| 查看最后 50 行日志 | journalctl -u <服务名> -n 50 --no-pager | 服务起不来时,光看 status 没用,用这个看具体的 error 报错。 |
WireGuard (WG) 专属命令:隧道透视镜
WireGuard 运行在内核态,不能单纯看端口,必须用它自带的工具查状态。
| 动作 | 命令 | 核心看点 / 说明 |
| 查看全局状态 | wg show | 最核心排错命令! 1. 看 latest handshake 有没有时间戳(有就是通了)。2. 看 transfer 的 rx (收) 和 tx (发) 是不是都在动。 |
| 手动拉起网卡 | wg-quick up wg0 | 不走 systemd 时,临时手动启动名为 wg0.conf 的配置。 |
| 手动卸载网卡 | wg-quick down wg0 | 临时关闭隧道,释放 10.0.x.x 的路由表。 |
| 生成新密钥对 | wg genkey | tee pri.key | wg pubkey > pub.key | 新增客户端时快速生成一对私钥和公钥。 |
🚇 WSTunnel & Realm:端口与进程猎手
这两个主要是转发层,排错的核心是“看门有没有开”以及“有没有人在监听”。
| 动作 | 命令 | 说明 |
| 查看真实运行参数 | ps aux | grep wstunnelps aux | grep realm | 确认服务是用什么参数跑的。比如确认有没有成功加载 --tls-certificate。 |
| 检查端口监听 | ss -tulnp | grep wstunnelss -tulnp | grep realm | 极其重要!确认你的 10086(Realm)、443(WSTunnel)端口确实处于 LISTEN 状态,并且是被正确的程序占用的。 |
| 暴力杀进程 | killall wstunnel 或 killall realm | 如果遇到端口被占用(Address already in use)导致服务起不来,直接一键清场再重启。 |
附加赠送:TLS 证书续期 (acme.sh)
由于你在国内跑了 WSS 伪装,证书过期会导致隧道直接断开。
| 动作 | 命令 | 说明 |
| 查看现有证书状态 | acme.sh --list | 看一眼 Main_Domain 下面的证书啥时候到期。 |
| 强制手动续期 | acme.sh --renew -d fz.3283.org --force | 如果定时任务失效,或者你想提前刷新证书,直接跑这个。 |
| 升级脚本自身 | acme.sh --upgrade --auto-upgrade | 保持 acme.sh 是最新版,防止 Let’s Encrypt API 变动导致签发失败。 |
启动顺序
服务端机器启动顺序
systemctl daemon-reload
systemctl enable --now wg-quick@wg0
systemctl restart wg-quick@wg0
systemctl enable --now wstunnel-server
systemctl restart wstunnel-server
客户端机器启动顺序
systemctl daemon-reload
systemctl enable --now wstunnel-client
systemctl restart wstunnel-client
systemctl enable --now wg-quick@wg0
systemctl restart wg-quick@wg0
停止服务
服务端机器停止服务
systemctl stop wstunnel-server
systemctl stop wg-quick@wg0
客户端机器停止服务
systemctl stop wg-quick@wg0
systemctl stop wstunnel-client
服务重启
服务端机器重启
systemctl restart wg-quick@wg0
systemctl restart wstunnel-server
客户端机器重启
systemctl restart wstunnel-client
systemctl restart wg-quick@wg0
开机启动
服务端开机启动
systemctl enable wg-quick@wg0
systemctl enable wstunnel-server
客户端开机启动
systemctl enable wstunnel-client
systemctl enable wg-quick@wg0
服务状态查询
服务端机器状态查询
systemctl status wg-quick@wg0 --no-pager
systemctl status wstunnel-server --no-pager
客户端机器状态查询
systemctl status wstunnel-client --no-pager
systemctl status wg-quick@wg0 --no-pager
先这样吧,后面有机会再更新。
