Como saber se o auditd suspendeu o log?

2

Se você colocar o seguinte no seu auditd.conf , auditd suspenderá o registro quando você tiver 50 MB ou menos de espaço no disco:

admin_space_left = 50
admin_space_left_action = SUSPEND

Como pode um programa externo, por ex. uma verificação de monit, saber se auditd atingiu este estado suspenso?

(Eu percebo que você também pode usar a ação EXEC para fazer algo quando auditd suspende o registro, mas isso não é adequado aos meus propósitos.)

    
por 2rs2ts 21.05.2016 / 00:45

2 respostas

1

Em um sistema CentOS eu tenho que entregar o, o que fazer quando várias limitações de espaço em disco forem atendidas é estruturado ...

space_left = 75
space_left_action = SYSLOG
admin_space_left = 74
admin_space_left_action = SUSPEND

Isso faz com que essa mensagem seja emitida para o syslog quando o espaço livre na partição que hospeda o log de auditoria ficar abaixo de 75 MB

May 21 08:53:01 c6test auditd[5851]: Audit daemon is low on disk space for logging

Da mesma forma, quando o espaço fica abaixo de 74 MB, essa mensagem é emitida para o syslog

May 21 08:54:01 c6test auditd[5851]: Audit daemon is suspending logging due to low disk space.

Então, para responder à sua pergunta, ele grava uma mensagem no syslog, que depois encontra o caminho para os registros do sistema, para que o monitor possa ser configurado para procurá-lo.

O que a mensagem atual é e em qual arquivo de log ela é gravada provavelmente depende do sistema operacional e / ou da distribuição.

    
por 21.05.2016 / 10:24
2

Examinando o código-fonte (na versão 2.6.7), não há como recuperar o estado atual "suspenso" além de anexar um depurador ao processo e fazê-lo despejar o valor da variável interna logging_suspended .

Você pode enviar uma mensagem de teste e verificar se ela está registrada. Dessa forma, você verificaria a condição suspensa , mas também qualquer coisa que impedisse o registro em log. Ou seja, você confirma que funciona corretamente até o final.

msg="audit test $(uuidgen)" || exit # generate unique message
auditctl -m "$msg" || exit # send the unique message
sleep 1 # enough time for the message to be logged
ausearch -ts recent -m USER | grep -Fqe "$msg" && echo OK
    
por 09.02.2017 / 18:53