Похоже, вы стали жертвой мантры "ICMP IS EVIL".
ICMP НЕ ЗЛО, просто неправильно понято. Печальная реальность заключается в том, что многие администраторы боятся того, чего они не понимают, и поэтому они вытесняют ICMP из своей сетевой вселенной, избегая его на уровне пограничного межсетевого экрана и не давая ему занять свое правильное и правильное место для блага своей сети.
Сказав это, позвольте мне ответить на ваши вопросы:
Какие типы сообщений ICMP могут быть вредными и почему?
Почти все из них.
Echoпакеты могут использоваться для прерывания обслуживания (особенно для систем с плохо реализованными стеками IP); При правильном использовании они могут дать информацию о вашей сети.
Destination Unreachableможет быть злонамеренно введен; При правильном использовании они могут предоставить информацию о * вашем брандмауэре / структуре маршрутизации или о конкретной машине в вашей сети.
Source Quench может быть злонамеренно отправлен, чтобы заставить ваш сервер эффективно сидеть в углу и сосать большой палец.
redirect может использоваться как следует из названия.
router advertisementи router solicitationзапросы могут использоваться для создания «интересных» топологий трафика (и для облегчения атак MITM), если ваши хосты действительно обращают на них внимание.
tracerouteбудет разработано , чтобы дать информацию о топологии СЕТЕВОЙ.
…так далее...
В именах различных сообщений ICMP довольно много деталей , что они способны делать. Тренируй свою врожденную паранойю в придумывая сценарии кошмара :-)
Как мне создать макет набора правил iptables для обработки каждого типа пакета ICMP?
Если нет веских причин возиться с трафиком ICMP, оставьте его в покое!
Разрушение трафика ICMP препятствует надлежащему использованию сообщений ICMP (управление трафиком и устранение неполадок) - это будет скорее разочарованием, чем полезным.
Должен ли я ограничить скорость любого из этих типов ICMP-пакетов? И как?
Это может быть единственным законным исключением из философии «оставь это в покое» - ICMP-сообщения, ограничивающие скорость или пропускную способность, могут помочь вам избежать незаконного использования ICMP-сообщений. FreeBSD поставляется с ICMP Bandwidth / Rate Limiting по умолчанию, и я предполагаю, что Linux имеет аналогичную функциональность.
Ограничение скорости / полосы пропускания гораздо предпочтительнее, чем общее правило брандмауэра, отбрасывающее трафик ICMP: оно по-прежнему позволяет ICMP выполнять свои функции в сети, а также частично смягчает попытки злоупотребления сервером.
Вышеизложенное отражает мнение одного системного администратора, который со своей стороны FREAKIN 'Утомлен наличием сетей устранения неполадок, в которых пропадает весь трафик ICMP. Это раздражает, расстраивает и отнимает больше времени на поиск и устранение проблем. :-)