EasyTier 组网与配置教程

EasyTier 是一款简单、安全、去中心化的异地组网工具。本文整理了 EasyTier 在 Linux、Windows 以及 macOS 系统上的核心运行命令、私有节点搭建、WireGuard 门户集成以及后台服务的全套配置流程。

一、 快速组网与核心命令

1. Linux 系统快速加入组网

Bash

sudo ./easytier-core -d --network-name snowfly --network-secret abcd1234 -p tcp://easytier.255556.xyz:11010

2. Windows 系统快速加入组网

PowerShell

.\easytier-core.exe -d --network-name snowfly --network-secret abcd1234 -p tcp://easytier.255556.xyz:11010

3. 后台守护运行与停止

  • 停止所有运行中的实例:
    Bashkillall easytier-core 2>/dev/null
  • Linux 后台静默运行(带 WireGuard 门户与 RPC 端口):
    Bashsudo nohup ./easytier-core --network-name snowfly --network-secret abcd1234 -p tcp://easytier.255556.xyz:11010 --ipv4 10.28.0.4 --dhcp false --vpn-portal wg://easytier.255556.xyz:11013/10.14.14.0/24 --rpc-portal 127.0.0.1:15888 >/dev/null 2>&1 &

二、 搭建私有节点与状态查看

1. 搭建私有节点

在一台拥有公网 IP 的服务器上运行以下命令,作为私有引导节点并开启 WireGuard 门户支持:

Bash

easytier-core --private-mode true --network-name snowfly --network-secret abcd1234 --ipv4 10.14.14.1 --vpn-portal wg://0.0.0.0:11013/10.14.14.0/24

2. 状态检查命令

  • 查看虚拟网络中的节点信息:
    Basheasytier-cli peer
  • 查看 VPN 门户状态:
    Bash./easytier-cli vpn-portal

三、 WireGuard 客户端接入配置

通过 EasyTier 的 WireGuard 门户,外部设备可以直接接入虚拟网络。

1. 获取服务器端生成的客户端配置模板

运行 easytier-cli vpn-portal 后可获取类似内容:

Ini, TOML

[Interface]
PrivateKey = FgyjJbq7y+SoobJoc2bXhOaVozQvJprb6wdC6aiAJYo=
Address = 10.14.14.0/32 # 需要手动从该 CIDR 中分配一个 IP

[Peer]
PublicKey = 6flDvmuLfY1CrSkrL3hxRkd+9o693FSRkFbdUmOv2Bk=
AllowedIPs = 10.144.144.0/24,10.14.14.0/24
Endpoint = 0.0.0.0:11013 # 替换为 VPN 服务器的公网 IP 或域名
PersistentKeepalive = 25

2. 标准客户端配置清单

Ini, TOML

[Interface]
PrivateKey = FgyjJbq7y+SoobJoc2bXhOaVozQvJprb6wdC6aiAJYo=
Address = 10.14.14.2/32  # 注意:不能和服务器或其他客户端重复,建议从 10.14.14.2 开始分配

[Peer]
PublicKey = 6flDvmuLfY1CrSkrL3hxRkd+9o693FSRkFbdUmOv2Bk=
AllowedIPs = 10.144.144.0/24,10.14.14.0/24  # 按需调整(如想走隧道访问所有网络可改为 0.0.0.0/0)
Endpoint = easytier.255556.xyz:11013  # 替换为你的服务器公网 IP + 端口
PersistentKeepalive = 25  # 保持长连接,适配 NAT 打洞

四、 Linux 系统服务管理 (Systemd)

1. 创建软连接

Bash

ln -s /root/docker/easytier/easytier.service /etc/systemd/system/easytier.service

2. Systemd 常用运维命令

Bash

# 1. 重新加载 systemd 配置
systemctl daemon-reload

# 2. 先停止失败的服务(清理状态)
systemctl stop easytier

# 3. 启动服务
systemctl start easytier

# 4. 设置开机自启
systemctl enable easytier

# 5. 查看服务状态
systemctl status easytier

