「ICMP IS EVIL」のマントラの犠牲になったようです。
ICMPはありませ悪、単に誤解します。悲しい現実は、多くの管理者が理解できないことを恐れているため、ICMPをネットワークユニバースからキャストし、それをエッジファイアウォールレベルで排除し、ネットワークの利益のために適切で適切な場所に配置できないようにしていることです。
そうは言っても、あなたの質問に答えさせてください:
有害なICMPメッセージの種類とその理由を教えてください。
それらのほとんどすべて。
Echo
パケットを使用してサービスを中断できます(特に、IPスタックが適切に実装されていないシステムの場合)。彼らはあなたのネットワークについての情報を提供することができます。
Destination Unreachable
悪意を持って注入される可能性があります。*ファイアウォール/ルーティング構造、またはネットワーク上の特定のマシンに関する情報を提供することができます。
Source Quench
悪意を持って送信され、サーバーが効果的に隅に座って親指を吸い込む可能性があります。
redirect
名前が示すように使用できます。
router advertisement
router solicitation
ホストが実際に注意を払っている場合は、リクエストを使用して「興味深い」トラフィックトポロジを作成(およびMITM攻撃を促進)できます。
traceroute
されて設計されたネットワークにトポロジー情報を提供します。
…等...
さまざまなICMPメッセージの名前は、それらが実行できることをかなり詳しく説明しています。悪夢のようなシナリオを夢見て、先天性パラノイアを行使してください:-)
各タイプのICMPパケットを処理するには、iptablesルールセットをどのようにレイアウトすればよいですか?
ICMPトラフィックを混乱させる正当な理由がない場合は、それをそのままにしておきます!
ICMPトラフィックをいじくり回すと、ICMPメッセージの適切な使用(トラフィック管理とトラブルシューティング)が妨げられます-役立つよりも苛立たしいでしょう。
これらのタイプのICMPパケットをレート制限する必要がありますか?そしてどうやって?
これは、「そのままにする」という哲学に対する唯一の正当な例外である可能性があります。レートまたは帯域幅を制限するICMPメッセージは、ICMPメッセージの不正な使用を回避するのに役立ちます。FreeBSDにはデフォルトでICMP帯域幅/レート制限が付属しており、Linuxにも同様の機能があると思います。
レート/帯域幅の制限は、ICMPトラフィックをドロップする包括的なファイアウォールルールよりもはるかに望ましいです。それでも、ICMPがネットワークでその目的を果たすことができ、サーバーの悪用の試みも部分的に軽減されます。
上記は、1つのシステム管理者の意見を表しています。彼の側では、すべてのICMPトラフィックが取り除かれるトラブルシューティングネットワークを持っているというフリーキンの疲れを感じています。:-)