示範用 OpenNHP 保護伺服器

https://acdemo.opennhp.org

🎭
未授權
使用者
👤
已授權
使用者
隱形且被阻擋
可見且允許
🛡️
NHP
Network-infrastructure
Hiding Protocol
🖥️
受保護
伺服器
acdemo.opennhp.org

1) 受保護的伺服器預設對未驗證使用者「隱形」

預設情況下,任何嘗試連線到受保護伺服器的行為都會導致逾時(TIME OUT)錯誤, 因為所有連接埠都是關閉的,使伺服器看起來像離線,實際上達到「隱形」的效果。

嘗試存取受保護的伺服器:

🚀 嘗試存取:https://acdemo.opennhp.org NHP 示範 - 伺服器對未驗證使用者隱形

2) 連接埠掃描同樣回傳逾時

對伺服器進行連接埠掃描同樣會回傳逾時(TIME OUT)錯誤。 所有連接埠對未授權掃描器都顯示為關閉狀態。您可以使用線上連接埠掃描器自行嘗試:

3) 透過登入網頁或 StealthDNS 應用程式進行驗證

使用登入網頁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< 10ms
連接埠隱藏100K req/s< 1ms
DNS 解析50K req/s< 5ms

*在 AWS t3.xlarge 執行個體上測試

整合

將 OpenNHP 整合到您的應用程式

根據您的應用程式類型選擇合適的 SDK:原生用戶端應用程式或網頁應用程式。

🖥️

用戶端應用程式整合(桌面與行動裝置)

StealthDNS 是一個開源範例應用程式,展示如何將 OpenNHP SDK 整合到原生桌面和行動應用程式中。 透過研究其原始碼,您可以學習:

  • 如何在您的應用程式中初始化 NHP-Agent
  • 如何向 NHP-Server 發送加密敲門請求
  • 如何處理身份驗證和存取權杖
  • 如何在 NHP 授權後存取受保護的資源
🌐

網頁應用程式整合(JavaScript SDK)

OpenNHP JavaScript Agent 是將 NHP 身份驗證整合到網頁應用程式的官方 SDK。 它提供輕量級、瀏覽器相容的解決方案,用於基於網頁的方式存取 NHP 保護的資源。

  • 適用於瀏覽器環境的純 JavaScript 實作
  • 與現有網頁框架無縫整合
  • NHP 身份驗證流程與連線狀態視覺化
  • 適用於任何受 OpenNHP 保護的後端
📖 OpenNHP SDK 文件

準備好隱藏您的基礎設施了嗎?

部署 OpenNHP,讓您的服務對攻擊者完全隱形。