Uma experiência com o Anti-Spam, ASSP (Anti-Spam SMTP Proxy)

Não tem nada mais chato que controlar spam, eu usava o postfix em conjunto com o MailScanner, mas não é tarefa facil para qualquer servidor, os processos são lentos e longos, o processamento do servidor é duplicado, quando vi a noticia do underlinux sobre o ASSP não pensei duas veses, ainda mais que o tutorial foi feito pelo howtoforge.com.

Como o ASSP é feito em Perl, tive que instalar vários módulos no meu debian, no tutorial a instalação dos módulos perl foram via cpan, mas como eu uso DEBIAN, resolvi o problema via apt-get mesmo, que é muito mais rápido.

Oque é o ?

ASSP é literalmente um Proxy Anti-Spam para seu SMTP, ou seja ele será configurado antes do seu servidor de email (SMTP), então o ASSP vai receber as conexões e redirecionar para seu postfix, qmail, sendmail isto claro pode ser em servidores diferentes, eu configurei no mesmo, mas dependendo do volume de emails vale apena instalar em servidores separados.


Módulos Perl necessários

Compress::Zlib NEEDED - Standard Perl installation
Digest::MD5 NEEDED - Standard Perl installation
Email::Valid OPTIONAL, BUT ADVISED
File::ReadBackwards OPTIONAL, BUT ADVISED
Mail::SPF::Query OPTIONAL
Mail::SRS OPTIONAL
Net::DNS NEEDED TO RUN RBL, SPF and 1.2.X
Sys::Syslog OPTIONAL
Net::LDAP OPTIONAL :: NEEDED IF YOU RUN LDAP
Time::HiRes NEEDED - Standard Perl installation

Via cpan

perl -MCPAN -e shell

install Compress::Zlib

e assim por diante, com todos os módulos.

Via apt-get

Para quem usa linux like DEBIAN, ubuntu e derivações, pode usar o:

apt-get install nome do módulo

Caso não tenha certeza do nome correto, que é o meu caso, use o :

apt-cache search perl | grep -i Zlib

Instalando o ASSP

cd /usr/src
wget -c http://surfnet.dl.sourceforge.net/sourceforge/assp/ASSP_1.2.5-Install.zip
wget -c http://surfnet.dl.sourceforge.net/sourceforge/assp/ASSP_1.2.5_Rev.2-Update.zip

unzip ASSP_1.2.5-Install.zip
unzip ASSP_1.2.5_Rev.2-Update.zip

mkdir -p /usr/share/assp/spam
mkdir /usr/share/assp/notspam
mkdir /usr/share/assp/errors
mkdir /usr/share/assp/errors/spam
mkdir /usr/share/assp/errors/notspam

mv -f assp.pl ASSP
mv -f ASSP/ /usr/share/assp

chown -R 0.0 /usr/share/assp


Inciando o ASSP

Aqui que tem um divergência no tutorial, pois indica o caminho.

cd /usr/share/assp
perl assp.pl

quando o correto é

cd /usr/share/assp/ASSP
perl assp.p
l

Depois isto, é o acessar a interface web de administração do ASSP, muito interessante por sinal.

Acesse http://ip_do_seu_servidor:55555

Vai pedir o usuario e senha que por padrão é:

user: nospam4me
password:
nospam4me



Network Setup

SMTP Destination 127.0.0.1:25 The internal Postfix

V As a Daemon Check the box

Listen Port IP_DO_SEU_SERVIDOR:25 The spam proxy

Web Admin Port xxxx A non default number

Relaying

Local Domains* seu_dominio.com|outro_dominio.com

Security

Web Admin Password newpasword

Eu ainda tive que configurar a opção de relay para a minha rede interna, e também configurei o Pop Before SMTP, que eu já usava com o postfix.

Relaying

Accept All Mail* 127.0.0.1|ip_rede_interna.

Pop Before SMTP DB File /path/pop-before-smtp.db

Agora só falta configurar o master do postfix para receber as solicitações apenas no localhost.


vim /etc/postfix/master.cf

Mude a linha:

smtp inet n - n - - smtpd

Para:

localhost:smtp inet n - n - - smtpd

Depois é só reiniciar o postfix, com o ASSP iniciado é claro, pois agora quem vai responder pelo SMTP é o ASSP

Um comando legal, é a possibilidade de criar um lista de spam particular: Para isto é só salvar a mensagem considerada spam no diretorio /usr/share/assp/spam e rodar o comando.

cd /usr/share/assp/ASSP && perl rebuildspamdb.pl

Para automatizar esta operação eu criei um schell script bem simples, para pegar os emails que eu encaminho para spam@meudominio.com.br e gerar base para o ASSP, para informação eu uso o postfix com Maildir

#!/bin/sh
mv /path/vmail/spam/Maildir/new/* /usr/share/assp/spam 2> /dev/null
cd /usr/share/assp/ASSP && perl rebuildspamdb.pl

Com este script em mãos, é só agendar no crontab, pois todo email encaminhado para o endereço spam@meudominio.com.br será enviado para o ASSP bloquear.

No site do howtoforge.com tem um shell script para iniciar o ASSP.

Em resumo, a solução é bem mais rápida e simples,do que usar o MailScanner, lembrando que estou comparando apenas com o MailScanner, pois eu usava ele para controlar o spam.

4 Responses to “Uma experiência com o Anti-Spam, ASSP (Anti-Spam SMTP Proxy)”

  1. vc esqueceu de citar qual usuário e senha usar em http://meuservidor:55555

  2. o usuário e senha estão no artigo, e bem destacados. O q foi que vc não leu?

    :—
    Acesse http://ip_do_seu_servidor:55555

    Vai pedir o usuario e senha que por padrão é:

    user: nospam4me
    password: nospam4me
    :—

  3. Faltou comentar como fazer para alterar a porta do postfix.

  4. Faltou você falar como faz o ovo ficar de pé.

Leave a Reply