shoorick: (Рыжий)
shoorick ([personal profile] shoorick) wrote2012-09-20 03:37 pm

Сим-сим, откройся!

После нескольких неудачных попыток прилогиниться к сайту, сделанному на друпале 7.15, пользователь натыкается на сообщение:
Sorry, there have been more than 5 failed login attempts for this account. It is temporarily blocked. Try again later or request a new password.
Насколько позже стóит повторить попытку — непонятно.

Полез в БД — в таблице `users` никакой информации об активности пользователей. А вот в таблице `flood` — есть: в поле `event` — название события, `identifier` — идентификатор: IP либо строка вида UID-IP для попыток залогиниться, если логин существует, `timestamp` и `expiration` — время попытки входа и истечения бана (в секундах с начала эпохи). Продолжительность бана — 3600 секунд (час) для случаев, когда UID не указан и 21600 секунд (6 часов) — для пары UID-IP.

Если удалить из таблицы `flood` лишние записи — вход открывается.

P. S. Узнать текущее время в секундах с начала эпохи в юниксоподобных операционных системах можно командой
date +%s
в MySQL для этого есть функция UNIX_TIMESTAMP.