跳到主要内容

Linux 客户端:安装成系统服务(systemd)

在 Linux 服务器上下载客户端、安装成开机自启的服务、添加并启动隧道,一台服务器一个服务跑多条隧道。

适用场景

CentOS、Ubuntu、Debian、麒麟、统信等使用 systemd 的 Linux 服务器或小主机。

不确定有没有 systemd:执行 ps -p 1 -o comm=,输出 systemd 就可以按本文操作;否则(如部分 NAS、容器)请用 Docker 部署。

前置条件

  • 有 root 或 sudo 权限。
  • 已在控制台配置好隧道,并复制了客户端令牌(“隧道”页 → “连接凭证”)。
  • 在这台服务器上能访问要发布的内网服务。

操作步骤

第 1 步:查看 CPU 架构

uname -m
输出 下载地址里用的名称
x86_64 linux-x86_64-tar-gz
aarch64 或 arm64 linux-arm64-tar-gz
armv7l linux-armv7-tar-gz
i386 或 i686 linux-x86-tar-gz

第 2 步:下载并解压

示例为 x86_64,其他架构替换地址里的名称。也可以在 下载页 的“Linux 服务端”手动下载后上传到服务器。

mkdir -p ~/wyc-download/
cd ~/wyc-download/
wget -O wyc-client.tar.gz "https://update.too1.net/d/wyc/stable/linux-service/linux-x86_64-tar-gz?source=wyc_official"
tar -xzf wyc-client.tar.gz
chmod +x ./wyc-client
./wyc-client version

成功后会看到 wyc-client 8.x.x …。没有 wget 时用 curl -L -o wyc-client.tar.gz "地址"。想核对文件:sha256sum wyc-client.tar.gz 的结果应与下载页的 SHA256 一致。

第 3 步:安装服务

sudo ./wyc-client install

成功后会看到:提示安装完成。程序被安装到 /usr/local/bin/wyc-client,并创建开机自启的服务 wyc-client@device.service。以后在任意目录都可以直接用 sudo wyc-client。

第 4 步:添加并启动隧道

sudo wyc-client add
sudo wyc-client list
sudo wyc-client start 123
sudo wyc-client status
  • add 会提示输入令牌,粘贴后回车(屏幕不显示是正常的)。
  • list 看到隧道 ID,把 start 123 里的 123 换成它。

成功后会看到:status 里这条隧道显示已连接。用手机流量打开访问地址确认。

有多条隧道就继续 add、start,不要重复 install。

第 5 步:确认开机自启

systemctl is-enabled wyc-client@device.service
systemctl is-active wyc-client@device.service

成功后会看到 enabled 和 active。然后找个不影响业务的时间重启服务器,确认能自动恢复访问。

日常维护

要做的事 命令
查看状态 sudo wyc-client status
看某条隧道日志 sudo wyc-client logs 123 --lines 100
实时看日志(Ctrl+C 退出查看) sudo wyc-client logs 123 --follow
检查内网服务能否连通 sudo wyc-client doctor 123
停止一条隧道 sudo wyc-client stop 123
重启整个服务 sudo wyc-client service restart

sudo wyc-client service stop 只是这次停止,开机还会自动启动。要停止并取消开机自启:

sudo systemctl disable --now wyc-client@device.service

恢复开机自启并立即启动:

sudo systemctl enable --now wyc-client@device.service

服务起不来时看系统日志

sudo systemctl status wyc-client@device.service --no-pager --full
sudo journalctl -u wyc-client@device.service -n 100 --no-pager

把输出发给客服即可(注意遮盖令牌)。

升级与卸载

  • 升级:按第 2 步下载新版到一个新目录,在新目录执行 sudo ./wyc-client upgrade。隧道和设置会保留。
  • 卸载:sudo wyc-client uninstall(保留配置);确定不再使用并清除全部数据:sudo wyc-client uninstall --purge。

文件位置

内容 位置
程序 /usr/local/bin/wyc-client
系统服务 wyc-client@device.service
服务日志 /var/log/wyc-client
设备数据和隧道日志 /var/lib/wyc-client/device

这些文件由程序维护,不要手动修改,也不要 chmod 777。

成功检查

  • systemctl is-enabled 输出 enabled,systemctl is-active 输出 active。
  • 隧道已连接,手机流量能访问。
  • 重启服务器后自动恢复;手动停止过的隧道重启后仍保持停止。

常见错误

现象 怎么办
Exec format error 架构下错了,回到第 1 步重新下载
Permission denied 命令前加 sudo;解压后的程序要先 chmod +x
提示没有 systemd 或无法连接系统总线 当前环境不支持服务安装,改用 Docker 部署
隧道已连接但外网 502 隧道的内网地址/端口不对。在服务器上执行 curl -I http://内网地址:端口 测试
提示检测到旧版安装 看 旧版客户端维护
输入 sudo 密码时以为是令牌 sudo 先要求输入服务器登录密码,之后 add 才提示输入令牌

相关教程

命令行客户端入门 · 一键安装 · Docker 部署 · 日志、升级与卸载