Настройка аудита безопасности

Включение модуля karaf-log-audit

audit log

В модуле безопасности реалма karaf log-audit-jaas-login-module.karaf-log-audit необходимо включить модуль установив чек-бокс Module Enabled и указать значение Logger name - audit.log.logger

Включение трансляции событий аудита безопасности на сервер логирования Syslog

Для настройки логирования Entaxy используется конфигурационный файл org.ops4j.pax.logging.cfg, который находится в директории entaxy/etc

В секцию # Security audit logger конфигурационного файла org.ops4j.pax.logging.cfg нужно добавить строку log4j2.logger.audit.appenderRef.SYSLOG.ref = SYSLOG

  1. В раздел # Appenders configuration нужно добавить # Syslog appender:

# Syslog appender
log4j2.appender.syslog.type = Syslog
log4j2.appender.syslog.name = SYSLOG
log4j2.appender.syslog.host = ip_address # адрес syslog сервера
log4j2.appender.syslog.port = 514 # порт syslog сервера
log4j2.appender.syslog.protocol = UDP # используемый протокол
log4J2.appender.syslog.facility = LOCAL0
log4J2.appender.syslog.format = RFC5424 log4J2.appender.syslog.appName = entaxy

Перенаправление событий, связанных с изменением элементов конфигурации в журнал аудита безопасности

Для перенаправления событий изменения конфигурации Entaxy (изменение конфигурационных файлов в директории ../entaxy/etc) нужно выполнить следующие действия:

  1. В файле org.ops4j.pax.logging.cfg нужно добавить секцию # Security fileinstall logger

# Security fileinstall logger
log4j2.logger.fileinstall.name = org.apache.felix.fileinstall
log4j2.logger.fileinstall.level = INFO
log4j2.logger.fileinstall.additivity = false
log4j2.logger.fileinstall.appenderRef.RollingFile.ref = RollingFile
log4j2.logger.fileinstall.appenderRef.AuditRollingFile.ref = AuditRollingFile

В результате этих действий, в журнал безопасности будут попадать события типа:

--- | INFO | FelixStartLevel | fileinstall | 11 - org.apache.felix.fileinstall - 3.6.6 | Creating configuration from ru.entaxy.esb.error.cfg
--- | INFO | fileinstall-/path/entaxy-platform/etc | fileinstall | 11 - org.apache.felix.fileinstall - 3.6.6 | Updating configuration from org.apache.felix.hc.generalchecks.HttpRequestsCheck-repositories.cfg

Настройка ротации журналов по дате и времени.

По умолчанию настройки ротации журналов зависят от размера файла:

# Rolling file appender
log4j2.appender.rolling.type = RollingRandomAccessFile
log4j2.appender.rolling.name = RollingFile
log4j2.appender.rolling.fileName = ${karaf.log}/karaf.log
log4j2.appender.rolling.filePattern = ${karaf.log}/karaf.log.%i
# uncomment to not force a disk flush
#log4j2.appender.rolling.immediateFlush = false
log4j2.appender.rolling.append = true
log4j2.appender.rolling.layout.type = PatternLayout
log4j2.appender.rolling.layout.pattern = ${log4j2.pattern}
log4j2.appender.rolling.policies.type = Policies
log4j2.appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
log4j2.appender.rolling.policies.size.size = 16MB

Но можно настроить и по дате и времени

# Rolling file appender
log4j2.appender.rolling.type = RollingFile
log4j2.appender.rolling.name = RollingFile
log4j2.appender.rolling.fileName = ${karaf.log}/karaf.log
log4j2.appender.rolling.filePattern = ${karaf.log}/karaf.%d{yyyy-MM-dd-HH-mm}.log
# uncomment to not force a disk flush
#log4j2.appender.rolling.immediateFlush = false
log4j2.appender.rolling.append = true
log4j2.appender.rolling.layout.type = PatternLayout
log4j2.appender.rolling.layout.pattern = ${log4j2.pattern}
log4j2.appender.rolling.policies.type = Policies
log4j2.appender.rolling.policies.date.type = TimeBasedTriggeringPolicy
log4j2.appender.rolling.policies.date.interval = 1