前置条件
- 设备能够获取到公网的IPv6地址
- 设备添加好DNS自动更新设置
- 申请好域名证书
资料前置
- 绑定域名 tailscale-guest.tr069-main.xyz
- 自动更新 DDNS
- 使用 acme.sh 申请 ssl 证书和自动续期
第一步
创建证书目录并授权
mkdir /opt/tailscale/cert
chmod 755 /opt/tailscale/cert
复制证书到指定目录
mv /var/www/wwwroot/tailscale-guest.tr069-main.xyz/fullchain.cer /opt/tailscale/cert/tailscale-guest.tr069-main.xyz.crt
mv /var/www/wwwroot/tailscale-guest.tr069-main.xyz/cert.key /opt/tailscale/cert/tailscale-guest.tr069-main.xyz.key
创建执行文件目录和启动脚本[留下邮箱提供 arm 架构的执行文件]
mkdir -p /opt/tailscale/bin
chmod 755 /opt/tailscale/bin
3.1 创建启动脚本[需要会使用 vi 命令]
vi /opt/tailscale/bin/runderper.sh
#!/bin/sh
cd /opt/tailscale/bin
nohup ./derper -hostname tailscale-guest.tr069-main.xyz -c=derper.conf -a :56473 -http-port -1 -certdir /opt/tailscale/cert -certmode manual -stun > console.log 2>&1 &
echo $! > app.pid
chmod +x /opt/tailscale/bin/runderper.sh
3.2 创建停止脚本
vi /opt/tailscale/bin/stopderper.sh
#!/bin/sh
kill `cat app.pid`
rm -rf app.pid
chmod +x /opt/tailscale/bin/stopderper.sh
3.3 创建服务文件方便管理
vi /etc/systemd/system/derper.service
Description=Derper Server
After=network.target
[Service]
Type=forking
ExecStart=/opt/tailscale/bin/runderper.sh
ExecStop=/opt/tailscale/bin/stopderper.sh
[Install]
WantedBy=Multi-user.target
- 启动服务并设为开机自动启动
systemctl start derper
systemctl enable derper
注意:如果节点不共享建议添加参数 -verify-clients 只认服务器上 tailscale 客户端登录的账号
nohup ./derper -hostname tailscale-guest.tr069-main.xyz -c=derper.conf -a :56473 -http-port -1 -certdir /opt/tailscale/cert -certmode manual -stun -verify-clients > console.log 2>&1 &
启动没问题以后就可以打开链接测试了
https://tailscale-guest.tr069-main.xyz:56473/

注意:下面的代码添加到你的tailscale 控制台即可使用,再加人的客户端中执行 tailscale netcheck 既可以看到你的Derper 节点信息
"902": {
"RegionID": 902,
"RegionCode": "ChinaUnicom",
"RegionName": "GuanDong-Unicom-tailscale-guest",
"Nodes": [
{
"Name": "902",
"RegionID": 902,
"HostName": "tailscale-guest.tr069-main.xyz",
"DERPPort": 56473,
"InsecureForTests": true,
},
],
},
