fail2ban продолжает говорить, что уже забанен, но на самом деле не запретил

Вы довольно близки. Запятая или знак $ перед переменной не нужны. Попробуйте:

awk '{if (NF == 4) {print $0; name=$1} else {print name$0}}'
2
19.05.2019, 13:52
3 ответа

Похоже, ваша конфигурация iptablesне включает цепочку фильтров с именем f2b-sshd.

Во-первых, небольшой -праймер по iptables.

iptables— это и команда, и имя подсистемы брандмауэра Linux. Команда используется для настройки правил брандмауэра в оперативной памяти. Правила брандмауэра iptablesсначала организованы в таблицы :, есть таблица filterпо умолчанию, а также таблицы nat, mangle, rawи securityдля различных целей. fail2banвыполняет фильтрацию трафика, поэтому использует таблицу filter.

Затем таблицы дополнительно делятся на цепочки фильтров. Каждая таблица имеет определенные стандартные цепочки :для таблицы filter, стандартными цепочками являются INPUT, FORWARDи OUTPUT. Цепочка FORWARDиспользуется только тогда, когда система настроена на маршрутизацию трафика для других систем. Цепочка INPUTимеет дело с входящим трафиком в эту систему.

Если fail2banдобавил свои правила непосредственно в цепочку INPUTи стер эту цепочку после истечения срока действия всех банов,тогда вам придется передать полный контроль над входными правилами вашего брандмауэра fail2ban-, у вас не может быть никаких пользовательских правил брандмауэра в дополнение к , что делает fail2ban. Это явно нежелательно, поэтому fail2banэтого делать не будет.

Вместо этого fail2banсоздает свою собственную цепочку фильтров, которой она может полностью управлять самостоятельно, и добавляет при запуске -одно правило в цепочку INPUTдля отправки любого соответствующего трафика для обработки через fail2banцепь.

Например, при настройке защиты sshd, fail2banдолжны выполнять эти команды при запуске -вверх:

iptables -N f2b-sshd
iptables -A f2b-sshd -j RETURN
iptables -I INPUT -p tcp -m multiport --dports <TCP ports configured for sshd protection> -j f2b-sshd

Эти команды создают цепочку фильтров f2b-sshd, устанавливают RETURNв качестве ее последнего правила (, чтобы после обработки любых правил fail2banнормальная обработка правил ВВОДА продолжалась, как и без fail2ban, и, наконец, добавьте правило в начало таблицы INPUT, чтобы перехватывать любой SSH-трафик и отправлять его сначала в цепочку f2b-sshd.

Теперь, когда fail2banнужно запретить IP-адрес для использования SSH, он просто вставит новое правило в цепочку f2b-sshd.

Если вы используете firewalldили какую-либо другую систему, которая управляет правилами брандмауэра iptables вместо вас, или если вы очищаете все правила iptablesвручную, то эти исходные правила и, возможно, вся цепочка фильтров f2b-sshdмогут быть стерты. Вы должны убедиться, что любой инструмент управления брандмауэром, который вы можете использовать, поддерживает это исходное правило в цепочке INPUT и вообще не затрагивает цепочку f2b-sshd.

Сообщения об ошибках в конце вашего фрагмента указывают на то, что fail2banпроверяет наличие исходных правил ("проверка инвариантов" )и обнаруживает, что это не так.

5
27.01.2020, 21:58

для меня проблема заключалась в том, что бан работал, но злоумышленник использовал постоянные соединения, поэтому бан не действовал сразу, так как он все еще был подключен, а нового подключения не было, единственный способ сделать, когда происходило перезапуск почтового сервера

1
27.01.2020, 21:58

Мне просто пришлось иметь дело с этим. проблема была связана с выполнением руководства exim4 fail2ban. в файле jail.d/exim4.conf было это:

[exim-spam]
port = smtp,ssmtp

где то, что собственно нужно, т.к. exim4 работает на портах 25, 464 и 587, было это:

[exim-spam]
port = smtp,ssmtp,587

Вот и все.

в принципе все фильтры настроены правильно, все работает... однако:

  • атаки идут на порт 587
  • и файл конфигурации -дает указание fail2ban -блокировать ТОЛЬКО порты 25 и 465

Поэтому, конечно, атаки продолжаются! поэтому адаптируйте это к протоколу, который вы используете (sshd в этом случае ).

"netstat -an | more" и "iptables -L -n" и "lsof -i :587" ваши друзья, здесь.

0
27.01.2020, 21:58

Теги

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