聊聊云服务器 篇五:私有化部署zerotier planet服务器

2021-12-04 11:15:14 21点赞 174收藏 22评论

之前我介绍过如何搭zerotier的moon服务器,这次我来介绍如何搭建zerotier的planet服务器。如果只接入自己搭建的zerotier planet服务器,基本相当于私有化部署zerotier。(私有化部署是不是瞬间有感觉了)在上主菜前先上小菜:我介绍过部署moon服务器的方案,现在补充一个通过docker搭建zerotier的方法,通过docker搭建让整个过程变得异常简单。

zerotier moon服务器的docker镜像开源地址:https://github.com/rwv/docker-zerotier-moon

使用起来非常简单:

#运行zerotier-moon
sudo docker run --name zerotier-moon -d --restart always -p 9993:9993/udp -v /home/set/zerotiermoon:/var/lib/zerotier-one seedgou/zerotier-moon -4 1.2.3.4
#查看moon节点编号
sudo docker logs zerotier-moon

获得moon节点之后,用下面命令加入moon服务器即可:

sudo zerotier-cli orbit moon编号 moon编号

接下来上主菜:

如何部署zerotier的planet服务器

在部署zerotier服务器之前你必须要有一台具有公网IP的主机或者云服务器。6月/11月时入手云服务器一般价格最低,之前11月腾讯云和阿里云都有不足200元3年的2核4G轻量云服务器方案,现在都已近没有了(只有企业用户还有2核4G轻量服务器的3年优惠价)。如果想尝尝鲜建议买个50元1年的轻量服务器,5M宽带勉勉强强也能用。

有了服务器,接下来需要用到一个开源镜像,开源地址:https://github.com/sbilly/docker-zerotier-controller。只不过整个镜像不能直接使用,需要根据自己的实际情况进行编译才能运行。首先下载安装包,可以用curl也可以直接git clone下来:

#下载安装包
sudo curl -LJO https://codeload.github.com/sbilly/docker-zerotier-controller/zip/refs/heads/main
sudo unzip docker-zerotier-controller-main.zip
#进入安装包修改配置文件
cd docker-zerotier-controller-main/patch
sudo vim planets.json

在进行编译前首先要修改planet.json这个配置文件。这个文件主要有3个内容:location这个无关紧要,Identity是认证的公钥,Endpoints是终端地址(服务器地址,IP选默认的9993)

私有化部署zerotier planet服务器

{
"planets": [
{
"Location": "Guangzhou", // Where this planet located
"Identity": "a4de2130c2:0:ab5257bb05cd2fb8044fe26483f6d27b57124ca7b350fb3e0f07d405c68c4416094dbc836bf62ed483072501aa3384dff3c74ac50050c1bfbb1dc657001ef6a1", // The planet's public key, ex: identity.public
"Endpoints": ["127.0.0.1/9993"] // The list of endpoints in 'ip/port' format. IPv6 is supportted
}
]
}

接下来回到主目录,用如下命令进行编译:

sudo docker build --force-rm . -t sbilly/zerotier-controller:latest

整个编译过程耗时比较久,如果网络条件不好可能还会卡主。如果出现这种情况,ctrl+c退出后重新执行上面的命令即可(我的小主机大概编译了半个多小时中间卡主了四五次):

私有化部署zerotier planet服务器

编译成功之后就可以运行docker镜像了,官方有3种运行方式。最推荐用第二、三种,我介绍一下第二种:

sudo docker run --rm -ti -e ZU_SECURE_HEADERS=false -e ZU_CONTROLLER_ENDPOINT=http://127.0.0.1:9993/ -e ZU_DEFAULT_USERNAME=admin -e ZU_DEFAULT_PASSWORD=zero-ui -p 4000:4000 -p 3000:3000 -p 9993:9993 -p 9993:9993/udp sbilly/zerotier-controller:latest

上面的命令自行修改服务器地址,登陆用户名和密码,登陆zero-ui时会用到:

私有化部署zerotier planet服务器

