
我有一台運行的Linux機器,其本地ip:192.168.1.2連接到公共IP 8.8.8.8的路由器,現在路由器8.8.8.8有DMZ到192.168.1.2
結果,垃圾郵件發送者、駭客、破解者使運行 H.323 協定或 SIP 協定的 192.168.1.2 崩潰。
如何在路由器中或路由器後面放置公共IP白名單來防止此類攻擊? (Linux 機器不是開源的,我無權在其上放置 iptables)
答案1
在您的路由器上,如果您可以執行 iptables,則預設丟棄向外介面輸入的任何內容,然後新增例外:
您所描述的一個簡單範例,假設 eth1 是面向外部的裝置:
iptables -A FORWARD -i eth1 -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -i eth1 -j DROP
iptables -I FORWARD -i eth1 -s 123.123.123.123 -j ACCEPT
iptables -I FORWARD -i eth1 -s 123.124.0.0/16 -j ACCEPT
這些行的含義如下:
- 允許已擔保的流量,例如對您自己的查詢的回應
- 放下一切
- 允許IP
123.123.123.123
- 允許整個子網路
123.124.xxx.xxx
請注意第 3 行和第 4 行中的切換為 to-I
而不是-A
。
如果您需要在linux機器本身上運行它,同樣應該可以工作,但是您需要替換FORWARD
為INPUT
,並且可以跳過輸入介面。此外,您可能需要添加一條ACCEPT
規則,192.168.1.0/24
因為您的 LAN 很可能是值得信賴的。