Instalação do ClamAV com DazukoFS

O ClamAV é um dos mais conhecidos antivírus desenvolvidos para Linux. Nesse tutorial vamos compilar, instalar e configurar o ClamAV. Além disso, vamos configurar sua proteção residente para utilizar o DazukoFS.

[ Hits: 52.272 ]

Por: Antônio Vinícius Menezes Medeiros em 06/01/2010 | Blog: https://antoniomedeiros.dev/


Executando o ClamAV na inicialização do sistema



Nessa etapa vamos configurar o sistema para executar o clamd, o clamav-milter e o freshclam na inicialização para não precisemos mais nos preocupar com o ClamAV: ele já estará verificando os arquivos em busca de vírus e baixando as atualizações para sua base de dados automaticamente.

1. Abra um editor de texto, copie e cole as linhas a seguir, e salve como /etc/init.d/clamav:

#!/bin/sh
# Inicia/para/reinicia o ClamAV

# Inicia o ClamAV:
clamav_start() {
if [ -x /usr/sbin/clamd ]; then
echo "Starting clamd daemon: /usr/sbin/clamd"
/usr/sbin/clamd
sleep 1
fi
if [ -x /usr/sbin/clamav-milter ]; then
echo "Starting clamav-milter daemon: /usr/sbin/clamav-milter"
/usr/sbin/clamav-milter
sleep 1
fi
if [ -x /usr/bin/freshclam ]; then
echo "Starting freshclam daemon: freshclam -d"
freshclam -d
fi
}

# Para o ClamAV:
clamav_stop() {
echo "Stopping clamd daemon: killall clamd"
killall clamd
echo "Stopping clamav-milter daemon: killall clamav-milter"
killall clamav-milter
echo "Stopping freshclam daemon: killall freshclam"
killall freshclam
}

# Reinicia o ClamAV:
clamav_restart() {
clamav_stop
sleep 1
clamav_start
}

case "$1" in
'start')
clamav_start
;;
'stop')
clamav_stop
;;
'restart')
clamav_restart
;;
*)

echo "Usage: $0 start|stop|restart"
esac

2. Torne esse arquivo executável com o seguinte comando no terminal:

# chmod +x /etc/init.d/clamav

3. Para que o ClamAV seja carregado toda vez que o sistema for iniciado, você pode executar o seguinte comando, se utiliza Debian (ou uma distribuição baseada nele):

# update-rc.d clamav defaults

ou executar os comandos a seguir, se utiliza outra distribuição:

# ln -s /etc/init.d/clamav /etc/rc0.d/K20clamav
# ln -s /etc/init.d/clamav /etc/rc1.d/K20clamav
# ln -s /etc/init.d/clamav /etc/rc6.d/K20clamav
# ln -s /etc/init.d/clamav /etc/rc2.d/S20clamav
# ln -s /etc/init.d/clamav /etc/rc3.d/S20clamav
# ln -s /etc/init.d/clamav /etc/rc4.d/S20clamav
# ln -s /etc/init.d/clamav /etc/rc5.d/S20clamav


4. Para finalizar, você pode reiniciar o computador e verificar se o ClamAV foi carregado.

Após reiniciar o computador, execute o seguinte comando no terminal:

ps aux | grep clam

Se esse comando retornar algo parecido com isso:

root      4204  0.0 16.6  96456 85972 ?      Ssl 19:30  0:00 /usr/sbin/clamd
clamav    4212  0.0  0.1   3268   852 ?      Ss  19:30  0:00 freshclam -d
vinicius  6719  0.0  0.1   2216   712 pts/0  S+  19:31  0:00 grep clam

é sinal de que o ClamAV foi carregado corretamente.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Instalando o ClamAV
   3. Configurando o freshclam
   4. Configurando o clamd
   5. Configurando o clamav-milter
   6. Executando o ClamAV na inicialização do sistema
   7. Testando o ClamAV
Outros artigos deste autor

Instalação do MediaWiki em uma Project web do SourceForge

Conheça o OpenOffice.org e o BrOffice.org

Criando um LiveCD a partir de uma instalação do Debian Lenny

VirtualBox: a forma mais fácil de conhecer o Linux sem precisar instalá-lo

Guia de referência do ISOLINUX (parte 1)

Leitura recomendada

Pen-Test com ênfase em WLAN

Instalando e configurando o SpamAssassin

Nmap - Comandos úteis para um administrador de sistemas Linux

Teste de Intrusão com Metasploit

SELinux - Security Enhanced Linux

  
Comentários
[1] Comentário enviado por overlock em 14/01/2010 - 12:26h

Opa amigo. Ótimo Post...

Por acaso rola alguma chance de fazer isso com o ClamWin?? Abraços.

[2] Comentário enviado por vinyanalista em 16/01/2010 - 09:24h

Infelizmente, meu caro, não há uma versão do DazukoFS para Windows. Ele é desenvolvido apenas para Linux, até porque se você for ver direitinho não há necessidade de se utilizar um DazukoFS no Windows.

Explico:

Os antivírus necessitam monitorar o acesso aos arquivos para que possam executar a famosa proteção residente.

No Linux, quem poderia fornecer essas informações aos antivírus seria o kernel, que está lidando diretamente com os programas e os arquivos. Acontece que ele não disponibiliza por si só essas informações aos aplicativos (desconheço o motivo, mas acredito que seja por questões de segurança), e era muito difícil desenvolver um antivírus para Linux que executasse tal monitoramento. Isso fez com que muitos desenvolvedores inclusive desistirem de implementar proteção residente em seus antivírus.

