Производительность iptables с длинными цепочками

Я хотел бы знать, могут ли длинные цепочки в iptables вызывать проблемы с производительностью. Здесь длинная цепочка может состоять из> 2500 отдельных банов IP.

Меня беспокоит то, что мои ограниченные знания об iptables предполагают, что это приведет к проверке 2500 правил для каждого пакета, получаемого сервером.


Мой вариант использования таков:

Я использую iptables, чтобы блокировать IP-адреса, которые постоянно пытаются зайти на мой сервер недопустимым образом (например, повторяющиеся неудачные попытки входа в систему по SSH). Я использую скрипт Python, похожий на fail2ban.

В последнее время эти «атаки» стали умнее за счет замедления атаки. Я подозреваю, что они инвертировали вложенный цикл IP/имя пользователя в имя пользователя/IP. Поэтому, чтобы бороться с этим, мне пришлось значительно увеличить время бана. Я довольно жестко отношусь к этому, поэтому мой новый срок блокировки составляет 1 год или вдвое, если они попытаются снова во время двухмесячного испытательного срока.

Я нашел неподтвержденные данные о том, что этот тип бана привел к примерно 2500 банам. Если бы я взял скорость новых банов в настоящее время, это было бы около 8000, но я надеюсь, что эта скорость замедлится, поскольку сервер начнет более точно блокировать вредоносный трафик.

0
26.04.2019, 12:42
1 ответ

В общей сложности 2500 правил потребовали бы больших усилий для ЦП/пропускной способности в случае воздействия на каждый пакет. Если, например, вы отправляете 10 000 пакетов, вы будете анализировать 25 000 000 правил, что потребует много работы. Гораздо точнее и безопаснее было бы заблокировать весь входящий трафик (, кроме установленного и связанного ), а затем начать открывать сервисы, которые потребуют НОВЫХ подключений к вашей стороне.

Если вы хотите добавить черный список IP-адресов, вы можете использовать ipset , который может создавать такие списки в одном правиле, а также обновлять правила, не предполагая большого штрафа за вашу производительность. Например, если вы блокируете 2200 отдельных IP-адресов, вы можете сохранить их в списке и проверить их с помощью одного правила, что потребует гораздо меньше усилий с точки зрения ЦП.

1
28.01.2020, 02:40

Теги

Похожие вопросы