OpenNHP 保护的演示服务器

https://ac.opennhp.org

🎭
✗
未授权
用户
👤
✓
已授权
用户
不可见 & 已拦截
⊘
可见 & 已放行
🛡️
NHP
Network-infrastructure
Hiding Protocol
🖥️
受保护的
服务器
ac.opennhp.org

演示视频回放

默认不可见,仅在验证后可访问。

观看 OpenNHP 如何通过 Auth Plugin、Web NHP-Agent 和 StealthDNS App 工作流对用户进行身份验证,并动态公开授权资源。

在线演示体验

1) 受保护的服务器默认对未认证用户"不可见"

默认情况下,任何连接受保护服务器的尝试都会导致 TIME OUT 错误, 因为所有端口都是关闭的,使服务器看起来处于离线状态,实际上是"不可见的"。

尝试访问受保护的服务器:

🚀 尝试访问:https://ac.opennhp.org NHP 演示 - 服务器对未认证用户不可见

2) 端口扫描超时 —— 服务器看似离线

对服务器进行端口扫描会返回 TIME OUT 错误,nmap 还会报告 "Host seems down" —— 对未授权扫描器而言,服务器不仅看似被防火墙挡住,更像是根本不在线。您可以使用在线端口扫描工具亲自验证:

直接运行 nmap 也会返回 "Host seems down" —— 从攻击者的视角看,这台服务器并非只是被防火墙拦截,而是看起来根本不存在:

$ nmap --reason ac.opennhp.org
Starting Nmap 7.80 ( https://nmap.org ) at 2026-05-07 11:40 PDT
Note: Host seems down. If it is really up, but blocking our ping probes, try -Pn
Nmap done: 1 IP address (0 hosts up) scanned in 3.04 seconds

✗ 0 hosts up(无主机在线)—— nmap 的主机发现本身就失败了,扫描器在尝试任何端口探测之前就已认定服务器离线。

3) 通过 Auth Plugin、Web NHP-Agent 或 StealthDNS 应用进行认证

使用Auth Plugin 网页、Web NHP-Agent或 StealthDNS 应用与 NHP 服务器进行认证。 认证成功后,您即可访问受保护的服务器。

4) 认证后获得访问权限

NHP 认证成功后,受保护的服务器变为可访问状态。 您现在可以看到之前不可见的受保护内容。

已认证 ✓ 访问已授权
NHP 演示 - 认证后获得访问权限
端口隐藏

隐藏应用服务器端口

启用 NHP 之前,所有服务器端口都是暴露的。启用 NHP 之后,它们变得完全不可见。

启用 NHP 之前 ⚠️ 已暴露

应用服务器端口可见

$ nmap -sS -p 1-65535 server.example.com
PORT STATE SERVICE
22/tcp open ssh
80/tcp open http
443/tcp open https
3306/tcp open mysql
8080/tcp open http-proxy

✗ 所有端口对攻击者可见
✗ 攻击面完全暴露
✗ 容易受到端口扫描攻击

启用 NHP 之后 🛡️ 已保护

所有端口对未授权者隐藏

$ nmap -sS -p 1-65535 server.example.com
PORT STATE SERVICE
All 65535 scanned ports are filtered
Host seems down or heavily firewalled.
No ports visible to unauthorized scanners.

✓ 所有端口对攻击者不可见
✓ 零攻击面暴露
✓ 仅认证用户可以访问

工作流程

NHP 的工作原理

"先认证后连接"范式的实际运作。

步骤 1

完全不可见

受保护的资源没有公开存在。DNS 返回 NXDOMAIN,端口显示为关闭, IP 地址未知。对于未授权的观察者来说,该服务不存在。

步骤 2

加密敲门

授权客户端使用 Noise Protocol Framework 发送加密的"敲门"数据包。 这可以在不向观察者暴露服务存在的情况下证明其身份。

步骤 3

双向认证

客户端和服务器使用现代非对称加密技术相互认证。 无共享密钥、无中间人攻击漏洞、无重放攻击。

步骤 4

限时访问

认证成功后,客户端获得临时访问权限。 防火墙规则被动态创建并自动过期,最大限度减少暴露。

性能

基准测试结果

NHP 提供高性能表现,延迟开销极低。

操作吞吐量延迟
认证10K req/s< 100ms
端口隐藏100K req/s< 1ms
DNS 解析50K req/s< 5ms

*在 AWS t3.xlarge 实例上测试

集成

将 OpenNHP 集成到您的应用中

根据您的应用类型选择合适的 SDK:原生客户端应用或 Web 应用。

🖥️

客户端应用集成(桌面端 & 移动端)

StealthDNS 是一个开源示例应用,展示了如何将 OpenNHP SDK 集成到原生桌面和移动应用中。 通过研究其源代码,您可以学习:

  • ✓ 如何在您的应用中初始化 NHP-Agent
  • ✓ 如何向 NHP-Server 发起加密敲门请求
  • ✓ 如何处理认证和访问令牌
  • ✓ 如何在 NHP 授权后访问受保护的资源
🌐

Web 应用集成(JavaScript SDK)

OpenNHP JavaScript Agent 是将 NHP 认证集成到 Web 应用的官方 SDK。 它为基于 Web 的 NHP 保护资源访问提供了轻量级、浏览器兼容的解决方案。

  • ✓ 适用于浏览器环境的纯 JavaScript 实现
  • ✓ 与现有 Web 框架无缝集成
  • ✓ NHP 认证流程和连接状态可视化
  • ✓ 适用于任何由 OpenNHP 保护的后端
📖 OpenNHP SDK 文档

准备好隐藏您的基础设施了吗?

部署 OpenNHP,让您的服务对攻击者不可见。