Por isso que foi desenvolvido o DazukoFS, um módulo que se integra ao kernel e resolve esse problema dos antivírus, permitindo a eles saber quais arquivos estão sendo acessados, por qual aplicativo e por qual usuário estão sendo acessados e permitir ou negar o acesso ao arquivo.

No Windows, vemos que todos os antivírus hoje possuem proteção residente sem precisar de nenhum recurso especial para oferecê-la. Aliás, mesmo os mais antigos já possuíam (eu utilizo Windows há pelo menos 8 anos). Então chegamos à conclusão que o próprio sistema fornece aos antivírus informações sobre o acesso aos arquivos. Por isso não houve necessidade de se desenvolver um artifício como o DazukoFS para o Windows.

O ClamWin poderia executar proteção residente utilizando os recursos que o próprio Windows oferece. Acredito que falta um pouco de pesquisa da parte de seus desenvolvedores em como implementar esse recurso.

E não digo isso sem base, digo por experiência própria: eu já desenvolvi em Delphi um aplicativo que intercepta o uso do teclado e o logon/logoff de usuários do sistema. Se há funções do Windows que permitem fazer isso, também devem haver funções que permitam interceptar o acesso aos arquivos.

Resumindo, acredito que no caso do ClamWin a solução do problema da proteção residente não esteja nas mãos do usuário, mas nas mãos dos desenvolvedores. Resta a nós esperarmos que eles implementem esse recurso ou, como se trata de código-aberto, ajudá-los a fazer isso, se tivermos conhecimento para tal.

Obrigado pelo interesse no meu artigo e até a próxima!

[3] Comentário enviado por magnolinux em 29/01/2010 - 11:11h

Primeiramente meus parabens seu artigo está muito bom.

Agora la vai algumas duvidas.

1º Qual a diferença entre o clamdscan e o clamscan????

2º Se eu executar automaticamente o freshclam -d ele fara as atualizações automaticamente.??

3º O clamdscan tem alguma funcionalidade se nao for em modo residente.???

Obrigado ....

aguardo as respostas..

abraço..

[4] Comentário enviado por vinyanalista em 30/01/2010 - 00:24h

Olá magnolinux. Que bom que você gostou do meu artigo.

Respondendo suas dúvidas:

1ª - Tanto o clamdscan quanto o clamscan são utilitários do ClamAV que podem ser usados para verificar a existência de vírus nos arquivos e quase todos os parâmetros de um podem ser usados também no outro. A diferença principal entre eles consiste na base de dados que eles utilizam: enquanto o clamscan carrega a base de dados do disco rígido, o clamdscan utiliza a base de dados que já está na memória e está sendo utilizada pelo clamd. Logo, o clamdscan é mais rápido que o clamscan, pois não necessita carregar a base de dados toda vez em que é executado. Outra diferença importante é que o clamdscan necessita que o clamd esteja em execução, enquanto o clamscan dispensa essa preocupação.

2ª - O parâmetro -d que você passa para o freshclam ordena que ele seja executado como daemon. Isso quer dizer que ele ficará permanentemente em execução na memória. Logo, ele verificará por atualizações automaticamente sim. Executando esse comando automaticamente durante a inicialização do sistema, você não precisará mais se preocupar com as atualizações do ClamAV. Você pode inclusive configurar quantas vezes ele procura por atualizações na Internet (o padrão é doze vezes por dia, ou seja, a cada duas horas), descomentando a linha Checks do arquivo de configuração do freshclam ("/etc/clamav/freshclam.conf") e alterando seu valor, informando quantas vezes por dia devem ser procuradas novas atualizações:

# Number of database checks per day.
# Default: 12 (every two hours)
Checks 24

3ª - Acho que a resposta à primeira dúvida já esclareceu em parte a terceira. Se você tentar executar o clamdscan sem ter iniciado o clamd antes, você receberá uma mensagem de erro. Diferente do clamdscan, o clamscan é independente do clamd. Você pode utilizá-lo para scanear os arquivos quando o clamd não estiver em execução.

Espero que tenha ajudado.

Um abraço e até a próxima!

[5] Comentário enviado por magnolinux em 01/02/2010 - 09:22h

Muito obrigado amigo, realmente suas respostas ajudaram muito..

Uma outra duvida é a seguinte o clamscan utiliza o arquivo de conf clamd.conf????

[6] Comentário enviado por ale_oliveira em 03/03/2011 - 22:10h

Ola estive lendo sobre o post e gostaria de perguntar se é possivel remover um virus como o nome win32 sality.y do meu servidor de dados.
Valeu

[7] Comentário enviado por imacedo em 20/03/2011 - 19:36h

Boa tarde senhores. é a primeira vez que instalo o clamav e a questao é a seguinte fiz o teste e me retornou essa msg, isso esta correto??? e qdo eu scaneio novamente ele diz q tem 1 arq infectado de novo; ele nao tinha que excluir esse arquivo como vou saber se realmente esta paralizado o virus??? é possivel excluir o arquivo infectado durante o escaneamento? e como faco pra excluir os arquivos infectador? Desde já agradeco

root@testmail:~# clamscan eicar.com
LibClamAV Warning: zlib version at runtime is older than compile time: 1.2.3 < 1.2.3.3
LibClamAV info: Make sure zlib is built as shared library, and that the new zlib library is installed in the proper place
eicar.com: Eicar-Test-Signature FOUND
----------- SCAN SUMMARY -----------
Known viruses: 919816
Engine version: 0.97
Scanned directories: 0
Scanned files: 1
Infected files: 1
Data scanned: 0.00 MB
Data read: 0.00 MB (ratio 0.00:1)
Time: 5.614 sec (0 m 5 s)
root@testmail:~#


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts