15.07.2014 19:22
twix
 
Соответствующая тема закрыта, поэтому создаю новую... чтобы выразить восхищение недавним открытием. Случайно, решив от нечего делать просмотреть логи на моём VPS, обнаружил, что какие-то нехорошие люди/боты пытаются тыкаться в сашку, перебирая пароли и логины. Быстрый гуглёжь подсказал тулзу , которая проста в установке и настройке, но позволяет слать засранцев по известному адресу, автоматически дописывая правила в iptables.

Код:
2014-07-14 11:22:56,008 fail2ban.jail   : INFO   Creating new jail 'ssh'
2014-07-14 11:22:56,640 fail2ban.jail   : INFO   Jail 'ssh' uses pyinotify
2014-07-14 11:22:56,675 fail2ban.jail   : INFO   Initiated 'pyinotify' backend
2014-07-14 11:22:56,676 fail2ban.filter : INFO   Added logfile = /var/log/auth.log
2014-07-14 11:22:56,677 fail2ban.filter : INFO   Set maxRetry = 3
2014-07-14 11:22:56,678 fail2ban.filter : INFO   Set findtime = 600
2014-07-14 11:22:56,678 fail2ban.actions: INFO   Set banTime = 86400
2014-07-14 11:22:56,724 fail2ban.jail   : INFO   Jail 'ssh' started
2014-07-14 11:47:30,002 fail2ban.actions: WARNING [ssh] Ban 116.10.191.169
2014-07-14 11:47:33,036 fail2ban.actions: INFO   [ssh] 116.10.191.169 already banned
2014-07-14 11:52:27,293 fail2ban.actions: WARNING [ssh] Ban 199.244.88.197
2014-07-14 12:24:07,950 fail2ban.actions: WARNING [ssh] Ban 116.10.191.164
2014-07-14 12:41:29,875 fail2ban.actions: WARNING [ssh] Ban 61.174.50.184
2014-07-14 12:52:41,481 fail2ban.actions: WARNING [ssh] Ban 118.212.168.194
2014-07-14 13:21:07,993 fail2ban.actions: WARNING [ssh] Ban 124.207.128.14
2014-07-14 13:33:35,685 fail2ban.actions: WARNING [ssh] Ban 122.224.11.43
2014-07-14 15:31:08,939 fail2ban.actions: WARNING [ssh] Ban 124.90.231.248
2014-07-14 16:14:16,518 fail2ban.actions: WARNING [ssh] Ban 5.230.227.240
2014-07-14 19:30:04,841 fail2ban.actions: WARNING [ssh] Ban 61.174.51.233
2014-07-14 19:37:02,233 fail2ban.actions: WARNING [ssh] Ban 62.212.66.29
2014-07-14 21:34:41,554 fail2ban.actions: WARNING [ssh] Ban 31.199.3.187
2014-07-14 22:24:47,322 fail2ban.actions: WARNING [ssh] Ban 61.174.51.197
2014-07-14 22:24:49,329 fail2ban.actions: INFO   [ssh] 61.174.51.197 already banned
2014-07-14 23:55:57,263 fail2ban.actions: WARNING [ssh] Ban 186.155.250.210
2014-07-15 00:05:04,754 fail2ban.actions: WARNING [ssh] Ban 218.59.209.136
2014-07-15 03:01:27,047 fail2ban.actions: WARNING [ssh] Ban 61.174.51.215
2014-07-15 04:59:46,274 fail2ban.actions: WARNING [ssh] Ban 116.10.191.176
2014-07-15 05:20:38,393 fail2ban.actions: WARNING [ssh] Ban 61.174.51.209
2014-07-15 09:09:21,582 fail2ban.actions: WARNING [ssh] Ban 112.96.28.187
2014-07-15 09:25:56,491 fail2ban.actions: WARNING [ssh] Ban 116.10.191.229
2014-07-15 09:26:26,765 fail2ban.actions: WARNING [ssh] Ban 212.116.87.118
2014-07-15 09:41:15,631 fail2ban.actions: WARNING [ssh] Ban 93.174.93.114
2014-07-15 11:06:28,306 fail2ban.actions: WARNING [ssh] Ban 144.0.0.35
2014-07-15 11:06:29,313 fail2ban.actions: INFO   [ssh] 144.0.0.35 already banned
Я тащусь!

