Сегодня был забавный случай на посмеяться. Поработав ночью, с утра меня ждал сюрприз и серии «У тебя опять ничего не работает! Сколько можно!». Прочитав описание проблемы я первым делом проверил работоспособность сервиса (ssh в помощь) и сам как клиент зашел. All worked как и ожидалось (95% всегда все worked). Утро обещало стать забавным и я начал более вдумчиво вчитываться в суть претензии. По всем признакам мой хост отказывался отвечать моим милым пользователям. Попахивает f2b и другими наворотами по безопаске.
Первый помощник в такой проблеме = grep! Но что собственно искать? Нужен как минимум проблемный IP пользователя. О чем и написал ему письмо с инструкцией – что сделать и как посмотреть. Ответ был из моего любимого разряда «У меня лапки, и я не знаю, что такое браузер».
Что же делать?
Прикидываю, что раз это Юр лицо, то весь офис 100% за NAT. Там либо один адрес, либо какой-то pool. Прикидываю список пользователей и начинаем
cat /var/log/auth.log | grep «username»
И так всех юзеров, кто с офиса туда ломится. Понимаю, что адрес не один, но pool небольшой. Отлично. Далее
iptables –S | grep xxx.xxx.xxx.
Находим что с такого фильтра в бане только 1 адрес. Не проблема минусуем его прямо через
iptables –D ….
Далее решаю проверить собственно, почему именно это сработало
сat /var/log/….log | grep «найденный IP»
И о чудо! Мой любимый f2b c самописными регулярками опередила защита от флуда по причине того, что когда пользователей «умудрился» неправильно заполнить поля login и pass и не попав с первого раза, решил зажать ENTER на случай – «Ничего! Прорвемся!», ну или просто упал лицом на клавиатуру в расстройстве, что его «не пускают».
В итоге конечно у пользователя все заработало. Я попросил больше так не делать (даже не спросив, что именно произошло с его стороны), но настроение было уже веселым и день обещал быть на позитиве!