Antes de instalar o
samba-vscan, vamos instalar os seguintes pacotes:
- autoconf
- libmagic
- gmake
- bzip2
Provavelmente um ou outro já devem estar instalado, mas para ter certeza vamos fazer um por um.
# cd /usr/ports/devel/autoconf
# make install
# cd /usr/ports/devel/libmagic
# make install
# cd /usr/ports/devel/gmake
# make install
# cd /usr/ports/devel/bzip2
# make install
Feito isso, vamos agora fazer uma pequena adaptação no source do samba para que tudo corra bem, leia, adaptação, nada de gambiarras... hehehehe
Edite o arquivo:
/usr/ports/net/samba/w-samba-3.0.24/samba-3.0.24/source/autogen.sh
Levando em conta que a versão do samba é a 3.0.24.
TESTAUTOHEADER="autoheader autoheader-2.53 autoheader2.50 autoheader-2.59"
TESTAUTOCONF="autoconf autoconf-2.53 autoconf2.50 autoconf-2.59"
Depois disso vamos rodar o make proto no source pra podermos conseguir instalar o samba-vscan.
No diretório /usr/ports/net/samba/w-samba-3.0.24/samba-3.0.24/source/ rode:
# ./autogen.sh
# ./configure
# make proto
Agora vamos baixar o samba-vscan mais novo no link abaixo:
# ftp http://ufpr.dl.sourceforge.net/sourceforge/openantivirus/samba-vscan-0.3.6b.tar.bz2
# bunzip2 samba-vscan-0.3.6b.tar.bz2
# tar xf samba-vscan-0.3.6b.tar
# cd samba-vscan-0.3.6b
# ./configure --with-samba-source=/usr/ports/net/samba/w-samba-3.0.24/samba-3.0.24/source/
# gmake clamav
# cp vscan-clamav.so /usr/local/lib/samba/vfs/
# cp clamav/vscan-clamav.conf /etc/samba/
Agora sim, instalado. Vamos configurá-lo.
Edite o arquivo
/etc/samba/vscan-clamav.conf com seu editor favorito.
Altere o seguinte:
; where to put infected files - you really want to change this!
quarantine directory = /var/clamav/quarantine
# assim ele copia pro quarantine os arquivos possivelmente infectados.
; socket name of clamd (default: /var/run/clamd). Setting will be ignored if
; libclamav is used
clamd socket name = /tmp/clamd
# Assim o socket será encontrado, senão vai dar erro e acesso negado nos arquivos já criados.
Agora vamos editar o
smb.conf e adicionar as linhas seguintes para que ele seja ativado quando o samba iniciar.
Se quiser que o vscan rode para todos os compartilhamentos (o que demanda ter uma boa máquina) coloque as seguintes linhas no global. Caso contrário, coloque apenas no compartilhamento que deseja que o vscan fique escaneando.
vfs object = vscan-clamav
vscan-clamav: config-file = /etc/samba/vscan-clamav.conf
Assim podemos verificar seu funcionamento.
# tail -f /var/log/messages
Deve aparecer a seguinte mensagem quando alguém acessar algum arquivo ou criá-lo.
Aug 19 21:55:50 closedbox smbd_vscan-clamav[27411]: samba-vscan (vscan-clamav 0.3.6b) registered (Samba 3.0), (c) by Rainer Link, OpenAntiVirus.org
Aug 19 21:55:50 closedbox smbd_vscan-clamav[27411]: samba-vscan (vscan-clamav 0.3.6b) connected (Samba 3.0), (c) by Rainer Link, OpenAntiVirus.org
Aug 19 21:55:50 closedbox smbd_vscan-clamav[27411]: INFO: connect to service PUBLICO by user root
Pronto.
Samba-vscan funcionando.