• My Del.icio.us

Samba + Vscan

Configuração do Samba com Vscan

Propósito da Configuração

Possibilitar que o Samba através de um plugin possa realizar a verificação de vírus em arquivos acessados através dos compartilhamentos do servidor.

Sistema/Pacotes Instalados

A instalação foi realizada em um servidor rodando openSuSE-10.2 em um P3 900 MHZ.
Vale lembrar que para a minha necessidade eu precisei instalar outros pacotes aqui, sendo assim abordarei apenas a instalação e configuração do Samba com Vscan.
Pacotes instalados:

samba-3.0.X
samba-vscan-0.3.x
samba-client-3.0.x
clamav-0.88.x

Instalando estes pacotes, e os demais necessários para a sua necessidade já basta.

Ativando os serviços na Inicialização do Sistema

Ativando o clamav:
#chkconfig clamd on
#chkconfig freshclam on

Ativando o Samba:
#chkconfig smb on
#chkconfig nmd on
#chkconfig winbind on

Configuração dos Programas

O pacote do Clamav tem um utilitário de atualização do banco de dados de vírus que é o freshclam, sendo assim precisaremos configurar tanto o clamav em si como a ferramenta de atualização.

Configurando o clamd —> /etc/clamd.conf

O arquivo é auto-explicativo, porém vou deixar aqui algumas alterações que devem ser realizadas para que o nosso objetivo seja alcançado.

Lá pela linha 140 do arquivo de configuração é provável que você encontre a seguinte opção:
User root

Esta é a opção que deve necessariamente ser alterada pois caso contrário teremos erros como os listados abaixo, onde os arquivos criados não podem ser verificados pelo clamav.

May 22 15:48:47 suse-server smbd_vscan-clamav[15524]: INFO: connect to service IPC$ by user tecnico
May 22 15:48:54 suse-server smbd_vscan-clamav[15524]: ERROR: file /srv/smb/New Wave Sound.wav not found, not readable or an error occured
May 22 15:49:01 suse-server smbd_vscan-clamav[15524]: ERROR: file /srv/smb/New Wave Sound.wav not found, not readable or an error occured
May 22 15:49:01 suse-server smbd_vscan-clamav[15524]: ERROR: daemon failed with a minor error – access to file New Wave Sound.wav denied
May 22 15:49:17 suse-server smbd_vscan-clamav[15524]: ERROR: file /srv/smb/New Explorer Document/desktop.ini not found, not readable or an err
or occured
May 22 15:49:17 suse-server smbd_vscan-clamav[15524]: ERROR: file /srv/smb/New Explorer Document/desktop.ini not found, not readable or an err
or occured
May 22 15:49:17 suse-server smbd_vscan-clamav[15524]: ERROR: daemon failed with a minor error – access to file New Explorer Document/desktop.i
ni denied

A solução para esse erro foi encontrada em : http://osdir.com/ml/security.virus.openantivirus.general/2005-04/msg00001.html

Na linha 68 altere a configuração do socket do clamd, o default é estar comentada essa linha, sendo assim , descomente-a, ficando assim:

LocalSocket /var/lib/clamav/clamd-socket

As demais configurações devem refletir a sua necessidade, sendo assim fica a tarefa de você descobrir qual é a tua necessidade 🙂 .

Configurando o freshclam —–> /etc/freshclam.conf

A configuração do freshclam é por si só bem fácil, pois basta descomentar algumas linhas e já estará tudo ok.

Descomente:

NotifyClamd
PidFile /var/lib/clamav/freshclam.pid
DatabaseOwner vscan
DNSDatabaseInfo current.cvd.clamav.net
DatabaseMirror database.clamav.net

Feita essa alteração execute manualmente o comando freshclam como root, provavelmente alguma mensagem de erro aparecerá, não se preocupe, tudo funcionará, após realizar o update das definições de vírus inicie os daemons do clamd e do freshclam:

#rcclamd start
#rcfreshclam start

A configuração do Samba

Bom a configuração do Samba é tranquila, sendo assim não vou abordá-la aqui, será abordado aqui apenas a parte referente à integração dos serviços.
Para realizar esta integração entre o Samba e Clamav faça:

#cp /usr/share/doc/packages/samba-vscan/vscan-clamav.conf /etc/samba

Edite o arquivo vscan-clamav.conf e configure-o de acordo com as suas necessidades, é apenas necessário alterar uma linha deste arquivo, na linha 62 temos por padrão:

clamd socket name = /var/run/clamd

Esta linha deverá ter o seguinte conteúdo:

clamd socket name = /var/lib/clamav/clamd-socket

Após realizar esta pequena alteração, abra o arquivo de configuração do samba (/etc/samba/smb.conf) e adicione a seguinte entrada:

vfs object = vscan-clamav
vscan-clamav: config-file = /etc/samba/vscan-clamav.conf

Bom pessoal, a partir daqui é só alterar as configurações de diretórios compartilhados, e partir pro abraço.
Qualquer problema…..

#tail -f /var/log/messages

#cd /var/log/samba —> Verifique os logs!!!

Continua com problema? Pois bem, altere o número do syslog em /etc/samba/smb.conf e deixe os logs do samba te mostrarem o erros.

Qualquer coisa…. vixi, pede ajuda pro google 🙂

Fontes:

http://us1.samba.org/samba/docs/man/Samba-HOWTO-Collection/
http://en.opensuse.org/Howto_setup_SUSE_10.1_as_Samba_PDC