Guia: configurar auditd, rotação e retenção de logs para conformidade LGPD em servidores Linux

Por · Publicado em · 9 min de leitura

troncos cortados empilhados com manchas de neve nos topos
Pilhas de troncos cortados com neve, metáfora visual para registros e políticas de retenção Foto: Alexis Caso / Pexels

Este guia mostra como configurar auditd, rotação e retenção de logs para conformidade LGPD em servidores Linux. Você verá exemplos práticos de audit.rules, parâmetros do auditd.conf e políticas de retenção seguras, focadas em produzir evidências úteis para auditorias, incidentes e accountability — sem prometer fórmulas mágicas e respeitando privacidade e desempenho.

LGPD na prática: o que os logs precisam comprovar

A LGPD não dita ferramentas, mas exige responsabilização. Em Linux, auditd ajuda a mostrar quem fez o quê, quando, de onde e com qual privilégio. Foque em rastreabilidade, integridade do registro e retenção proporcional à finalidade.

Pense em objetivos antes das regras. Isso evita coletar dados demais e reduz impacto no servidor.

  • Rastreabilidade de ações privilegiadas (root/sudo) e mudanças sensíveis.
  • Integridade e guarda imutável ou com prova de não adulteração.
  • Retenção por período compatível com finalidade/base legal.
  • Acesso restrito aos logs (menor privilégio).
  • Capacidade de investigar incidentes com buscas e relatórios reproduzíveis.

Pré-requisitos e arquitetura mínima de auditoria

Defina uma arquitetura simples e confiável. Separe a coleta local, rotação controlada e guarda externa confiável. Para endurecimento geral do host, use um checklist amplo e complementar.

Time correto é crucial para correlação. Sincronize o servidor com NTP/Chrony. Planeje espaço em disco para picos e retenção.

Para logs de aplicação e correlação entre serviços, centralização ajuda bastante.

  • Acesso root e kernel com suporte a audit.
  • Sincronização de hora (Chrony/NTP).
  • Espaço em disco suficiente em /var/log (idealmente partição dedicada).
  • Permissões de logs 0600; acesso somente para root.
  • Opcional: envio para um concentrador de logs ou armazenamento imutável.

Instale e ative o auditd no Linux

Instale o daemon de auditoria e habilite na inicialização. Depois, confirme o status. Em muitas distribuições, o pacote inclui regra padrão mínima. Ajustaremos regras e retenção adiante.

# Debian/Ubuntu
sudo apt update && sudo apt install -y auditd audispd-plugins
sudo systemctl enable --now auditd
sudo systemctl status auditd --no-pager

# RHEL/CentOS/Rocky/AlmaLinux
sudo dnf install -y audit
sudo systemctl enable --now auditd
sudo systemctl status auditd --no-pager

# Ver parâmetros atuais do subsistema
sudo auditctl -s

Configuração de rotação e retenção no auditd.conf

O arquivo /etc/audit/auditd.conf controla rotação, tamanho e ações quando o disco enche. Defina tamanhos compatíveis com sua taxa de eventos. "rotate" evita perda; "suspend" pausa a auditoria até liberar espaço. Escolher ignore pode causar perda de evidências.

Ajuste alertas de pouco espaço e permissões estritas. Após editar, recarregue o serviço.

# /etc/audit/auditd.conf (exemplo)
log_file = /var/log/audit/audit.log
max_log_file = 200           # tamanho em MB por arquivo
num_logs = 12                # quantidade de arquivos rotacionados
max_log_file_action = rotate # rotate|keep_logs|suspend|ignore
space_left = 1024            # em MB: alerta quando restar 1 GB
space_left_action = SYSLOG   # SYSLOG|EMAIL|EXEC|SUSPEND
admin_space_left = 512       # ponto crítico
admin_space_left_action = SUSPEND
write_logs = yes
flush = INCREMENTAL_ASYNC
freq = 50
permissions = 0600
log_format = RAW

Regras de auditoria alinhadas à LGPD: exemplos úteis

Aplique regras que entreguem evidências úteis, com ruído controlado. Evite auditar tudo. Comece por mudanças de identidade, privilégios, autenticação e diretórios com dados pessoais. Regra de execve para todo usuário pode gerar muito volume. Filtrar por euid=0 reduz ruído.

Grave suas regras em /etc/audit/rules.d/lgpd.rules. Carregaremos com augenrules.

Objetivo LGPD Regra exemplo (resumo) Evidência/relatório
Mudanças de identidade -w /etc/passwd -p wa -k ids aureport -m -i
Ações privilegiadas -a always,exit -S execve -F euid=0 -k exec_root aureport -au -i | filtrar por exec_root
Autenticação -w /var/log/lastlog -p wa -k logins ausearch -k logins -i
Dados pessoais -w /srv/app/dados_pessoais -p rwa -k lgpd_dados ausearch -k lgpd_dados -i
# /etc/audit/rules.d/lgpd.rules (exemplo)
# Tamanho do backlog do kernel (cautela conforme recursos)
-b 8192

# Integridade de arquivos críticos (identidades e privilégios)
-w /etc/passwd   -p wa -k ids
-w /etc/shadow   -p wa -k ids
-w /etc/group    -p wa -k ids
-w /etc/gshadow  -p wa -k ids
-w /etc/sudoers  -p wa -k sudo
-w /etc/ssh/sshd_config -p wa -k sshd

# Logins (varia por distro)
-w /var/log/lastlog  -p wa -k logins
-w /var/run/faillock -p wa -k logins

# Execução de comandos como root (64 e 32 bits)
-a always,exit -F arch=b64 -S execve -F euid=0 -k exec_root
-a always,exit -F arch=b32 -S execve -F euid=0 -k exec_root