五、 macOS 系统配置后台及开机自启服务 (LaunchDaemon)

由于 macOS 没有 systemd,需要通过 LaunchDaemon 创建系统级后台服务,确保开机自启、后台运行并具备足够的网络权限。

第一步:准备基础文件与目录

Bash

# 赋予执行权限
chmod +x /Users/a33/docker/easytier/easytier-core

# 新建日志目录(避免权限问题)
mkdir -p /Users/a33/docker/easytier/logs
chmod 755 /Users/a33/docker/easytier/logs

第二步:创建 LaunchDaemon 配置文件

/Library/LaunchDaemons/ 目录下创建 com.easytier.service.plist 文件:

Bash

sudo vim /Library/LaunchDaemons/com.easytier.service.plist

写入以下配置内容:

XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <!-- 服务标识(唯一) -->
    <key>Label</key>
    <string>com.easytier.service</string>

    <!-- 启动程序路径 + 参数 -->
    <key>ProgramArguments</key>
    <array>
        <string>/Users/a33/docker/easytier/easytier-core</string>
        <string>-d</string>
        <string>--network-name</string>
        <string>snowfly</string>
        <string>--network-secret</string>
        <string>abcd1234</string>
        <string>-p</string>
        <string>tcp://1.92.67.177:11010</string>
    </array>

    <!-- 工作目录 -->
    <key>WorkingDirectory</key>
    <string>/Users/a33/docker/easytier</string>

    <!-- 开机自启 -->
    <key>RunAtLoad</key>
    <true/>

    <!-- 崩溃自动重启 -->
    <key>KeepAlive</key>
    <true/>

    <!-- 运行用户(root 权限,避免 tun 设备权限问题) -->
    <key>UserName</key>
    <string>root</string>

    <!-- 日志输出 -->
    <key>StandardOutPath</key>
    <string>/Users/a33/docker/easytier/logs/easytier_stdout.log</string>
    <key>StandardErrorPath</key>
    <string>/Users/a33/docker/easytier/logs/easytier_stderr.log</string>

    <!-- 网络就绪后启动 -->
    <key>WaitForNetwork</key>
    <true/>

    <!-- 资源限制 -->
    <key>SoftResourceLimits</key>
    <dict>
        <key>NumberOfFiles</key>
        <integer>65535</integer>
    </dict>
    <key>HardResourceLimits</key>
    <dict>
        <key>NumberOfFiles</key>
        <integer>65535</integer>
    </dict>
</dict>
</plist>

第三步:设置配置文件权限

macOS 对 LaunchDaemon 的文件权限有严格要求:

Bash

# 设置所有者为 root:wheel
sudo chown root:wheel /Library/LaunchDaemons/com.easytier.service.plist

# 设置权限为 644
sudo chmod 644 /Library/LaunchDaemons/com.easytier.service.plist

第四步:加载与启动服务

Bash

# 1. 加载服务(首次创建或修改后执行)
sudo launchctl load /Library/LaunchDaemons/com.easytier.service.plist

# 2. 启动服务
sudo launchctl start com.easytier.service

# 3. 验证服务是否运行(正常输出应包含服务名与对应的非负数 PID)
sudo launchctl list | grep easytier

# 4. 实时查看日志确认启动成功
tail -f /Users/a33/docker/easytier/logs/easytier_stdout.log

第五步:macOS 服务管理常用命令对照表

功能命令
启动服务sudo launchctl start com.easytier.service
停止服务sudo launchctl stop com.easytier.service
重启服务sudo launchctl stop com.easytier.service && sudo launchctl start com.easytier.service
卸载服务 (取消开机自启)sudo launchctl unload /Library/LaunchDaemons/com.easytier.service.plist
查看实时标准日志tail -f /Users/a33/docker/easytier/logs/easytier_stdout.log
查看实时错误日志tail -f /Users/a33/docker/easytier/logs/easytier_stderr.log

提示: 若后续修改了 .plist 中的启动参数,需要先执行 unload 卸载服务,修改完毕后再重新 loadstart

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注