应用场景介绍:
利用阿里云服务器,搭建根服务器,把不同局域网打通,实现内网穿透,远程控制。
准备工具: 1、服务端:云服务器(有公网IP)Centos 7.6
2、客户端: 工控机(或者家里电脑)(Linux) ,公司电脑Windows
搭建私有化 ZeroTier步骤:
一、云服务器上安装服务操作
1、安装编译组件
yum install wget gcc gcc-c++ git -y
yum install json-devel -y
2、安装根服务
curl -s https://install.zerotier.com/ | sudo bash
安装完成后,默认监听的端口是9993
,这个端口需要对外提供服务,需要在服务器防火墙和云服务提供商的安全组设置放行。
安全组修改:新增允许访问的规则 UDP:9993
和 TCP:9993,TCP: 3443(后面的显示面板用)
3、记录安全认证信息
到安装目录/var/lib/zerotier-one/
中
找到并记录identity.public
和
authtoken.secret
文件里的字符串,备用。
4、下载源码
可以在 /var/lib/zerotier-one/ 目录下直接下载源码:
git clone https://github.com/zerotier/ZeroTierOne
下载后的代码路径:/var/lib/zerotier-one/ZeroTierOne
5、修改源码
找到ZeroTierOne/attic/world/mkworld.cpp
并打开,仿照mkworld.cpp
原来的代码,将我们自定义的Planet
服务器添加进去。
注意,需要删除或注释掉至少一个原来的Planet
服务器,再增加我们自己的服务器,否则后续执行我们编译的可执行程序时程序会崩溃。
原因是代码里默认只允许4台Planet
服务器,可以在World.hpp
里看到如下定义#define ZT_WORLD_MAX_ROOTS 4
删除日本东京的就可以。
6、编译配置文件
cd ./ZeroTierOne/attic/world/
source ./build.sh
./mkworld
mv ./world.bin ./planet
7、替换服务端配置文件
cp -r ./planet /var/lib/zerotier-one/
cp -r ./planet /root # 备用保存好
8、重启服务端
systemctl restart zerotier-one.service
9、安装服务端面板服务
wget https://gitee.com/opopop880/ztncui/attach_files/932633/download/ztncui-0.8.6-1.x86_64.rpm rpm -ivh ztncui-0.8.6-1.x86_64.rp
10、生成接口文件
cd /opt/key-networks/ztncui/ echo "HTTPS_PORT = 3443" >>./.env #3443是ztncui默认的web面板端口,可以自行修改 echo "ZT_TOKEN = authtoken.secret文件里的字符串" >>./.env #这里的字符串是authtoken.secret文件里的字符串 echo "ZT_ADDR=127.0.0.1:9993" >>./.env #这里是面板与本地客户端的通讯端口,保持默认9993就行,千万别修改,修改了本地ztncui和ZeroTier-One通讯就会错误 echo "NODE_ENV = production" >>./.env echo "HTTP_ALL_INTERFACES=yes" >>./.env
11、访问ztncui面板
在公司电脑浏览器访问即可,别忘了输入https!!!!!!!!!!!
https://服务器公网ip:3433 登录了,默认账号和密码是:admin/password
登陆到ztncui,首次登陆会要求你更改密码,更改好密码以后。点击ADD-NETWORK——输入网络名提交后建立完成——
点击导航栏networks——找到刚才建立的网络——点击easy setup——点击Generate network address会自动建立一个虚拟网段,
然后Submit。其他的选项不要去动,否则会无法分配IPV4地址。
Routes选项卡用于配置路由转发规则,用openwet需要设置好,才能访问内网。
网络名旁边的括号里是网络ID,各个节点通过这个ID加入虚拟网络
至此服务器端配置完成,
别忘了第7步里面,生成的那个 planet 文件 备用的, 后面有大用!!!!!!!!!!!!!!!!!!!!!!!!
二、客户端配置
1、 Windows客户端配置
1>去官网下载客户端:https://www.zerotier.com/download/ 各种版本都有,先下windows即可
2>安装 exe
3>替换客户端的planet文件
将 第一步里面那个重要备用的 planet
文件覆盖粘贴到C:\ProgramData\ZeroTier\One
中(这个目录是个隐藏目录,需要运允许查看隐藏目录才行)
4》windows找到 服务 并重启 ZeroTier One 服务
5》加入网络
使用管理员身份打开PowerShell
执行如下命令,看到join ok字样就成功了
PS C:\Windows\system32> zerotier-cli.bat join 网络id(就是在网页里面创建的那个网络) 200 join OK PS C:\Windows\system32>
6、见证奇迹
电脑登录: https://公网IP:3343
勾选上红框的复选框,然后通过 mstsc命令就可以访问其他内网里面的用户了
2、Linux客户端配置
3、IOS, 安卓都差不多不做介绍三、使用
标签:zerotier,planet,https,服务器,ztncui,客户端 From: https://www.cnblogs.com/gnix/p/16742642.html