iptables — это широко используемое программное обеспечение брандмауэра в Linux. Использование iptables для блокировки IP — относительно простой способ борьбы с сетевыми атаками. Он также относительно распространен, но в качестве структуры данных использует связанные списки, а эффективность очень низкая.
ipset — предоставляет метод, он заключается в помещении обрабатываемого IP-адреса в набор и установке правила iptables для этого набора. Как и iptable, наборы IP — это элементы ядра Linux, а команда ipset — это инструмент для управления ими.
Таким образом, стратегия запрета состоит из трех шагов: iptables включает правило запрета, обнаруживает плохой IP-адрес и добавляет плохой IP-адрес в правило запрета.
Вы можете использовать эти команды для обобщения процесса блокировки IP-адресов с помощью ipset и iptables.
# Создаем набор список с названием ipban ipset create ipban hash:ip hashsize 16777216 maxelem 16777216 # Создаем правило запрещающее всему списку ip в наборе ipban доступ iptables -I INPUT -m set --match-set ipban src -j DROP # Сохраняем правило iptables-save # Проверяем правило iptables -L --line-numbers | grep ipban # добавляем ip в список ipset add ipban 4.5.6.7 ipset add ipban 1.2.3.4 ipset add ipban ... # Просмотр списка ipban ipset list ipban # Удаление ip из списка ipban ipset del ipban 4.5.6.7