As informações que você está solicitando já estão, com alegria, incluídas nos registros. O campo específico que você deseja procurar é aud
. Na página manpage de auditctl
:
auid The original ID the user logged in with. Its an abbreviation
of audit uid. Sometimes its referred to as loginuid. Either
the user account text or number may be used.
Como exemplo, aqui está uma entrada que geramos usando a seguinte metodologia:
- Adicione a regra:
-a always,exit -S sethostname -S setdomainname -k system-locale
- Faça login no sistema com minha conta de usuário e inicie um shell raiz emitindo
su -
- Execute o comando:
hostname audit-test.home.private
type=SYSCALL msg=audit(1358306046.744:260): arch=c000003e syscall=170 success=yes exit=0 a0=2025010 a1=17 a2=7 a3=18 items=0 ppid=23922 pid=26742 auid=1000 uid=0 gid=0 euid=0 suid=0 fsuid=0 egid=0 sgid=0 fsgid=0 tty=pts4 ses=16 comm="hostname" exe="/usr/bin/hostname" subj=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 key="system-locale"
Assim, embora sim, a mensagem de log é bastante detalhada, podemos ver claramente auid=1000
na mensagem de log, que corresponde ao uid da minha conta de usuário.
Para obter mais detalhes sobre o exemplo acima, bem como uma breve descrição de auditd, confira esta postagem de blog da Segurança de TI de uma comunidade blogger (eu) imaginativamente intitulado Uma breve introdução ao Auditd .
O comando ausearch
mencionado pelo fuero faz parte de um conjunto de aplicativos usado para pesquisar e executar relatórios nesses logs bastante detalhados.