Software Design

Design de software em C, C++, Java, etc…

Linux: Auditoria de comandos executados

Aqui vai uma dica de como gerar um log de auditoria de todos os comandos executados no seu servidor linux. A idéia é armazenar os comandos executados, além do usuário que executou, data e hora e ip da máquina remota no caso de ssh.

O linux já tem o .bash_history que armazena um histórico de comandos, mas ele é armazenado no home de cada usuário, então se você precisar saber quem removeu o arquivo X, precisaria percorrer todos os .bash_history e ainda assim não conseguiria ter certeza ( porque este arquivo é volátil ), além de o usuário ter controle sobre este arquivo.

É possível utilizar o syslog para gerar um log de auditoria centralizado. Para fazer isso adicione as duas linhas abaixo no /etc/bashrc ou /etc/profile:

whoami="$(whoami)@$(echo $SSH_CONNECTION | awk '{print $1}')"                                                                                                  
export PROMPT_COMMAND='RETRN_VAL=$?;logger -p local3.debug "$whoami [$$]: $(history 1 | sed "s/^[ ]*[0-9]\+[ ]*//" ) [$RETRN_VAL]"'

Dessa forma cada comando executado vai gerar uma linha no syslog, parecida com essa:

Jan  8 08:43:49 xpto local3.debug root: root@192.168.x.y [29385]: ls -al [0]

Por padrão esses logs serão gravados no /var/log/messages, mas é possível colocá-los num arquivo dedicado adicionando essa linha ao /etc/syslog.conf

local3.*                                                /var/log/prompt.log

Um comentário em “Linux: Auditoria de comandos executados

  1. mbpcosta01
    setembro 12, 2014

    Bom dia!
    Primeiramente obrigado por este tutorial, é perfeito para o que estou querendo realizar, porém, tenho algumas dúvidas.
    Como posso fazer para alterar o caminho do log no Ubuntu Server 14.04? Na versão não existe mais o /etc/syslog.conf, apenas o /etc/rsyslog.conf, e se eu coloco a configuração neste arquivo, não funciona o novo caminho. Outro ponto é que no Ubuntu Server 14.04, os logs não aparecem com o local3.debug. Obrigado.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

Informação

Publicado às janeiro 9, 2014 por em Uncategorized e marcado , , , , , .
%d blogueiros gostam disto: