Развертывание syslog-сервера возможно в двух вариантах:
- На том же хосте, что и ECCM.
В данном случае необходимо при настройке указать порт, отличный от 514, во избежание конфликтов с внутренним сервисом ECCM.
Описание используемых портов ECCM приведено в разделе Векторы сетевого взаимодействия. - На отдельном хосте.
В данном случае вы можете использовать 514 порт, как описано в инструкции ниже.
1. Настройка сервера rsyslog
Установите rsyslog:
apt-get install rsyslog
Создайте директорию для логов ECCM:
mkdir /var/log/eccm
Назначьте необходимые права:
- для Ubuntu
chown syslog:adm/var/log/eccm/
- Для Astra
chown root:adm/var/log/eccm/
В конец файла /etc/rsyslog.conf добавьте следующие строки:
$ModLoad imudp $UDPServerRun 514 $ModLoad imtcp $InputTCPServerRun 514
$template RemoteLogs,"/var/log/eccm/%HOSTNAME%/%PROGRAMNAME%.log" *.* ?RemoteLogs & ~
Перезапустите службу:
sudo systemctl restart rsyslog
2. Настройка сервера ECCM
(Только для Astra) создайте директорию /etc/docker/
mkdir/etc/docker
Файл /etc/docker/daemon.json должен выглядеть следующим образом:
{ "log-driver": "syslog", "log-opts": { "syslog-address": "tcp://<ip_syslog_server>:514", "tag": "{{.Name}}" } }
В файле eccm/1.13/eccm/docker-compose.yml закомментируйте строки, которые отвечают за запись логов на тот же сервер, где запущен ECCM:
nano eccm/docker-compose.yml #x-docker-logging: # logging: # &docker-logging # driver: "json-file" # options: # max-size: ${LOGGING_MAX_FILE_SIZE:-50M} # max-file: ${LOGGING_MAX_FILES:-5} # compress: ${LOGGING_COMPRESS:-true} и для всех контейнеров # logging: # <<: *docker-logging
Также закомментируйте строки в файле eccm/1.1N/postgres/docker-compose.yml:
nano postgres/docker-compose.yml # logging: # driver: "json-file" # options: # max-size: ${LOGGING_MAX_FILE_SIZE:-50M} # max-file: ${LOGGING_MAX_FILES:-5} # compress: ${LOGGING_COMPRESS:-true}
Перезапустите docker:
systemctl restart docker
Если у вас уже запущены контейнеры, удалите их. Данные при этом не потеряются:
./compose-tools.sh --delete-containers
Перезапустите контейнеры:
./compose-tools.sh -s <ip_eccm>
Если запись логов не началась, перезапустите службу:
systemctl restart rsyslog