接下来就可以在浏览器中用:http://IP:4000访问控制端了,界面和zerotier的主界面有相似之处。用账户密码登陆后,点击create network就可以创建自己的虚拟网络,这时候会生成一个net ID:

私有化部署zerotier planet服务器

接下来我们还要下载一个叫planet的文件,这个文件的下载地址是:http://IP:4000/app/static/planet

私有化部署zerotier planet服务器

将这个planet文件替换你安装zerotier的客户端中的plant文件,就可以用zerotier加入你自己的planet服务器了(比如Ubuntu的目录是/var/lib/zerotier-one):

私有化部署zerotier planet服务器

事情到这里就结束了吗?不做到完美怎么符合我的性格,接下来我要介绍如何安装两个非官方客户端:安卓端和Linux端。因为官方的安卓端不能自主选择planet服务器,而官方Linux没有deb安装包也没有图形界面。重要的是我们是自主部署的zerotier如果使用官方客户端,万一升级后失效了呢?

Linux端的开源地址https://github.com/tralph3/ZeroTier-GUI

下载源码后解压,然后执行编译安装的命令即可:

./make_deb.sh

安卓端的开源地址https://github.com/kaaass/ZerotierFix

安卓端就更加简单了,直接下载release里面的最新版本安装,安装后在设置里加载你下载的planet文件即可。

私有化部署zerotier planet服务器

window端没有修改版,直接用官方版本就可以了。不过一些朋友可能找不大planet文件的目录,那就参考我下面的截图地址:

私有化部署zerotier planet服务器

文章写到这里,基本是一个成熟完整的解决方案了。最后,我不得不称赞zerotier团队,直接开放到可以实现私有化部署。当然也离不开很多程序猿大神的助力,但这精神不服不行。

展开 收起

ihuman 洪恩 识字子集拼音思维ABC会员永久包3-6岁儿童早教启蒙礼物玩具 识字会员终身包

ihuman 洪恩 识字子集拼音思维ABC会员永久包3-6岁儿童早教启蒙礼物玩具 识字会员终身包

268元起

任天堂 Nintendo Switch《舞力全开 Just Dance》 游戏兑换卡

任天堂 Nintendo Switch《舞力全开 Just Dance》 游戏兑换卡

159元起

Microsoft 微软 OFFICE 365 家庭版 会员

Microsoft 微软 OFFICE 365 家庭版 会员

106元起

WPS 金山软件 WPS 超级会员 3年卡

WPS 金山软件 WPS 超级会员 3年卡

308元起

Microsoft 微软 Office 365 个人版

Microsoft 微软 Office 365 个人版

106元起

Microsoft 微软 365 家庭版 电子秘钥 正版高级Office应用 1T云存储

Microsoft 微软 365 家庭版 电子秘钥 正版高级Office应用 1T云存储

299元起

Microsoft 微软 到手18.2元/月 微软office365家庭版microsoft365增强版15个月

Microsoft 微软 到手18.2元/月 微软office365家庭版microsoft365增强版15个月

289元起

Microsoft 微软 OFFICE 365 个人版 办公软件

Microsoft 微软 OFFICE 365 个人版 办公软件

189元起

Microsoft 微软 office专业版永久激活码office2019增强版终身版outlook密钥

Microsoft 微软 office专业版永久激活码office2019增强版终身版outlook密钥

249元起

WPS超级会员Pro套餐4年卡1488天官方正版pdf转word排版

WPS超级会员Pro套餐4年卡1488天官方正版pdf转word排版

676.4元起

WPS超级会员4年套餐pdf转word排版PPT润色模板素材店铺

WPS超级会员4年套餐pdf转word排版PPT润色模板素材店铺

暂无报价

国行版 Switch体感游戏套装 《健身环大冒险》

国行版 Switch体感游戏套装 《健身环大冒险》

439元起

WPS 金山软件 会员季卡

WPS 金山软件 会员季卡

59.85元起

Microsoft 微软 office365家庭版15个月 203元

Microsoft 微软 office365家庭版15个月 203元

198元起

