背景
之前一直在用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端口的入方向权限。
评论已关闭