Pular para o conteúdo

Atualizando automaticamente os bancos de dados do ClamAV

Dica publicada em Linux / Configuração
Edvaldo Silva de Almeida Júnior EdDeAlmeida
Hits: 10.751 Categoria: Linux Subcategoria: Configuração
  • Indicar
  • Impressora
  • Denunciar

Atualizando automaticamente os bancos de dados do ClamAV

Ter antivírus sem atualização é pior do que não ter nenhum, pois dá uma falsa impressão de segurança.

O ClamAV é um antivírus muito bom e fornece um programa, o freshclam, que permite fazer uma atualização rápida dos bancos de dados de vírus pela web. Mas para isso você tem de lembrar de rodar o freshclam. E se a sua memória for como a minha, então você tem um problema.

Para resolver isso, um pequeno script bash pode ser usado, de modo que a cada 10 boots, por exemplo, ele faça uma atualização automática, sem que você precise lembrar de nada.

O script é o seguinte:

#!/bin/bash

CLAMCOUNTER=`cat /root/clamcounter`

if [ $CLAMCOUNTER -gt 9 ]; then
    echo 1 > /root/clamcounter
    echo "Atualizando os bancos de dados do ClamAV
    freshclam    
else
    let CLAMCOUNTER=CLAMCOUNTER+1
    echo $CLAMCOUNTER > /root/clamcounter
fi
sync
exit 0

Como vocês podem ver, é um script bem simples. Ele testa um contador e, se o valor tiver atingido 10, faz a atualização automática chamando o freshclam, retorna o contador para 1.

Basta salvar esse script na sua área de scripts de inicialização. Eu salvei como /etc/rc.d/rc.clamupdate no meu Slackware 10.2, mas você pode adaptar isso para a sua distribuição. Em seguida eu editei o /etc/rc.d/rc.local e acrescentei ao seguinte:

if [ -x /etc/rc.d/rc.clamupdate ]; then
     . /etc/rc.d/rc.clamupdate
fi

Depois fiz:

# chmod +x /etc/rc.d/rc.clamupdate

Finalmente, para inicializar o contador, fiz o seguinte:

# echo 1 > /root/clamcounter

Se você é do tipo que quase nunca reinicializa máquina, reduza o valor de 9 para outro valor menor lá no script.

Pronto, a cada dez boots eu tenho os bancos de dados do ClamAV atualizados, sem precisar lembrar de... de... de quê mesmo????

Fico por aqui, e até a próxima!

Não mude as convenções do Ruby on Rails sem bons motivos

SATA no Mandrake 8.2

Vendo filmes em DVD no modo texto

Usando Delta ISOs

Hora no prompt do terminal

Solução para problema na instalação do superkaramba (missing Python libraries / headers)

Problemas com vídeos no Firefox/Iceweasel [Resolvido]

Configurando o sudo no Fedora

Ativando a rede sem fio do Notebook usando um script

Como resolver quando o touchpad trava ao digitar - Ubuntu

#1 Comentário enviado por Elessar em 01/03/2007 - 13:39h
Sem precisar do crontab.

Sua idéia é algo diferente, nunca havia visto algo assim.. Talvez porque seja completamente ineficaz em caso de necessidade real de um banco de dados do clamav realmente up-to-date.

Absolutamente nenhum dos servidores que administro são reinicializáveis. Caiu, FERROU ! Um script desses seria simplesmente inviável, especialmente se considerarmos que o Linux tem, nada mais nada menos do que o Cron pra executar tarefas assim.
#2 Comentário enviado por falconi em 01/03/2007 - 14:01h
Que tal usar os parametros '-d' e '-c N' ? Eles fazem com que o freshclam rode em modo daemon (-d) e atualize o banco de dados N vezes por dia (-c N).

Ex. para que atualize a cada 2 horas, ou seja, 12 vezes por dia:

freshclam -d -c 12
#3 Comentário enviado por EdDeAlmeida em 02/03/2007 - 18:50h
Concordo que a minha sugestão não se aplica a seus servidores, Elessar. Ela não foi voltada para super-servidores assim, mas para máquinas comuns, que podem ser reinicializadas e são, até com mais freqüência do que o necessário...

Quanto ao uso do Cron, concordo que é uma opção interessante. Acontece, porém, que não aprecio o hábito de apegar-me a apenas um modo de fazer as coisas. De vez em quando convém pensar e achar modos alternativos, mesmo que não tão eficientes. Só para manter vivas as pequeninas células cinzentas dos nossos cérebros, como diria Hercule Piorot (detetive que é personagem de Agatha Christie). Se não fosse assim, eu removeria minhas distros Linux e reinstalaria o velho Windows, que tem solução pré-fabricada para tudo!

De qualquer forma, grato pelo comentário.
#4 Comentário enviado por EdDeAlmeida em 02/03/2007 - 18:51h
A sugestão é boa, falconi. Assim ele ficaria realmente atualizado sempre. Excelente dica!
#5 Comentário enviado por zoby em 02/08/2008 - 19:23h
Meu considerado, pensei inicialmente q sua dica fosse p/ servidores. Mas vc já disse q não é. Então resta a opção do exercício cerebral pela aprendizagem de programação em Bash. Muito bom, realmente gostei (sem ironias). Mas, do ponto de vista prático, pq vc quer antivirus num desktop Linux? Não basta configurar as permissões corretas?

Isso parece coisa de recém egresso do ruindows. O q, obviamente, não é o seu caso.

O pessoal iniciante, ao ver um texto tão bem escrito e demonstrando firmeza no Bash, vai até ficar pensando q precisa instalar antivirus mesmo.
#6 Comentário enviado por EdDeAlmeida em 04/08/2008 - 09:50h
Zoby,

Eu sou meio que "neurótico" por segurança. E como sempre tem muita gente brincando de escrever código malicioso, inclusive eu mesmo de tempos em tempos, fica sempre no ar a dúvida... será que não precisa mesmo?

Grato pelo comentário,

Ed

Contribuir com comentário

Entre na sua conta para comentar.