群晖部署 derp 中继服务器的一个坑: x509: certificate signed by unknown authority - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
evemoo
V2EX    宽带症候群

群晖部署 derp 中继服务器的一个坑: x509: certificate signed by unknown authority

  •  
  •   evemoo 2023-10-31 19:31:50 +08:00 2732 次点击
    这是一个创建于 709 天前的主题,其中的信息可能已经有所发展或是发生改变。

    结论:证书链不对
    得从 https://whatsmychaincert.com/?<your_domain_here>:14433 获取可用于转发流量的证书。
    发文记录一下折腾一下午的结果,避免后来人踩坑。

    问题

    绝大部分教程都差不多,从 acme.sh 申请证书然后启动 tailscale (这里直接用套件,不用重复映射 tailscaled.sock)

    derp 部分也差不多,直接 docker 或者 go install 跑起来

    docker run -d \ --restart=always \ --name derper \ -p 14433:14433 \ -p 3478:3478/udp \ -v /volume1/docker/derper:/app/certs \ -v /volume1/@appdata/Tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock \ -e DERP_CERT_MODE=manual \ -e DERP_ADDR=:14433 \ -e DERP_DOMAIN=<your_domain_here> \ -e DERP_VERIFY_CLIENTS=true \ fredliang/derper:latest 

    然后很大概率遇到:

    magicsock: [0xc0025c05a0] derp.Recv(derp-903): derphttp.Client.Recv connect to region 903 (Nas): x509: certificate signed by unknown authority 

    即便你移除验证:DERP_VERIFY_CLIENTS=false ,强制添加 "OmitDefaultRegions": true 参数也无法通过 derp 服务器中继流量,具体体现在 tailscale ping <node> 超时。

     "derpMap": { // "OmitDefaultRegions": true, "Regions": { "903": { "RegionID": 903, "RegionCode": "Nas", "RegionName": "Guangzhou", "Nodes": [ { "Name": "Nas", "RegionID": 903, "DERPPort": 14433, "HostName": <your_domain_here>", }, ], }, }, }, 

    百思不得其解,翻 issue 区还能见到境内未备案域名会遇到 TLS 阻断的问题。
    终于翻到这个: https://forum.tailscale.com/t/ipados-unable-to-connect-to-custom-derp-tls-bad-certificate/1107/8 ,搞定!

    8 条回复    2025-03-11 22:01:25 +08:00
    mytsing520
        1
    mytsing520  
    PRO
       2023-10-31 20:20:41 +08:00
    踩过坑,后面看到 unknown authority 就大概率知道是证书链的问题了
    也可以到 myssl.com 查找证书链
    jswh
        2
    jswh  
       2023-10-31 22:17:03 +08:00
    遇到过一样的问题,怎么都调不好。最后通过添加
    1. OmitDefaultRegions": true,
    2.Nodes 里面添加 "InsecureForTests": true,
    直接强制跳过证书检查了。
    反正自用,无所谓了。
    ferock
        3
    ferock  
    PRO
       2023-10-31 23:13:18 +08:00 via iPhone
    let 下载的证书,需要再附加中间证书到同一个文本
    yushiro
        4
    yushiro  
       2023-11-01 09:45:21 +08:00 via iPhone
    acme.sh 申请的证书文件,有个名字带 full 的,也遇到证书链问题?
    evemoo
        5
    evemoo  
    OP
       2023-11-16 10:35:02 +08:00
    还有另外一个坑:通过 docker 部署 fredliang/derper ,即便访问域名显示正常、stun 服务器能通,但是其他需要中转的客户端就是连不上

    tailscale ping pi -> timeout

    而通过 go 安装的形式启动的则一切正常

    #!/bin/bash
    killall derper
    sleep 1
    derper -c /volume1/docker/derper/derper.conf -certmode manual -certdir /volume1/docker/derper/ -hostname <our_domain> -a :14433 -http-port -1 -verify-clients


    只要 NAS 上面在有 tailscaled 服务即可,不需要挂载 sock
    将脚本加入到定时任务,每天凌晨重启一次即可,目前已稳定运行一个月
    evemoo
        6
    evemoo  
    OP
       2023-11-21 20:45:52 +08:00
    再补充一个,如果群晖开了 IPV6 且有公网地址,又会出现节点延迟正常(不出现 can not connect to xxx DERP )但就是无法中转的问题(坑真多啊

    参考: https://github.com/tailscale/tailscale/issues/3110 ,在自建节点添加 "IPv6": "none" 即可
    Ritter
        7
    Ritter  
       354 天前
    @yushiro 终于找到这里来了 原来是要用这个全链证书 更换之后一切都好了
    liuzimin
        8
    liuzimin  
       212 天前
    @jswh #2 我也改成你这样了,但还是报一样的错。。不过很奇怪,一年前我用同一套代码部署的,一点问题都没有,今年新买了一台云服务器,部署就各种报错。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     4333 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 33ms UTC 04:05 PVG 12:05 LAX 21:05 JFK 00:05
    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