Esta é uma alternativa um pouco mais radical contra vírus via e-mail: o procmail-sanitizer torna impossíveis de executar diretamente todos os arquivos que você quiser "bloquear" - ou seja, você pode configurar o servidor de e-mail Linux para impedir que seus usuários de estações Windows recebam arquivos .exe, .scr, .pif e outros típicos vetores de vírus. Leia abaixo o artigo.
Augusto C. Campos (brain@matrix.com.br)
Apresentar o procmail-sanitizer, uma configuração para servidores de e-mail baseados no sendmail e no procmail capaz de renomear as extensões de TODOS os attachments executáveis (incluindo os menos óbvios, como .pif, .doc e .scr) que chegarem ao seu servidor, para que eles não possam ser rodados diretamente do programa cliente de e-mail dos usuários (baseados em Windows), e ainda tornar ilegíveis os arquivos reconhecidos como vírus ou cavalos de tróia.
Atenção: Este artigo trata sobre filtragem de e-mail no servidor. Se você deseja filtrar e-mails no cliente (por exemplo, separar e-mails de listas de distribuição), leia o artigo sobre o tema.
1 - Atenção: As instruções a seguir são uma adaptação local do texto disponível em ftp://ftp.rubyriver.com/pub/jhardin/antispam/procmail-security.html. Não assumimos nenhuma responsabilidade pelo que acontecer em seu sistema se você seguir estas instruções resumidas sem verificar antes o original; este resumo em português está aqui apenas como complemento!
2 - Nota: A partir do momento em que você alterar o /etc/sendmail.cf ou o /etc/procmailrc, o seu serviço de e-mail passa a estar em risco. Se você não puder testar os procedimentos a seguir em uma máquina alternativa, seus usuários poderão estar expostos a interrupções de serviço. Lembre-se de fazer backup de todos os arquivos de configuração, e se possível altere a configuração do seu servidor apenas em horários de baixo tráfego.
Estas instruções assumem que você tem o sendmail e o procmail corretamente instalados e em funcionamento no seu servidor de e-mail; caso você ainda não os tenha, procure informações adicionais antes de prosseguir.
O sendmail deve estar configurado para utilizar o procmail como agente de entrega local. Esta configuração é padrão em diversas distribuições de Linux, e no nosso caso se reflete na seguinte linha do arquivo /etc/sendmail.cf:
Mlocal, P=/usr/bin/procmail, F=lsDFMAw5:/|@qSPfhn9, S=10/30, R=20/40, A=procmail -Y -a $h -d $u
(note que a maneira de implementar esta linha pode variar; cito a nossa configuração apenas como exemplo para você saber o que procurar, mas não copie a linha acima sem saber o que está fazendo - caso ela não esteja implementada, refira-se à documentação do sendmail, do procmail e de sua distribuição de Linux).
Além disso, você deve ter o perl instalado em seu sistema, e dispor também do utilitário mimeencode (integrante do pacote metamail). Ambos são padrão de grande parte das distribuições de Linux, e podem ser encontrados também para outras variantes de Unix.
Nota: (repetindo!) A partir do momento em que você alterar o /etc/sendmail.cf ou o /etc/procmailrc, o seu serviço de e-mail passa a estar em risco. Se você não puder testar os procedimentos a seguir em uma máquina alternativa, seus usuários poderão estar expostos a interrupções de serviço. Lembre-se de fazer backup de todos os arquivos de configuração, e se possível altere a configuração do seu servidor apenas em horários de baixo tráfego.
Este procedimento de instalação considera que o sendmail já está em operação, e utiliza o procmail como agente de entrega. Note que não será necessário reiniciar o servidor de e-mail (ou a máquina em si): a partir do momento em que você gravar o arquivo /etc/procmailrc, os filtros entram em operação.
Obtenha uma cópia recente do procmail-sanitizer em ftp://ftp.rubyriver.com/pub/jhardin/antispam/procmail-security.html.
Crie um diretório chamado /etc/procmail e copie para ele o procmail-sanitizer.tar.gz; vá para este diretório, e descompacte o arquivo (tar zxvf procmail-sanitizer.tar.gz). Exemplo:
mkdir /etc/procmail cp /home/fulano/procmail-sanitizer.tar.gz /etc/procmail cd /etc/procmail tar zxvf procmail-sanitizer.tar.gz
Na versão que eu instalei, são extraídos na descompactação os seguintes arquivos (que devem residir em /etc/procmail):
html-trap.procmail poisoned-files procmail-security.html procmail-on-gateway.txt
sendo que apenas os dois primeiros são relevantes para a configuração. Altere o poisoned-files se desejar incluir ou excluir determinadas extensões ou nomes de arquivos da lista de vírus. Aproveite para criar o arquivo /etc/procmail/to_sender.txt, contendo o texto da mensagem que será enviada ao remetente dos arquivos identificados como possíveis vírus.
Crie um arquivo /etc/procmailrc contendo as seguintes linhas:
# inicializacao DROPPRIVS=YES LOGFILE=/tmp/procmail.log PATH="/usr/bin:$PATH" SHELL=/bin/sh# arquivo contendo descricoes de NOMES de virus conhecidos POISONED_EXECUTABLES=/etc/procmail/poisoned-files
# usuario local que deve receber AVISO de virus SECURITY_NOTIFY="suporte"
# usuario local que deve receber COPIA de virus SECURITY_NOTIFY_VERBOSE="root"
# nome do arquivo para enviar ao remetente - nao esqueca # de cria-lo SECURITY_NOTIFY_SENDER="/etc/procmail/to_sender.txt"
SECURITY_QUARANTINE_OPTIONAL=foo POISONED_SCORE=25 SCORE_HISTORY=/var/log/macro-scanner-scores SECRET="mudemudemude"
# roda o filtro INCLUDERC=/etc/procmail/html-trap.procmail
# limpa variaveis antes de terminar POISONED_EXECUTABLES= SECURITY_NOTIFY= SECURITY_NOTIFY_VERBOSE= SECURITY_NOTIFY_SENDER= SECURITY_QUARANTINE= SECRET=
Se precisar de maiores informações sobre este arquivo, visite ftp://ftp.rubyriver.com/pub/jhardin/antispam/procmail-security.html.
As regras acima irão renomear as extensões de TODOS os attachments executáveis (incluindo os menos óbvios, como .pif, .doc e .scr) que chegarem ao seu servidor, para que eles não possam ser rodados diretamente do programa cliente de e-mail, e irão tornar ilegíveis os arquivos reconhecidos como vírus ou cavalos de tróia (conforme definições no arquivo /etc/procmail/poisoned-files). Você pode alterar a abrangência do filtro (liberar, por exemplo, os attachs em formato .doc); as instruções estão em ftp://ftp.rubyriver.com/pub/jhardin/antispam/procmail-security.html. Se necessário, consulte a documentação do procmail - você verá que é possível fazer regras flexíveis de acordo com o remetente, o subject, o destinatário, o horário, e até combinações destas (e outras) condições.
Boa sorte!
Postado por brain em junho 11, 2003 08:57 AM
» Postado por: Eduardo em junho 13, 2003 11:07 AM, 200.204.69.:
Muito obrigado pelo artigo. Ele será muito útil aqui em nossa empresa. Pois tivemos problemas com o vírus (W32.Bugbear.B@mm) que possui extenções (.exe .pif .scr)
Agradecemos a todos os que colaboram com a comunidade de software livre.
Muito obrigado.
» Postado por: Saul Kirienco em junho 22, 2004 10:15 AM, 200.103.172:
Configurei o procmailrc no meu server e funcionou, mas eu gostaria de nao deixar passar para o meu usuario interno a mensagem que vem com virus ou arquivo anexo indesejado de um usuario externo. Gostaria de redirecionar este email para um usuario suporte por exemplo...
alguem pode me entender e me ajudar
» Postado por: Zithromax Online em setembro 23, 2004 01:25 PM, 65.75.139.9:
Zithromax online antibiotic.
» Postado por: jairo Coutinho em outubro 26, 2004 09:18 AM, 200.207.124:
Parabéns, tudo funciona perfeitamente!
Obrigado pela consultoria.
O Arquivo Histórico do BR-Linux.org mantém no ar (sem alteração, exceto quanto à formatação) notícias, artigos e outros textos publicados originalmente no site na segunda metade da década de 1990 e na primeira década do século XXI, que contam parte considerável a história do Linux e do Open Source no Brasil. Exceto quando indicado em contrário, a autoria dos textos é de Augusto Campos, e os termos de uso podem ser consultados na capa do BR-Linux.org. Considerando seu caráter histórico, é provável que boa parte dos links estejam quebrados, e que as informações deste texto estejam desatualizadas.