iptables |ICMP 的類型:哪些是(潛在的)有害的?
我讀到某些類型的 ICMP 數據包可能有害。問題:
- 哪些,為什麼?
- 我應該如何佈局一個 iptables 規則集來處理每種類型的 ICMP 數據包?
- 我應該對這些類型的 ICMP 數據包進行速率限制嗎?如何?
$$ ¹ $$我讀到的類型:重定向(5)、時間戳(13)和地址遮罩請求(17)。請不要在你的回答中只考慮這些。 更多資訊
它是帶有 Ubuntu 伺服器的 VPS 上的 Web 伺服器。
我的目標
是讓系統更安全,降低一些 D/DoS 攻擊和一般濫用的風險。
相關
聽起來你正在成為“ICMP IS EVIL”口頭禪的受害者。
ICMP不是邪惡的,只是被誤解了。可悲的現實是,許多管理員害怕他們不了解的東西,因此他們將 ICMP 排除在他們的網路世界之外,在邊緣防火牆級別迴避它,並阻止它為網路的利益而佔據正確和適當的位置。
說了這麼多,我來回答你的問題:
哪些類型的 ICMP 消息可能有害,為什麼?
幾乎所有人。
Echo
數據包可用於中斷服務(特別是對於 IP 堆棧實施不當的系統);合法使用它們可以提供有關您的網路的資訊。Destination Unreachable
可以惡意注入;合法使用它們可以提供有關*您的防火牆/路由結構或網路上特定機器的資訊。Source Quench
可以被惡意發送以使您的伺服器有效地坐在角落裡並吮吸它的拇指。redirect
顧名思義可以使用。router advertisement``router solicitation
如果您的主機真正關注它們, 並且請求可用於創建“有趣的”流量拓撲(並促進 MITM 攻擊)。traceroute
旨在提供網路拓撲資訊。…ETC…
各種 ICMP 消息的名稱非常詳細地說明了它們的功能。在夢魘場景中鍛煉你與生俱來的偏執狂:-)
我應該如何佈局一個 iptables 規則集來處理每種類型的 ICMP 數據包?
如果沒有充分的理由擾亂 ICMP 流量,那就別管它了!
胡亂處理 ICMP 流量會妨礙 ICMP 消息的適當使用(流量管理和故障排除)——這將比有用更令人沮喪。
我應該對這些類型的 ICMP 數據包進行速率限制嗎?如何?
這可能是“別管它”哲學的唯一合法例外——限制速率或頻寬的 ICMP 消息可以幫助您避免非法使用 ICMP 消息。FreeBSD 預設帶有ICMP 頻寬/速率限制,我假設 Linux 具有類似的功能。
速率/頻寬限制遠優於刪除 ICMP 流量的全面防火牆規則:它仍然允許 ICMP 在網路上發揮其作用,並且還可以部分減輕濫用伺服器的嘗試。
以上代表了一位系統管理員的意見,他對不得不對所有 ICMP 流量都被丟棄的網路進行故障排除感到非常厭倦——這很煩人,令人沮喪,並且需要更長的時間來查找和解決問題。:-)