NetBird
1. 概述
NetBird 由管理服务器和加密私有网络组成。Linux、macOS、Windows 和 PicoKVM 可作为节点接入同一个 NetBird 管理服务器,PLC 接入功能尚在规划中。节点上线且访问策略允许通信后,远程电脑可通过目标节点的 NetBird IP 地址打开其 Web 管理界面。
这些节点不需要位于同一个物理局域网。本文所说的“同一私有网络”,是指所有节点接入同一个 NetBird 管理服务器,并且 NetBird 访问策略允许节点之间通信。
本文使用以下占位符:
| 项目 | 示例 |
|---|---|
| NetBird 服务端域名 | <NETBIRD_SERVER_DOMAIN> |
| NetBird Setup Key | <NETBIRD_SETUP_KEY> |
| 目标节点名称 | <TARGET_PEER_NAME> |
| 目标节点 NetBird IP | <TARGET_NETBIRD_IP> |
Setup Key 可授权设备加入私有网络。不要在截图、日志或共享文档中公开该密钥;不再使用或已经泄露的密钥应及时在 NetBird 控制台中撤销。
2. 部署 NetBird 管理服务器
2.1 准备服务器和域名
-
准备一台具有公网 IP 的服务器和一个域名,添加
A记录,将<NETBIRD_SERVER_DOMAIN>解析到服务器公网 IP。
DNS 记录说明A记录用于将域名解析到一个 IPv4 地址。- 主机记录
@表示根域名。例如,域名为picokvm.com时,@表示picokvm.com;服务配置完成后,可通过https://picokvm.com访问。 - 记录值应填写部署 NetBird 管理服务的服务器公网 IPv4 地址。
-
在云服务器安全组和系统防火墙中放行 NetBird 所需端口。

如果 NetBird 管理服务部署在国内云服务器,并通过域名提供 HTTP 或 HTTPS 访问,需要按要求完成 ICP 备案。域名实名认证不等同于 ICP 备案。
如果服务部署在腾讯云,即使域名已经在其他云服务商完成备案,也需要先在腾讯云完成接入备案。域名未备案或未完成腾讯云接入备案时,HTTP 和 HTTPS 访问都会被阻断,并可能显示“未备案”或“未接入备案”提示。
2.2 安装自建服务端
-
域名解析生效后,在服务器上执行:
sudo apt updatesudo apt install -y jqexport NETBIRD_DOMAIN=<NETBIRD_SERVER_DOMAIN>curl -fsSL https://github.com/netbirdio/netbird/releases/latest/download/getting-started.sh | bash
-
等待安装程序提示 NetBird 服务已经启动。

2.3 初始化并登录管理后台
-
打开
https://<NETBIRD_SERVER_DOMAIN>,创建第一个管理员账号。
-
使用管理员账号登录。
-
首次登录后,NetBird 会进入初始化向导。根据需要访问的资源选择类型,本文以 Domain 为例。

-
输入需要通过 NetBird 访问的域名和资源名称,然后创建资源。

-
创建资源后,向导会生成用于 Routing Peer 接入的 Setup Key。请复制该密钥并妥善保存。

-
点击 Install Routing Peer 进入安装说明页面。该页面会分别提供 Linux、macOS、Windows 和 Docker 等平台的 NetBird 安装及接入步骤,可根据实际使用的平台查看并保存对应说明。

-
如果跳过了初始化向导,或者需要为其他设备创建新密钥,可在 NetBird 管理后台进入 Setup Keys 创建并复制 Setup Key。下面各平台的接入命令使用该密钥替换
<NETBIRD_SETUP_KEY>。 -
完成或跳过初始化向导后,打开 Peers,确认管理后台可以正常使用。

3. 接入不同平台
本节中的所有平台都需要使用同一个 https://<NETBIRD_SERVER_DOMAIN>。每个平台完成连接后,打开 NetBird 管理后台的 Peers,确认对应节点已经上线。
3.1 Linux
-
安装 NetBird:
curl -fsSL https://pkgs.netbird.io/install.sh | sh -
将 Linux 设备连接到自建管理服务器:
sudo netbird up \--management-url https://<NETBIRD_SERVER_DOMAIN> \--setup-key <NETBIRD_SETUP_KEY>
-
检查连接状态:
netbird status
3.2 macOS
-
根据 NetBird 安装说明 下载并安装 macOS 客户端。

-
将 macOS 设备连接到自建管理服务器:
netbird up \--management-url https://<NETBIRD_SERVER_DOMAIN> \--setup-key <NETBIRD_SETUP_KEY> -
执行
netbird status,确认客户端已经连接。
3.3 Windows
-
根据 NetBird 安装说明 下载并安装 Windows 客户端。

-
如需使用 Setup Key 接入,以管理员身份打开 PowerShell 并执行:
netbird up --management-url https://<NETBIRD_SERVER_DOMAIN> --setup-key <NETBIRD_SETUP_KEY> -
如需交互式登录,打开 Settings -> General,选择自建管理服务器并输入
https://<NETBIRD_SERVER_DOMAIN>。
-
点击 Connect,然后在浏览器中完成登录。
3.4 PicoKVM
- 打开 PicoKVM Web 管理界面,进入 Settings -> Access -> NetBird。
- 在 Management URL 中输入
https://<NETBIRD_SERVER_DOMAIN>,然后启动 NetBird 服务。 - 复制并打开生成的 Binding Link,登录同一个 NetBird 管理后台并绑定 PicoKVM。
- 返回 PicoKVM,确认 NetBird 状态已经上线。

3.5 Luckfox Lyra PLC
Luckfox Lyra PLC 的 NetBird 接入功能尚在规划中,功能可用后将补充客户端接入步骤和截图。
4. 验证私有网络访问
-
打开 NetBird 管理后台的 Peers,确认远程电脑和目标节点都处于在线状态。
-
复制目标节点的 NetBird IP 地址,并将其作为
<TARGET_NETBIRD_IP>。 -
在远程电脑上检查连接:
netbird statusping <TARGET_NETBIRD_IP> -
打开目标设备的 Web 管理界面:
http://<TARGET_NETBIRD_IP>如果目标设备使用 HTTPS 或非默认端口,请填写实际协议和端口。
5. 常见问题
- 管理后台中没有显示节点:检查管理服务器地址、Setup Key 是否有效、系统时间以及 NetBird 服务状态。
- 节点在线但无法访问目标设备:检查 NetBird 访问策略是否允许远程电脑与目标节点通信。
- 无法 Ping 通但 Web 页面可打开:可能是 ICMP 被拦截,可直接测试 Web 服务。
- Web 页面无法打开:确认目标设备上的服务已经启动,并且防火墙允许来自 NetBird 接口的流量。
- Setup Key 已泄露或过期:在管理后台撤销原密钥并创建新密钥。