Logs
Para visualizar os logs, preferencialmente, use o
tail ou
head.
A diferença (e o ponto interessante) do Rootsh, é que ele grava os logs mesmo se o usuário limpar seu histórico (já que o Rootsh não "conversa" ou depende do mesmo) usando o comando
history -c, ou até mesmo apagar ou limpar o arquivo
bash_history dentro do home do root.
Cada arquivo de log contém o monitoramento a partir do login do usuário como root (pelo comando sudo rootsh) até o seu logoff. Do início ao fim de cada sessão.
Cada arquivo de log refere-se à uma sessão.
O nome do log contém um
.closed no final, informando que aqueles logs são de uma sessão que o usuário já saiu (exit/logoff). Caso não tenha, significa que o usuário ainda está logado como root.
No diretório de log, ele cria um arquivo, cujo prefixo é o nome do usuário (no meu exemplo, o prefixo
eslih. e
root.), depois vem o timestamp de data e hora (AAAAMMDDHHMMSS - AnoMesDiaHoraMinutoSegundo), e o ID do processo. Caso o usuário já fechou a sessão, o nome do arquivo de log terminará com um
.closed.
Após o timestamp, há 6 caracteres hexadecimais que indicam o ID do processo. No exemplo abaixo, o
03eca é o ID do processo do Rootsh que foi executado durante esta sessão.
Exemplo:
eslih.20140710225359.03eca.closed
O arquivo acima, tem os logs de uma sessão onde o usuário
eslih logou-se em 10/07/2014 às 22:53.
Exemplo: abaixo, o usuário
eslih logou-se como root (sendo monitorado pelo Rootsh). Criou um diretório teste na raiz do sistema, depois removeu este diretório. Após isto, apagou seus rastros.
Na próxima tela, estou visualizando os logs gerados pelo Rootsh. Onde mostra exatamente o que o usuário
eslih fez logado como root na sessão da tela acima.
Outras opções
Após instalado e funcionando, você pode chamar o Rootsh usando determinadas flags, lembrando que para monitorar o root, sempre logue-se com o comando
sudo rootsh.
Mas, pode-se chamá-lo como uma aplicação independente e registrar a sua própria sessão, por exemplo:
rootsh -i
Inicia o Shell com login.
# rootsh -u User
Inicia o Rootsh monitorando uma sessão de usuário especifico, por exemplo:
rootsh -u eslih.
- -f :: Use o -f caso queira um outro nome para os arquivos de log.
- -d :: Use-o caso queira que a sessão que será iniciada o Rootsh grave os logs em outro diretório sem ser o padrão definido na compilação. (Usando junto com o -f, mude o nome também).
- -no-logfile :: Desliga o log para esta sessão.
- -no-syslog :: Desliga o syslog para esta sessão
Mais exemplos:
Iniciar um Shell de root:
sudo rootsh
Iniciar um Shell logado com o usuário
eslih:
sudo rootsh-u eslih
Inicia um Shell de root monitorado, onde o aquivo de log será local com o nome
mysessio.log e o envio para o syslog estará desabilitado:
rootsh -f mysession.log - no-syslog
Envia o comando
apache stop para o Shell (bash) com o usuário
eslih logado:
rootsh -i -u eslih apache stop
Fontes/referências