В настоящее время у меня есть веб-сайт среднего размера, который, вероятно, имеет несколько недостатков безопасности. Думаю, это, наверное, нормально. Все не уловишь. Проблема в том, что я также у вас есть парочка скриптовых детишек, которые думают, что весело днем и ночью пытаться взломать мой сайт, делать неизвестно что. Наверное, что-то вроде удаления БД. У меня есть резервные копии, но это по-прежнему сказывается на оперативной памяти и процессоре, и я бы предпочел прекратить это. Есть ли способ проанализировать журналы сервера, чтобы легко определить, какие записи вызваны скриптовыми детишками? Их, вероятно, можно было бы идентифицировать по нескольким попаданиям в минуту, но мне трудно пройти и выбрать эти записи, когда я мог бы делать что-то стоящее.
Имхо, вам лучше потратить свое время на исправление своего веб-сайта, тогда вам не придется все время сканировать свои файлы журналов ..
AWStats или Webalizer - это хорошо известные инструменты для ведения журнала веб-сервера -> статистики, может быть, вам это пригодится.
cat access_log | awk '{print $1}' | sort | uniq -c |sort -g
должен создать упорядоченный список IP-адресов, которые попадают на ваш сайт, в первом столбце будет количество посещений, во втором - IP.
Возможно, вам придется изменить значение $ 1, это позиция поля IP-адреса в строке файла журнала. На моем веб-сервере это первое, следовательно, $ 1, в противном случае поле определяется как «разделенное пробелом», поэтому следующая запись - 2 доллара США и т. Д.
Я не знаю, что для вас значит "средний" сайт. Но если он достаточно велик, чтобы иметь БД и веб-сервер на двух разных серверах, вы можете использовать брандмауэр базы данных, например, GreenSQL. Это даст вам дополнительную информацию о том, как они хотят это сделать. Но вам все равно понадобится анализатор журналов http, чтобы узнать, где они атакуют (какую форму они пытаются использовать не по назначению).
Если вы используете apache, вы можете изучить реализацию mod_security ( http://modsecurity.org/ ) - он может обеспечить определенный уровень защиты от некоторых видов атак, даже если базовое приложение уязвимо. Он не улавливает все, но может помочь в ситуации, когда вы не обязательно контролируете выполняемый код.
Вот несколько похожий вопрос, который я недавно задал, и он может дать вам решение:
Новое в Ubuntu Server, журналы, которые нужно отслеживать, и что делать
Существует множество бесплатных анализаторов журналов, которые сообщают вам одну и ту же информацию. Выполните поиск в Google, попробуйте несколько раз и посмотрите, что вам нравится.
Я не думаю, что перестану делать резервную копию сайта. У вас всегда должны быть резервные копии. Может случиться слишком много вещей, для которых может потребоваться резервное копирование.
Итак, проверьте журналы, сделайте резервные копии, исправьте свою систему, используйте надежные пароли, брандмауэр (кто-то недавно рекомендовал и т. Д.)
Я уверен, что вы получите здесь дельный совет.
Даже если вы найдете записи, принадлежащие детишкам сценариев, я сомневаюсь, что это поможет вам что-нибудь с этим сделать. Вы не можете просто заблокировать их, заблокировав эти IP-адреса. Большинство людей имеют динамические IP-адреса, назначаемые их интернет-провайдерами.
Кроме того, файлы журналов не могут показать вам все атаки. Например, как насчет попыток входа в систему по SSH методом грубой силы?
ИМО, единственный разумный подход к вашей проблеме - это попытаться исправить как можно больше недостатков безопасности с разумными усилиями и резервными копиями на случай чрезвычайной ситуации.