А что тут вычислять? Каждому обращению к серверу соотвествует одна запись в логе. Тебе нужно написать простенькую програмку - счетчик таких записей. В этой програмке нужно задать временной интервал и максимально допустимое число записей в интервале. После того как заданный интервал времени прошел - счетчик обнуляется. Если число записей превысило граничное значение - то нужно послать письмо, СМС или еще как известить админа.
Чтобы твоя програмка могла читать лог, можно в настройках Апача написать что-то вроде CustomLog "|/usr/bin/anti_dos 10 100000" common
Здесь anti_dos - это твоя программа, которая будет получать на стандартній ввод лог Апача и анализировать его. Программе передаются параметры - 10 минут и 100000 записей. Соотвественно если будет зафиксировано более чем 100000 записей за 10 минут, нужно провести необходимые административные действия. |