Segurança de E-mail · 5 min read · Nov 27, 2025
Como Combater Vírus Usando Sua Configuração Postfix
Como Combater Vírus Usando Sua Configuração Postfix
Neste guia, você aprenderá como ajustar o guia de e-mail HowtoForge para Postfix (+Auth SMTP + Quota), https://www.howtoforge.com/virtual_postfix_mysql_quota_courier, configurado para oferecer melhor proteção contra vírus. Infelizmente, isso sempre vem com um preço, como você verá mais adiante….
O guia Falko HowtoForge é um ótimo ponto de partida para uma instalação padrão do Postfix, mas se você quiser alcançar um antivírus de nível empresarial, precisamos fazer algumas pequenas coisas para que haja menos chance da mais recente invenção de script kiddie passar.
No guia do Postfix, Amavis e ClamAV são instalados a partir do Debian estável. Debian Sarge é simplesmente muito antigo. Depois de brincar com o novo Amavis-new 2.4.2, ele mudou significativamente no pacote Debian onde /etc/amavis/amavisd.conf foi completamente substituído, então vamos deixar o amavis-new de lado e apenas deixá-lo do Debian sarge estável. No entanto, o ClamAV está um pouco desatualizado, então vamos pegar uma cópia nova do testing.
Edite /etc/apt/sources.list e leve suas fontes Debian para testing:
vi /etc/apt/sources.listdeb ftp://ftp.uk.debian.org/debian/ testing mainapt-get updateapt-get install clamav clamav-daemonNão se esqueça de voltar suas fontes Debian para stable depois:
Edite /etc/apt/sources.list:
vi /etc/apt/sources.listdeb ftp://ftp.uk.debian.org/debian/ stable mainapt-get updateIsso atualiza o mecanismo Clamav para 0.88 e deve oferecer melhor detecção de vírus. É possível levar o Clamav para a versão mais recente usando o ramo Volatile do Debian, mas tive algumas experiências ruins, então é melhor errar pelo lado da cautela.
Em seguida, queremos aumentar os scanners de vírus que o Amavis chama após o Postfix entregar o e-mail ao Amavis. Este guia irá abordar a configuração de 2.
F-Prot - Gratuito para uso privado e vem com um instalador Debian prático.
cd /usr/srcwget http://http.us.debian.org/debian/pool/contrib/f/f-prot-installer/f-prot-installer_0.5.22_i386.debapt-get install libwww-perl liburi-perl libhtml-parser-perl libhtml-tree-perl libhtml-tagset-perldpkg i f-prot-installer_0.5.22_i386.debSiga o instalador na tela, que vai baixar a última distribuição do F-Prot enquanto você espera.
Ao contrário do Clamav, que usa Freshclam, o F-Prot não usa um programa daemonizado para se manter atualizado; em vez disso, precisamos habilitar o programa de atualização via os crons do Debian.
Edite /etc/cron.d/f-prot-installer e descomente as 2 linhas de cronjob para as atualizações de vírus e programa:
vi /etc/cron.d/f-prot-installer27 4,16 * * * root if [ -x /usr/lib/f-prot/tools/check-updates ]; then /usr/lib/f-prot/tools/check-updates -cron; fi
#
# Descomente para verificar nova versão do programa uma vez por semana
#
00 12 * * 1 root if [ -x /usr/sbin/update-f-prot ]; then /usr/sbin/update-f-prot -i; fi Finalmente, queremos habilitar o F-prot em nossa configuração do Amavis, então edite /etc/amavis/amavisd.conf e procure por @av_scanners. Queremos adicionar um novo scanner a este array, então deve ficar algo como o seguinte após a edição:
vi /etc/amavis/amavisd.conf@av_scanners = (
### http://www.clamav.net/
['Clam Antivirus-clamd',
\&ask_daemon, ["CONTSCAN {}
", "/var/run/clamav/clamd.ctl"],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
# NOTA: execute clamd sob o mesmo usuário que amavisd; combine o nome do socket
# (LocalSocket) em clamav.conf com o nome do socket nesta entrada
# Ao executar chrooted, pode-se preferir: ["CONTSCAN {}
","$MYHOME/clamd"],
### F-Prot http://www.f-prot.com
['FRISK F-Prot Antivirus', ['f-prot','/usr/lib/f-prot/f-prot.sh'],
'-dumb -archive -packed {}', [0,8], [3,6],
qr/Infection: (.+)|\s+contains\s+(.+)$/ ],
);Finalmente, reinicie o Amavis para que as alterações tenham efeito:
/etc/init.d/amavis restart Avançando rapidamente, agora vamos habilitar o McAfee UVScan - infelizmente, isso não é gratuito para uso geral e você deve comprar uma licença para usar por mais do que o período de avaliação.
cd /usr/srcwget http://download.nai.com/products/evaluation/virusscan/english/cmdline/linux/v5.10/vlp4510e.tar.Ztar zxvf vlp4510e.tar.Z./install-uvscanAceite todos os padrões, exceto evite a longa verificação completa do sistema de arquivos no final do procedimento de instalação. Neste ponto, se você tiver uma licença, pode inseri-la no diretório do programa normalmente instalado em /usr/local/uvscan.
Em seguida, pegamos o atualizador NAI de http://www.brijn.nu/Programming/ (parece que a McAfee não se importa em distribuir um)
cd /usr/srcwget http://www.brijn.nu/Programming/nai/naiupdt-0.5.tar.gztar zxvf naiupdt-0.5.tar.gz./naiupdt.plA próxima etapa é colocar o atualizador no cron do sistema para que ele seja executado pelo menos uma vez por dia, edite /etc/crontab:
vi /etc/crontab15 8,15 * * * root /usr/src/naiupdt-0.5/naiupdt.pl >> /dev/nullEm seguida, precisamos editar a configuração do Amavis e adicionar o UVScan à mistura, então edite /etc/amavis/amavisd.conf e encontre mais uma vez @av_scanners e altere o array no arquivo para que fique algo como isto para todos os 3 scanners de antivírus:
@av_scanners = (
### http://www.clamav.net/
['Clam Antivirus-clamd',
\&ask_daemon, ["CONTSCAN {}
", "/var/run/clamav/clamd.ctl"],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ],
# NOTA: execute clamd sob o mesmo usuário que amavisd; combine o nome do socket
# (LocalSocket) em clamav.conf com o nome do socket nesta entrada
# Ao executar chrooted, pode-se preferir: ["CONTSCAN {}
","$MYHOME/clamd"],
### http://www.nai.com/
['NAI McAfee AntiVirus (uvscan)', '/usr/local/uvscan/uvscan',
'--secure -rv --mime --summary --noboot - {}', [0], [13],
qr/(?x) Found (?:
\ the\ (.+)\ (?:virus|trojan) |
\ (?:virus|trojan)\ or\ variant\ ([^ ]+) |
:\ (.+)\ NOT\ a\ virus)/,
],
### F-Prot http://www.f-prot.com
['FRISK F-Prot Antivirus', ['f-prot','/usr/lib/f-prot/f-prot.sh'],
'-dumb -archive -packed {}', [0,8], [3,6],
qr/Infection: (.+)|\s+contains\s+(.+)$/ ],
);Reinicie o Amavis para que as alterações tenham efeito:
/etc/init.d/amavis restartFinalmente, envie alguns e-mails através do seu sistema para verificar se tudo está funcionando e verifique o log do Amavis, certifique-se de habilitar o registro no arquivo de configuração do Amavis, se você ainda não o fez, e você deve ver algo como isto:
Sep 7 23:29:57 domain.net amavisd-new[11023]: (11023-08) TIMING [total 617 ms] - SMTP EHLO: 1 (0%), SMTP pre-MAIL: 0 (0%), SMTP pre-DATA-flush: 1 (0%), SMTP DA
TA: 39 (6%), body hash: 0 (0%), lookup_sql: 1 (0%), mime_decode: 8 (1%), get-file-type: 8 (1%), get-file-type: 7 (1%), decompose_part: 1 (0%), decompose_part: 0 (0%),
parts: 0 (0%), AV-scan-1: 4 (1%), AV-scan-2: 323 (52%), AV-scan-3: 171 (28%), fwd-connect: 4 (1%), fwd-mail-from: 0 (0%), fwd-rcpt-to: 2 (0%), write-header: 2 (0%), fw
d-data: 0 (0%), fwd-data-end: 41 (7%), fwd-rundown: 1 (0%), unlink-2-files: 2 (0%), rundown: 0 (0%)Você notará que há 3 varreduras de antivírus ocorrendo e isso dá a porcentagem aproximada de quanto tempo cada processo levou. Parece que, de longe, o Clam (AV-scan-1) é o mais rápido em meus testes, seguido pelo F-Prot (AV-scan-3) com o UVScan (AV-scan-2) ficando atrás em terceiro lugar. Obviamente, se você perceber que sua configuração de e-mail está sendo muito afetada por tantos scanners instalados, tudo o que você precisa fazer é desativá-los no arquivo de configuração do amavis.
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.