Skip to content

官方版本

headscale 的官方版本提供了适用于各种平台的二进制文件以及适用于 Debian 和 Ubuntu 的 DEB 软件包。
两者均可在 GitHub 发布页面 获取。

使用 Debian/Ubuntu 软件包(推荐)

建议在基于 Debian 的系统上使用我们的 DEB 软件包来安装 headscale,因为这些软件包会配置一个本地用户来运行 headscale,提供默认配置,并附带 systemd 服务文件。
支持的发行版包括 Ubuntu 22.04 或更高版本、Debian 12 或更高版本。

  1. 为您的平台下载最新的 headscale 软件包(Ubuntu 和 Debian 使用 .deb 文件)。

    HEADSCALE_VERSION="" # 请参考上述 URL 获取最新版本,例如 "X.Y.Z"(注意:不要添加 "v" 前缀!)
    HEADSCALE_ARCH="" # 您的系统架构,例如 "amd64"
    wget --output-document=headscale.deb \
     "https://github.com/juanfont/headscale/releases/download/v${HEADSCALE_VERSION}/headscale_${HEADSCALE_VERSION}_linux_${HEADSCALE_ARCH}.deb"
    
  2. 安装 headscale:

    sudo apt install ./headscale.deb
    
  3. 通过编辑配置文件来配置 headscale

    sudo nano /etc/headscale/config.yaml
    
  4. 启用并启动 headscale 服务:

    sudo systemctl enable --now headscale
    
  5. 验证 headscale 是否按预期运行:

    sudo systemctl status headscale
    

请继续阅读入门指南以注册您的第一台机器。

使用独立二进制文件(高级)

高级

这种安装方法被视为高级操作,因为您需要自行处理本地用户和 systemd 服务。如果可能,请改用 DEB 软件包社区软件包

本节介绍根据要求和假设安装 headscale 的方法。headscale 由专用的本地用户运行,服务本身由 systemd 管理。

  1. GitHub 发布页面下载最新的 headscale 二进制文件

    sudo wget --output-document=/usr/bin/headscale \
    https://github.com/juanfont/headscale/releases/download/v<HEADSCALE VERSION>/headscale_<HEADSCALE VERSION>_linux_<ARCH>
    
  2. 使 headscale 可执行:

    sudo chmod +x /usr/bin/headscale
    
  3. 添加一个专用的本地用户来运行 headscale:

    sudo useradd \
     --create-home \
     --home-dir /var/lib/headscale/ \
     --system \
     --user-group \
     --shell /usr/sbin/nologin \
     headscale
    
  4. 下载您所选版本的示例配置文件,并将其保存为:/etc/headscale/config.yaml。根据您的本地环境调整配置。详情请参阅配置

    sudo mkdir -p /etc/headscale
    sudo nano /etc/headscale/config.yaml
    
  5. headscale 的 systemd 服务文件 复制到 /etc/systemd/system/headscale.service,并根据您的本地设置进行调整。以下参数可能需要修改:ExecStartWorkingDirectoryReadWritePaths

  6. /etc/headscale/config.yaml 中,将默认的 headscale Unix 套接字覆盖为一个可由 headscale 用户或组写入的路径:

    config.yaml
    unix_socket: /var/run/headscale/headscale.sock
    
  7. 重新加载 systemd 以加载新的配置文件:

    systemctl daemon-reload
    
  8. 启用并启动新的 headscale 服务:

    systemctl enable --now headscale
    
  9. 验证 headscale 是否按预期运行:

    systemctl status headscale
    

请继续阅读入门指南以注册您的第一台机器。