# Diretório de dados pessoais da aplicação (ajuste o caminho)
-w /srv/app/dados_pessoais -p rwa -k lgpd_dados

Carregue as regras, gere evidências e relatórios

Carregue as regras e gere alguns eventos de teste. Use ausearch para consultas detalhadas e aureport para relatórios resumidos. Registre as consultas que você usará em auditorias. Sempre valide em homologação antes de aplicar em produção.

# Carregar as regras
sudo augenrules --load
sudo systemctl restart auditd

# Gerar alguns eventos (ajuste conforme seu ambiente)
sudo -n true || echo "sudo requer senha" # aciona exec_root
sudo ls /root >/dev/null 2>&1 || true     # aciona exec_root
sudo usermod -c "Teste" $USER || true     # aciona ids

# Consultar por chaves específicas (human-readable)
sudo ausearch -k exec_root -ts today -i | head
sudo ausearch -k ids -ts today -i | head
sudo ausearch -k lgpd_dados -ts today -i | head

# Relatórios úteis
sudo aureport -au -i --summary     # autenticação/autorizações
sudo aureport -m  -i --summary     # mudanças de conta/identidade

Rotação com logrotate, retenção segura e guarda externa

O auditd rotaciona por tamanho via auditd.conf. Você pode complementar ou endurecer com logrotate para compressão e retenção por quantidade/tempo. Mantenha permissões 0600 nos arquivos. Teste a rotação para evitar paradas da auditoria.

Para guarda externa e imutabilidade, objetos com bloqueio de retenção (WORM) são uma opção. Em nuvem, avalie Object Lock. Centralização também ajuda buscas e correlação.

  • Defina período e base legal para retenção mínima necessária.
  • Comprima, versione e armazene hashes independentes dos arquivos.
  • Restrinja acesso por papéis; registre acessos a logs.
  • Considere armazenamento imutável (WORM) e trilha de auditoria externa.
  • Centralize logs para buscas e alertas.
# /etc/logrotate.d/auditd (exemplo)
/var/log/audit/audit.log {
    rotate 12
    size 200M
    missingok
    notifempty
    compress
    delaycompress
    create 0600 root root
    postrotate
        /bin/systemctl kill -s HUP auditd.service || true
    endscript
}

Boas práticas, performance e verificação contínua

Colete o mínimo necessário para cumprir a finalidade. Evite capturar conteúdo de arquivos; foque em metadados de acesso e mudança. Controle volume das regras de execve. Mensure eventos por minuto e ajuste backlog.

Assegure sincronia de tempo e proteja integridade: calcule hashes e, se possível, assine lotes. Para logs de aplicação e correlação entre serviços, centralização estruturada em JSON ajuda bastante.

Integre auditoria a processos de segurança. Para autenticação e bloqueios reativos, combine com ferramentas específicas quando fizer sentido. Mantenha runbooks de investigação.

Verifique periodicamente se tudo está operando. Simule rotação e falta de espaço em janelas controladas. Nunca teste cenários destrutivos em produção sem plano de volta.

# Estado do daemon e parâmetros
sudo systemctl status auditd --no-pager
sudo auditctl -s

# Ver alguns eventos recentes da chave exec_root
sudo ausearch -k exec_root -ts recent -i | tail -n 10

# Testar configuração do logrotate (dry run)
sudo logrotate -d /etc/logrotate.d/auditd

# Conferir sincronização de tempo (se usar chrony)
chronyc tracking || timedatectl status

Perguntas frequentes

Quanto tempo devo reter logs para LGPD?

Depende da finalidade e base legal do tratamento. Defina uma política escrita, com prazos claros e responsáveis. Registros de segurança costumam ter retenção maior que logs de aplicação. Evite retenções excessivas. Revise periodicamente a necessidade e assegure descarte seguro após o prazo.

O auditd substitui um SIEM?

Não. O auditd coleta e mantém trilhas locais de auditoria no Linux. Um SIEM agrega, correlaciona e alerta em escala. Você pode enviar eventos do auditd para uma centralização e, a partir dela, integrar a um SIEM para detecção e resposta.

Auditar execve de todos os usuários impacta desempenho?

Pode impactar, pois gera alto volume. Filtrar por euid=0 reduz ruído e custo. Meça taxa de eventos, tamanho diário de logs e ajuste backlog (-b), tamanho de rotação e regras. Teste em homologação e monitore uso de CPU e I/O após mudanças.

Preciso auditar conteúdo de arquivos com dados pessoais?

Geralmente, não. A LGPD exige rastreabilidade e segurança, não cópias do conteúdo. Auditar metadados de acesso e alteração é suficiente na maioria dos casos. Evite coletar dados em excesso. Se realmente necessário, avalie criptografia e controles rigorosos de acesso.

Como garantir integridade dos logs para auditorias?

Use permissões 0600, restrinja acesso administrativo e gere hashes (por exemplo, SHA‑256) dos arquivos rotacionados. Armazene os hashes separadamente e, se possível, assine lotes. Considere guarda imutável (WORM) para impedir alterações e garantir cadeia de custódia.

O que fazer se o disco encher e a auditoria suspender?

Sua política deve prever ações: alerta, limpeza controlada de arquivos antigos segundo a política de retenção e restauração do serviço. Configure space_left_action e admin_space_left_action para avisos e suspensão segura. Monitore espaço e teste cenários de rotação periodicamente.

Precisa revisar regras e retenção de logs para LGPD?

Podemos analisar suas regras do auditd, políticas de rotação e guarda externa para tornar a auditoria reproduzível e proporcional à finalidade.

Falar sobre conformidade de logs

Veja também