Configurando uma lixeira no Servidor Samba Linux (com auditoria)

Lixeira no Samba com auditoria

Olá amigos e usuários de Linux. Este artigo é para você, administrador de redes que trabalha com Samba nos servidores Linux e estações Windows.

Para quem não conhece a fundo, o Samba é um servidor para fazer a integração entre o Servidor Linux e Estações Windows, tornando esta comunicação transparente e compatível.

Com o Samba, seu servidor começa a “servir” arquivos para uma rede com clientes Windows e mantém a segurança do Linux.

Configurando o smb.conf

Na seção [global] colocamos as seguintes linhas:

vfs objects = recycle
recycle:keeptree = yes
recycle:versions = yes
recycle:repository = /home/servidor/lixeira
recycle:exclude = *.~*, ~*.*, *.bak, *.old, *.iso, *.tmp
recycle:exclude_dir = temp, cache, tmp

Explicando linha a linha

A primeira linha refere-se a ativar a lixeira global, vfs objects = recycle

recycle:keeptree = yes // (yes/no) Mantém a estrutura de arquivos quando forem apagados, exemplo se vc apagou de um /compartilhamento/dir1/dir2, ficará salvo em /lixeira/dir1/dir2.

recycle:versions = yes // (yes/no) Mantém versões diferentes de arquivos apagados.

recycle:repository = dir // Pasta local que serão armazenados os arquivos apagados

recycle:exclude = masc1, masc2, masc3… // Máscara de arquivos que serão ignorados da lixeira, ou seja, quando estes arquivos forem apagados eles NÃO irão para a lixeira

recycle:exclude_dir = dir1, dir2… // Pastas que serão excluídas diretamente, sem passar pela lixeira

Compartilhamento da Lixeira

Para que o conteúdo da Lixeira fique disponível, temos que criar um compartilhamento que será responsável para armazenar estes arquivos

Dentro do smb.conf, lá no final colocamos

[lixeira]
path = /home/servidor/lixeira
writeable = yes
browseable = no

Desta forma, compartilhamos a pasta /home/servidor/lixeira, deixando ela com permissões de gravação (writeable) para todos, mas sem ficar à vista de todos (browseable).

Para você acessar a lixeira de outro computador voce digita no Explorer o seguinte \\nome_do_servidor_samba\lixeira

Explico: Se o compartilhamento de lixeira ficar disponível para todos, um usuário ao apagar seu arquivo, poderá um segundo usuário acessar a lixeira e pegar suas informações, mesmo sem ter as permissões necessárias.

Aqui é um problema da lixeira, mas podemos corrigir da seguinte forma:

Na seção Global colocamos assim:

recycle:repository = /home/servidor/lixeira/%U

Desta forma, cada usuário que apagar seu arquivo, irá para a pasta /home/servidor/lixeira/nome_do_usuario

Assim fica mais fácil de cada um controlar o seu, e você como administrador, pode logar como root e controlar tudo.

Mas temos que mudar no compartilhamento da lixeira também:

path = /home/servidor/lixeira/%U

Desta forma, cada usuário terá acesso somente aos arquivos apagados por ele mesmo.

Alterando um compartilhamento específico

Tem outra opção também, depois de tudo configurado, imagine que você tem um compartilhamento e quer a Lixeira em outra pasta

Então na configuração do [compartilhamento] edite:

recycle:repository = lixeira

Desta forma, os arquivos ficarão dentro do path/lixeira do compartilhamento específico. Você também pode usar o “.” antes do “lixeira”, ficando “.lixeira”, isto significa que a pasta lixeira ficará oculta.

Habilitando auditoria no Samba

Bom, depois de habilitar a lixeira, seria interessante também termos um log descente do nosso servidor.

Para isso, editamos novamente na seção [Global] e colocamos o log e a lixeira juntos

vfs objects = recycle, full_audit      # Esta linha havilita o log e a lixeira

# Aqui a configuração do log
full_audit:success = open, opendir, write, unlink, rename, mkdir, rmdir, chmod, chown
log file = /home/servidor/logs/%U.log
max log size = 100
vfs objects = full_audit
full_audit:prefix = %u|%I|%S|%

Com este log, você pode verificar tudo que está acontecendo no seu samba.  Para ficar mais simples, criamos um compartilhamento para ele e somente com acesso para quem precisa mesmo.

[Logs]
path=/home/servidor/logs
browseable = true
valid users = marcos
admin users = marcos

E pronto, do seu computador, poderá estar vendo o que acontece no Samba da sua rede toda.

Espero que tenham gostado. Abraços

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *