[TailScale] DERP Derper中继搭建

0. 准备工作

0.1 检测我们是否需要Derper

在部署好之后(参考下面教程部署),我们使用命令行执行如下:

https://blog.welain.com/archives/289/#cl-11

https://www.ghostchu.com/archives/tailscale

tailscale ping <your client name>
0.1.1 需要搭建Derper

如果是这样的,说明是P2P打不通,那么你需要Derper(有DERP括弧的)

0.1.2 不需要Derper

如果是这样的,那么你不需要搭建Derper

image-20241111170700930

上面这张图是从https://www.ghostchu.com/archives/tailscale拿到的

0.2 搭建准备工作

在搭建开始之前,请先拿到实名认证的域名和证书

[DDNS][SSL][HTTPS]阿里云ACME Ubuntu22.04Server 安装教程

1. TaileScale部署

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

2. Derper部署

我们使用Docker-compose,这里是我的配置文件,这里直接复制过来改一改就行了

version: '3.8'
services:
  derper:
    image: fredliang/derper # 如果你无法访问外网,可以使用dockerpull.org/fredliang/derper 
    container_name: derper
    restart: always
    environment:
      - DERP_CERT_MODE=manual  # 手动设置证书
      - DERP_ADDR=:13477  # 中转端口
      - DERP_HTTP_PORT=-1  # 用不到也可以填入 -1 关闭 HTTP 服务
      - DERP_STUN_PORT=13478  # STUN 打洞端口
      - DERP_DOMAIN=xxx.top  # 服务器域名
      - DERP_VERIFY_CLIENTS=true  # 验证客户端身份,防止白嫖
    ports:
      - "13477:13477"
      - "13478:13478/udp"
    volumes:
      - /var/run/tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock  # tailscale 客户端进程,用于验证客户端身份
      - /home/vernon/cert_files:/app/certs  # SSL 证书存放地址

关于证书部分需要重点说明:假设你的域名是 xxx.com,那么证书的名称必须是xxx.com.crt,一个字符都不能错!同理,私钥名称必须是 xxx.com.key,一个字符都不能错!

之后执行

docker-compose up -d 

image-20241111153623674

看一下运行情况

docker logs -f derper

image-20241111165901966

3. Tailscale配置

进入后台,点击Access Control

管理界面:https://login.tailscale.com/admin/acls/file

官方文档:https://tailscale.com/kb/1118/custom-derp-servers

在最后添加

"derpMap": {
		"OmitDefaultRegions": false,
		"Regions": {
			"900": {
				"RegionID":   900,
				"RegionCode": "taxue_deper",
				"RegionName": "Beijing",
				"Nodes": [
					{
						"Name":     "1",
						"RegionID": 900,
						"HostName": "derper.taxuevernon.top",
						"DERPPort": 13477,
						"STUNPort": 13478,
						"STUNOnly": false,
					},
				],
			},
		},
	},

image-20241111155022336

4. 打开Ubuntu端口

sudo ufw allow 13477
sudo ufw allow 13478

5. 打开端口转发

我这里使用的是Openwrt,打开13477,13478的端口转发

image-20241111160755521

image-20241111160749339

6. 编辑通信规则

允许13477,13478端口进站

image-20241111160844213

image-20241111161022768

image-20241111163101718

之后要重启Openwrt,重要的事情!!!!!!!

7. 测试

image-20241111165746928

还需要测试13477端口。有这个才是真的YES

image-20241111170143723

L. 参考

https://weixiang.github.io/posts/tailscale-intranet-penetration-and-derper-construction/

https://www.ghostchu.com/archives/tailscale

https://blog.welain.com/archives/289/#cl-11

https://icloudnative.io/posts/custom-derp-servers/

https://icloudnative.io/posts/custom-derp-servers/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值