headscale 组网工具快速部署,以及部署过程中遇到的一些坑 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
clikes
7.91D
V2EX    程序员

headscale 组网工具快速部署,以及部署过程中遇到的一些坑

  •  
  •   clikes 2023-03-06 19:20:40 +08:00 3860 次点击
    这是一个创建于 951 天前的主题,其中的信息可能已经有所发展或是发生改变。

    首先如果要快速部署的话,还得是用 docker ,本人也不是特别熟悉 docker 的使用,这里算是抛砖引玉了。过程中搜了很多资料,这个资料是看的最多的 https://icloudnative.io/posts/how-to-set-up-or-migrate-headscale/ ,里面讲了挺多基础的部署,不过其实已经稍微有点过时,headscale 最近也有蛮多更新的。 然后大家部署 headscale 我觉得大部分情况还是会需要一个 derper ,这个时候大家就会自己部署 derper ,网上教程有挺多教你如何部署自己的 derper 服务,但是实际上 headscale 其实已经有内置 derper ,只要配置中启动即可不需要再额外部署。以下是部署流程: 0. 此流程是建立在大家已经有域名以及 https 的证书的情况下,因为有了域名和证书这个流程才能跑通也相对容易些。

    1. 创建配置文件夹mkdir -p /data/headscale/config
    2. 进入配置文件夹创建 sqllite 文件cd /data/headscale/config&&touch db.sqlite
    3. 修改 headscale 配置,例子文件可以在这里找到 https://github.com/juanfont/headscale/blob/main/config-example.yaml , 首先修改 server_url 为你自己的域名 server_url: https://wode.yuming:8080 ,接着 derp: server: eneabled:改为 true , 接下来修改 tls 的验证 key 和 crt 路径,tls_cert_path:"/certs/wode.yuming.crt" tls_key_path: "/certs/wode.yuming.key"
    4. 接下来就可以直接用 docker 命令部署了docker run --name headscale --detach -v /data/headscale/config:/etc/headscale/-v /root/certs:/certs -p 8080:8080 -p 9090:9090 -p 3478:3478/udp -p 3478:3478 headscale/headscale:0.20.0 headscale serve 这个地方记得要吧 3478 端口打开(很多搜出来的资料里面都不会帮你打开这个端口,我一开始以为配置没用),因为 derper 服务是走这个端口的,配置里面也可以修改,不过这个地方我没做详尽的测试如果 3478 的 udp 或者 tcp 单独打开是不是可以,印象中是不行,另外记得把你的证书提前复制到服务器的 /root/certs 文件夹或者你自己喜欢的文件夹,同时记得打开 vps 的防火墙里面的这几个端口
    5. 如果 docker 部署好了,那么后面的步骤就相对容易了,可以参考之前的连接里面的部分。可以进入 docker 创建你自己的网络名docker exec headscale headscale user create wodewangluo。然后就可以下载客户端连接啦。
    6. linux 客户端的坑,我部署好之后发现 linux 的 tailscale 客户端连接会卡死,但是连接官方的却可以,查了日志、看了代码之后发现原因是我的证书不在服务器信任列表里面,只需要吧证书拷贝到 /etc/pki/ca-trust/source/anchors/ 下,然后 sudo update-ca-trust 更新证书,然后重启 linux 客户端就可以啦 sudo systemctl restart tailscaled 。这个事情困扰了我一晚上,查了挺久,还问了 chatgpt ,才找到解决办法。 大家可以试试,这个应该是最快速简单的 headscale 部署方法了。
    第 1 条附言    2023-04-13 12:01:55 +08:00
    最近搬家之后,发现有部分网站打不开或者网速极慢,后来发现可能是 tailscale 的虚拟网卡优先级比较高。ipconfig/all 之后发现 tailscale 的优先级在前,可以手动进以太网的设置中,把网络跃点设置为 1 调高优先级,这样会优先采用路由器\你自己设置的 dns 服务器。
    设置路径为:以太网->属性->ipv4 属性->高级->自动跃点取消,设置跃点数为 1 ,可以更改优先级解决该问题。(对网络这块不是特别专业,查找问题的方式可能也不太对,有问题可以帮我指出)
    3 条回复    2023-03-07 10:05:17 +08:00
    dengshen
        1
    dengshen  
       2023-03-06 21:34:28 +08:00
    最简单的应该是弄一份 docker-compose 出来吧 改改配置就能启动的那种 哈哈
    clikes
        2
    clikes  
    OP
       2023-03-06 21:39:28 +08:00
    @dengshen 不太熟这个,都搞不太清 docker-compose 和 docker 有啥区别
    GoRoad
        3
    GoRoad  
       2023-03-07 10:05:17 +08:00
    headscale 直接部署也没太麻烦,按照教程走就行了
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2205 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 16:08 PVG 00:08 LAX 09:08 JFK 12:08
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86