Закрыть ping
Если нужно, чтобы сервер перестал отвечать на ICMP ping-запросы, есть несколько вариантов.
Отключаем на уровне ядра через sysctl:
Открываем файл:
nano /etc/sysctl.confДобавляем строку:
net.ipv4.icmp_echo_ignore_all = 1Применяем изменения:
sysctl -pРазрешаем пинг только для определенных IP через nftables:
Открываем конфиг:
nano /etc/nftables.confДобавляем:
table inet filter {
    chain input {
        type filter hook input priority 0;
        # Пинг только от 192.168.0.1
        ip saddr 192.168.0.1 icmp type echo-request accept
        # Блокируем пинг от всех
        icmp type echo-request drop
        # счетчик пакетов для диагностики если нужно
        counter
    }
    chain forward {
        type filter hook forward priority 0;
    }
    chain output {
        type filter hook output priority 0;
    }
}Если у вас в конфигурации есть policy drop, то не забудьте разрешить остальные нужные порты, например:
tcp dport { 80, 443 } acceptПрименяем конфигурацию:
nft -f /etc/nftables.conf
systemctl restart nftablesЧтобы настройки сохранялись после перезагрузки (если включены counter, то добавляем -s):
nft -s list ruleset > /etc/nftables.conf
systemctl enable nftables
systemctl restart nftables
systemctl status nftablesПроверка правил:
nft list rulesetОтключение пинга через iptables
Сначала разрешаем пинг для 192.168.0.1, а затем отключаем для всех:
iptables -I INPUT -s 192.168.0.1 -p icmp --icmp-type echo-request -j ACCEPT
iptables -A INPUT -p icmp --icmp-type echo-request -j DROPДобавляем разрешение для нужных портов:
iptables -A INPUT -p tcp --dport 443 -j ACCEPTПроверяем правила:
iptables -L -nСохраняем и применяем:
iptables-save > /etc/iptables/rules.v4
netfilter-persistent save
netfilter-persistent reloadПеред использованием команд netfilter-persistent убедитесь, что установлен пакет iptables-persistent:
apt install iptables-persistent
 
      