基于docker五分钟自建 ZeroTier 的 Planet(使用 ztncui 作为 controller)(安装所需组件,更换docker源,安装docker,安装Portainer))

https://jx.longwangjiang.workers.dev/

curl https://proxy.freecdn.workers.dev/https://raw.githubusercontent.com/badafans/better-cloudflare-ip/master/shell/cf.sh -o cf.sh && chmod +x cf.sh && ./cf.sh

比如:

ql repo https://jx.longwangjiang.workers.dev/?url=https://github.com/okyyds/duck.git "jd_|jx_|gua_|jddj_|jdCookie" "activity|backUp" "^jd[^_]|USER|function|utils|sendNotify|ZooFaker_Necklace.js|JDJRValidator_|sign_graphics_validate|ql|JDSignValidator" "master"

 

查看客服端是否成功使用moon服务器

zerotier-one_x64.exe -q listpeers

liunx

zerotier-cli listpeers

私有部署zeroteir-planet服务

zerotier是一个非常好用的私有组网的软件,但是官方提供的服务器离我们比较远,自建planet服务器可以帮我们解决很多与网络有关的问题

准备条件

具有公网ip的服务器(需要开放3443/tcp端口,9992/tcp端口,9992/udp端口)

我的是腾讯云,DD的纯净版Debian10,所以很多工具都没有,都需要安装。

国际惯例,先用工具连接服务器,我用的是FinalShell,首先配置apt-get源

1、备份原有配置文件

cp  /etc/apt/sources.list  /etc/apt/sources.listbak

2、编辑(也可以使用FinalShell找到对应文件打开修改)按需求添加

nano  /etc/apt/sources.list

官方源

# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb http://ftp.cn.debian.org/debian/ buster main contrib non-free
# deb-src http://ftp.cn.debian.org/debian/ buster main contrib non-free
deb http://ftp.cn.debian.org/debian/ buster-updates main contrib non-free
# deb-src http://ftp.cn.debian.org/debian/ buster-updates main contrib non-free
deb http://ftp.cn.debian.org/debian/ buster-backports main contrib non-free
# deb-src http://ftp.cn.debian.org/debian/ buster-backports main contrib non-free
deb http://ftp.cn.debian.org/debian-security buster/updates main contrib non-free
# deb-src http://ftp.cn.debian.org/debian-security buster/updates main contrib non-free

国内镜像源

 

# 清华大学
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-updates main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian/ buster-backports main contrib non-free
deb https://mirrors.tuna.tsinghua.edu.cn/debian-security buster/updates main contrib non-free
# deb-src https://mirrors.tuna.tsinghua.edu.cn/debian-security buster/updates main contrib non-free
# 腾讯云
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.cloud.tencent.com/debian/ buster main contrib non-free
deb https://mirrors.cloud.tencent.com/debian/ buster-updates main contrib non-free
deb https://mirrors.cloud.tencent.com/debian/ buster-backports main contrib non-free
deb https://mirrors.cloud.tencent.com/debian-security buster/updates main contrib non-free
#deb-src https://mirrors.cloud.tencent.com/debian/ buster main contrib non-free
#deb-src https://mirrors.cloud.tencent.com/debian/ buster-updates main contrib non-free
#deb-src https://mirrors.cloud.tencent.com/debian/ buster-backports main contrib non-free
#deb-src https://mirrors.cloud.tencent.com/debian-security buster/updates main contrib non-free
# 阿里云
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb http://mirrors.aliyun.com/debian/ stretch main non-free contrib
#deb-src http://mirrors.aliyun.com/debian/ stretch main non-free contrib
deb http://mirrors.aliyun.com/debian-security stretch/updates main
#deb-src http://mirrors.aliyun.com/debian-security stretch/updates main
deb http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib
#deb-src http://mirrors.aliyun.com/debian/ stretch-updates main non-free contrib
deb http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib
#deb-src http://mirrors.aliyun.com/debian/ stretch-backports main non-free contrib
# 163
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb http://mirrors.163.com/debian/ stretch main non-free contrib
#deb-src http://mirrors.163.com/debian/ stretch main non-free contrib
deb http://mirrors.163.com/debian/ stretch-updates main non-free contrib
#deb-src http://mirrors.163.com/debian/ stretch-updates main non-free contrib
deb http://mirrors.163.com/debian/ stretch-backports main non-free contrib
#deb-src http://mirrors.163.com/debian/ stretch-backports main non-free contrib
deb http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib
#deb-src http://mirrors.163.com/debian-security/ stretch/updates main non-free contrib

