Вопрос или проблема
У меня есть две системы 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: Настройка аудита
-
Настройка сервиса аудита:
Откройте файл конфигурации аудита на обеих машинах:
sudo nano /etc/audit/auditd.conf
Убедитесь, что включены следующие параметры:
log_file = /var/log/audit/audit.log max_log_file = 5 max_log_file_action = ROTATE
-
Настройка правил аудита:
Создайте файл для определения правил аудита, например,
/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-сервера
-
Создание самоподписанного сертификата:
На сервере 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
Вам будет предложено ввести информацию о сертификате.
-
Настройка 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
-
Перезапуск rsyslog:
Перезапустите службу rsyslog:
sudo systemctl restart rsyslog
Шаг 4: Настройка клиента для отправки логов
На тестовом RHEL-системе выполните следующие действия:
-
Создание сертификата клиента:
Сгенерируйте сертификат клиента на.test RHEL-системе:
sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/rsyslog/client-cert.pem -keyout /etc/ssl/rsyslog/client-key.pem
-
Настройка клиента 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
-
Перезапуск rsyslog:
Перезапустите rsyslog на клиенте:
sudo systemctl restart rsyslog
Заключение
Теперь у вас настроены системы RHEL для сбора и отправки аудита через Syslog с использованием TLS. Убедитесь, что все необходимые порты открыты в брандмауэре, и проверьтеработоспособность системы, отправив тестовые логи. Это позволит вам гарантировать безопасность и целостность ваших логов при их передаче.