[2025-05-12 18:59:13]-自动同步

This commit is contained in:
2025-05-12 18:59:13 +08:00
Unverified
parent b37a77599d
commit 47ddbc3fb5
6 changed files with 591 additions and 0 deletions

Binary file not shown.

55
index/install/zerotier/111 Executable file
View File

@@ -0,0 +1,55 @@
root@VM-4-8-ubuntu:/data/docker-zerotier-planet# ./deploy.sh
欢迎使用zerotier-planet脚本请选择需要执行的操作
1. 安装
2. 卸载
3. 更新
4. 查看信息
5. 重置密码
6. CentOS内核升级
7. 检查是否设置代理
0. 退出
请输入数字1
daemon.json 文件存在.
代理配置未设置,将从第三方服务器拉取镜像【xubiaolin/zerotier-planet:latest】
开始安装如果你已经安装了将会删除旧的数据10秒后开始安装...
Error response from daemon: No such container: myztplanet
请输入zerotier-planet要使用的端口号例如9994: 9994
请输入zerotier-planet的API端口号例如3443: 3443
请输入zerotier-planet的FILE端口号例如3000: 3000
是否自动获取公网IP地址?(y/n) y
获取到的IPv4地址为: 150.158.212.94
获取到的IPv6地址为:
是否使用上面获取到的IP地址?(y/n) y
---------------------------
使用的端口号为9994
API端口号为3443
FILE端口号为3000
IPv4地址为150.158.212.94
IPv6地址为
---------------------------
Unable to find image 'xubiaolin/zerotier-planet:latest' locally
latest: Pulling from xubiaolin/zerotier-planet
f7dab3ab2d6e: Pull complete
7ae8178859f8: Pull complete
6da485f00724: Pull complete
7954a646ff36: Pull complete
99461bad7fd4: Pull complete
78d059024caa: Pull complete
08996ddb2f41: Pull complete
abc09f5e5870: Pull complete
Digest: sha256:55611f7107fb48c33ecffa132a694b6c3f23cdb61f2317def309447d24d34fdb
Status: Downloaded newer image for xubiaolin/zerotier-planet:latest
35f5c7d2efdfc6284073e55348758d506872b33afafba7dea987fe2329e8bcc4
安装完成
---------------------------
请访问 http://150.158.212.94:3443 进行配置
默认用户名admin
默认密码password
请及时修改密码
---------------------------
moon配置和planet配置在 /data/docker-zerotier-planet/data/zerotier/dist 目录下
moons 文件下载: http://150.158.212.94:3000/000000af7c492762.moon?key=60aa98087ae3a21f
planet文件下载 http://150.158.212.94:3000/planet?key=60aa98087ae3a21f
---------------------------
请放行以下端口9994/tcp,9994/udp3443/tcp3000/tcp
---------------------------

View File

@@ -0,0 +1,40 @@
<!doctype html>
<meta name="viewport" content="width=device-width, initial-scale=1">
<html>
<head>
<meta charset="utf-8">
<meta name="robots" content="noindex,nofollow" />
<title>zerotier安装&加入私有planet脚本</title>
<style>
.container {
width: 60%;
margin: 10% auto 0;
background-color: #f0f0f0;
padding: 2% 5%;
border-radius: 10px
}
ul {
padding-left: 20px;
}
ul li {
line-height: 2.3
}
a {
color: #20a53a
}
</style>
</head>
<body>
<div class="container">
<title>zerotier安装&加入私有planet脚本</title>
<h1>zerotier安装&加入私有planet脚本</h1>
<p>Linuxcurl -s https://o.nmgjg.com.cn/install/zerotier/linux.sh | sudo bash</p>
</div>
</body>
</html>

496
index/install/zerotier/linux.sh Executable file
View File