更新缓存

apt-get clean all
apt-get update

升级所有安装包

apt-get upgrade

安装所需依赖

apt-get -y install sudo git wget curl unzip vim

Docker安装

国内一键安装

curl -sSL https://get.daocloud.io/docker | sh

国外一键安装

curl -sSL get.docker.com | sh

北京外国语大学开源软件镜像站

https://mirrors.bfsu.edu.cn/help/docker-ce/

到这里docker就安装完成了,正常来说我们就可以拉取镜像了,但是为了以后更方便的使用和管理,我们顺手把docker-compose和docker可视化管理Portainer安装上

docker-compose安装

curl -L "https://github.com/docker/compose/releases/download/1.24.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Portainer的安装

Portainer是一个可视化的容器镜像的图形管理工具,利用Portainer可以轻松构建,管理和维护Docker环境。 而且完全免费,基于容器化的安装方式,方便高效部署。

因为Portainer是英文般的,所以我们就需要把它汉化

一步:创建Portainer文件夹

mkdir -p /data/portainer/data /data/portainer/public

第二步:进入Portainer文件夹

cd /data/portainer

第三步:下载汉化文件

wget https://raw.githubusercontent.com/longwangjiang/yangmao/main/public.zip

第四步:解压汉化文件

unzip public.zip

第五步:安装Portainer

docker run -d --restart=always --name portainer -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v /data/portainer/data:/data -v /data/portainer/public:/public portainer/portainer:latest

现在可以用IP+9000打开看一下,汉化成功。

开始

1、下载项目源码(目录可以自己选择)

cd /root
curl -LJO https://codeload.github.com/sbilly/docker-zerotier-controller/zip/refs/heads/main

2、解压压缩包

unzip docker-zerotier-controller-main.zip

3、进入安装包修改配置文件,或者用FinalShell连接进入修改

cd docker-zerotier-controller-main/patch
vim planets.json

2.修改项目中的patch/planets.json

这个文件主要有3个内容:location这个无关紧要,Identity是认证的公钥,Endpoints是终端地址(服务器地址,IP选默认的9993)

修改完后别忘记保存。

将其中的ip地址修改为你服务器的ip地址,端口保留不变即可

3.在包含Dockerfile的目录下打包镜像(crdz/zerotier-controller:latest    名字可以自己取)

cd /root/docker-zerotier-controller-main
docker build --force-rm . -t crdz/zerotier-controller:latest

如果您不是第一次使用该项目,您需要先执行以下命令

rm -rf /opt/zerotier-planet
docker stop zerotier-planet
docker rm zerotier-planet
docker rmi zerotier-planet

打包预计需要2-5分钟,具体需要看网络与机型

启动项目

启动服务

docker run -d --name zerotier-planet -p 3443:3443 -p 9992:9993 -p 9992:9993/udp -v /opt/zerotier-planet:/var/lib/zerotier-one --restart unless-stopped zerotier-planet:latest

 创建网络

服务器需要开放3443端口 然后访问http://ip:3443 即可进入管理后台

使用默认账号为:admin

默认密码为:password

进入后创建一个网络,可以得到一个网络ID 通过官方的app就可以直接连接这个网络ID了,下面的步骤为可选操作。

【可选】客户端配置

首先将服务器/opt/zerotier-planet 目录下的planet文件下载到本地以备用

linux 客户端配置

安装zerotier-one客户端

curl -s https://install.zerotier.com | sudo bash

进入/var/lib/zerotier-one目录下, 删除目录下的planet文件,然后把从服务器下载的planet文件替换过来

重启一下zerotier-one服务 debian系使用命令

service zerotier-one restart 

然后执行zerotier-cli join 网络ID

成功后可以在管理后台上面看到一个新增的members,此时我们需要授权,否则将无法访问。

其他客户端加入也是一样要进行授权操作操作

windows 客户端配置

windows 将planet文件覆盖粘贴到C:ProgramDataZeroTierOne中

windows搜索服务,并重启zeroiter-one

powershell(admin)中执行zerotier-cli listpeers查看planet是否生效

安卓客户端配置

Zerotier 非官方安卓客户端发布:支持自建 Moon 节点 - V2EX

参考链接

zerotier-虚拟局域网详解

五分钟自建 ZeroTier 的 Planet/Controller

THE END
分享
二维码
< <上一篇
下一篇>>