树洞剪藏#剪藏#树洞剪藏

Tailscale DERP Docker版教程(国内 无需域名 IP+Port)

2024 年 11 月 15 日1 分钟
分享Twitter / XTelegram微博
Tailscale DERP Docker版教程(国内 无需域名 IP+Port) 封面

同步来源:树洞剪藏 源站剪藏 ID:42 原文地址:https://www.nodeseek.com/post-146521-1

打开原文 · 打开源站剪藏快照


Tailscale DERP Docker版教程(国内 无需域名 IP+Port)

NodeSeek beta 日常 技术 情报 测评 交易 拼车 推广

Tailscale DERP Docker版教程(国内 无需域名 IP+Port)

Javaow 楼主 92days ago edited 92days ago in 技术 #0

网上教程太复杂,又是域名 又是装golang,而且还没有Docker版本

国内机器没有备案无法解析域名,也就没办法使用官方直接搭建,需要下载源码去除证书验证重新编译才可以

偷懒

用我直接打包好的镜像即可,支持Amd64和Arm64,甲骨文Arm服务器也可直接使用

docker run -d --name tailscale-derp -p 36666:36666 -p 3478:3478/udp --restart=always javaow/tailscale-derp

教程

授人以鱼不如授人以渔,多阶段dockerfile构建,编译打包一体

1.打开一个dockerfile文件

vi dockerfile

2.把如下内容复制到dockerfile

注意1:最好使用国外服务器,国内github和docker连通性不是很好

注意2:此版本是Amd架构,如果要在Arm架构打包需要把 RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2 这一行注释或者删除(此行为了解决Amd架构下alpine镜像无法执行二进制问题)

注意3:随着版本更新,cert.go文件中的代码行数可能发生变化,当前版本是注释91~93行这3行即可,编译前最好去官方仓库看下,否则编译不通过

编译

FROM golang:alpine AS builder

切换模块源为中国Go模块代理服务器

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

拉取代码

RUN go install tailscale.com/cmd/derper@latest

去除域名验证(删除cmd/derper/cert.go文件的91~93行)

RUN find /go/pkg/mod/tailscale.com@*/cmd/derper/cert.go -type f -exec sed -i '91,93d' {} +

编译

RUN derper_dir=$(find /go/pkg/mod/tailscale.com@*/cmd/derper -type d) &&
cd $derper_dir &&
go build -o /etc/derp/derper

生成最终镜像

FROM alpine:latest

WORKDIR /apps

COPY --from=builder /etc/derp/derper .

RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
&& echo 'Asia/Shanghai' > /etc/timezone

ENV LANG C.UTF-8

创建软链接 解决二进制无法执行问题 Amd架构必须执行,Arm不需要执行

RUN mkdir /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2

添加源

RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.tuna.tsinghua.edu.cn/g' /etc/apk/repositories

安装openssl

RUN apk add openssl && mkdir /ssl

生成自签10年证书

RUN openssl req -x509 -newkey rsa:4096 -sha256 -days 3650 -nodes -keyout /ssl/derp.javaow.com.key -out /ssl/derp.javaow.com.crt -subj "/CN=derp.javaow.com" -addext "subjectAltName=DNS:derp.javaow.com"

CMD ./derper -hostname derp.javaow.com -a :36666 -certmode manual -certdir /ssl

3.编译镜像

docker build -f dockerfile -t tailscale-derp

编译完成后即可查看本地生成的镜像

docker images

启动

docker run -d --name tailscale-derp -p 36666:36666 -p 3478:3478/udp --restart=always tailscale-derp

测试访问(提示不安全访问是正常现象 因为证书是自签)

https://IP:36666

显示如下即可成功

4.添加节点

进入官方后台,替换如下,HostName填写IP,DERPPort填写端口

"derpMap": { "OmitDefaultRegions": false, "Regions": { "910": { "RegionID": 910, "RegionCode": "自建节点", "Nodes": [ { "Name": "910", "RegionID": 910, "HostName": "xx.xx.xx.xx", "InsecureForTests": true, "DERPPort": 36666, }, ], "RegionName": "自建节点", }, }, },

5.后话

自己打包镜像后可以上传到DockerHub上,让其他机器直接拉取使用,不用再重新编译了

主要注意点就是,随着版本更新cert.go文件中的代码行数可能发生变化,这时就需要修改dockerfile中的91,93d删除行数,只要保证把下面红框里的3行代码删除即可,这三行就是证书验证代码

https://github.com/tailscale/tailscale/blob/v1.70.0/cmd/derper/cert.go

❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️

10 0 55 引用 回复

1 2 3

Luncheon7225 92days ago #1

鸡腿送上

卖鸡,来看针再问价

0 0 引用 回复

Javaow 楼主 92days ago #2

@Luncheon7225 #1 感谢

❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️

0 0 引用 回复

Yserver 92days ago #3

支持

0 0 引用 回复

Javaow 楼主 92days ago #4

@Yserver #3

❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️

0 0 引用 回复

ghostg 92days ago #5

正好需要这个

私信

0 0 引用 回复

Damm 92days ago #6

牛!!

0 0 引用 回复

ixinshang 92days ago #7

鸡腿 奉上

0 0 引用 回复

Javaow 楼主 92days ago #8

@ixinshang #7

❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️☀️❤️★❤️

0 0 引用 回复

521zjw 90days ago #9

大佬牛逼 早看到帖子就不用费事了,我顶

针:https://vps.94iu.eu.org/

0 0 引用 回复

Stevie0427 90days ago #10

支持,另外这个是只要知道你的IP和端口就能用的,建议配合限流脚本使用,防止被刷流量 (阿里云好像用网内鉴权会有问题,因为阿里云DNS和Tailscale网段重复了,会让DNS爆掉)

博客 | 探针 | TG机器人(目前TG没了暂不可用) | RN | 买卖鸡 |

0 0 引用 回复

1 2 3

内容 预览 对照

支持 markdown语法

鼓励友善发言,禁止人身攻击

xxxxxxxxxx

1

1 ​

AC娘

洋葱头

小黄鸡

发布评论

88

等级 Lv 4 鸡腿 1907 关注 0 通知 0

主题帖 10 评论数 290 粉丝 2 收藏 182 发帖

快捷功能区 推荐阅读 管理记录 幸运抽奖 邀请好友 合作商家 友站链接

所有版块 日常 技术 情报 测评 交易 曝光 拼车 生活 贴图 推广 内版 Dev 无意义 沙盒

📈用户数目📈

目前论坛共有22061位seeker

🎉欢迎新用户🎉

huotuchensha

alanlu

onvo

无欲无求

相关网站 LowEndTalk LowEndSpirit HostLoc ServerHunter

站内导航 关于本站 隐私协议 RSS订阅 sitemap

商业推广 商家申请规则 Premium Provider 合作商家展示

其他平台 电报频道 电报群组

联系我们

Copyright © 2022 - 2024 All rights Reserved

相关文章