自建 DERP 中继服务器 中转Tailscale
编辑
534
2024-06-17

准备
一个域名
一台VPS
部署
安装Docker
bash <(curl -sSL https://linuxmirrors.cn/docker.sh)
部署DERP
Letsencrypt自动申请证书
新建文件夹用来存放docker-compose.yaml
文件
mkdir derp && cd derp
创建docker-compose.yaml
文件
nano docker-compose.yaml
填入:
version: "3"
services:
derper:
image: fredliang/derper:latest
volumes:
- /var/run/tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock # sock映射出来给客户端验证
ports:
- 80:80
- 443:443
- 3478:3478/udp # 默认情况下也会开启 STUN 服务,UDP 端口是 3478
restart: unless-stopped
environment:
- DERP_DOMAIN=derp.xxx.com
- DERP_CERT_MODE=letsencrypt
- DERP_VERIFY_CLIENTS=true
注意要提前解析服务器IP到域名
环境变量解释
更多环境变量请参考原项目
手动申请证书
提前申请好证书和私钥,并存放至/root/derp/certs
假设我的域名是
123456.xyz
那么证书文件的名称就是123456.xyz.crt
私钥文件的名称就是123456.xyz.key
请自行修改域名
version: "3"
services:
derper:
image: fredliang/derper:latest
volumes:
- /root/derp/certs/fullchain.pem:/app/certs/derp.123456.xyz.crt
- /root/derp/certs/privkey.pem:/app/certs/derp.123456.xyz.key
- /var/run/tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock # sock映射出来给客户端验证
ports:
- 3443:443
- 3478:3478/udp # 默认情况下也会开启 STUN 服务,UDP 端口是 3478
restart: unless-stopped
environment:
- DERP_DOMAIN=derp.123456.xyz
- DERP_CERT_MODE=manual
- DERP_VERIFY_CLIENTS=true
使用
修改Tailscale的配置文件,添加如下内容
"derpMap": {
"OmitDefaultRegions": true,
// OmitDefaultRegions 忽略官方的中继节点
"Regions": {
// 这里的 901 从 900 开始随便取数字
"901": {
// RegionID 和上面的相等
"RegionID": 901,
// RegionCode 名称
"RegionCode": "Vultr-SG",
"Nodes": [
{
// Name 保持 1不动
"Name": "1",
// 这个也和 RegionID 一样
"RegionID": 901,
// 域名
"HostName": "<你的域名>",
// 端口号
"DERPPort": 443,
},
],
},
},
},
- 1
- 0
-
分享