撰于 阅读 6

自建derper服务器提升tailscale组网体验

背景

之前一直在用frp组网,但是frp纯命令行界面,想用个有GUI界面的软件。了解到还有个tailscale方案,因此折腾一下。

前置条件

  • 一个云服务器
  • 已备案的域名

安装 Tailscale

  • Tailscale官网下载链接
  • 服务器上安装Tailscale

    curl -fsSL https://tailscale.com/install.sh | sh
  • 安装完毕后,通过tailscale up启动tailscale服务
  • 注意:如果是阿里云服务器或是火山云服务器,需要删除一条iptables规则才能够正常访问外网。

    • 参考链接:Tailscale出口节点无网络问题的调试与分析
    • 我这里是先iptables -L ts-input --line-numbers找到DROP all -- 100.64.0.0/10 anywhere这条规则的编号,然后iptables -D ts-input <对应编号>删除。
    • 删除这条规则后,就能够让ECS正常访问内网服务了。这是因为阿里云和火山云的内网服务用的IP段恰好和tailscale drop的IP段重合了。

部署 Derper 服务

  • 使用Docker进行Derper服务的部署

配置脚本

docker run -d \
-p 127.0.0.1:33381:4433 \
-p 3478:3478/udp \
--name derper \
--restart=always \
-v `pwd`/certs:/app/certs \
-v /var/run/tailscale/tailscaled.sock:/var/run/tailscale/tailscaled.sock \
-e DERP_ADDR=":4433" \
-e DERP_VERIFY_CLIENTS=true \
-e DERP_DOMAIN="已备案域名" \
fredliang/derper

反向代理

我用的是1Panel面板,因此直接在面板上操作,添加反代网站就行。反代地址是http://127.0.0.1:33381

同时需要注意的是,需要在阿里云的安全组中开放80、443和3478端口的入方向权限。


评论已关闭