Headscale 使用指南
来源
原始文档: headscale_use.md
核心内容
Headscale 是一个开源的、自托管的 Tailscale 控制服务器实现,允许你搭建私有的 Tailscale 网络。
服务器端安装
# 下载并安装
wget https://github.com/juanfont/headscale/releases/download/v0.26.1/headscale_0.26.1_linux_amd64.deb
sudo dpkg -i headscale_0.26.1_linux_amd64.deb
# 配置并启动
sudo vi /etc/headscale/config.yaml
sudo systemctl enable --now headscale
sudo systemctl status headscale
用户管理
# 创建用户
sudo headscale users create admin --email admin@abc.com
sudo headscale users list
# 创建预授权密钥
sudo headscale preauthkeys create -u admin
sudo headscale preauthkeys list -o json -u 2
节点管理命令
nodes/list: 查看节点nodes/register: 注册节点nodes/delete/expire: 删除或注销节点nodes/move/rename/tag: 修改节点属性nodes/approve-routes/list-routes: 管理节点路由
客户端连接
# 安装 Tailscale 客户端
curl -fsSL https://tailscale.com/install.sh | sh
# 连接 Headscale 服务器
tailscale up --login-server https://vpn.xxxx.com --authkey key-string
# 查看状态
tailscale status | sort -k2
出口节点配置
# 1. 在节点上声明出口节点
sudo tailscale up --advertise-exit-node
# 2. 开启 IP 转发
sudo sysctl -w net.ipv4.ip_forward=1
sudo sysctl -w net.ipv6.conf.all.forwarding=1
# 持久化配置
sudo tee -a /etc/sysctl.conf <<EOF
net.ipv4.ip_forward=1
net.ipv6.conf.all.forwarding=1
EOF
sudo sysctl -p
# 取消出口节点
sudo tailscale up --advertise-exit-node=false
# 或
sudo tailscale up --reset
Web 管理界面
- 项目: headscale-admin
- 提供图形化管理界面
关键要点
- Headscale 是 Tailscale 控制服务器的开源实现
- 支持预授权密钥实现无交互设备注册
- 可配置出口节点实现全流量转发
- 适合企业私有化部署
相关实体
- Headscale - 开源 Tailscale 控制服务器
- Tailscale - 基于 WireGuard 的组网工具
- VPN - 虚拟专用网络
- WireGuard - 现代 VPN 协议