Como posso visualizar o histórico de comandos de outro usuário?
Eu sou um administrador na minha máquina. Eu posso ver o histórico normal visualizando, /home/user_name/.bash_history
mas não consigo ver comandos disso user_name
quando eles estavam fazendo sudo
.
Existe uma maneira de visualizar todos os comandos executados por um usuário?
linux
administration
command-history
Sean Nguyen
fonte
fonte
Respostas:
Em sistemas operacionais baseados no Debian, o fazer
tail /var/log/auth.log | grep username
deve fornecer umsudo
histórico ao usuário . Não acredito que haja uma maneira de obter um histórico unificado de comandos dos comandos normais + sudo de um usuário.Em sistemas operacionais baseados em RHEL, você precisaria verificar em
/var/log/secure
vez de/var/log/auth.log
.fonte
/var/log/auth.log
/var/log/secure
vez disso.Acabei de testar o seguinte e funcionou como um encanto.
fonte
Se o usuário emitiu um comando como em
sudo somecommand
, o comando aparecerá no log do sistema.Se o usuário gerou uma concha com, por exemplo,
sudo -s
,sudo su
,sudo sh
, etc, em seguida, o comando pode aparecer no histórico do usuário root, ou seja, na/root/.bash_history
ou similar.fonte
# zless /var/log/auth*
é seu amigo aqui. Abre até os arquivos compactados em gzip. Você pode pular entre os que:n
avançam ou:p
recuam.Como alternativa, você pode usar,
# journalctl -f -l SYSLOG_FACILITY=10
por exemplo. Leia mais sobre isso no wiki do Arch Linuxfonte
use o comando abaixo
Se o sysdig não estiver instalado , instale aqui
fonte
Talvez este link tenha um valor para você: http://www.sudo.ws/pipermail/sudo-users/2000-March/000052.html
Mas você deve se lembrar de que não deixar rastros no bash_history é apenas uma questão de iniciar um comando com um espaço etcpp. A história é um auxiliar, não uma ferramenta de registro.
Saudações da Alemanha, Daniel Leschkowski
fonte
A lógica se aplica a muitos outros objetivos.
E como ler .sh_history de cada usuário em / home / filesystem? E se houver milhares deles?
Aqui está o script.
fonte