Настройка подключения к syslog-серверу
Настройка syslog-сервера для работы с Termidesk VDI по протоколу TCP
Аннотация
В ОС Astra Linux Special Edition 1.7 включена служба журналирования syslog-ng, обладающая возможностью гибкой настройки под различные нужды.
Для эксплуатации сервера Termidesk VDI, особенно в распределенном или высоконагруженном варианте, настоятельно рекомендуется использовать внешний syslog-сервер.
В данной инструкции приведена последовательность действий по обеспечению передачи сообщений с сервера Termidesk VDI на внешний syslog-сервер по протоколу TCP:
-
настройка сервера журналирования
syslog-ng; -
настройка сервера Termidesk VDI;
-
настройка ротации журналов.
Настройка сервера журналирования syslog-ng
На узле с сервером журналирования syslog-ng нужно:
-
создать файл
tcp-syslog.confв каталоге/etc/syslog-ng/conf.d/:
sudo touch /etc/syslog-ng/conf.d/tcp-syslog.conf
-
добавить в файл
tcp-syslog.confстроки:
source s_tcptest {
network (
port(6513)
transport("tcp")
max-connections(100000)
);
};
destination d_tcptest { file("/var/log/tcptest"); };
log { source(s_tcptest); destination(d_tcptest); };
-
перезапустить службу
syslog-ng:
sudo systemctl restart syslog-ng
Настройка сервера Termidesk
Для работы сервера Termidesk VDI с сервером журналирования syslog-ng в графическом интерфейсе управления Termidesk VDI нужно:
-
перейти «Системные параметры — Системные настройки — Логирование» и задать соответствующие параметры (см. рисунок Параметры журналирования Termidesk).
|
В примере были заданы параметры:
|
-
нажать экранную кнопку [Сохранить]. После сохранения параметров перезапуск служб не требуется.
Настройка ротации журналов
Для устранения возможности переполнения диска записями в журнале /var/log/termidesk.log стоит настроить регулярную ротацию при помощи утилиты logrotate. Для этого создать файл /etc/logrotate.d/termidesk-syslog-ng следующего содержания:
/var/log/termidesk.log
{
rotate 4
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d syslog-ng reload > /dev/null
endscript
}
Настройка syslog-сервера для работы с Termidesk VDI по протоколу UDP
Аннотация
В ОС Astra Linux Special Edition включена служба журналирования syslog-ng, обладающая возможностью гибкой настройки под различные нужды.
Для использования сервера Termidesk VDI, особенно в распределенном или высоконагруженном варианте, настоятельно рекомендуется использовать внешний syslog-сервер.
В данной инструкции приведена краткая последовательность шагов для настройки syslog-сервера для обеспечения приема сообщений на UDP-порт 514 на всех адресах и сохранение сообщения в файл /var/log/termidesk.log:
-
настройка сервера журналирования syslog-ng;
-
настройка сервера Termidesk VDI;
-
настройка ротации журналов.
Настройка сервера журналирования syslog-ng
На узле с сервером журналирования syslog-ng нужно:
-
создать файл
udp-syslog.confв каталоге/etc/syslog-ng/conf.d:
sudo touch /etc/syslog-ng/conf.d/udp-syslog.conf
-
добавить в файл
udp-syslog.confстроки:
source s_termidesk_net {
udp(ip(0.0.0.0) port(514));
};
destination d_termidesk {
file("/var/log/termidesk.log");
};
log {
source(s_termidesk_net);
destination(d_termidesk);
};
-
перезапустить
syslog-ng:
sudo systemctl restart syslog-ng
Настройка сервера Termidesk
Для работы сервера Termidesk VDI с сервером журналирования syslog-ng нужно:
-
в графическом интерфейсе управления Termidesk VDI перейти «Системные параметры - Системные настройки - Логирование» и включить параметр «Логирование syslog». Указать адрес syslog-сервера, протокол, уровень логирования и категорию сообщений (см. рисунок Параметры журналирования Termidesk);
-
в конфигурационном файле
/etc/opt/termidesk-vdi/termidesk.confзадать желаемый уровень логирования через параметрLOG_LEVEL; -
перезапустить службу Termidesk VDI:
sudo systemctl restart termidesk-vdi
Настройка ротации журналов
Для устранения возможности переполнения диска записями в журнале /var/log/termidesk.log стоит настроить регулярную ротацию при помощи утилиты logrotate. Для этого создать файл
/etc/logrotate.d/termidesk-syslog-ng следующего содержания:
/var/log/termidesk.log
{
rotate 4
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d syslog-ng reload > /dev/null
endscript
}
Настройка syslog-сервера для работы с Termidesk VDI по протоколу TLS
Аннотация
В ОС Astra Linux Special Edition включена служба журналирования syslog-ng, обладающая возможностью гибкой настройки под различные нужды.
Для эксплуатации сервера Termidesk VDI, особенно в распределенном или высоконагруженном варианте, настоятельно рекомендуется использовать внешний syslog-сервер.
В данной инструкции приведена последовательность действий по обеспечению передачи сообщений с сервера Termidesk VDI на внешний syslog-сервер по протоколу TLS:
-
настройка центра сертификации;
-
настройка сервера журналирования
syslog-ng; -
настройка сервера Termidesk VDI;
-
настройка ротации журналов.
Настройка центра сертификации
Для создания центра сертификации на целевом узле нужно:
-
загрузить и установить скрипты для упрощенной настройки инфраструктуры открытых ключей (PKI):
sudo apt install easy-rsa
-
перейти в каталог
/usr/share/easy-rsa:
cd /usr/share/easy-rsa
-
инициализировать PKI:
sudo ./easyrsa init-pki
-
по умолчанию хранилище сертификатов будет создано в каталоге
/usr/share/easy-rsa/pki; -
создать корневой сертификат:
sudo ./easyrsa build-ca
-
сгенерировать ключ Диффи-Хеллмана:
sudo ./easyrsa gen-dh
-
создать сертификат для узла, на котором будет работать сервер журналирования
syslog-ng:
sudo ./easyrsa build-serverClient-full <FQDN_сервера_журналирования_syslog-ng>
-
скопировать файл
ca.crtс сервера центра сертификации на syslog-сервер:
sudo scp /usr/share/easy-rsa/pki/ca.crt localuser@<IP-адрес_сервера_журналирования_syslog-ng>:ca.crt
|
В примере был задан параметр «localuser» — локальная учетная запись с полномочиями на управление на syslog-сервером. |
-
скопировать файлы сертификата и закрытого ключа с сервера центра сертификации на syslog-сервер:
sudo scp /usr/share/easy-rsa/pki/issued/<FQDN_сервера_журналирования_syslog-ng>.crt localuser@<IP-адрес_сервера_журналирования_syslog-ng>:<FQDN_сервера_журналирования_syslog-ng>.crt
sudo scp /usr/share/easy-rsa/pki/private/<FQDN_сервера_журналирования_syslog-ng>.key localuser@<IP-адрес_сервера_журналирования_syslog-ng>:<FQDN_сервера_журналирования_syslog-ng>.key
|
В результате выполнения команды файлы сертификата и закрытого ключа будут скопированы в домашний каталог пользователя syslog-сервера. |
-
скопировать файл
ca.crtс сервера центра сертификации на сервер Termidesk VDI:
sudo scp /usr/share/easy-rsa/pki/ca.crt localuser@<IP-адрес_сервера_termidesk>:ca.crt
Настройка сервера журналирования syslog-ng
Для настройки сервера журналирования syslog-ng нужно:
-
присвоить файлу
ca.crtназвание вида<имя_домена>.ca.crtдля идентификации имен корневых сертификатов; -
скопировать файл
<имя_домена>.ca.crtв каталог/usr/share/ca-certificates:
sudo cp <имя_домена>.ca.crt /usr/share/ca-certificates
-
добавить корневой сертификат в хранилище сертификатов одним из подходящих способов:
-
вариант 1 - перенастроить системные сертификаты:
sudo dpkg-reconfigure ca-certificates -
вариант 2:
-
добавить в файл
/etc/ca-certificates.confстроку с именем файла корневого сертификата:sudo sh -c "echo '<имя_домена>.ca.crt' >> /etc/ca-certificates.conf" -
обновить список сертификатов:
sudo update-ca-certificates
-
-
-
скопировать созданные ключи и сертификат сервера в каталог с пользовательскими сертификатами
/etc/ssl:
sudo cp /home/localuser/<FQDN_сервера_журналирования_syslog-ng>.crt /etc/ssl/certs/
sudo cp /home/localuser/<FQDN_сервера_журналирования_syslog-ng>.key /etc/ssl/private/
-
преобразовать ключ в файле с расширением
.key:
sudo openssl rsa -in /etc/ssl/private/<FQDN_сервера_журналирования_syslog-ng>.key -out /etc/ssl/private/<FQDN_сервера_журналирования_syslog-ng>.key
|
Данная команда получает значение ключа из файла. Результат операции будет записан в этот же файл. |
-
создать файл
tls-syslog.confв каталоге/etc/syslog-ng/conf.d/:
sudo touch /etc/syslog-ng/conf.d/tls-syslog.conf
-
добавить в файл
tls-syslog.confстроки:
source s_tlstermidesk {
network (
port(6514)
transport("tls")
# максимальное количество подключений. Подбирать эмпирическим путём.
max-connections(1000)
tls (
# путь к файлам ключа и сертификата сервера
cert-file("/etc/ssl/certs/<FQDN_сервера_журналирования_syslog-ng>.crt")
key-file("/etc/ssl/private/<FQDN_сервера_журналирования_syslog-ng>.key")
peer-verify(optional-untrusted)
)
);
};
destination d_tlstermidesk { file("/var/log/tls-termidesk.log"); };
log { source(s_tlstermidesk); destination(d_tlstermidesk); };
-
перезапустить службу
syslog-ng;
sudo systemctl restart syslog-ng
Настройка сервера Termidesk
Для работы сервера Termidesk VDI с сервером журналирования syslog-ng нужно:
-
присвоить файлу
ca.crtназвание вида<имя_домена>.ca.crtдля идентификации имен корневых сертификатов; -
скопировать файл
<имя_домена>.ca.crtв каталог/usr/share/ca-certificates:
sudo cp <имя_домена>.ca.crt /usr/share/ca-certificates
-
добавить корневой сертификат в хранилище сертификатов одним из подходящих способов:
-
вариант 1- перенастроить системные сертификаты:
sudo dpkg-reconfigure ca-certificates -
вариант 2: ***добавить в файл
/etc/ca-certificates.confстроку с именем файла корневого сертификата:sudo sh -c "echo '<имя_домена>.ca.crt' >> /etc/ca-certificates.conf"-
обновить список сертификатов:
sudo update-ca-certificates
-
-
-
в графическом интерфейсе управления Termidesk VDI перейти «Системные параметры — Системные настройки — Логирование» и задать соответствующие параметры (см. рисунок Параметры журналирования Termidesk).
|
В примере были заданы параметры:
|
-
нажать экранную кнопку [Сохранить]. После сохранения параметров перезапуск служб не требуется.
Настройка ротации журналов
Для устранения возможности переполнения диска записями в журнале /var/log/termidesk.log стоит настроить регулярную ротацию при помощи утилиты logrotate. Для этого создать файл /etc/logrotate.d/termidesk-syslog-ng следующего содержания:
/var/log/termidesk.log
{
rotate 4
daily
missingok
notifempty
delaycompress
compress
postrotate
invoke-rc.d syslog-ng reload > /dev/null
endscript
}