openNDS(開放網路分界服務)是一種高效能、佔用空間小的強制門戶。
它提供公共區域網路和網際網路之間的邊界控制網關。
它支援從小型獨立場所到具有多個門戶入口點的大型網狀網路的所有範圍。
支援客戶端驅動的強制入口網站偵測 (CPD) 方法和網關驅動的強制入口網站識別方法(CPI - RFC 8910 和 RFC 8908)。
在其預設配置中,openNDS 提供動態產生的自適應啟動頁面序列。點擊「繼續」按鈕即可授予網路存取權限,並接受服務條款。一個簡單的選項啟用使用者登入的輸入表單。
該軟體包包含 FAS API,允許許多靈活的客製化選項。
完全支援創建複雜的第三方身份驗證應用程式。
網路託管的https 入口網站可以在沒有安全錯誤的情況下實施,以激發最大的使用者信心。
2.1 持續進修
強制網路入口網站偵測 (CPD) 是一種用戶端驅動的流程,適用於所有現代行動裝置、大多數桌面作業系統和大多數瀏覽器。 CPD 進程會自動發出連接到網路的連接埠 80 請求,作為探測強制狀態的一種手段。
這個過程有時被稱為“金絲雀測試”,由客戶驅動,經過多年的發展,已成為可靠的事實上的標準。 openNDS 偵測到此探測並向連接的用戶端裝置提供特殊的「啟動」網頁序列。
2.2 CPI - RFC 8910 和 RFC 8908
強制門戶識別 (CPI) 是標準 RFC8910(DHCP 和路由器通告中的強制門戶識別)和 RFC8908(強制門戶 API)中定義的網關驅動程序。
網關路由器透過提供用戶端可以存取進行身份驗證的 URL 來通知連接客戶端它處於強制狀態。
用戶端可以存取該 URL,以與傳統 CPD 方法中相同的入口網站「啟動」頁面序列提供服務。
或者,用戶端可以使用此 url 存取 RFC8908 Captive Portal API,最終獲得啟動頁面序列以進行身份驗證。
從 openNDS v9.5.0 開始,兩種形式都支援 CPI 方法,並且預設為啟用。它可以作為配置選項停用。
注意:在撰寫本文時(2021 年 11 月),很少有客戶端設備支援 CPI
安裝後,將立即向連線客戶端提供簡單的三階段動態 html 啟動頁面序列。客戶端登入記錄在日誌中。
與“點擊繼續”預設設定非常相似,此選項有一個初始“登入頁面”,向使用者顯示一個表單,使用者必須在其中輸入姓名和電子郵件地址。
支援資料量和資料速率閾值,無需額外依賴,獨立上傳和下載,並為所有客戶端提供可配置的預設值或每個客戶端的特定值。
如果超過資料量閾值,用戶端將被取消身份驗證。
如果超過速率閾值,則每個用戶端使用動態桶過濾器來限制資料包層級的資料速率,要么限制速率接近閾值,要么透過增加桶大小以增加延遲為代價。
還可以使用第三方流量控制包,例如在提供內建閾值的同時提供系統範圍的速率上限。
客製化 openNDS 的方法有很多:
openNDS 的入口網站元件是其轉送驗證服務 (FAS) 。
FAS 以一組動態網頁的形式提供使用者驗證/認證。
這些網頁可能由 openNDS 本身提供服務,也可能由第三方 Web 伺服器提供服務。第三方 Web 伺服器可能位於遠端網際網路、區域網路或 openNDS 路由器上。
預設的「按一下繼續」和「使用者名稱/電子郵件地址登入」選項是 openNDS 本身提供啟動頁面序列的範例。
有關完整文檔,請參閱 https://opennds.rtfd.io/
您可以選擇穩定版、最新版或舊版的歷史文件。