Глава 10 Программы обеспечения безопасности (Утилиты контроля) - Logcheck
В этой главе
Linux sXid
Конфигурация
Административные средства sXid
Linux Logcheck
Конфигурация
Linux PortSentry
Конфигурация
Запуск PortSentry
Одной из важнейших задач в мире обеспечения безопасности является анализ
файлов регистраций. Часто, повседневные работы администратора не оставляют ему
время на это, что может привести к ряду проблем.
В кратком обзоре Logcheck сказано:
Ревизия и регистрация системных событий чрезвычайно важна. Системный
администратор должен знать о происходящих событиях, чтобы суметь
предотвратить возникновение проблем, особенно если система подключена к
Интернет. К сожалению, для большинства версий UNIX регистрация событий
не имеет значение, так как лог файлы никто не просматривает. Это то, в чем вам
может помочь Logcheck. Он автоматизирует ревизию зарегистрированных
событий, отфильтровывая “нормальные” сообщения, чтобы вы могли
концентрировано посмотреть на проблемы и на потенциальных нарушителей.
Logcheck – это программное обеспечение, которое создано, чтобы
автоматически проверять системные журналы на предмет нарушений защиты и
необычной активности. Она использует программу logtail, которая запоминает
последнюю позицию, считанную из системного журнала, и использует ее при
следующем запуске для получения новой информации.
Эти инструкции предполагают.
Unix-совместимые команды.
Путь к исходным кодам “/var/tmp” (возможны другие варианты).
Инсталляция была проверена на Red Hat Linux 6.1 и 6.2.
Все шаги инсталляции осуществляются суперпользователем “root”.
Logcheck версии 1.1.1
Пакеты.
Домашняя страница Logcheck: http://www.psionic.com/abacus/logcheck/
Вы должны скачать: logcheck-1.1.1.tar.gz
Тарбол.
Хорошей идеей будет создать список файлов установленных в вашей системе до
инсталляции Logcheck и после, в результате, с помощью утилиты diff вы
сможете узнать какие файлы были установлены. Например,
До инсталляции:
find /* > Logcheck1
После инсталляции:
find /* > Logcheck2
Для получения списка установленных файлов:
diff Logcheck1 Logcheck2 > Logcheck-Installed
Раскрываем тарбол (tar.gz).
[root@deep /]# cp logcheck-version.tar.gz /var/tmp/
[root@deep /]# cd /var/tmp
[root@deep tmp]# tar xzpf logcheck-version.tar.gz
Компиляция и оптимизация.
Вы должны редактировать файл “Makefile” Logcheck-а, чтобы определить
инсталляционные пути, флаги компиляции и оптимизации для вашей системы.
Место, куда будет установлен Logcheck должно соответствовать структуре
расположения системных файлов Red Hat,а расположение скрипта Logcheck
переменной окружения PATH.
Шаг 1.
Переместитесь в новый каталог Logcheck и выполните следующие команды:
Редактируйте файл Makefile (vi Makefile) и измените следующие строки:
CC = cc
Должна читаться:
CC = egcs
CFLAGS = -O
Должна читаться:
CFLAGS = -O9 -funroll-loops -ffast-math -malign-double -mcpu=pentiumpro -march=pentiumpro -fomit-frame-pointer -fno-exceptions
INSTALLDIR = /usr/local/etc
Должна читаться:
INSTALLDIR = /etc/logcheck
INSTALLDIR_BIN = /usr/local/bin
Должна читаться:
INSTALLDIR_BIN = /usr/bin
INSTALLDIR_SH = /usr/local/etc
Должна читаться:
INSTALLDIR_SH = /usr/bin
TMPDIR = /usr/local/etc/tmp
Должна читаться:
TMPDIR = /etc/logcheck/tmp
Вышеприведенные изменения настраивают на использование компилятора egcc,
включают оптимизационные флаги подходящие для вашей системы и
определяют месторасположение файлов Logcheck, соответствующее структуре
размещения системных файлов Red Hat.
Шаг 2
Редактируйте файл Makefile (vi +67 Makefile) и измените следующую строку:
@if [ ! -d $(TMPDIR) ]; then /bin/mkdir $(TMPDIR); fi
Должна читаться:
@if [ ! -d $(TMPDIR) ]; then /bin/mkdir -p $(TMPDIR); fi
Вышеупомянутое изменение (-p) позволит инсталляционной программе
создавать родительские каталоги, когда это необходимо.
Шаг 3.
Инсталляция Logcheck на вашей системе:
[root@deep logcheck-1.1.1]# make linux
Вышеприведенная команда будут настраивать программу на операционную
систему Linux, компилировать все исходные файлы в исполняемые двоичные, и
затем, инсталлировать все двоичные и вспомогательные файлы в определенное
место.
Очистка после работы.
[root@deep /]# cd /var/tmp
[root@deep tmp]# rm -rf logcheck-version/ logcheck-version_tar.gz
Команда “rm”, использованная выше, будет удалять все исходные коды,
которые мы использовали при компиляции и инсталляции Logcheck. Она также
удалит .tar.gz архив из каталога /var/tmp.
Так как мы использовали альтернативное месторасположение файлов, нам
необходимо изменить пути к “logcheck.hacking”, “logcheck.violations”,
“logcheck.ignore”, “logcheck.violations.ignore” и “logtail” в основном скрипте
logcheck.sh. Скрипт файл для Logcheck “/usr/bin/logcheck.sh” позволяет
настроить опции, которые модифицируют пути и действия программы. Он
хорошо комментирован и очень прост.
Шаг 1.
Редактируйте файл logcheck.sh (vi /usr/bin/logcheck.sh) и измените следующее:
LOGTAIL=/usr/local/bin/logtail
Должна читаться:
LOGTAIL=/usr/bin/logtail
TMPDIR=/usr/local/etc/tmp
Должна читаться:
TMPDIR=/etc/logcheck/tmp
HACKING_FILE=/usr/local/etc/logcheck.hacking
Должна читаться:
HACKING_FILE=/etc/logcheck/logcheck.hacking
VIOLATIONS_FILE=/usr/local/etc/logcheck.violations
Должна читаться:
VIOLATIONS_FILE=/etc/logcheck/logcheck.violations
VIOLATIONS_IGNORE_FILE=/usr/local/etc/logcheck.violations.ignore
Должна читаться:
VIOLATIONS_IGNORE_FILE=/etc/logcheck/logcheck.violations.ignore
IGNORE_FILE=/usr/local/etc/logcheck.ignore
Должна читаться:
IGNORE_FILE=/etc/logcheck/logcheck.ignore
Шаг 2.
Поместите соответствующий элемент в crontab файл пользователя root, чтобы
Logcheck выполнялся автоматически каждый час (рекомендуется, можете
запускать его чаще или реже).
Для редактирования crontab введите следующую команду:
[root@deep /]# crontab -e
И добавьте следующую строку в crontab:
# Ежечасная проверка системных журналов на предмет
# нарушений защиты и необычной активности.
00 * * * * /usr/bin/logcheck.sh
ЗАМЕЧАНИЕ. Запомните, что Logcheck не присылает отчеты по электронной
почте, если ему нечего сказать.
Проинсталлированные файлы.
> /etc/logcheck
> /usr/bin/logcheck.sh
> /etc/logcheck/tmp
> /etc/logcheck/logcheck.hacking
> /etc/logcheck/logcheck.violations
> /etc/logcheck/logcheck.violations.ignore
> /etc/logcheck/logcheck.ignore
> /usr/bin/logtail
> /var/log/messages.offset
> /var/log/secure.offset
> /var/log/maillog.offset |