编辑
2025-12-12
教程
0

目录

影片教学
YouTube
BiliBili
准备工作
搭建Go语言环境
搭建Derp服务
配置Linux防火墙
配置云服务器提供商的防火墙
测试Derp服务是否上线
将服务器加入Tailscale局域网
使用自建Derp替代官方Derp
后续操作

影片教学

YouTube

https://youtu.be/p9gnpKuyRzQ

BiliBili

https://www.bilibili.com/video/BV1zLaPz6Ep3/

准备工作

首先使用SSH远程登录到云服务器(VPS),然后在其命令行执行下面的指令。

切换至超级管理员用户

sudo su

进入root用户目录

cd ~

更新包管理工具,获取最新软件列表

apt update

进入root用户目录

apt install wget git openssl curl -y

搭建Go语言环境

检测是否已经安装有Go环境

go version

下载Go语言压缩包(海外地区)

wget https://go.dev/dl/go1.25.0.linux-amd64.tar.gz

下载Go语言压缩包(大陆地区)

wget https://golang.google.cn/dl/go1.25.0.linux-amd64.tar.gz

移除可能存在的Go语言文件残余

rm -rf /usr/local/go

解压Go压缩包到/usr/local/路径下

tar -C /usr/local -xzf go1.25.0.linux-amd64.tar.gz

将Go语言持久化加入系统环境变量,并立即生效

echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile source /etc/profile

检查Go语言是否已经安装好

go version

*大陆地区切换使用内地下载源(Go 1.13 及以上)

go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.cn,direct

搭建Derp服务

编译并安装tailscale derper模块

go install tailscale.com/cmd/derper@latest

创建文件夹并移动derper到合适位置

mkdir /usr/local/derp mkdir /usr/local/derp/bin mv /root/go/bin/derper /usr/local/derp/bin

创建系统服务配置文件(务必完整复制粘贴这串多行指令,并替换自己服务器的IPv4地址)

cat > /etc/systemd/system/derper.service << EOF [Unit] Description=Tailscale DERP Server After=network.target Wants=network.target [Service] User=root Group=root ExecStart=/usr/local/derp/bin/derper -certmode=manual -certdir=/usr/local/derp -hostname=你的服务器公网IPv4地址 -a :33331 -http-port=33332 --verify-clients Restart=on-failure RestartSec=5s [Install] WantedBy=multi-user.target EOF

启用并立即启动Derp服务

systemctl enable derper systemctl start derper

检查Derp服务运行状态,并点击键盘q键退回命令行

systemctl status derper

进入Derp目录检查生成的HTTPS证书密钥

cd /usr/local/derp ls

配置Linux防火墙

安装ufw防火墙

apt install ufw

检查防火墙状态

ufw status

开放必要端口,如果你的云服务器上还自定义了其他服务,请开放对应的端口

ufw allow 22 ufw allow 33331 ufw allow 33332 ufw allow 3478

启用ufw防火墙

ufw enable

配置云服务器提供商的防火墙

在服务器控制台,找到配置防火墙的菜单,按照以下配置手动开放这几个端口

屏幕截图-2025-09-02-101847.png

测试Derp服务是否上线

在浏览器访问以下网址,忽略不安全提示,点击继续访问,若出现Derp页面,说明服务已上线

https://你的服务器公网IPv4地址:33331

将服务器加入Tailscale局域网

安装Tailscale

curl -fsSL https://tailscale.com/install.sh | sh

开启Tailscale

tailscale up

复制命令行中出现的https://login.tailscale.com/x/xxxxxxxx网址,粘贴到浏览器中,登录后即可将服务器加入Tailscale网络

使用自建Derp替代官方Derp

进入Tailscale控制台,点击顶部菜单栏的“Access controls”,点击“JSON editor”,在第一层大括号内粘贴以下内容,之后点击底部“Save”保存更改

"derpMap": { "OmitDefaultRegions": true, "Regions": { "900": { "RegionID": 900, "RegionCode": "myRegion1", "Nodes": [ { "Name": "900", "RegionID": 900, "DERPPort": 33331, "IPv4": "你的服务器公网IPv4地址", "InsecureForTests": true, }, ], }, }, },

后续操作

将各个设备加入Tailscale局域网后,可以使用设备的Tailscale局域网IP地址对其进行跨互联网访问,若P2P直连可以建立,那么网速和延迟都可以达到最好的效果。若不能建立直连,使用自建Derp进行中继仍能提供可接受的效果。家庭运营商可以提供公网IPv6地址,借助公网IPv6,设备可以实现P2P直连,这需要在家庭路由器和光猫中开启公网IPv6(IPv6 WAN),并保证Windows网卡已开启IPv6协议支持,有兴趣的朋友可以尝试。借助Tailscale实现基于IPv6的P2P直连比直接使用IPv6进行远程访问要安全很多,因为不需要将IPv6设备直接暴露到公网,也不需要手动开放防火墙或是做端口映射或端口转发。

本文作者:小蜜蜂

本文链接:

版权声明:转载自“D1科技站”,解释权归“D1科技站”所有。