Vpn
Openvpn 忽略客戶端配置
我有一個設置,我向客戶端頒發 openvpn 證書以將他們的流量重定向到特定站點。限制每個客戶端重定向到的站點很重要。
每個客戶端都有應該在客戶端配置/配置目錄/中的伺服器中路由的 IP,如下所示:推送路由 123.123.123.123 255.255.255.255。
客戶端將獲得一個 ovpn 文件,其中包含要在其終端上設置的密鑰和配置。問題是客戶端可能會編輯他們的 ovpn 文件並通過 VPN 路由更多流量,即使新路由不在伺服器端配置上。這將允許他們訪問他們不應該訪問的網站。
有沒有限制這種行為的解決方案或者我可以使用的其他工具?
筆記:
- OpenVPN 伺服器只連接了一個公共 IP,並且正在轉發流量。
- 鎖定權限不是一種選擇,因為這是 BYOD 方案。
- openvpn 伺服器上的出站防火牆限制也不是一個選項,因為每個客戶端都被路由到一組不同的 IP。
你是對的。客戶端可以編輯其本地 ovpn 文件並告訴它忽略推送的路由,然後將其配置為將所有流量路由到網關。我自己必須這樣做幾次才能進行測試。OpenVPN 沒有辦法限制它。
您有 2 個選項:
- 鎖定客戶端 OVPN 文件的權限,使其無法編輯
- 在 OpenVPN 伺服器上實施防火牆規則,以阻止除特定子網之外的出站流量
如果您在公司環境中,您可能已經擁有控制使用者電腦權限的機制。第一個選項可能很簡單。
如果您無法控制使用者對文件的權限,那麼防火牆規則是最好的選擇。您已經必須設置轉發偽裝工作的規則(例如:https ://askubuntu.com/a/578550/283173 )。您可以插入其他 iptables 規則以僅允許您的特定子網。
**更新:**根據您修改後的註釋,更清楚的是,您唯一的選擇是伺服器端的防火牆。您必須認真考慮您的出站過濾器。您最終可能要做的是製作您自己的程序來智能地創建防火牆規則。如果您知道每個客戶端都被路由到特定的 IP,您可以在客戶端連接時在防火牆中動態打開路由。
learn-address
當客戶端連接時,您可以使用伺服器配置中的指令連接到 OpenVPN 的系統,將有關客戶端連接的詳細資訊發送到您的自定義程序中。