auditd는 순환 중에 로그를 압축하지 않습니다.

auditd는 순환 중에 로그를 압축하지 않습니다.

감사에서는 로그를 압축하지 않습니다. 어쩌면 이것은 구성 문제일 수도 있습니다. 아래 구성에서 이 문제의 원인이 무엇인지 알려주실 수 있나요?

local_events = yes
write_logs = yes
log_file = /var/log/audit/audit.log
log_group = root
log_format = RAW
flush = INCREMENTAL_ASYNC
freq = 50
max_log_file = 100
num_logs = 5
priority_boost = 4
disp_qos = lossy
dispatcher = /sbin/audispd
name_format = NONE
##name = mydomain
max_log_file_action = keep_logs
space_left = 75
space_left_action = email
action_mail_acct = root
admin_space_left = 50
admin_space_left_action = SUSPEND
disk_full_action = SUSPEND
disk_error_action = SUSPEND
use_libwrap = yes
##tcp_listen_port =
tcp_listen_queue = 5
tcp_max_per_addr = 1
##tcp_client_ports = 1024-65535
tcp_client_max_idle = 0
enable_krb5 = no
krb5_principal = auditd
##krb5_key_file = /etc/audit/audit.key
distribute_network = no

답변1

auditd는 자체 로그를 압축할 수 없으므로 이를 위해 logrotate를 설정해야 합니다. 자세한 내용은 다음을 확인하세요.

https://bgstack15.wordpress.com/2018/02/13/logrotate-audit-log-selinux-cron-and-ansible/

또는 https://www.stigviewer.com/stig/vmware_vrealize_erations_manager_6.x_sles/2018-10-11/finding/V-88747

둘 다 약간 구식이지만 간단히 다음 service restart auditd으로 교체할 수 있습니다.systemctl restart auditd


auditd.conf의 필수 변경 사항(기본적으로 파일 자체를 회전하는데 이는 우리가 원하는 것이 아닙니다):

max_log_file             =  0
max_log_file_action      =  ignore

logrotate 파일 예시, 예:/etc/logrotate.d/audit

/var/log/audit/*.log {
        weekly
        missingok
        compress
        #copytruncate
        rotate 30
        minsize 100k
        maxsize 200M
        postrotate
                touch /var/log/audit/audit.log ||:
                chmod 0600 /var/log/audit/audit.log ||:
                service auditd restart
        endscript
}

관련 정보