Настройка аудиторского журнала и сбора Syslog через TLS

Вопрос или проблема

У меня есть две системы RHEL 9.4, и я хочу настроить аудит на ОБЕИХ системах. Одна система RHEL будет использоваться как базовая linux-система для тестирования, а другая будет использоваться в качестве сервера Syslog для сбора данных, прежде чем отправить их на удаленное место для хранения. Обе системы должны отслеживать одни и те же параметры. Тестовая система RHEL должна передавать собранные журналы аудита через TLS на удаленный сервер Syslog (обычно это делается через порт 6514, как я понимаю), а сервер Syslog должен отправлять свои журналы через loopback через порт 6514, где будет размещен процесс для получения этих журналов через этот порт и их дальнейшей отправки на удаленное место. Процесс сбора этих журналов не является необходимым. Необходима настройка и конфигурация того, что было перечислено выше на обеих сторонах, включая настройку TLS с самоподписанным сертификатом. Может кто-нибудь помочь в этом?

Ответ или решение

Настройка аудита и сбора Syslog через TLS на двух системах RHEL 9.4

Введение

В данной статье описывается процесс настройки аудита и сбора Syslog с использованием шифрования TLS на двух системах RHEL 9.4. Одна из систем будет использоваться для основных тестов, а другая – в качестве сервера Syslog для сбора и передачи логов в удаленное хранилище. Аудит будет настраиваться на обеих системах с одинаковыми параметрами.

Шаг 1: Установка необходимых пакетов

На обеих системах установим необходимые пакеты для реализации сбора логов и настройки TLS:

sudo dnf install rsyslog rsyslog-gnutls audit

Шаг 2: Настройка аудита

  1. Настройка сервиса аудита:

    Откройте файл конфигурации аудита на обеих машинах:

    sudo nano /etc/audit/auditd.conf

    Убедитесь, что включены следующие параметры:

    log_file = /var/log/audit/audit.log
    max_log_file = 5
    max_log_file_action = ROTATE
  2. Настройка правил аудита:

    Создайте файл для определения правил аудита, например, /etc/audit/rules.d/audit.rules:

    sudo nano /etc/audit/rules.d/audit.rules

    Добавьте ваши правила аудита, например, для отслеживания доступа к файлам:

    -w /etc/passwd -p wa -k password_changes

    После завершения редактирования, перезапустите службу аудита:

    sudo systemctl restart auditd

Шаг 3: Настройка Syslog-сервера

  1. Создание самоподписанного сертификата:

    На сервере Syslog создайте директорию для SSL-сертификатов:

    sudo mkdir /etc/ssl/rsyslog

    Затем сгенерируйте самоподписанный сертификат и закрытый ключ:

    sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/rsyslog/rsyslog-cert.pem -keyout /etc/ssl/rsyslog/rsyslog-key.pem

    Вам будет предложено ввести информацию о сертификате.

  2. Настройка rsyslog:

    Откройте конфигурационный файл rsyslog:

    sudo nano /etc/rsyslog.conf

    Убедитесь, что следующие строки присутствуют в конфигурации:

    module(load="imuxsock") # Импорт модуля для работы с Unix сокетами
    module(load="imklog")    # Импорт модуля для работы с системными логами
    
    # Настройка TLS
    $DefaultNetstreamDriver gtls
    $DefaultNetstreamDriverCAFile /etc/ssl/rsyslog/rsyslog-cert.pem
    $DefaultNetstreamDriverKeyFile /etc/ssl/rsyslog/rsyslog-key.pem
    
    # Слушаем на порту 6514
    *.*  @@127.0.0.1:6514
  3. Перезапуск rsyslog:

    Перезапустите службу rsyslog:

    sudo systemctl restart rsyslog

Шаг 4: Настройка клиента для отправки логов

На тестовом RHEL-системе выполните следующие действия:

  1. Создание сертификата клиента:

    Сгенерируйте сертификат клиента на.test RHEL-системе:

    sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/rsyslog/client-cert.pem -keyout /etc/ssl/rsyslog/client-key.pem
  2. Настройка клиента rsyslog:

    Откройте конфигурационный файл rsyslog:

    sudo nano /etc/rsyslog.conf

    Добавьте следующее в конце файла:

    # Настройка TLS
    $DefaultNetstreamDriver gtls
    $DefaultNetstreamDriverCAFile /etc/ssl/rsyslog/rsyslog-cert.pem
    $DefaultNetstreamDriverKeyFile /etc/ssl/rsyslog/client-key.pem
    
    # Отправка логов на сервер
    *.* @@<IP_адрес_сервера>:6514
  3. Перезапуск rsyslog:

    Перезапустите rsyslog на клиенте:

    sudo systemctl restart rsyslog

Заключение

Теперь у вас настроены системы RHEL для сбора и отправки аудита через Syslog с использованием TLS. Убедитесь, что все необходимые порты открыты в брандмауэре, и проверьтеработоспособность системы, отправив тестовые логи. Это позволит вам гарантировать безопасность и целостность ваших логов при их передаче.

Оцените материал
Добавить комментарий

Капча загружается...