- Главная
- Руководство по ведению журналов
- Шифрование системного журнала с помощью TLS
Шифрование системного журнала с помощью TLS
На этой странице
- Цель
- Действия по шифрованию системного журнала с помощью TLS
- - Создайте самоподписывающий сертификат
- - Создайте сертификат для каждого компьютера
- - Распространите сертификаты
- - Настройте удаленный сервер для связи по протоколу TCP с использованием TLS
- - Настройте клиентские компьютеры
- - Используйте решение для управления журналами
Цель
Безопасное удаленное ведение журналов на серверах syslog с помощью шифрования с использованием TLS.
Трафик системных журналов можно зашифровать с помощью TLS/SSL, что обеспечивает взаимную аутентификацию между удаленным сервером и клиентами, тем самым предотвращая атаки типа "человек посередине". Ниже перечислены шаги, которые позволяют добиться этого.
Убедитесь в следующем:
- На межсетевом экране и в сети открыт порт 6514 для исходящих подключений, поскольку он используется TLS для связи.
- На клиентах и на удаленном сервере установлен gnuTLS, поскольку мы используем драйвер GTLS.
- Ни при каких обстоятельствах третьи лица не имеют доступа к ключам сертификатов.
Действия по шифрованию системного журнала с помощью TLS
Создайте самоподписывающий сертификат
Ниже приведены шаги по созданию самоподписывающего сертификата с помощью gnuTLS на удаленном сервере syslog.
- Сгенерируйте закрытый ключ с помощью этой команды:
- Сделайте файл недоступным для всех, кроме пользователя root.
- Используйте следующую команду для создания самоподписывающего сертификата ЦС:
certtool --generate-privkey --outfile ca-key.pem
chmod 400 ca-key.pem
certtool --generate-self-signed --load-privkey ca-key.pem --outfile ca.pem Укажите необходимые сведения. Центр сертификации (ЦС) создан.
Создайте сертификат для каждого компьютера
- Сгенерируйте закрытый ключ и сохраните его в файле key.pem.
- Создайте сертификат компьютера с помощью следующей команды. Имя файла request.pem зависит от компьютера. Например, если ваш компьютер - server1, файл может называться server1-request.pem.
- Подпишите сертификат компьютера, используя закрытый ключ центра сертификации, с помощью следующей команды:
certtool --generate-privkey --outfile key.pem --bits 2048
certtool --generate-request --load-privkey key.pem --outfile request.pem
certtool --generate-certificate --load-request request.pem --outfile cert.pem --load-ca-certificate ca.pem --load-ca-privkey ca-key.pem
При необходимости укажите дополнительные сведения.
Распространите сертификаты
- Следующие файлы необходимо скопировать на все серверы и клиентские компьютеры:
- Копия файла ca.pem
- Файл cert.pem
- Файл key.pem
Создайте каталог на корневом сервере для хранения этих ключей.
Эти файлы должны быть недоступны ни одному пользователю, кроме пользователя root.
Настройте удаленный сервер для связи по протоколу TCP с использованием TLS
- Создайте новый файл конфигурации /etc/rsyslog.d/logserver.conf с кодом, указанным ниже:
module(load="imuxsock") # local messages
module(load="imtcp" # TCP listener
StreamDriver.Name="gtls"
StreamDriver.Mode="1" # run driver in TLS-only mode
StreamDriver.Authmode="anon"
)
# make gtls driver the default and set certificate files global(
DefaultNetstreamDriver="gtls"
DefaultNetstreamDriverCAFile="https://www.manageengine.com/path/to/contrib/gnutls/ca.pem"
DefaultNetstreamDriverCertFile="https://www.manageengine.com/path/to/contrib/gnutls/cert.pem"
DefaultNetstreamDriverKeyFile="https://www.manageengine.com/path/to/contrib/gnutls/key.pem"
)
# start up listener at port 6514
input( type="imtcp"
port="6514"
)
Настройте клиентские компьютеры
- Создайте новый файл /etc/rsyslog.d/logclient.conf со следующим кодом:
global(
DefaultNetstreamDriver="gtls"
DefaultNetstreamDriverCAFile="https://www.manageengine.com/path/to/contrib/gnutls/ca.pem"
DefaultNetstreamDriverCertFile="https://www.manageengine.com/path/to/contrib/gnutls/cert.pem"
DefaultNetstreamDriverKeyFile="https://www.manageengine.com/path/to/contrib/gnutls/key.pem"
)
# set up the action for all messages action(
type="omfwd"
target="central.example.net"
protocol="tcp"
port="6514"
StreamDriver="gtls"
StreamDriverMode="1"
# run driver in TLS-only mode StreamDriverAuthMode="x509/name"
StreamDriverPermittedPeers="central.example.net"
)
Это настроит систему на зашифрованную передачу системных журналов.
Используйте решение для управления журналами
EventLog Analyzer - комплексное решение для управления журналами, которое собирает, анализирует, сопоставляет, выполняет поиск и архивирует данные журналов с устройств по всей сети. Решение обеспечивает безопасность данных журналов при сборе и передаче за счет использования различных протоколов безопасности. Подробнее о EventLog Analyzer можно узнать здесь.