Skip to content

Windows 部署(x86_64)

Windows 版通过原生安装器安装为全机服务,并提供 fn-knock Windows 管理程序与系统托盘入口。它只支持 64 位 x86_64 Windows,需要管理员权限。管理程序不是浏览器容器:它负责服务、端口、面板密码和更新,管理后台仍在系统浏览器中打开。

新安装的管理后台和网关都只监听本机回环地址。Windows 当前没有在管理程序中公开网关监听范围的设置,也不内置 FRP 或 Cloudflared。因此,本页不提供把 7999 直接暴露到局域网或公网的操作;需要现成公网直达、直连授权或应用内隧道管理时,选择其他部署方式。

安装前确认

  • 系统为 64 位 Windows,且当前账户可以通过 UAC 提权。
  • 默认的 79917998799779967999 没有被其他程序占用;它们可以在安装后由管理程序修改。
  • 管理后台只供安装该程序的本机使用,不要规划局域网、VPN 或反向代理访问它。

获取并校验安装包

Windows 更新通道在官方清单中提供当前的 x86_64 安装包、大小和 SHA-256。以下命令会下载当前包,先校验哈希与 Authenticode 签名,再请求管理员权限启动安装器:

powershell
$latest = Invoke-RestMethod 'https://cor.fnknock.cn/latest.json'
$package = $latest.packages.windows.x86_64
$installer = Join-Path $env:TEMP $package.file_name

Invoke-WebRequest -Uri $package.download_url -OutFile $installer

$actualHash = (Get-FileHash -LiteralPath $installer -Algorithm SHA256).Hash.ToLowerInvariant()
if ($actualHash -ne $package.sha256.ToLowerInvariant()) {
  throw '安装包 SHA-256 校验失败。'
}

$signature = Get-AuthenticodeSignature -FilePath $installer
if ($signature.Status -ne 'Valid') {
  throw "安装包签名无效:$($signature.Status)"
}

Start-Process -FilePath $installer -Verb RunAs

不要使用面向飞牛 FPK 的下载链接,也不要安装开发构建产生的 unsigned 安装包。

安装与首次进入

  1. 在安装器中确认 UAC 提权,完成全机安装。

  2. 安装完成后启动 Windows 管理程序,或从开始菜单启动它。

  3. 在管理程序中确认服务状态为就绪,点击“打开管理后台”。默认会打开:

    text
    http://127.0.0.1:7991/
  4. 按页面提示设置管理面板密码,再配置认证、映射和证书。

管理面板密码只保护本机管理入口,与访问者通过网关使用的 TOTP、账号密码或 Passkey 不同。

默认端口与监听范围

端口新安装时的监听范围用途
7991127.0.0.1管理面板
7998127.0.0.1Rust 管理后端
7997127.0.0.1认证服务
7996127.0.0.1Go 网关内部 gRPC
7999127.0.0.1网关入口

fn-knock Windows 管理程序中可以修改这五个端口;保存后服务会重启并检查新端口是否就绪,失败会恢复原配置。五个端口必须互不重复,799879977996 不是对外入口。

管理后台始终只接受本机回环访问。新安装的网关也只监听回环,路由器端口转发、Windows 防火墙放行或把 7999 填入另一台机器的地址都不会形成受支持的公网入口。不要把修改 %ProgramData%\FnKnock\config\runtime.json 当作文档支持的配置方法。

如果由同一台 Windows 主机上的独立隧道或反向代理提供外部入口,它可以回源到 127.0.0.1:7999;该进程不由 fn-knock 管理,仍须保留原始 Host 和真实客户端 IP。Windows 版没有 系统设置 → FRP系统设置 → Cloudflared 的内置资源与进程管理。

日常管理、更新与数据

关闭管理程序窗口会把它缩到系统托盘,不会停止 FnKnock 服务。托盘菜单和主窗口可用于打开管理后台、启动/停止/重启服务、修改端口、清除管理密码和检查更新。

更新应在 fn-knock Windows 管理程序中执行“检查更新”。它会从官方通道下载安装包、核对大小和 SHA-256 后启动安装器;网页中的 关于 / 更新 只显示版本和发布说明。安装器升级时会短暂停止服务,并在新版本未能就绪时恢复原有程序和数据。更新前仍应先导出应用备份。

位置内容
%ProgramFiles% 下的应用目录管理程序、服务和网关程序
%ProgramData%\FnKnock配置、SQLite、证书、WAF、日志、状态和回滚数据

卸载会移除服务、程序文件和相关规则,但会保留 %ProgramData%\FnKnock,以便重新安装或恢复。该目录包含敏感数据;确认不再需要恢复后,再以管理员权限单独清理。

Windows 版能力边界

能力状态
子域或路径映射配置可在本机管理后台配置
直连授权、宿主机防火墙管理不支持
智能连接、Web 终端、SSH 安全不支持
内置 FRP、Cloudflared不支持;可自行管理同机外部进程
ACME 证书支持内置 DNS-01;详见 证书与 HTTPS
更新安装由 Windows 管理程序处理

忘记管理面板密码时,优先使用管理程序中的“清除管理密码”。管理程序无法打开时,可在管理员 PowerShell 中执行:

在应用安装目录中以管理员 PowerShell 执行:

powershell
.\fn-knock-service.exe reset-panel-password

该操作会清除面板密码、面板会话和登录退避状态,不会删除映射、证书或其他网关数据。

继续阅读:

QQ群:1081609274