Proxy

一種將 https 連接列入白名單(或黑名單)的方法

  • January 13, 2015

我正在嘗試使用 WifiDog、AuthPuppy 和 Squid 創建一個強制門戶。我們只想提供對選定數量的資源的訪問,例如 2-3 個網站和應用商店(Apple 和 Google)。

雖然阻止和允許 http 請求很容易:WifiDog 可以選擇將 http 重定向到透明代理。我將所需的網址列入白名單,其餘網址被阻止。但是對於安全(https)連接,是否有類似的方法可以做到這一點?

感謝一百萬的任何建議。

不容易。

預設情況下,HTTPS 連接是加密的,您不能通過代理傳遞它們……您可以做的是通過目標 IP 過濾它們,只允許某些地址並使用防火牆拒絕其他所有內容;但是,有些伺服器使用虛擬主機並在同一 IP 下託管不同的網站,因此如果同一台伺服器同時託管列入白名單的網站和列入黑名單的網站,您不能只阻止其中一個。

然而,一個解決方案是讓使用者同意將 Squid 伺服器的 IP 配置為瀏覽器的代理,在這種情況下,流量仍然是加密的(它將使用CONNECT通過代理的請求進行隧道傳輸),但目標主機名將是明文的,並且您將能夠對其應用 ACL。

因此,一種可能的解決方案是將所有 HTTP 流量重定向到一個頁面,該頁面解釋如何在設備上設置代理伺服器的地址,並阻止直接 HTTPS 流量。一旦使用者在他們的設備上配置了代理,他們就可以按照您的規則瀏覽網路。


哦,與您的問題無關,但您是否考慮過使用 EAP 來驗證您的使用者(並為新使用者註冊和獲取他們的 EAP 憑據提供開放網路),而不是令人討厭的強制門戶?

引用自:https://serverfault.com/questions/659169