Linux
Linux 伺服器 icmp 安全性
我有一個 Linux 路由器,它通過 pppoe 使用動態 IP 連接到網際網路
我希望它不響應來自外部(網際網路)的 ping(或任何其他類型的 icmp),但我希望來自內部(LAN)的 ping(以及所有 icmp,如 traceroute、tcptraceroute、mtr 等)從伺服器到外部目標工作,我該怎麼做?
我猜“Linux路由器”是指執行Linux的電腦充當路由器。
從外部丟棄 icmp 流量:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
- -A INPUT:發往本地套接字的數據包。
- -p icmp:指定要使用的協議,在這種情況下為 icmp
- –icmp-type echo-request : 指定被過濾的 icmp 數據包的類型
- -j DROP:匹配過濾器時要做什麼。
DROP
只會刪除它們而不向主機 ping 發送任何錯誤消息。您也可以使用
REJECT
而不是DROP
,這會發送錯誤消息。允許到外部的 icmp 流量:
iptables -A OUTPUT -p icmp --icmp-type echo-request -j ACCEPT iptables -A INPUT -p icmp --icmp-type echo-reply -j ACCEPT
- -A OUTPUT:本地生成的數據包。
- -p icmp:指定要使用的協議,在這種情況下為 icmp
- –icmp-type echo-reply : 指定被過濾的 icmp 數據包的類型
- -j ACCEPT:匹配過濾器時要做什麼。我們只接受回复