Estou usando uma máquina RHEL com SELinux habilitado.
Eu gostaria de alterar a posição do arquivo de log auditd
para /mydir/log/audit.log
. Eu posso aplicar o contexto de segurança system_u:object_r:auditd_log_t:s0
a este arquivo. No entanto, qual deve ser o contexto de segurança do diretório /mydir/log
e do diretório pai, /mydir
já que eles serão lidos/escritos por outros daemons?
Ou devo seguir o caminho menos complicado e fazer
semanage permissive -a auditd_t
em vez de?
Você não especifica que desativou a rotação de log, portanto, ainda precisamos permitir que o auditd crie vários arquivos.
De maneira mais geral, você deve manter a estrutura atual de colocar os logs de auditoria em um
audit
diretório dedicado, a menos que esteja muito confiante sobre por que não precisa fazer isso. A menos que sua versão não use essa estrutura, porque é antiga? Mas pelo menos o RHEL 6 usa/var/log/audit/
por padrão.Desde que você não permita que nada renomeie ou altere as permissões de qualquer um dos diretórios ancestrais, é suficientemente restritivo ter o diretório
auditd_log_t
de log ativado.audit.log
audit
O acima parece simples de cumprir. Então "suficientemente restritivo" significaria que você pode considerar a parte de segurança da decisão resolvida. Apenas teste o que for e veja se funciona, e então você saberá que não é muito restritivo. Não notei nenhuma dificuldade aqui, pelas informações que você deu.
Você está principalmente lá, você está usando o
semanage
comando. Como você já sabe que existe um contexto correto em /var/log/audit, o mais fácil é configurar uma equivalência de contexto de arquivo selinux local. Então você executaria algo assim:Isso diz ao SELinux para adicionar (-a) uma regra de contexto de arquivo que diz que /mydir/log terá todo o contexto de arquivo equivalente (-e) como /var/log/audit. Depois de definir a regra, você deseja executar
restorecon -r -v /mydir/log
para definir os atributos do selinux em /mydir/log para o que a nova política deseja.