微软(Microsoft))win10win11专业版批量式授权企业版嵌入式正版化解决方案win11家庭版

微软(Microsoft))win10win11专业版批量式授权企业版嵌入式正版化解决方案win11家庭版

1288元起

Microsoft 微软 活动6天 office365家庭版microsoft365订阅密钥

Microsoft 微软 活动6天 office365家庭版microsoft365订阅密钥

234元起
22评论

  • 精彩
  • 最新
  • 请问下moon和planet的差异点,已经建立好moon了以后还有必要再建立planet嘛?性能会有差异吗?建立planet单纯为了系统在自己的控制之下吗?最近搞得头大 [尴尬]

    校验提示文案

    提交
    planet是根服务器,moon是加速服务器。自己搭建了planet就无需搭建moon。已经部署了moon也不必再搭建planet。

    校验提示文案

    提交
    收起所有回复
  • 谢谢大佬,我用的是tvtv.fun的教程

    校验提示文案

    提交
  • identity.public怎么生成呀?就用git clone下来的吗?不用改嘛?

    校验提示文案

    提交
  • 一个docker 直接就可以了,不用搞这么多配置文件,还可以用原生客户端
    去看看

    校验提示文案

    提交
    请教一下,我实在按这篇文章无法配好,就用了keynetworks/ztncui的镜像,用原版客户端一次就可以了,但运行相当不稳定,例如:客户端明明在线,结果显示离线。或者客户端加入却在服务器端不显示。不知道你知道是什么原因吗?,另外,dockerhub上的镜像大概10个月没更新了,不知道怎样能找到新的?

    校验提示文案

    提交
    收起所有回复
  • 请教,编译前的公钥与loacation怎么填写?

    校验提示文案

    提交
  • 请教作者:已部署了并创建网络,客户端点加入后,显示状态一直都是requesting_configuration,但在服务器端一直看不见设备加入。加入前,用下载的planet文件替换了客户端的文件的,结果也是无效。部署工作和文章不同之处如下:由于国情因素编译会在访问arclinux的时候卡住,所以直接在dockerhub上拉镜像部署的,run命令中也没有用-rm选项,用的--restart,防护墙的4000和9993端口都将tcp、udp开放了

    校验提示文案

    提交
    另外,请问威联通设备上planet文件的位置在哪里呢?

    校验提示文案

    提交
    我也显示状态一直都是requesting_configuration,请问你是怎么解决的?

    校验提示文案

    提交
    还有1条回复
    收起所有回复
  • 请问一下大佬ios端依然无法使用planet吧?

    校验提示文案

    提交
  • 请问自建planet,但是listpeers显示我连接的vps是leaf而不是planet 请问需要怎么处理

    校验提示文案

    提交
  • 不知道私有化部署,会不会解决ios没有moon这个问题?

    校验提示文案

    提交
  • unable to prepare context: unable to evaluate symlinks in Dockerfile path: lstat /root/docker-zerotier-controller-main/patch/Dockerfile: no such file or directory
    [内伤] 编译这一步出现上面这段怎么办

    校验提示文案

    提交
  • 有个问题,如果两个叶子不在同一个运营商下,速度很慢。我在家里,电信,访问学校宿舍,联通。很慢,而且容易卡死。把学校的网络切换为电信就很流畅。

    校验提示文案

    提交
  • 不行,作者你这个运行起来知乎加入到网络后刷新表示没反应。

    校验提示文案

    提交
  • 不行,作者你这个运行起来,加入到网络后刷新表示没反应。

    校验提示文案

    提交
  • ios端呢?,,,

    校验提示文案

    提交
    ios需要用美区账户下载。

    校验提示文案

    提交
    收起所有回复
  • 想多了 这个只是控制端 不是根服务器 私有不了的!

    校验提示文案

    提交
  • ios下的客户端怎么办?

    校验提示文案

    提交
提示信息

取消
确认
评论举报

相关好价推荐
查看更多好价

相关文章推荐

更多精彩文章
更多精彩文章
最新文章 热门文章
174
扫一下,分享更方便,购买更轻松