一些资料
快捷使用
https://www.escapelife.site/posts/bb022c74.html
https://blog.l3zc.com/2025/04/tailscale-setup-recap/ tailscale 自建DERP
Tailscale 原理
https://www.bilibili.com/video/BV13P411q7Cy
Tailscale 配置
https://www.bilibili.com/video/BV1Wh411A73b
云原生实验室,有很多 wireguard 与 tailscale 的教程
https://icloudnative.io/
Subnet Router(子网路由器)
将本地的整个局域网暴露在
tailscale
网络中, 这样不用所有机器安装tailscale
其它机器就能访问它了
- 局域网中的某台机器中的
tailscale
启用Subnet Route
(tailscale
将局域网信息,比如192.168.1.0/24
广播到其它tailscale
设备上)
设置节点
sudo tailscale up --advertise-routes=192.168.1.0/24
- 其它
tailscale
设备要访问192.168.1.0/24
设置就知道要到哪台机器上数据落地了 - ALC 中要限制一下访问子网的权限,不然太不安全
{ "acls": [ {"action": "accept", "src": ["group:home-access"], "dst": ["192.168.1.0/24:*"]}, {"action": "reject", "src": ["*"], "dst": ["192.168.1.0/24:*"]} ] }
Exit Node(出口节点)
把一台
Tailscale
设备设置为“流量出口”,让其他设备的所有互联网流量都通过它转发。
- ACL 中加入限制
{ "acls": [ {"action": "accept", "src": ["your-email@gmail.com"], "dst": ["*:*"]}, {"action": "accept", "src": ["autogroup:member"], "dst": ["tag:exit-node:41641"]}, {"action": "reject", "src": ["*"], "dst": ["tag:exit-node:*"]} ], "tagOwners": { "tag:exit-node": ["your-email@gmail.com"] } }
# 节点上加入标签 sudo tailscale up --advertise-exit-node --advertise-tags=tag:exit-node
访问权限管理 (ACL)
{
// 1. 定义用户组,下例子中使用自动创建组,可以 根据实际情况定义组
"groups": {
"group:admin": ["x@x.com"],
},
// 2. 定义哪些组可以设置哪些标签, 下面是自动创建组中的管理员有权限设置标签
"tagOwners": {
"tag:client": ["autogroup:admin"],
"tag:server": ["autogroup:admin"],
"tag:gpu-server": ["autogroup:admin"],
"tag:xapi": ["autogroup:admin"],
},
// 3. 给机器打上标签
// 定义哪些标签的机器 可以访问哪些地址
// 可以直接访问 ssh
"acls": [
{
"action": "accept",
"src": ["tag:xwx", "tag:xwx-notebook"],
"dst": ["*:22"],
},
// 访问 openweb ui 访问
{
"action": "accept",
"src": ["tag:xapi"],
"dst": ["tag:gpu-server:3001"],
},
],
// 可以使用 tailscale ssh user@my-server 访问远程
// Define users and devices that can use Tailscale SSH.
"ssh": [
// Allow all users to SSH into their own devices in check mode.
// Comment this section out if you want to define specific restrictions.
{
"action": "check",
"src": ["autogroup:member"],
"dst": ["autogroup:self"],
"users": ["autogroup:nonroot", "root"],
},
],
}