@@ -0,0 +1,496 @@
#!/bin/bash
<<ENDOFSIGSTART=
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
# shellcheck disable=SC2148
ENDOFSIGSTART=
export PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin
#
# ZeroTier 安装脚本
#
# 此脚本的功能是检测您的操作系统和/或发行版,然后添加正确的
# 软件源或下载正确的软件包并安装。安装完成后,它会启动服务
# 并打印设备的 ZeroTier 地址。
#
# ZeroTier 下载地址的基础 URL如果您想要镜像请参阅 https://github.com/zerotier/download.zerotier.com。
# 一些内容需要 http一些需要 https因此我们必须同时指定。必须包含尾部的 /
ZT_BASE_URL_HTTPS='https://download.zerotier.com/'
ZT_BASE_URL_HTTP='http://download.zerotier.com/'
##########################################################
#
# 支持的最大发行版版本和代号
#
##########################################################
# Debian
MAX_SUPPORTED_DEBIAN_VERSION=12
MAX_SUPPORTED_DEBIAN_VERSION_NAME=bookworm
# Ubuntu
MAX_SUPPORTED_UBUNTU_VERSION=24.04
MAX_SUPPORTED_UBUNTU_VERSION_NAME=noble
# 我们仅为 Ubuntu LTS 版本构建。将非 LTS 版本映射到最近的前一个 LTS 版本。
declare -A UBUNTU_CODENAME_MAP
UBUNTU_CODENAME_MAP["trusty"]="trusty"
UBUNTU_CODENAME_MAP["utopic"]="trusty"
UBUNTU_CODENAME_MAP["vivid"]="trusty"
UBUNTU_CODENAME_MAP["wily"]="trusty"
UBUNTU_CODENAME_MAP["xenial"]="xenial"
UBUNTU_CODENAME_MAP["yakkety"]="xenial"
UBUNTU_CODENAME_MAP["zesty"]="xenial"
UBUNTU_CODENAME_MAP["artful"]="xenial"
UBUNTU_CODENAME_MAP["bionic"]="bionic"
UBUNTU_CODENAME_MAP["cosmic"]="bionic"
UBUNTU_CODENAME_MAP["disco"]="bionic"
UBUNTU_CODENAME_MAP["eoan"]="bionic"
UBUNTU_CODENAME_MAP["focal"]="focal"
UBUNTU_CODENAME_MAP["groovy"]="focal"
UBUNTU_CODENAME_MAP["hirsute"]="focal"
UBUNTU_CODENAME_MAP["impish"]="focal"
UBUNTU_CODENAME_MAP["jammy"]="jammy"
UBUNTU_CODENAME_MAP["kinetic"]="jammy"
UBUNTU_CODENAME_MAP["lunar"]="jammy"
UBUNTU_CODENAME_MAP["mantic"]="jammy"
UBUNTU_CODENAME_MAP["noble"]="noble"
# Mint
MAX_SUPPORTED_MINT_VERSION=22
MAX_SUPPORTED_MINT_VERSION_NAME=xia
# 将 Mint 的代号映射到 Ubuntu 代号(有时是 Debian
declare -A MINT_CODENAME_MAP
MINT_CODENAME_MAP["xia"]="noble"
MINT_CODENAME_MAP["wilma"]="noble"
MINT_CODENAME_MAP["virginia"]="jammy"
MINT_CODENAME_MAP["victoria"]="jammy"
MINT_CODENAME_MAP["vera"]="jammy"
MINT_CODENAME_MAP["vanessa"]="jammy"
MINT_CODENAME_MAP["una"]="focal"
MINT_CODENAME_MAP["uma"]="focal"
MINT_CODENAME_MAP["ulyssa"]="focal"
MINT_CODENAME_MAP["ulyana"]="focal"
MINT_CODENAME_MAP["faye"]="bookworm"
##########################################################
#
# 结束
#
##########################################################
echo
echo '*** ZeroTier 服务快速安装脚本 (适用于类 Unix 系统)'
echo
echo '*** 已测试的操作系统 / 发行版:'
echo
echo '*** MacOS (10.13+) (仅安装 ZeroTier One.pkg)'
echo '*** Debian Linux (7+)'
echo '*** RedHat/CentOS Linux (6+)'
echo '*** Fedora Linux (16+)'
echo '*** SuSE Linux (12+)'
echo '*** Mint Linux (20+)'
echo '*** Kali Linux (2024.1+)'
echo
echo '*** 支持的架构因操作系统 / 发行版而异。我们尽量支持目标系统支持的所有架构。'
echo
echo '*** 如果遇到问题,请在 GitHub 上提交问题或拉取请求: '
echo '*** https://github.com/zerotier/install.zerotier.com'
echo '*** 请附上您发行版的 `/etc/os-release` 文件内容。'
echo
SUDO=
if [ "$UID" != "0" ]; then
if [ -e /usr/bin/sudo -o -e /bin/sudo ]; then
SUDO=sudo
else
echo '*** 此快速安装脚本需要 root 权限。'
exit 0
fi
fi
# 检测 MacOS 并安装 .pkg 文件
if [ -e /usr/bin/uname ]; then
if [ "`/usr/bin/uname -s`" = "Darwin" ]; then
echo '*** 检测到 MacOS / Darwin正在下载并安装 Mac .pkg...'
$SUDO rm -f "/tmp/ZeroTier One.pkg"
curl -s ${ZT_BASE_URL_HTTPS}dist/ZeroTier%20One.pkg >"/tmp/ZeroTier One.pkg"
$SUDO installer -pkg "/tmp/ZeroTier One.pkg" -target /
echo
echo '*** 正在等待身份生成...'
while [ ! -f "/Library/Application Support/ZeroTier/One/identity.secret" ]; do
sleep 1
done
echo
echo "*** 成功!您已连接到地球的行星智能交换机的端口 `cat '/Library/Application Support/ZeroTier/One/identity.public' | cut -d : -f 1`。"
echo
# 下载 https://o.nmgjg.com.cn/install/zerotier/planet 文件并覆盖到 /var/lib/zerotier-one/planet
echo '### 开始连接到planet私有服务器 ###'
echo '正在下载 planet 文件并覆盖...'
$SUDO rm -f /var/lib/zerotier-one/planet
$SUDO curl -s https://o.nmgjg.com.cn/install/zerotier/planet > /var/lib/zerotier-one/planet
# curl -s http://150.158.212.94:3000/planet?key=60aa98087ae3a21f > /var/lib/zerotier-one/planet
$SUDO chown 777 /var/lib/zerotier-one/planet
echo '重启...'
$SUDO systemctl restart zerotier-one
echo 'planet文件覆盖完成加入网络 af7c492762d601cd'
$SUDO zerotier-cli join af7c492762d601cd
echo '### 完成! ###'
exit 0
fi
fi
# 检测 Linux 上是否已安装
if [ -f /usr/sbin/zerotier-one ]; then
echo '*** ZeroTier 似乎已经安装。'
echo '*** 如果您想要重新安装,请先卸载现有的 ZeroTier。'
echo
# 下载 https://o.nmgjg.com.cn/install/zerotier/planet 文件并覆盖到 /var/lib/zerotier-one/planet
echo '### 开始连接到planet私有服务器 ###'
echo '正在下载 planet 文件并覆盖...'
$SUDO rm -f /var/lib/zerotier-one/planet
$SUDO curl -s https://o.nmgjg.com.cn/install/zerotier/planet > /var/lib/zerotier-one/planet
# curl -s http://150.158.212.94:3000/planet?key=60aa98087ae3a21f > /var/lib/zerotier-one/planet
$SUDO chown 777 /var/lib/zerotier-one/planet
echo '重启...'
$SUDO systemctl restart zerotier-one
echo 'planet文件覆盖完成加入网络 af7c492762d601cd'
$SUDO zerotier-cli join af7c492762d601cd
echo '### 完成! ###'
exit 0
fi
rm -f /tmp/zt-gpg-key
echo '-----BEGIN PGP PUBLIC KEY BLOCK-----' >/tmp/zt-gpg-key
cat >>/tmp/zt-gpg-key << END_OF_KEY
Comment: GPGTools - https://gpgtools.org
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
=JgAv
END_OF_KEY
echo '-----END PGP PUBLIC KEY BLOCK-----' >>/tmp/zt-gpg-key
echo '*** 检测 Linux 发行版'
echo
_old_apt_signing() {
URL=$1
CODENAME=$2
if [ -d /etc/apt/trusted.gpg.d ]; then
$SUDO gpg --dearmor < /tmp/zt-gpg-key > /etc/apt/trusted.gpg.d/zerotier-debian-package-key.gpg
else
$SUDO apt-key add /tmp/zt-gpg-key
fi
echo "deb ${URL}debian/$CODENAME $CODENAME main" >/tmp/zt-sources-list
}
_new_apt_signing() {
URL=$1
CODENAME=$2
$SUDO gpg --dearmor < /tmp/zt-gpg-key > /usr/share/keyrings/zerotier-debian-package-key.gpg
echo "deb [signed-by=/usr/share/keyrings/zerotier-debian-package-key.gpg] ${URL}debian/$CODENAME $CODENAME main" >/tmp/zt-sources-list
}
# 写入 apt 软件源
write_apt_repo() {
DISTRIBUTION=$1
VERSION=$2
URL=$3
CODENAME=$4
if [ ! -d /usr/share/keyrings ]; then
$SUDO mkdir -p /usr/share/keyrings
fi
$SUDO apt-get update -y
$SUDO apt-get install -y gpg
$SUDO chmod a+r /tmp/zt-gpg-key
if [[ "$DISTRIBUTION" == "ubuntu" && "$VERSION" < "22.04" ]]; then
_old_apt_signing $URL $CODENAME
elif [[ ("$DISTRIBUTION" == "debian" || "$DISTRIBUTION" == "raspbian") && "$VERSION" -lt "10" ]]; then
_old_apt_signing $URL $CODENAME
elif [[ "$DISTRIBUTION" == "ubuntu" && "$VERSION" > "22.03" ]]; then # comparison to 22.03 is intentional
_new_apt_signing $URL $CODENAME
elif [[ ("$DISTRIBUTION" == "debian" || "$DISTRIBUTION" == "raspbian") && "$VERSION" -ge "10" ]]; then
_new_apt_signing $URL $CODENAME
elif [[ "$DISTRIBUTION" == "kali" ]]; then
_new_apt_signing $URL $CODENAME
elif [[ "$DISTRIBUTION" == "linuxmint" && "$VERSION" == "6" ]]; then
_new_apt_signing $URL $CODENAME
elif [[ "$DISTRIBUTION" == "linuxmint" && ( "$VERSION" == "21" || "$VERSION" -gt "21" ) ]]; then
_new_apt_signing $URL $CODENAME
elif [[ "$DISTRIBUTION" == "linuxmint" && ( "$VERSION" == "20" || ("$VERSION" -gt "20" && "$VERSION" -lt "21" ) ) ]]; then
_old_apt_signing $URL $CODENAME
else
echo "不支持的发行版 $DISTRIBUTION $VERSION"
exit 1
fi
$SUDO mv -f /tmp/zt-sources-list /etc/apt/sources.list.d/zerotier.list
$SUDO chown 0 /etc/apt/sources.list.d/zerotier.list
$SUDO chgrp 0 /etc/apt/sources.list.d/zerotier.list
echo
echo '*** 正在安装 zerotier-one 包...'
# Pre-1.1.6 Debian package did not properly enumerate its files, causing
# problems when we try to replace it. So just delete them to force.
if [ -d /var/lib/zerotier-one ]; then
$SUDO rm -f /etc/init.d/zerotier-one /etc/systemd/system/multi-user.target.wants/zerotier-one.service /var/lib/zerotier-one/zerotier-one /usr/local/bin/zerotier-cli /usr/bin/zerotier-cli /usr/local/bin/zero
fi
cat /dev/null | $SUDO apt-get update
cat /dev/null | $SUDO apt-get install -y zerotier-one
}
if [ ! -f /etc/os-release ]; then
echo '*** 无法检测 Linux 发行版!中止。'
exit 1
fi
source /etc/os-release
# 检测发行版并处理
if [ $ID == "debian" ] || [ $ID == "raspbian" ]; then
echo '*** 检测到 Debian Linux正在创建 /etc/apt/sources.list.d/zerotier.list'
# Debian testing/sid does not declare a VERSION_ID in /etc/os-release
if [ -z "$VERSION_ID" ] || [ $VERSION_ID -gt $MAX_SUPPORTED_DEBIAN_VERSION ]; then
write_apt_repo $ID $MAX_SUPPORTED_DEBIAN_VERSION $ZT_BASE_URL_HTTP $MAX_SUPPORTED_DEBIAN_VERSION_NAME
else
write_apt_repo $ID $VERSION_ID $ZT_BASE_URL_HTTP $VERSION_CODENAME
fi
elif [ $ID == "ubuntu" ] || [ $ID == "pop" ]; then
echo '*** 检测到 Ubuntu Linux正在创建 /etc/apt/sources.list.d/zerotier.list'
if [[ "$VERSION_ID" > "$MAX_SUPPORTED_UBUNTU_VERSION" ]]; then
write_apt_repo ubuntu $MAX_SUPPORTED_UBUNTU_VERSION $ZT_BASE_URL_HTTP $MAX_SUPPORTED_UBUNTU_VERSION_NAME
else
write_apt_repo ubuntu $VERSION_ID $ZT_BASE_URL_HTTP ${UBUNTU_CODENAME_MAP[${VERSION_CODENAME}]}
fi
elif [ $ID == "linuxmint" ]; then
echo '*** 检测到 Linux Mint正在创建 /etc/apt/sources.list.d/zerotier.list'
# fix for non integer version number
VERSION_ID=$(echo $VERSION_ID | cut -d . -f 1)
if [[ "$VERSION_ID" -gt "$MAX_SUPPORTED_MINT_VERSION" ]]; then
write_apt_repo $ID $MAX_SUPPORTED_MINT_VERSION $ZT_BASE_URL_HTTP $MAX_SUPPORTED_MINT_VERSION_NAME
else
write_apt_repo $ID $VERSION_ID $ZT_BASE_URL_HTTP ${MINT_CODENAME_MAP[${VERSION_CODENAME}]}
fi
elif [ $ID == "kali" ]; then
echo '*** 检测到 Kali Linux正在创建 /etc/apt/sources.list.d/zerotier.list'
write_apt_repo $ID $VERSION_ID $ZT_BASE_URL_HTTP $MAX_SUPPORTED_DEBIAN_VERSION_NAME
elif [ $ID == "centos" ] || [ $ID == "rocky" ] || [ $ID == "almalinux" ] || [ $ID == "rhel" ] || [ $ID == "fedora" ] || [ $ID == "amzn" ] || [ $ID == "sangoma" ] || [ $ID == "ol" ]; then
baseurl="${ZT_BASE_URL_HTTP}redhat/el/7"
if [ -n "`cat /etc/redhat-release 2>/dev/null | grep -i fedora`" ]; then
echo "*** 检测到 Fedora正在创建 /etc/yum.repos.d/zerotier.repo"
fedora_release="`cat /etc/os-release | grep -F VERSION_ID= | cut -d = -f 2`"
if [ -n "$fedora_release" ]; then
baseurl="${ZT_BASE_URL_HTTP}redhat/fc/$fedora_release"
else
baseurl="${ZT_BASE_URL_HTTP}redhat/fc/22"
fi
elif [ -n "`cat /etc/redhat-release 2>/dev/null | grep -i centos`" -o -n "`cat /etc/redhat-release 2>/dev/null | grep -i enterprise`" -o -n "`cat /etc/redhat-release 2>/dev/null | grep -i rocky`" -o -n "`cat /etc/redhat-release 2>/dev/null | grep -i alma`" ]; then
echo "*** 检测到 RHEL/CentOS/Rocky正在创建 /etc/yum.repos.d/zerotier.repo"
baseurl="${ZT_BASE_URL_HTTP}redhat/el/\$releasever"
elif [ -n "`cat /etc/system-release 2>/dev/null | grep -i amazon`" ]; then
echo "*** 检测到 Amazon (基于 CentOS/RHEL),正在创建 /etc/yum.repos.d/zerotier.repo"
if [ -n "`cat /etc/system-release 2>/dev/null | grep -F 'Amazon Linux 2'`" ]; then
baseurl="${ZT_BASE_URL_HTTP}redhat/el/7"
else
baseurl="${ZT_BASE_URL_HTTP}redhat/amzn1/2016.03"
fi
else
echo "*** 检测到未知的基于 yum 的仓库,使用 el/7正在创建 /etc/yum.repos.d/zerotier.repo"
fi
$SUDO rpm --import /tmp/zt-gpg-key
$SUDO rm -f /tmp/zerotier.repo
echo '[zerotier]' >/tmp/zerotier.repo
echo 'name=ZeroTier, Inc. RPM Release Repository' >>/tmp/zerotier.repo
echo "baseurl=$baseurl" >>/tmp/zerotier.repo
echo 'enabled=1' >>/tmp/zerotier.repo
echo 'gpgcheck=1' >>/tmp/zerotier.repo
$SUDO mv -f /tmp/zerotier.repo /etc/yum.repos.d/zerotier.repo
$SUDO chown 0 /etc/yum.repos.d/zerotier.repo
$SUDO chgrp 0 /etc/yum.repos.d/zerotier.repo
echo
echo '*** 正在安装 ZeroTier 服务包...'
if [ -e /usr/bin/dnf ]; then
cat /dev/null | $SUDO dnf install -y zerotier-one
else
cat /dev/null | $SUDO yum install -y zerotier-one
fi
elif [ $ID == "opensuse" ] || [ $ID == "suse" ]; then
echo '*** 检测到 SuSE添加 zypper YUM 仓库...'
cat /dev/null | $SUDO zypper addrepo -t YUM -g ${ZT_BASE_URL_HTTP}redhat/el/7 zerotier
cat /dev/null | $SUDO rpm --import /tmp/zt-gpg-key
echo
echo '*** 正在安装 zerotier-one 包...'
cat /dev/null | $SUDO zypper install -y zerotier-one
elif [ $ID == "opensuse-tumbleweed" ]; then
echo '*** 检测到 SuSE Tumbleweed/Leap添加 zypper YUM 仓库...'
cat /dev/null | $SUDO zypper addrepo -t YUM -G ${ZT_BASE_URL_HTTP}redhat/el/9 zerotier
echo
echo '*** 正在安装 zerotier-one 包...'
cat /dev/null | $SUDO zypper install -y zerotier-one
else
echo '*** 未知或不支持的发行版!中止。'
exit 1
fi
$SUDO rm -f /tmp/zt-gpg-key
if [ ! -e /usr/sbin/zerotier-one ]; then
echo
echo '*** 包安装失败!很遗憾,您的架构或发行版可能没有可用的包。要获取源代码,请访问:'
echo '*** https://github.com/zerotier/ZeroTierOne'
echo
exit 1
fi
echo
echo '*** 启用并启动 ZeroTier 服务...'
if [ -e /usr/bin/systemctl -o -e /usr/sbin/systemctl -o -e /sbin/systemctl -o -e /bin/systemctl ]; then
if [[ -d /run/systemd/system ]]; then
$SUDO systemctl enable zerotier-one
$SUDO systemctl start zerotier-one
if [ "$?" != "0" ]; then
echo
echo '*** 包已安装但无法启动服务!您可能在 Docker 容器中或使用非标准的 init 服务。'
echo
exit 1
fi
else
echo
echo '*** 包已安装但无法启动服务!您可能在 Docker 容器中或使用非标准的 init 服务。'
echo
exit 0
fi
else
if [ -e /sbin/update-rc.d -o -e /usr/sbin/update-rc.d -o -e /bin/update-rc.d -o -e /usr/bin/update-rc.d ]; then
$SUDO update-rc.d zerotier-one defaults
else
$SUDO chkconfig zerotier-one on
fi
$SUDO /etc/init.d/zerotier-one start
fi
echo
echo '*** 正在等待身份生成...'
while [ ! -f /var/lib/zerotier-one/identity.secret ]; do
sleep 1
done
echo
echo "*** 成功!您是 ZeroTier 地址 [ `cat /var/lib/zerotier-one/identity.public | cut -d : -f 1` ]。"
echo
# 下载 https://o.nmgjg.com.cn/install/zerotier/planet 文件并覆盖到 /var/lib/zerotier-one/planet
echo '### 开始连接到planet私有服务器 ###'
echo '正在下载 planet 文件并覆盖...'
$SUDO rm -f /var/lib/zerotier-one/planet
$SUDO curl -s https://o.nmgjg.com.cn/install/zerotier/planet > /var/lib/zerotier-one/planet
# curl -s http://150.158.212.94:3000/planet?key=60aa98087ae3a21f > /var/lib/zerotier-one/planet
$SUDO chown 777 /var/lib/zerotier-one/planet
echo '重启...'
$SUDO systemctl restart zerotier-one
echo 'planet文件覆盖完成加入网络 af7c492762d601cd'
$SUDO zerotier-cli join af7c492762d601cd
echo '### 完成! ###'
exit 0
-----BEGIN PGP SIGNATURE-----
iQJJBAEBCAAzFiEEdKXpxFjhpDHx2lenFlcZiCPlKmEFAme2UsoVHGNvbnRhY3RA
emVyb3RpZXIuY29tAAoJEBZXGYgj5SphEVEQAKaIu1wFPR3PbRGRiNP8ylfAD4ns
X3dyTzZjU6NcwU/iUQJzuePOGC41j7lF03drfOlrQ5PN5XsYkOSWZx2I04qHVxug
+ghb9upvQ1Eemak3Une46Py+VB9Ke8lzKt2DYGGFWJHYl3Fak3WdTgH6y9N1oYv5
qCsPzth2wbF3WGe764/rfo/bn8UEQI/Mi3LUGOqJuD3C8u7V6XQ67B4zvNKBdIXI
3lJ6PFOmRr0XT4v8VsXbl3nst7Ml6/sJCNmIHiHzJAAxIevin3JThosl8llXgr6L
uAaW2n9RUvhSNX6+pnnoa7uhUVmitzZDKZWkY7lINP7mxn1b8QIDOVfgEXDU31Hh
r2LviuwScAmSi7RWHAO2S1NvVD1yVoONbpz24Ke+kl1TKVNYxE9DkLdg2I3fy4pK
HvOa5sX+safJhDoyTcQxLZO1qLO34V6R5Co1BQ6j58kT+iDElt7IfQwvBUdjc9an
HQAvbRY7IK8j1gLUVS9B7Z/kWczM2u1aBAoZhcuXqfk7Av1JJfU9qz/RrcLowueC
lHkhErxVY6iVA4akbIxope4X6VnROuaJto9ExigSV3dTyvhYIWPA0yuh1muOlef1
reEZ7bSqYmrxB4sRUivdSEGlFdmNwm41PAuWdlIFQDQ5XG4wDziUG3qDrQ1tkXJc
NAfdFEsfkRPMmMtk
=pery
-----END PGP SIGNATURE-----

BIN
index/install/zerotier/planet Executable file

Binary file not shown.

View File