前言

现在已经在虚拟机上成功将自建 Easytier 节点部署好了,可以去部署在服务器上了,之后就再不用受公共节点的羁绊了。但是服务器还是太贵了,所以这篇文章先记录在虚拟机上部署的过程,之后要部署到服务器上时再对此文章进行修改。

参考文章

大多是按照这个文章来做的:EasyTier 自建服务器完整教程

Easyteir 官方文档:通过命令行组网章节

获取 Easytier 安装包

创建必要的目录

首先我们需要创建一个 Easytier 目录

1
2
cd /opt
mkdir easytier

创建 server 文件夹

1
2
cd easytier
mkdir server

下载安装包

在server文件夹内获取 Easytier-V2.4.5 的安装包(博主觉得2.4.5版本稳定)

1
wget https://ghfast.top/https://github.com/EasyTier/EasyTier/releases/download/v2.4.5/easytier-linux-x86_64-v2.4.5.zip

使用 ghfast.top 代理加速下载

进行检查

进行确认

1
pwd

确认当前工作文件夹位置,应为 /opt/easytier/server

1
ls -la

确认压缩包已经安装好

解压 Easytier 安装包

解压安装包

运行以下命令进行解压

1
unzip easytier-linux-x86_64-v2.4.5.zip

若是提示命令不存在,运行以下命令进行安装

1
apt install unzip

进行检查

进行确认

1
ls -la

会多出一个 easytier-linux-x86_64 文件夹

确认压缩包内内容完整

1
2
cd easytier-linux-x86_64
ls -la

里面会有四个可执行文件

  • easytier-cli
  • easyteir-core
  • easytier-web
  • easyteir-web-embed

在 easytier-linux-x86_64 目录运行以下命令将四个可执行文件移动到上一级目录,也可以修改后续配置路径来跳过这一步

1
mv * ../

可执行文件说明

可执行文件 作用 说明
easytier-cli 命令行管理工具 用于查看节点状态、管理连接等命令行操作
easytier-core 核心服务程序 组网核心引擎,负责网络连接和数据转发,需要长期运行
easytier-web Web 控制台API(不带界面) PAI接口能力,界面要另外安装web
easytier-web-embed Web 控制台(内置版) 带数据库的完整 Web 管理界面,推荐使用,包含配置存储

放行端口

此模块施工中(后续会在部署到服务器上时补充)

端口说明

参数 默认端口 说明
--config-server-port 22020 配置为:26020,配置服务器端口,用于客户端连接获取配置
--api-server-port 11211 配置为:26010,API 服务端口,Web 界面调用接口
--web-server-port 11211 配置为:26010,Web 服务端口,浏览器访问界面
独立节点端口 11011 配置为:26030,独立节点提供端口给任何一个客户端链接组网

创建自启动服务(重点)

进入到 system 目录

1
cd /etc/systemd/system

创建核心自启动服务

创建 easyteir-core.service 文件

1
vim easyteir-core.service

写入配置

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=easytier-core Service
After=network.target

[Service]
Type=simple
ExecStart=/opt/easytier/server/easytier-core --config-server tcp://127.0.0.1:26020/admin --relay-network-whitelist myeasytier --machine-id easytier-server-id --hostname easytier-server-name -l 26030
User=root
Restart=on-failure
RestartSec=5

[Install]
WantedBy=multi-user.target

编辑完配置文件后重新加载配置

1
systemctl deamon-reload

启动服务

1
systemctl start easytier-core.service

查看服务状态

1
systemctl status easytier-core.service

设置开机自启

1
systemctl enable easytier-core.service

创建 web 端自启动服务

在 /opt/easytier/server 文件夹内创建 easytier-web-embed 文件夹

1
mkdir easytier-web-embed

创建 easyteir-web-embed.service 文件

1
vim easyteir-web-embed.service

写入配置

1
2
3
4
5
6
7
8
9
10
11
12
13
[Unit]
Description=easytier-web-embed-Service
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
ExecStart=/opt/easytier/server/easytier-web-embed --db /opt/easytier/easytier-web-embed/web-embed.db --config-server-port 26020 --config-server-protocol tcp --api-server-port 26010 --web-server-port 26010 --api-host "https://easytier-web.yuming.cc"
Restart=always
RestartSec=3

[Install]
WantedBy=multi-user.target

编辑完配置文件后重新加载配置

1
systemctl deamon-reload

启动服务

1
systemctl start easytier-web-embed.service

查看服务状态

1
systemctl status easytier-web-embed.service

设置开机自启

1
systemctl enable easytier-web-embed.service

参数说明

参数 用途
--config-server 配置服务器地址,格式:协议://IP:端口/网络名称
--relay-network-whitelist 允许中继的网络名称(白名单)
--machine-id 机器唯一标识符,用于区分不同节点
--hostname 节点主机名,便于识别
-l / --listen 监听端口,用于接收其他节点连接
--db Web 界面数据库存储路径
-api-host API 主机地址(公网访问地址,用于 Web 回调)
--config-server-protocol 配置服务器协议类型(tcp/udp)

若是两个服务都显示 active(running) 就说明配置成功了

进入 web 控制台进行组网

服务器设置

若是两个服务都启动成功了就可以进入接下来这一步,浏览器输入 web 服务端地址,就像这样 [ip]:26010

img-1

将 API host 改为 ip 地址,确保与上图地址一致

img-2

登录到 web 端,默认密码和用户名都是 admin,进入后可以修改密码,正常情况下会有一台已经接入的设备,就是本机的 easytier-core.service 服务

img-3

创建网络,网络名称一定是要在 easytier.service 配置中 --relay-network-whitelist 参数添加过的白名单名称

img-4

在高级设置中添加配置文件中设置的监听端口

img-5

客户机设置

在自己的电脑上下载 easytier 进行组网,服务器就填自己部服务器的 ip 地址及服务器的监听端口

img-6

运行网络

OK,组网成功

img-7

结语

若是将 easytier 的公共节点部署到服务器上,就可以不受公共节点不稳定的制约了(感觉其实有公网ip的话自己虚拟机上部署也可以)。自从 MC 联机事件后官方的公共节点就似了一大堆,经常怕哪天自己用的中继服务器崩了。现在可以自建节点了,再不其受羁绊了。就是有点贵 (┭┮﹏┭┮)。所以公共服务器能用还是先用着吧,看看又没有更实惠的方法。既然组网的事情已经完全稳定了,之后还想搭建一个家庭 NAS (貌似家里有个N年前就弃用的服务器,说是当时最顶配,说不定能改成 NAS)。这各种云传数据太慢了,简直不当人。搭建 NAS 后就可以往里面放数据了,上传与下载大文件也可以再不受各种云的限制了。