Knock 敲门不止飞牛,轻松配置公网访问,更安全的工具
把公网入口收敛到统一网关,用子域、反代、认证和访问控制保护你的自托管服务。

如果你第一次接触 敲门 knock,建议按下面的顺序阅读:
| 你的场景 | 建议阅读 |
|---|---|
| 我只想先装好并登录后台 | 安装与首次进入 |
我分不清 7998 / 7999 是什么 | 端口、入口与访问路径 |
| 我不知道应该选直连、反代还是子域 | 直连模式、反代模式与子域模式 |
| 我想先知道为什么要做这个产品 | 为什么做敲门 knock |
| 我有公网 IP 和域名,想让每个服务用独立子域 | 如何使用子域模式搭建直连访问 |
| 我仍然需要登录后访问飞牛原始端口或其他原始端口 | 直连模式上手 |
| 我想用 fknock 给多个内网服务做统一入口 | 用 fknock 搭建反代访问 |
| 我想让飞牛 App 在公网下也能正常使用 | 如何使用飞牛 App |
| 我想把飞牛分享链接直接发给别人,但不想顺带放开整站 | 飞牛分享直通 |
| 我想只让某些地区或固定网段能碰到统一入口 | 网关可见性 |
| 我想回到家里 Wi-Fi 后,让子域优先走内网而不是继续绕公网 | 智能连接 |
| 我想按日期查看网关收到的真实请求 | 请求日志 |
| 我想给登录失败、DDNS、隧道断开加通知 | 事件中心与通知 |
| 我想把 SSH / MySQL / Redis 这类非 Web 服务也接进来 | 协议映射 |
| 我想保护宿主机 SSH 登录入口 | SSH 安全 |
| 我想在统一网关里加一层 Web 攻击规则检测 | WAF |
| 我想配置 IP 归属地和地区库来源 | IP 归属地设置 |
| 我想在后台里直接开一个可恢复终端 | Web 终端 |
| 我有 IPv6,想直接从外网访问 | 用 fknock 搭建 IPv6 直连访问 |
| 我想给飞牛和子域站点接中国国内加速 | 用腾讯云 EdgeOne 给 fknock 做加速与回源、用阿里云 ESA 给 fknock 做加速与回源 |
| 我需要先理解 TOTP、Passkey、外部账号登录 | 认证体系总览、TOTP 与密码器 App、Passkey、外部账号登录 |
| 我想把登录页的人机验证切到 Cloudflare | 验证码设置、Cloudflare Turnstile 启用指南 |
飞牛桌面的“敲门 knock”图标:这是管理后台入口,用来改模式、绑 TOTP、配证书、配映射、看日志。7999 端口或其映射出来的域名:这是统一访问入口,对外访问最终都会走这里。一句话理解:
7999 或域名,是在“经过 fknock 访问服务”回答“应该怎么装、怎么进、应该选哪个模式、第一步该配什么”。
回答“某个功能到底是做什么的、字段怎么填、适用边界是什么、常见误区有哪些”。
回答“我们为什么要做这个产品,这个产品解决了什么问题”。
回答“如果我是某一种典型用户,应该按什么顺序把所有零散功能串起来”。
7999 入口,以及它和 IP 白名单的关系auth.example.com 和业务子域组织访问记住我、退出登录、自动白名单之间的真实行为重写 HTML、去除前缀、根目录模式 这些映射选项分别适合什么应用7999site_key 和 secret_key 去哪里拿CIDR 先收窄谁能碰到统一入口HTTPS localhost:7999 和 HTTP localhost:7999已登录 / 需要鉴权 / 路由类型 / 上游目标 这些字段应该怎么读IP 漂移轨迹 应该怎么读记住我、普通登录、自动白名单的默认时长和自定义有效期如何一起理解SSH / MySQL / Redis,但不适合浏览器页面tmux,以及为什么刷新页面后还能接回原会话