Я считаю, что iptables -I INPUT -p icmp --icmp-type 8 -j DROP
должен добиться цели.
Для IPv6 вам понадобится что-то вроде ip6tables -I INPUT -p icmpv6 --icmp-type 8 -j DROP
.
Простейший метод отключения ответа ping - добавить запись в файл /etc/sysctl.conf. Если Iptables сбрасывает или останавливает сервер, он снова начинает отвечать на запросы ping. Я предлагаю следующую запись в вашем файле /etc/sysctl.conf
net.ipv4.icmp_echo_ignore_all = 1
, это скажет ядру не отвечать ни на один ответ ping, после этого запустите sysctl -p на оболочке для реализации изменений без перезагрузки. 113]
Дополнительную информацию см. По адресу: http://www.trickylinux.net/disable-ping-response-linux/
.Отбрасывать эхо-запросы ICMP («Ping»):
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
Что вы подразумеваете под скрытностью? Вы можете просто удалить все входящие пакеты. Google предоставил это:
iptables -A INPUT -p tcp -m stealth -j REJECT
Но на (моем) Ubuntu box, iptables не знает о "скрытом" совпадении. Похоже, вы можете сделать много интересного с помощью xtables:
aptitude show xtables-addons-common
Отказывать в ответах на запросы проверки связи. Добавить следующее приемлемое правило
iptables -A OUTPUT -p icmp -o eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-reply -s 0/0 -i eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type destination-unreachable -s 0/0 -i eth0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type time-exceeded -s 0/0 -i eth0 -j ACCEPT
iptables -A INPUT -p icmp -i eth0 -j DROP
.