Недавно я установил новый VPS под управлением Gentoo (я впервые использую дистрибутив, поэтому, пожалуйста, простите меня, это действительно простой вариант), и, как я делал с другими серверами, установлен fail2ban. Настройка блокировки хоста через iptables при слишком большом количестве неудачных входов в систему с помощью ssh. Однако я получаю странную ошибку, которую не могу решить.
Когда я запускаю fail2ban, я получаю эти строки в журнале ошибок
2009-11-13 18:02:01,290 fail2ban.jail : INFO Jail 'ssh-iptables' started
2009-11-13 18:02:01,480 fail2ban.actions.action: ERROR iptables -N fail2ban-SSH
iptables -A fail2ban-SSH -j RETURN
iptables -I INPUT -p tcp --dport ssh -j fail2ban-SSH returned 100
Если я попытаюсь принудительно заблокировать, эти ошибки появятся в журнале, и хост не будет заблокирован
2009-11-13 11:23:26,905 fail2ban.actions: WARNING [ssh-iptables] Ban XXX.XXX.XXX.XXX
2009-11-13 11:23:26,929 fail2ban.actions.action: ERROR iptables -n -L INPUT | grep -q fail2ban-SSH returned 100
2009-11-13 11:23:26,930 fail2ban.actions.action: ERROR Invariant check failed. Trying to restore a sane environment
2009-11-13 11:23:27,007 fail2ban.actions.action: ERROR iptables -N fail2ban-SSH
iptables -A fail2ban-SSH -j RETURN
iptables -I INPUT -p tcp --dport ssh -j fail2ban-SSH returned 100
2009-11-13 11:23:27,016 fail2ban.actions.action: ERROR iptables -n -L INPUT | grep -q fail2ban-SSH returned 100
2009-11-13 11:23:27,016 fail2ban.actions.action: CRITICAL Unable to restore environment
Мои версии следующие
Linux masked 2.6.18-xen-r12 #2 SMP Wed Mar 4 11:45:03 GMT 2009 x86_64 Intel(R) Xeon(R) CPU E5504 @ 2.00GHz GenuineIntel GNU/Linux
net-analyzer/fail2ban-0.8.4
net-firewall/iptables-1.4.3.2
Если бы кто-нибудь мог пролить свет на эти ошибки, что было бы здорово, я действительно задавался вопросом, была ли это проблема с iptables или некоторыми модулями ядра, но я могу заблокировать IP, если я это сделаю.
iptables -I INPUT -s 25.55.55.55 -j DROP
так заставляет меня думать, что это что-то более необычное.
Заранее большое спасибо
В Ubuntu 10.04 у меня случайно возникала похожая проблема во всех тюрьмах. Некоторые начнут, некоторые нет. Я решил это, отредактировав файл fail2ban-client в / usr / bin и добавив задержку. Теперь он работает безупречно каждый раз при перезапуске. Добавлена строка time.sleep (0.1)
def __processCmd(self, cmd, showRet = True):
beautifier = Beautifier()
for c in cmd:
time.sleep(0.1)
beautifier.setInputCmd(c)
Проблема связана с тем, что в версии fail2ban есть ошибка, при которой она отправляет несколько одновременных команд в iptables. Это также влияет на Ubuntu 10.04LTS. Проблема описана в Отчет об ошибке Debian 554162.
В конце концов я решил эту проблему, обновив ядро до версии 2.6.30.
Для этого я следовал этому руководству http://vps.net/forum/forums/tutorials-how-tos/1081-how-upgrade-gentoo-use-latest-pvops-kernel.
Fail2ban теперь работает отлично.