Centos
是否可以限制使用者只能訪問某個網路介面?
我正在執行 CentOS 8 伺服器,我想創建一個只能通過 VPN 訪問網際網路的使用者。這意味著該使用者使用的所有應用程序只能通過 VPN 訪問網際網路。而其餘使用者只能訪問“正常”網路。VPN 隧道使用介面 tun0 的地方。
編輯:
對於任何在我之後嘗試做同樣事情的人,我就是這樣做的:使用帶有 VPN 拆分隧道的 DNS 時出現問題。CentOS 8
通過
iptables
:iptables -A OUTPUT -o VPN_INTERFACE -m owner --uid-owner USERNAME -j ACCEPT iptables -A OUTPUT -m owner --uid-owner USERNAME -j DROP # or REJECT
筆記:
- 您可以使用
-I
代替,-A
但是這兩個命令必須以相反的順序發出(因為-I
沒有參數將插入規則作為第一個)。- 如果您使用
iptables -P OUTPUT DROP
(預設的 OUTPUT 策略 - 不允許任何內容),則只需要第一個規則。通過
firewalld
:通過豐富的規則或/和
/etc/firewalld/direct.xml
(基本相同):
- https://firewalld.org/documentation/man-pages/firewalld.richlanguage.html
- https://www.computernetworkingnotes.com/rhce-study-guide/firewalld-rich-rules-explained-with-examples.html
- https://www.liquidweb.com/kb/an-introduction-to-firewalld/
不要忘記DNS。如果您使用 VPN 以外的介面解析域名,您的使用者將無法訪問網站。