Настроил просто: за три неудачных попытки авторизации в течение 10 минут, хост-нарушитель отправляется в бан на сутки. В логах стало гораздо спокойнее.
15.07.2014 19:41
OlegON
 
Да, ее в последнее время неплохо допилили и очень удобная вещь.
Подчеркну только, что iptables для этих целей не очень подходящая вещь, поскольку при количестве цепочек более 1000 заметно подлагивает, особенно, если цепочка сложная (проверяется много пакетов). Рекомендую ipset. И обрати внимание на "already banned", по ходу цепочка не работает.
15.07.2014 20:30
twix
 
Цитата:
OlegON И обрати внимание на "already banned", по ходу цепочка не работает.
Вопрос: как отловить/отдебажить?
15.07.2014 21:00
twix
 
IT-форумы говорят, что появление "already banned" - нормальное явление. Получается это оттого, что iptables обновляется чуть позже, чем реагирует fail2ban, и несколько пакетов от "плохого" хоста успевают проскочить на целевой порт. В логе это видно - задержка между баном и повялением "already banned" составляет 1-3 секунды.

Апдейт: погуглил на тему ipset. Пока не вижу причин дёргаться, и заменять/дополнять одно другим.
15.07.2014 21:02
OlegON
 
Судя по всему, у тебя скрипт бана достаточно долго отрабатывает, настолько, что злодей успевает две попытки сделать до бана.
Я обычно выхожу на бан с какого-то другого хоста и проверяю, забанился при заданных условиях или нет. Вот и весь дебаг :)
Обрати внимание, что можно случайно забанить новые подключения, что не катит совсем. Надо все пакеты сбрасывать, иначе злодей входит, потом его банит, но воспользоваться существующим подключением он может без проблем.
15.07.2014 21:04
OlegON
 
1-3 секунды - это тихий ужас, как долго, в некоторых случаях хватит, чтобы сломать твой хост :) Что касается ipset, то я не только почитал, но и попробовал. И особенно порадовался, когда этой зимой обвал сканов был с ботнета. Тут бы все легло, если бы на iptables было.
15.07.2014 21:14
twix
 
Цитата:
OlegON Судя по всему, у тебя скрипт бана достаточно долго отрабатывает, настолько, что злодей успевает две попытки сделать до бана.
А что ты хотел от VPS за $5 в месяц? (:
15.07.2014 21:20
OlegON
 
это тебе не Windows. должно быстро отбиваться и на таком, если только все в свопе не лежит
15.07.2014 21:23
twix
 
Цитата:
OlegON это тебе не Windows. должно быстро отбиваться и на таком, если только все в свопе не лежит
Ничего там в свопе не лежит. Другое дело, что на той же железке крутится немалое количество "виртуалок" OpenVZ, и, полагаю, они могут оказывать друг на друга некоторое влияние.

Код:
top - 13:20:32 up 41 days,  3:56,  1 user,  load average: 0.00, 0.00, 0.00
Tasks:  28 total,   1 running,  27 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni,100.0 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st
KiB Mem:    524288 total,   139984 used,   384304 free,        0 buffers
KiB Swap:   524288 total,        0 used,   524288 free,    64812 cached

Кстати, вот расценочки: . У меня VPS-512 с пожизненной 25%-й скидкой.
15.07.2014 23:41
OlegON
 
ссылка пусть останется, мало ли... но вот эта строка
Цитата:
%Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
говорит, что скорее всего у тебя в скрипте что-то тормозит... ожидания нулевые, при нулевой же загрузке... это не не 286 машина, чтобы три секунды думать...
Часовой пояс GMT +3, время: 22:05.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.