headscale_0.11.0_linux_amd64 文件到/usr/local/bin并重命名为headscale并赋予执行权限 $ chmod 755 /usr/local/bin/headscale 登录服务器创建目录及文件 $ mkdir /etc/headscale $ cd /etc/headscale $ touch db.sqlite $ touch config.yaml $ touch # /etc/systemd/system/headscale.service [Unit] Description=headscale After=network.target [Service $ headscale namespaces create myfirstnamespace 客户端执行: $ tailscale up --login-server YOUR_HEADSCALE_URL ##例子tailscale up --login-server http://headscale.gao4.top:8080 YOUR_HEADSCALE_URL 为服务器链接。
三、搭建 Headscale 服务端 以下命令假设安装系统为 Ubuntu 22.04, 其他系统请自行调整. 3.1、宿主机安装 Headscale 是采用 Go 语言编写的, 所以只有一个二进制文件 /headscale_0.16.4_linux_amd64 -O /usr/local/bin/headscale # 增加可执行权限 chmod +x /usr/local/bin/headscale =multi-user.target 3.2、配置 Headscale 安装完成以后我们需要在 /etc/headscale/config.yaml 中配置 Headscale 的启动配置, 以下为配置样例以及解释 : container_name: headscale image: headscale/headscale:0.16.4 ports: - "8080:8080" /conf:/etc/headscale - data:/var/lib/headscale command: ["headscale", "serve"] volumes: config
控制面 (http://124.124.124.124:8899)一、云端部署 Headscale(v0.26.1,Docker)目录以 /data/workspace/software/headscale docker-compose.yml(固定镜像版本,避免 latest 漂移)services: headscale: image: headscale/headscale:0.26.1 /config:/etc/headscale" - "/data/workspace/software/headscale/data:/var/lib/headscale"config/config.yaml cd /data/workspace/software/headscale# 幂等创建一个 ns,名字叫 default(已经存在会忽略)docker compose exec -T headscale -T headscale headscale users list# 云端 key(可复用,100年)docker compose exec -T headscale \ headscale preauthkeys
程序准备我们用到的项目主要为本体Headscale(点击前往)和其WebUI之一的Headscale-admin(点击前往)。 页面与Headscale API之间跨域的问题即可。 # Headscale进程路径# /etc/systemd/system/headscale.service[Unit]Description=Headscale ServiceAfter=network.target /headscale serve -c /home/headscale/config.yaml[Install]WantedBy=multi-user.targetNGINX配置Headscale仅从/ 完成后,在运行命令时要先cd /home/headscale进入Headscale目录下,再通过.
目前 Headscale 还没有可视化界面,期待后续更新吧。 Headscale 部署 Headscale 部署很简单,推荐直接在 Linux 主机上安装。 /download/v<HEADSCALE VERSION>/headscale_<HEADSCALE VERSION>_linux_<ARCH> $ chmod +x /usr/local/bin/ headscale 创建配置目录: $ mkdir -p /etc/headscale 创建目录用来存储数据与证书: $ mkdir -p /var/lib/headscale 创建空的 SQLite User=headscale Group=headscale ExecStart=/usr/local/bin/headscale serve Restart=always RestartSec=5 =multi-user.target 创建 headscale 用户: $ useradd headscale -d /home/headscale -m 修改 /var/lib/headscale
前面几篇文章给大家给介绍了 Tailscale 和 Headscale,包括 Headscale 的安装部署和各个平台客户端的接入,以及如何打通各个节点所在的局域网。 ❝虽然 Headscale 兼容 Tailscale 的 ACL,但还是有些许差异的。 Headscale 配置 ACL 的方法 要想在 Headscale 中配置 ACL,只需使用 HuJSON 或者 YAML 编写相应的 ACL 规则(HuJSON 格式的文件名后缀为 hujson), 然后在 Headscale 的配置文件中引用 ACL 规则文件即可。 举个例子你就明白了,现在我给 guest-2 打上一个 tag: $ headscale node tag -i 13 -t tag:test Machine updated $ headscale
接下来还需要修改 Headscale 的配置文件,引用上面的自定义 DERP 配置文件。 修改完配置后,重启 headscale 服务: $ systemctl restart headscale 在 Tailscale 客户端上使用以下命令查看目前可以使用的 DERP 服务器: $ tailscale 你需要把这个 JSON 文件变成 Headscale 服务器可以访问的 URL,比如在 Headscale 主机上搭个 Nginx,或者上传到对象存储(比如阿里云 OSS)。 接下来还需要修改 Headscale 的配置文件,引用上面的自定义 DERP 的 URL。 update_frequency: 24h 修改完配置后,重启 headscale 服务: $ systemctl restart headscale 在 Tailscale 客户端上使用以下命令查看目前可以使用的
Headscale:自建的Tailscale 如果你喜欢Tailscale的功能,但不想依赖商业服务,可以试试Headscale。它是Tailscale控制服务器的开源实现。 部署Headscale: # 下载Headscale wget https://github.com/juanfont/headscale/releases/latest/download/headscale_linux_amd64 chmod +x headscale_linux_amd64 sudo mv headscale_linux_amd64 /usr/local/bin/headscale # 创建配置文件 sudo mkdir -p /etc/headscale sudo cat > /etc/headscale/config.yaml << EOF server_url: https://headscale.example.com enable headscale sudo systemctl start headscale 客户端连接: # 创建用户 sudo headscale users create myuser #
latest container_name: vnts restart: unless-stopped # 加入自定义网络并指定静态 IP networks: headscale_network "255.255.255.0" # 子网掩码 #VNT_WG_SECRET_KEY: "<Base64 编码的私钥>" # WireGuard 私钥 networks: headscale_network
[4] Tailscale 基础教程:部署私有 DERP 中继服务器 – 云原生实验室: https://icloudnative.io/posts/custom-derp-servers/ [5] headscale
raw.githubusercontent.com/zdz/ServerStatus-Rust/master/config.toml' touch stats.json docker-compose up -d 5.客户端说明 # 公网环境建议 headscale