给OpenVZ的VPS安装Zerotier-One

操作系统 · 2021-08-17

前言

今天就突发奇想给自己的所有美国VPS安装上Zerotier
KVM和LXC架构的VPS都成功安装上了 加到组里面也能用
然鹅到了OVZ时 安装上却就用不了 网卡也没有Zerotier

安装Zerotier-One

直接命令行运行 xxx替换成自己的Network ID

curl -s https://install.zerotier.com/ | sudo bash
sudo systemctl enable zerotier-one.service
sudo systemctl start zerotier-one.service
sudo zerotier-cli join xxx

查漏

给OVZ的VPS安装完了后 我试了试ping同一ZT内网的其他VPS
然后输出Destination Host Unreachable
我就想着会不会是系统禁用了一些功能
然后Google了一下,在X-osadmin的博客找到了这几条命令

cp /etc/sysctl.conf /etc/sysctl.conf.bak
echo "
net.ipv4.ip_forward = 1
net.ipv4.conf.default.rp_filter = 0
net.ipv4.conf.all.rp_filter = 0
net.ipv4.conf.eth0.rp_filter = 0" >> /etc/sysctl.conf

然后sysctl -p保存一手
再次ping另一台VPS 不出所料 还是一样的报错
然后我看了看ZT的运行状态(输入systemctl status zerotier-one
运行的确在运行,但是却输出了一条错误
ERROR: unable to configure virtual network port: could not open TUN/TAP device: No such file or directory
看来是TUN/TAP的问题 但是我明明记得我开了TUN/TAP
然后我到SolusVM关闭又开启了TUN 再重启VPS
依旧是那熟悉的报错,问题并没有解决
世上无难事 只怕有心人
我去ZT的Github issue找了找 发现这个问题很多人也出现过

补缺

不断翻阅和查找issue,终于让我找到了解决方法
zerotierone doesn't create dev zt0 on debian 8 with OpenVPN-Server installed.
一条条往下翻,看到很多人都说是权限问题
我就依照反馈给/dev/net/tun设置了个600的权限(输入chmod 600 /dev/net/tun
发现status中依旧报错,继续翻,突然有人设置个777成功了
我也设置个777 然后——成功启动了Zerotier-One
但是777并不安全,issue中有位大佬也是这样认为,下面复制一段原文

Please don't 777 the /dev/net these are safer alternatives:

chmod 755 /dev/net
chmod 666 /dev/net/tun

原来就只是一个简简单单的权限问题,之前一直没有这种经验,也并没有想到这一点

查漏补缺2

这个补缺失败了,依旧用不了,可能是内核版本太低了

给另一个OVZ的VPS安装Zerotier-One时
又出现了一个问题——
运行脚本到关于验证的地方就卡住了
输出*** Waiting for identity generation...
直接ctrl+c退出,输入apt purge zerotier*卸载ZT
我这次直接到issue里找解决方法,又双叒叕有...
Raspberry Pi Zero W 1.4.2 precompiled binary does not work
抄一段原文

Older debs can be found here https://download.zerotier.com/debian/stretch/pool/main/z/zerotier-one/

我们到上面这个链接去下载一个旧版本
我下的是zerotier-one_1.4.0_amd64.deb
然后命令行输入dpkg -i zerotier-one_1.4.0_amd64.deb安装旧版本
上面这个zerotier-one_1.4.0_amd64.deb换成你下载的文件名
再输入apt remove zerotier-one卸载旧版本ZT
上面的几步不可或缺,为的是生成一个身份验证文件
最后重新运行ZT安装脚本,成功安装上,去组中添加ID就可以运行了

后记

现在几台VPS的Zerotier-One都在运行中了,这次经历也算让自己增加经验了
在此留下一篇文章来记录,下次碰见这类问题也可以迎刃而解了

VPS OpenVZ ZeroTier
Theme Jasmine by Kent Liao