Ubuntu

配置 IPTables 以阻止 VPN Disconnect 上的特定埠?

  • April 24, 2012

我正在使用最新的 Ubuntu 發行版……而且我的 VPN 連接相當不穩定。我正在使用 Ubuntu 附帶的預設網路管理器應用程序。

我在維持與我的 VPN 的連接時遇到問題,這是一個單獨的問題,我正在尋找能讓我更安全的東西。我想要一種自動的方法來在 PPTP VPN 斷開連接時關閉特定埠,或者在那時殺死一個應用程序……更好的是在停止流量的同時重新連接到 VPN。

任何人都知道為 Linux 執行此操作的應用程序/我如何配置 IPTables 以阻止埠?

如果您不希望任何流量在不安全的情況下發送,我建議您設置路由表而不使用預設路由,而只設置到 VPN 伺服器的特定路由。這意味著當您的 VPN 連接中斷並刪除 VPN 上的路由時,將不會有任何匹配的流量路由並且它不會出去。例如,假設 192.168.0.0/24 是您的本地網路,而您的 VPN 伺服器位於 1.2.3.4:

192.168.0.0/24 dev eth0
1.2.3.4/32 via 192.168.0.1

如果您在埠級別需要更精細的粒度,您可以添加 iptables 規則來阻止從eth0這些埠號流出的流量。當 VPN 啟動時,這些數據包將從 VPN 介面(例如tun0)發出,並將被封裝並eth0在 VPN 埠號上發出。當 VPN 關閉時,他們將嘗試直接eth0使用原始埠號,iptables 規則應阻止該埠號。例如,要防止 HTTP 流量不安全地流出:

iptables --append OUTPUT --out-interface eth0 --protocol tcp --dport 80 --jump REJECT

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