configuração do buffer auditctl - quão grande é isso?

1

Dentro do arquivo audit.rules padrão no CentOS 5, 6 e 7, o seguinte é definido:

# Increase the buffers to survive stress events.
# Make this bigger for busy systems
-b 320

No entanto, não há menção de qual unidade é o número fornecido.

A página man de auditctl não está clara:

OPTIONS
       -b backlog
              Set max number of outstanding audit buffers allowed 
              (Kernel Default=64) If all buffers  are  full,  the
              failure flag is consulted by the kernel for action.

Eu já vi recomendações para esse valor que englobam uma enorme variedade de números possíveis (320, 8192, até 32768 e além).

Eu quero ter certeza de que o valor que estou definindo é são e que não estou apenas cobrindo as faixas de um arquivo audit.rules ineficiente.

Existe algum tipo de tamanho implícito de um buffer de kernel / auditoria? Qual seria a recomendação aqui?

    
por drew 24.06.2015 / 16:53

1 resposta

2

A opção de lista de pendências limita o número de mensagens que podem ser enfileiradas esperando para serem gravadas no log. Portanto, a unidade da opção de backlog não é bytes ou conexões, mas sim 'número de mensagens de auditoria'.

A escolha de um valor sano para essa configuração depende inteiramente do seu sistema. Eu recomendo começar com o padrão e aumentá-lo conforme necessário. Se você exceder o limite do registro posterior, verá a mensagem audit: backlog limit exceeded em seus registros.

A fila de pendências é armazenada na memória, portanto, aumentar o limite do registro posterior aumenta o consumo de memória à medida que a fila cresce. Cada mensagem é normalmente pouco menos de 9000 bytes. Você não quer que o limite do backlog seja muito baixo, mas também não quer definir um valor insanamente alto que possa consumir uma parte significativa da memória do sistema.

    
por 24.06.2015 / 19:39