ZeroTier 内网穿透
创建于 2021-06-29
更新于 2021-06-29
科技
zerotier

前言

内网穿透研究。

一、资源准备

1.1 简介

ZeroTier 是全球的智能可编程以太网交换机。它允许所有联网设备、虚拟机、容器和应用程序进行通信,就好像它们都位于同一物理数据中心或云区域一样。

1.2 构建网络

  • 注册:在 官网 进行注册,本文直接通过 Google 账户 进行登录。
  • 创建网络:登陆后点击网页中央的 Create A Network 按钮构建网络,默认为私有网络,需要手动确定成员。
  • 设置网络:在下方的虚拟局域网列表中找到刚创建的网络,修改名称,在 IPv4 Auto-Assign 中修改局域网网段,防止和真实地址冲突。
  • 记录 Network ID ,以供后续部署使用。

二、部署

2.1 服务器端部署

  • 在服务器中安装并配置网络。
bash
1
2
3
4
5
6
7
8
9
# install curl -s https://install.zerotier.com/ | sudo bash # config auto start sudo systemctl start zerotier-one.service sudo systemctl enable zerotier-one.service # join Zerotier Network sudo zerotier-cli join abfd31bd47a5b0bd Your-Network-ID

2.2 用户端部署

  • 下载并安装 Zerotier windows 客户端。
  • 在托盘中右键 Zerotier 图标,join network ,输入 Network ID
  • 官网个人页面 中允许添加并给定 IP 地址

2.3 moon 节点添加

  • 与服务器配置相同,首先将中转节点作为局域网成员添加。

  • 配置 端口moon 信息。

bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# config moon.json cd /var/lib/zerotier-one/ touch moon.json sudo chmod 777 moon.json sudo zerotier-idtool initmoon identity.public > moon.json vi moon.json # 添加服务器公网IP "stableEndpoints": [ "xxx.xxx.xxx.xxx/9993" ] sudo zerotier-idtool genmoon moon.json # 生成xxxxxxxx.moon文件 sudo chmod 644 moon.json # enable firewall sudo ufw allow 9993/udp # enable moon sudo mkdir moons.d sudo mv xxxxxxxx.moon moons.d/ sudo service zerotier-one restart scp -r moons.d username@serverZerotierIP:/home/username
  • 在服务器中激活 moon 节点。
bash
1
2
3
4
5
6
# 激活 sudo mv moons.d /var/lib/zerotier-one/ sudo service zerotier-one restart # 验证 sudo zerotier-cli listpeers # 看到role 为 moon 的节点即可

2.4 (参考) 内网单机代理

  • 通过 ip addr 获取联网的物理网卡地址 PHY_IFACEzerotier 的虚拟网卡地址 ZT_IFACE
bash
1
2
3
4
5
6
7
8
PHY_IFACE=; ZT_IFACE= sudo iptables -t nat -A POSTROUTING -o $PHY_IFACE -j MASQUERADE sudo iptables -A FORWARD -i $PHY_IFACE -o $ZT_IFACE -m state --state RELATED,ESTABLISHED -j ACCEPT sudo iptables -A FORWARD -i $ZT_IFACE -o $PHY_IFACE -j ACCEPT sudo apt install iptables-persistent sudo bash -c iptables-save > /etc/iptables/rules.v4

参考

本文作者: 有次元袋的 tiger
本文链接: https://www.superheaoz.top/2021/06/24830/
版权声明: 本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 我的个人天地