用ZeroTier自建虚拟局域网干掉 EasyConnect
date
Mar 1, 2023
slug
Kill_EasyConnect
status
Published
tags
Website
summary
自建虚拟专用网络,告别服务商
type
Post
为什么不用 EasyConnect ?
不愿再多说,Google 随便搜一下:
- 自动提权到 root 级别:后台常驻进程 EasyMonitor 和 ECAgentProxy,且都以 root 权限运行;
- 自动安装根证书:包括系统根证书与 FireFox 的根证书,且在删除后会重新安装。
- 没有 Apple silicon 版本的客户端,在 arm 架构处理器的 Mac 上运行需要转译(arm 洁癖烦了
- 注:形如 docker-easyconnect 的方案基于 EasyConnect 官方“Linux”版的 deb 包实现了不需要转译运行的案例,但我个人没有跑起来。
docker-easyconnect
docker-easyconnect • Updated Nov 13, 2023
- 登陆页面不支持密码自动填充……
- 不胜枚举的吐槽参见
需求分析
由于不可避免要赛博回校,而又不希望使用 EasyConnect,故催生出本篇文章。
笔者的需求如下:
- 不使用 EasyConnect 实现虚拟组网,保证安全性的前提下降低延迟。
- 自动在客户机上进行规则分流,时刻连接到校园网,不额外使用其他路由软件。
示意图如下,简单来说,图中虚线箭头和右下角框起来的部分就是我们要做的工作:

方案设想
硬件要求
- Host: 一台在校园网内部 7*24h 开机的设备,即为图中的 Host,这里假定其在虚拟网络中的 IP 地址为
172.30.0.1,这里笔者是有一直开着的主机,而且已经配置好免密登陆到数据中心服务器,其实更好的解决方案是树莓派等低功耗设备,奈何树莓派现在实在是太贵了。
- Desktop: 客户机,没有要求,能上网和安装 ZeroTier 就行,手机都行。
- VPN: 如果不喜欢在客户机上组网,也可以在路由器上组网,那么 Desktop 是不需要进行配置的,例如我在家里,用旁路由组了虚拟网络,就更方便了(但也更不安全)。原理类似,不是本篇重点,
软件方案
- 虚拟组网:在校园网环境下可以是内网穿透,之前有使用过 ngrok、natapp 等内网穿透软件,稳定性并不是很理想,还要收费,而且代理特定端口有泄露风险,这里选择 ZeroTier 进行虚拟组网,虽然有组网设备上限,但个人使用完全不必担心,权限管理甚至内网 IP 都在掌控之中。
- 透明代理:我的便携设备是一台 MacBook Air,macOS 上能完成路由分流功能的软件很多,这里就选择常见的 Clash X Pro ,在 clash 的配置文件中写入 ZeroTier 分配到的校内设备 IP 地址和端口和对应规则即可完成规则分流工作。
解决方案
软件安装
ZeroTier 的安装与组网
参考官网给的文档,其实蛮简单的,基本上不需要怎么配置就可以跑起来
另外一篇小众软件上的教程也可以参考
需要注意的是在 Desktop 和 Host 上都要安装一遍,之后记下 Host 在 ZeroTier 管理页面的 IP 地址。

这一步完成了图中的1
规则分流与透明代理
如果是 ssh 等基本操作可以用 ProxyCommand 来实现一键连接,如下面的 ssh config 就实现了利用跳板机器
iMac 代理 ssh 连接到内网地址为10.177.45.47 的操作。
这一步完成了图中的3
远不止 ssh,远程桌面、文件共享等也可以正常工作(甚至比 EasyConnect 来的更好,因为可以自定义 Host 的 IP 地址)
如果需要规则分流,在 Host 上安装 Clash 并允许来自局域网的连接,Desktop 方的 Clash 配置文件中添加对应规则

这就完成了图中的2
最后测试 ssh、rdp、sftp 等服务就可以了。
Troubleshooting & TODO
目前的问题
- 有时候 ZeroTier 的延迟很高,取决于 Desktop 遇到的网络环境有多复杂,目前大概有 1/20 的概率遇到延迟高达 200ms 的情况,只能说堪堪可用,相比起 EasyConnect 带来的隐患可以接受。
- macOS 的 Clash X Pro 增强模式似乎有点问题,有时候会导致完全上不了网,但不开增强模式又会连不上 Host 看起来是哪里有冲突了,还没有稳定复现过,持续观察。
TODO
针对遇到的问题,要做的还不少:
- 自建 ZeroTier 的中转服务器,似乎有 moon planet 的区分,未做深入了解
- 持续观察 Clash X Pro 的稳定性,似乎 Clash for Windows macOS 版没有这个问题,但那个软件跨平台地不够 macOS(洁癖又发作了。
总结
没什么好总结的,迅速按下 Touch ID(逃

![ZeroTier - 无配置,零基础「内网穿透」随时随地连回家/学校/办公室 [跨平台] - 小众软件](https://www.notion.so/image/https%3A%2F%2Fstatic1.appinn.com%2Fstwww%2Fwp-content%2Fuploads%2Fdfii9sjw0ae7ids-2.jpgo_.jpg?table=block&id=60edc7ee-9e16-4f22-9968-592b44039452&cache=v2)