Clamav é um software de antivírus gratuito e muito bom.
Após muitas pesquisas nunca encontrei uma documentação para a instalação e integração do antivírus CLAMAV com o SAMBA (já instalado e rodando). Estarei descrevendo como instalar o CLAMAV e integrar com o SAMBA no sistema operacional Debian.
É muito importante a seqüência de instalação!
1 - Atualização e instalação dos pacotes necessários:
# apt-get update
# apt-get install clamav clamav-base clamav-daemon clamav-freshclam clamav-testfiles
2 - Atualizando a instalação:
# freshclam -v
Obs.: Caso seu computador/servidor utilize proxy, devemos adicionar as linhas abaixo no arquivo
/etc/clamav/freshclam.conf:
HTTPProxyServer ip_do_servidor_proxy
HTTPProxyPort porta_do_proxy
HTTPProxyUsername usuário_do_proxy
HTTPProxyPassword senha_do_usuário_do_proxy
3 - Testando a instalação e atualização
# clamscan -r /usr/share/clamav-testfiles
4 - Agendando a atualização diária do Clamav, execute o seguinte comando como root:
# crontab -e
Adicione a linha abaixo (realiza atualização todo dia as 02h00):
0 2 * * * /usr/bin/freshclam
5 - Baixando e instalando um pré-requisito para o Samba:
# apt-get install dpkg-dev libsmbclient-dev
6 - Escolhendo um diretório para baixar o samba e samba-vscan:
# mkdir /usr/src/samba_source
# cd /usr/src/samba_source
7 - Obtendo os fontes do samba e suas dependências para compilação:
# apt-get source samba
# apt-get build-dep samba
8 - Após isso haverá um diretório 'samba-3.0.24' com toda a árvore do samba. Vamos deixar a árvore do samba já preparada como se tivéssemos de compilá-lo:
# cd samba-3.0.24/source
# ./configure
# make proto
(aguarde até o final do processo)
9 - Baixando e descompactando o samba-vscan:
# cd /usr/src/samba_source
# wget -vc http://www.openantivirus.org/download/debian/\
samba-3.0.11/samba-vscan_0.3.5-6.tar.gz
# tar zxvf samba-vscan_0.3.5-6.tar.gz
10 - Copiando o samba-vscan para o lugar certo:
# cp -R samba-vscan-0.3.5 /usr/src/samba_source/samba-3.0.24/examples/VFS
11 - Recriando os arquivos .deb com otimização do seu processador (não é obrigatório):
# apt-get -b source samba
12 - Criando o módulo samba-vscan:
# cd /usr/src/samba_source/samba-3.0.24/examples/VFS/samba-vscan-0.3.5
# ./configure
12.1- Configure o módulo para o clamav:
# make clamav
12.2- Configure todos os módulos:
# make
13- Instalando os módulos compilados:
# cp *.so /usr/lib/samba/vfs/
14 - Copiando um arquivo exemplo do samba-clamav:
# cp /usr/src/samba_source/samba-3.0.24/examples/VFS/\
samba-vscan-0.3.5/clamav/vscan-clamav.conf /etc/samba/
15- Otimizando o arquivo de configuração do vscan-clamav.conf:
# mcedit /etc/samba/vscan-clamav.conf
Procure por:
scan on close = yes
Troque por:
scan on close = no
16 - Correção dos arquivos de configuração tanto do clamav como vscan-clamav:
Verifique o arquivo
/etc/samba/vscan-clamav.conf e procure por:
clamd socket name = /var/run/clamd
e troque pelo conteúdo do arquivo
/etc/clamav/clamd.conf, identificado por
LocalSocket, ou seja:
clamd socket name = /var/run/clamav/clamd.ctl
17 - Diretório de quarentena:
Verifique o arquivo
/etc/samba/vscan-clamav.conf e procure por:
quarantine directory = /var/clamav/quarantine
e altere para o diretório desejado (exemplo: /dados/quarentena).
Obs.: O usuário clamav deverá ter permissão nesta pasta de quarentena. A pasta quarentena deverá ter permissão 770 (exemplo: "chmod -R 770 /dados/quarentena"). Os arquivos quando são transferidos para a quarentena herdam as permissões anteriores.
18 - Configurar o samba:
18.1- Vamos agora configurar o samba, este passo-a-passo não vai demonstrar como instalar ou configurar o samba, apenas como integrar o antivírus a ele.
Primeiramente, edite o arquivo
/etc/samba.conf e acrescente as linhas:
vfs object = vscan-clamav
vscan-clamav: config-file = /etc/samba/vscan-clamav.conf
19 - Implementar regras de segurança:
# chmod 600 /etc/clamav/clamd.conf
# chmod 600 /etc/clamav/freshclam.conf
# chown clamav:clamav /etc/clamav/clamd.conf
# chown clamav:clamav /etc/clamav/freshclam.conf
# chown -R clamav:clamav /dados/quarentena
Obs.: O usuário clamav deverá ter permissão em todas as pastas e arquivos a serem verificados!
20 - Reiniciar o Clamav e o samba:
# /etc/init.d/clamav-daemon restart
# /etc/init.d/samba restart
21 - Agendar execução do clamav no crontab, adicione as seguintes linhas:
# crontab -e
00 23 * * * /usr/bin/clamscan -r --move=/dados/quarentena /temp
30 01 * * * /usr/bin/clamscan -r --move=/dados/quarentena /home
00 03 * * * /usr/bin/clamscan -r --move=/dados/quarentena /dados
22 - Logs:
Verificação do Log do Clamav:
# tail -f /var/log/clamav/clamav.log:
Verificação do Log do Clamav-Freshclam:
# tail -f /var/log/clamav/freshclam.log
Verificação de log do vscan-clamav:
# tail -f /var/log/messages
23 - Testes com Clamav:
# /usr/bin/clamscan -r --move=/dados/quarentena /temp/teste-antivirus