A menos que você tenha políticas de log extremamente incomuns, quem acessou o arquivo que não está logado (isso seria uma enorme quantidade de informações). Você pode descobrir quem estava logado em que horas nos logs do sistema; o comando last
fornece um histórico de login e outros registros, como /var/log/auth.log
, informam como usuários autenticados e de onde efetuaram login (qual terminal ou qual host, se remotamente).
A data em que um arquivo foi lido pela última vez é chamada de tempo de acesso ou atime . Todos os sistemas de arquivos unix podem armazená-lo, mas muitos sistemas não o registram, porque ele tem uma penalidade de desempenho (geralmente pequena). ls -ltu /path/to/file
ou stat /path/to/file
mostra o tempo de acesso do arquivo.
Se um usuário acessou o arquivo e não estava tentando ocultar suas faixas, seu histórico de shell (por exemplo, ~/.bash_history
) pode ter pistas.
Para descobrir o que ou quem tem um arquivo aberto agora, use lsof /path/to/file
.
Para registrar o que acontece com um arquivo no futuro, existem algumas maneiras:
-
Use inotifywait .
inotifywait -e access /path/to
imprimirá uma linha/path/to/ ACCESS file
quando alguém lerfile
. Essa interface não informa quem acessou o arquivo; você pode chamarlsof /path/to/file
assim que esta linha aparecer, mas há uma condição de corrida (o acesso pode terminar no momento em que o lsof estiver indo). -
LoggedFS é um sistema de arquivos empilhável que fornece uma visão de uma árvore do sistema de arquivos, e pode realizar registros mais extravagantes de todos os acessos através de essa visão. Para configurá-lo, consulte Sintaxe do arquivo de configuração do LoggedFS .
-
Você pode usar o subsistema de auditoria do Linux para registrar um grande número de coisas, incluindo acessos ao sistema de arquivos. Certifique-se de que o daemon
auditd
foi iniciado e configure o que você deseja registrar comauditctl
. Cada operação registrada é registrada em/var/log/audit/audit.log
(em distribuições típicas). Para começar a assistir a um arquivo específico:auditctl -w /path/to/file
Se você colocar um relógio em um diretório, os arquivos nele e seus subdiretórios também serão assistidos de forma recursiva.