V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
info521
V2EX  ›  宽带症候群

请问 tailscale 新自建中继 DERP 如何建立部署,是否可以共享给其他人使用

  •  
  •   info521 · 336 天前 · 3394 次点击
    这是一个创建于 336 天前的主题,其中的信息可能已经有所发展或是发生改变。
    55 条回复    2022-04-20 17:30:29 +08:00
    Sekai
        1
    Sekai  
       336 天前
    搞好了,先在小鸡上配置好 go 环境。
    然后安装 derper:
    go install tailscale.com/cmd/[email protected]
    然后修改自己网页上的 Access Controls,注意替换域名:
    https://www.codepile.net/pile/dNnwGoMA
    最后执行
    derper -c=$HOME/derper.conf -a xxx.xxx.xxx:998 --stun (我这里 443 占用了所以改成了 998 )
    重启各个机器上的 tailscale 服务,在网页的 Machine Details 里就能看到了,会显示 Relay #901 。应该还能用自己的证书,不过我还没时间看。
    info521
        2
    info521  
    OP
       336 天前
    $HOME 这个写死的吗,还是不同系统不通目录的?
    info521
        3
    info521  
    OP
       336 天前
    他这个可以共享给别人使用的,只要知道你的域名和端口
    info521
        4
    info521  
    OP
       336 天前
    $HOME 是缺省目录,是必须 root 目录吗?
    info521
        5
    info521  
    OP
       336 天前
    derper -c=$HOME/derper.conf -a xxx.xxx.xxx:998 --stun 执行这一步时候,提示命令不存在,
    Sekai
        6
    Sekai  
       335 天前
    @info521 应该可以共享的,命令不存在就是 derper 没装上吧,其他的我也不怎么懂
    info521
        7
    info521  
    OP
       335 天前
    @Sekai 找到原因了,环境变量没设置好
    info521
        8
    info521  
    OP
       335 天前
    derper: command not found
    go version

    sudo vim /etc/profile
    export GOROOT=/usr/lib/go-1.16
    export GOPATH=/root/go
    export GOBIN=$GOPATH/bin
    export PATH=$PATH:$GOROOT/bin
    export PATH=$PATH:$GOPATH/bin

    添加完成按 Esc 键,然后输入:wq 再按回车保存退出,然后执行以下命令,使配置生效。
    source /etc/profile
    ylx
        9
    ylx  
       306 天前
    @Sekai 改成 998 后 Access Controls 里面的 hostname 是不是也需要加端口
    按 998 配好后用你的示例没反应
    mangohaoming
        10
    mangohaoming  
       304 天前
    请问解决了吗
    Sekai
        11
    Sekai  
       302 天前
    @ylx 我没加……它那个很奇怪,有的机器 Relays 里面会显示全部服务器也有自己配置的,有的就只有两个服务器甚至一个没有...
    Sekai
        12
    Sekai  
       302 天前
    @ylx 还有就是安装 supervisor 之类的守护一下进程
    mangohaoming
        13
    mangohaoming  
       302 天前
    @Sekai 你好,小白请教两个问题:1. derper.conf 文件示例能否共享一下. 2. Access Controlss 设置改 hostname 与新增 derpermap 节点在 json 根节点这样可以吗?
    Sekai
        14
    Sekai  
       301 天前
    @mangohaoming derper.conf 自始至终就没动过,我都不知道在哪,看了一下里面是 PrivateKey 。第二个问题没看懂,可能我也是一知半解……
    mangohaoming
        15
    mangohaoming  
       301 天前
    @Sekai 配置 Access Controlss 只需要填 hostname 吗?
    mangohaoming
        16
    mangohaoming  
       301 天前
    @Sekai 配置成功了,感谢
    info521
        17
    info521  
    OP
       300 天前
    @mangohaoming 能否把步骤分享下,我配置了,一直没成功;
    mangohaoming
        18
    mangohaoming  
       293 天前
    @info521 步骤和 Sekai 说的一样,注意检查防火墙端口有没有开放,derper 进程有没有一直在运行(可以用进程守护工具守护)
    mangohaoming
        19
    mangohaoming  
       283 天前
    @Sekai 你好,测试发现用其它端口不能正常使用 stun 转发,请问你的正常吗
    Sekai
        20
    Sekai  
       282 天前
    @mangohaoming 有显示什么错误嘛?
    mangohaoming
        21
    mangohaoming  
       281 天前
    @Sekai 没有提示错误,设备面板也显示链接上了,就是 p2p 无法打洞的情况下两个客户端就 ping 不通了
    mangohaoming
        22
    mangohaoming  
       281 天前
    @Sekai 就只有采用默认的 443 端口才一切正常
    Sekai
        23
    Sekai  
       279 天前
    @mangohaoming 要不把命令改成 derper -c=$HOME/derper.conf -a 0.0.0.0:998 --stun 试试?否则还是防火墙的问题吧,如果用 443 打洞正常的情况下,另外还可以换高位端口。
    mangohaoming
        24
    mangohaoming  
       279 天前
    @Sekai 测试了也还是不行,相关端口系统防火墙和外围安全组都确认 tcp/udp 都放开了,终端运行命令只有启动提示,443 端口是有客户端接入提示的。
    Sekai
        25
    Sekai  
       279 天前
    @mangohaoming 那我真没辙了,实在想用只能换系统试试,debian10 centos7 我这都可以,能加多台。
    mangohaoming
        26
    mangohaoming  
       279 天前
    @Sekai 你的 vps 是哪家的,我的是腾讯云。我换一下系统镜像试试
    Sekai
        27
    Sekai  
       278 天前
    @mangohaoming 毛子 gc,清凉云应该 dd 之后再用啊
    oddcc
        28
    oddcc  
       278 天前
    请教一下,部署成功之后,是怎么指定流量走自建的 DERP 的?
    需要把官方的全部禁用吗?
    mangohaoming
        29
    mangohaoming  
       278 天前
    @oddcc 设置这个参数就行,"OmitDefaultRegions": true,作为 derpMap 的子节点
    mangohaoming
        30
    mangohaoming  
       278 天前
    @Sekai 意思是腾讯云要换自己上传的镜像去安装后再使用?
    oddcc
        31
    oddcc  
       242 天前
    确实是这样, 测下来用 443 才能转发成功
    否则只是能在 admin 中看到连上了这个 node, 实际还是 ping 不通
    zyqv2
        32
    zyqv2  
       223 天前
    可以试试这个 docker 镜像 zouyq/derper,亲测是 ok 的,主要网络最好使用桥接模式,非 443 端口需要配置服务端证书,并在 tailscale 管理控制台那里添加 DERPPort:xxx 指定端口
    cweijan
        33
    cweijan  
       219 天前
    @oddcc, 我配置成功了, 自定义端口不是在 HostName 后面加, 而是需要增加 DERPPort, 例子
    ```json
    {
    "DERPMap": {
    "OmitDefaultRegions": false,
    "Regions": {
    "900": {
    "RegionID": 900,
    "RegionCode": "1",
    "Nodes": [
    {
    "HostName": "xxxx",
    "DERPPort": 998,
    "Name": "1",
    "RegionID": 900
    }
    ]
    }
    }
    }
    }
    ```
    info521
        34
    info521  
    OP
       214 天前
    转载:

    https://mangoroom.cn/tools/tailscale-custom-derper-servers.html

    节点为腾讯云广州节点,带宽有限,请勿滥用,如果想支持本节点可双击下方点赞或者请芒果喝一杯奶茶

    // Example/default ACLs for unrestricted connections.
    {
    // Declare static groups of users beyond those in the identity service.
    "Groups": {
    "group:example": [ "[email protected]", "[email protected]" ],
    },
    // Declare convenient hostname aliases to use in place of IP addresses.
    "Hosts": {
    "example-host-1": "100.100.100.100",
    },
    "ACLs": [
    // Match absolutely everything. Comment out this section if you want
    // to define specific ACL restrictions.
    { "Action": "accept", "Users": ["*"], "Ports": ["*:*"] },
    ],
    "derpMap": {
    "Regions": { "900": {
    "RegionID": 900,
    "RegionCode": "mangoderp",
    "Nodes": [{
    "Name": "1",
    "RegionID": 900,
    //本节点由 mangoroom.cn 提供,请勿滥用。详情访问 https://mangoroom.cn/tools/tailscale-custom-derper-servers.html
    "HostName":"tailscalederper.mangoroom.cn",
    }]
    }}
    }
    }
    info521
        35
    info521  
    OP
       214 天前
    info521
        36
    info521  
    OP
       214 天前
    1.16 版本开始,可以自定义 DERP 端口

    当前版本是 1.16 。现在有用户使用自定义 DERP 端口

    https://github.com/tailscale/tailscale/issues/1264


    搜索关键词

    DERP
    This is a Tailscale DERP server.

    可找到公开的 DERP 中继服务器;
    info521
        37
    info521  
    OP
       214 天前
    转载:

    https://blog.laisky.com/p/tailscale/ 四、安装、部署

    关于备案信息,tls,letsencrypt 解释
    info521
        39
    info521  
    OP
       214 天前
    如何启用 DERP 客户端限制
    https://github.com/tailscale/tailscale/issues/3024

    derper --help
    -verify-clients
    verify clients to this DERP server through a local tailscaled instance.
    xxb
        40
    xxb  
       209 天前
    我用 docker 自建的 derp ,貌似证书没有自动搞定
    info521
        41
    info521  
    OP
       209 天前
    是国内吗?国内的域名备案,
    info521
        42
    info521  
    OP
       202 天前
    服务端开源版本

    协调服务器的开源、自托管实现
    控制服务器用作 Tailscale 网络中节点的 Wireguard 公钥交换点。它还分配客户端的 IP 地址,在每个用户之间创建边界,在用户之间启用共享机器,并公开您节点的通告路由。

    headscale

    https://github.com/juanfont/headscale

    完全自己部署独立整套系统
    info521
        43
    info521  
    OP
       184 天前
    docker 容器化部署中继 DERP

    https://hub.docker.com/r/zouyq/derper

    默认 443 ,自定义端口
    info521
        44
    info521  
    OP
       183 天前
    腾讯云容器自建 DERP:
    1 、域名备案,
    2 、域名解析
    3 、域名 SSL 申请 1 年免费,crt key 文件下载
    4 、规划访问端口,例如 8082tcp ,3478udp stun ,防火墙放行;
    5 、docker 安装,命令执行
    docker run -it -d --name derper -p 8082:8082 访问端口映射 -p 3478:3478/udp -v /自定义证书目录 derpssl:/cert zouyq/derper /derper -hostname hostname -stun -a :8082 自定义端口 -certmode manual -certdir /cert

    6 、安装检查
    curl https://hostname.com:8082

    https://hostname.com:8082

    7 、tailscale 控制端设置 derp
    info521
        45
    info521  
    OP
       183 天前
    转:tailscale 自建 derper 服务器中转,使用自定义端口
    https://blog.csdn.net/opopop880/article/details/122125430
    info521
        46
    info521  
    OP
       182 天前
    节点分享,直接复制进去就可以,重启下客户端,目前 2 个国内节点
    https://www.yuque.com/docs/share/4ce6a5f6-bf8d-4233-9501-59ae8dfbe65e?# 《 Tailscale DERP 》
    yangchuansheng33
        47
    yangchuansheng33  
       170 天前
    @Sekai 我这边测试虽然 derper 生效了,但是 ping 不通 peer ,非 443 端口。能不能告知一下的你的详细配置步骤啊
    info521
        48
    info521  
    OP
       169 天前
    info521
        49
    info521  
    OP
       165 天前
    taiscale 客户端 容器 docker 安装

    https://github.com/tailscale/tailscale/issues/504 容器安装讨论
    https://github.com/tailscale/tailscale/blob/main/Dockerfile 镜像构建文件
    https://hub.docker.com/r/tailscale/tailscale 镜像直接下载

    # This Dockerfile includes all the tailscale binaries.
    #
    # To build the Dockerfile:
    #
    # $ docker build -t tailscale/tailscale .
    #
    # To run the tailscaled agent:
    #
    # $ docker run -d --name=tailscaled -v /var/lib:/var/lib -v /dev/net/tun:/dev/net/tun --network=host --privileged tailscale/tailscale tailscaled
    #
    # To then log in:
    #
    # $ docker exec tailscaled tailscale up
    #
    # To see status:
    #
    # $ docker exec tailscaled tailscale status
    latteczy
        50
    latteczy  
       104 天前
    可以不用 HTTPS 吗?
    fuergaosi
        51
    fuergaosi  
       93 天前
    @info521 测试了一下, 似乎不需要使用 HTTPS 证书, 只要修改域名的解析就可以.
    info521
        52
    info521  
    OP
       92 天前
    要的,你在试试,他们计划使用自签名,只是不依赖别家 ssl
    Sekai
        54
    Sekai  
       72 天前
    derper -c=/root/derper.conf -hostname=你的域名 -http-port 81 -certmode=manual -certdir=/etc/nginx/ssl -stun
    记录一下
    preach
        55
    preach  
       68 天前
    已搭建成功,docker
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4200 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 08:58 · PVG 16:58 · LAX 01:58 · JFK 04:58
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.