Настройка syslog-ng для централизованного сбора логов

https://losst.ru/kak-posmotret-logi-v-linux  – хорошая статья с указанием стандартных путей лог файлов

Подсистема аудита: архитектура и принцип работы

Подсистема аудита была добавлена в ядро Linux начиная с версии 2.6. Она предназначена для отслеживания критичных с точки зрения безопасности системных событий. В качестве примеров таких событий можно привести следующие (список далеко не полный):

  • запуск и завершение работы системы;
  • чтение, запись и изменение прав доступа к файлам;
  • инициация сетевых соединений;
  • попытки неудачной авторизации в системе;
  • изменение сетевых настроек;
  • изменение информации о пользователях и группах;
  • запуск и остановка приложений;
  • выполнение системных вызовов.

Ни одно из названных событий не может произойти без использования системных вызовов ядра. Чтобы их отслеживать, достаточно просто перехватывать соответствующие системные вызовы. Именно это и делает подсистема аудита:

Подсистема аудита: архитектура и принцип работы

Получив вызов от приложения в пространстве пользователя, подсистема аудита пропускает его через один из следующих фильтров: user, task или exit (более подробно о них речь пойдёт ниже). После этого вызов пропускается через фильтр exclude, который исходя из правил аудита передаёт его демону auditd для дальнейшей обработки.

Такая простая схема позволяет вполне эффективно отслеживать любой аспект работы ОС, а в случае компрометации системы выявлять подозрительные действия и определять их причину.

Как я могу открыть .LOG файлы?

Поскольку файлы журнала представлены в текстовом формате, прочитайте их с помощью любого текстового редактора. Большинство дистрибутивов предлагают nano , который предлагает простой в использовании интерфейс:

nano <logfilename>

Если файл журнала небольшой по размеру, то можно открыть файл журнала в редакторе, но если файл журнала большой, то вам, вероятно, будет интересно только прочитать конец журнала. Команда tail отображает последние несколько строк в файле. Укажите, сколько строк отображать с ключом -n (указав количество строк), следующим образом:

tail -nx <logfilename>

Чтобы увидеть начало файла, используйте команду head .

Очень большие журналы обычно сжимаются. Вы увидите их в / var / log с суффиксом .GZ. Чтобы просмотреть журнал, распакуйте архив, используя утилиту по вашему выбору.

Отправка логов syslog на удаленный сервер

Теперь идем на добавленные в syslog-ng сервера и настраиваем там отправку логов на наш сервер. Сделать это очень просто. Открываем файл конфигурации rsyslog. В CentOS он живет по адресу /etc/ и добавляем туда строку:

*.* @

— ip адрес syslog-ng сервера. Перезапустите rsyslog:

# service rsyslog restart

и проверяйте логи на сервере syslog-ng в указанной папке. Правило *.* отправит все логи в указанное направление. Это не всегда нужно, можно отредактировать правила. Для этого надо ознакомиться с документацией по syslog. Там нет ничего сложного, мне не хочется на этом сейчас подробно останавливаться. В интернете есть примеры. Приведу пару своих.

*.*; @

В данном случае у меня по  идет лог самбы по доступу к сетевой шаре. Мне не нужно собирать эту информацию и я ее отключил. Вот еще пример:

*.info @

С этого сервера сыпалось много лишней информации уровня debug. Я ограничил отправляемые сообщения уровнем info. И так далее.

Просмотр логов в Linux

Чтобы посмотреть логи на Linux удобно использовать несколько утилит командной строки Linux. Это может быть любой текстовый редактор, или специальная утилита. Скорее всего, вам понадобятся права суперпользователя для того чтобы посмотреть логи в Linux. Вот команды, которые чаще всего используются для этих целей:

  • zgrep
  • zmore

Я не буду останавливаться подробно на каждой из этих команд, поскольку большинство из них уже подробно рассмотрены на нашем сайте. Но приведу несколько примеров. Просмотр логов Linux выполняется очень просто:

Читайте также:  Как сбросить Линукс к заводским настройкам

Смотрим лог /var/log/messages, с возможностью прокрутки:

less /var/log/messages

Просмотр логов Linux, в реальном времени:

tail -f /var/log/messages

Открываем лог файл dmesg:

cat /var/log/dmesg

Первые строки dmesg:

head /var/log/dmesg

Выводим только ошибки из /var/log/messages:

grep -i error /var/log/messages

Кроме того, посмотреть логи на linux можно и с помощью графических утилит. Программа System Log Viewer может быть использована для удобного просмотра и отслеживания системных журналов на ноутбуке или персональном компьютере с Linux.

Вы можете установить программу в любой системе с установленным X сервером. Также для просмотра логов может использоваться любой графический тестовый редактор.