Como posso logar o acesso a arquivos de usuários?

4

Eu tenho que dar a alguém acesso ao meu computador, mas eu quero saber depois quais arquivos ele acessou ... Posso criar um arquivo de log para isso? Existe um programa existente para isso? Eu sei como rastrear processos, mas eu só quero os arquivos acessados por um usuário.

    
por Nano 13.07.2015 / 17:04

3 respostas

5

Usando iwatch

iwatch o_O é um programa de monitoramento de sistema de arquivos em tempo real usando inotify  e um serviço de correio local em funcionamento

Para uma melhor obscuridade, você deve alterar o endereço de e-mail e iniciar o deamon como root ou outra coisa… :)

sudo apt-get install iwatch
  1. Crie um arquivo de configuração com o nome iwatch.xml

    <?xml version="1.0" ?>
    <!DOCTYPE config SYSTEM "/etc/iwatch/iwatch.dtd" >
    <config>
            <guard email="username@localhost" name="iWatch"/>
            <watchlist>
                    <title>a title</title>
                    <contactpoint email="username@localhost" name="foo bar"/>
                    <path type="recursive" events="default">/home/username</path>
            </watchlist>
    </config>
  2. Iniciar o deamon

    iwatch -d -f iwatch.xml -p ~/iwatch.pid
    

    -d Executa o aplicativo como daemon. O iWatch será executado em foregroud sem essa opção.

    -f Especifica o arquivo de configuração alternativo. O padrão é /etc/iwatch/iwatch.xml

    -p Especifique um arquivo pid alternativo. Padrão: /var/run/iwatch.pid

  3. Verifique seus e-mails locais ;)

Some interesting events

-e event [,event[,..]]
   Specify a list of events you want to watch. Following are the possible events you
   can use:
access          : file was modified
modify          : file was modified
attrib          : file attributes changed
close_write     : file closed, after being opened in writeable mode
close_nowrite   : file closed, after being opened in read-only mode
close           : file closed, regardless of read/write mode
open            : file was opened
moved_from      : File was moved away from.
moved_to        : File was moved to.
move            : a file/dir within watched directory was moved
create          : a file was created within watched director
delete          : a file was deleted within watched directory
delete_self     : the watched file was deleted
unmount         : file system on which watched file exists was unmounted
q_overflow      : Event queued overflowed
ignored         : File was ignored
isdir           : event occurred against dir
oneshot         : only send event once
all_events      : All events
default         : close_write, create, delete, move, delete_self and move_self.

Mais informações aqui

    
por A.B. 13.07.2015 / 20:18
4

Não reinvente a roda - mal.

Use auditoria. Acompanhar quem acessa quais arquivos é exatamente para o que é a auditoria.

Um bom link para começar é aqui .

  

Objetivos de auditoria

     

Usando uma poderosa estrutura de auditoria, o sistema pode rastrear muitos eventos   tipos para monitorar e auditar o sistema. Exemplos incluem:

     
  • Auditar o acesso e modificação do arquivo      
    • Veja quem mudou um determinado arquivo
    •   
    • Detectar alterações não autorizadas
    •   
  •   
  • Monitoramento de chamadas e funções do sistema
  •   
  • Detectar anomalias como processos de falha
  •   
  • Definir desvios para fins de detecção de intrusão
  •   
  • Comandos de registro usados por usuários individuais
  •   
    
por Andrew Henle 13.07.2015 / 22:00
1

Usando find

A solução a seguir não funciona com arquivos excluídos e, se você tiver não , defina noatime em seu fstab, por exemplo:

defaults,noatime

Usando find depois de ter sua conta de volta.

find ~ -atime -1

significa, acessado menos de 1 dia.

Ou uma combinação:

find ~ -atime 1 -atime -2

significa que há 1-2 dias

de man find

-atime n
      File  was  last  accessed n*24 hours ago.  When find figures
      out how many 24-hour periods ago the file was last accessed,
      any fractional part is ignored, so to match -atime +1, a file
      has to have been accessed at least two days ago.

-amin n
      File was last accessed n minutes ago.
    
por A.B. 13.07.2015 / 18:19

Tags