Integradando SPF, Razor & Pyzor ao SpamAssassin do Zimbra

Instalando o SPF

O SPF (ou Sender Policy Framework) é uma extensão do SMTP que facilita a identificação de spam com endereço de origem forjado. A descrição técnica é simples: cada domínio interessado em combater e-mails forjados acrescenta uma linha de texto padronizada à configuração do seu próprio DNS. Esta linha segue o padrão definido pelo SPF, e descreve quais os endereços dos servidores de e-mail autorizados a gerar mensagens daquele domínio. (fonte do texto: http://br-linux.org/noticias/002774.html)

###Para Debian###

#apititude install libmail-spf-query-perl

###Para RedHa ou CentOs###

#yum install perl-Mail-SPF perl-Mail-SPF-Query

Instalando o Razor2

O Razor2 é um sistema colaborativo, distribuido de filtro para deteccao e controle de spam.

###Para Debian###
#aptitude install razor
###Para RedHat###
#yum install perl-Razor-Agent razor-agents

Crie o diretorio do razor

#mkdir /opt/zimbra/amavisd/.razor; chown -Rf zimbra:zimbra /opt/zimbra/amavisd/.razor

Agora torne-se zimbra (su zimbra) e crie a conta no razor

$razor-admin -home=/opt/zimbra/amavisd/.razor -create
$razor-admin -home=/opt/zimbra/amavisd/.razor -discover
$razor-admin -home=/opt/zimbra/amavisd/.razor -register

Agora edite o arquivo /opt/zimbra/conf/spamassassin/v310.pre e descomente a linha referente ao razor

loadplugin Mail::SpamAssassin::Plugin::Razor2

Instalando o pyzor

O pyzor é uma rede de sistemas distríbuidos para controle de spam, este utiliza digest de mensagens para fazer análise e identificar o SPAM.

###Para Debian###
#apt-get install pyzor

###Para RedHat###

#wget -q -O – http://www.atomicorp.com/installers/atomic.sh | sh

#yum install pyzor

Crie o diretorio do pyzor

#mkdir /opt/zimbra/amavisd/.pyzor; chown zimbra:zimbra /opt/zimbra/amavisd/.pyzor

Agora como usuario zimbra (su zimbra)

$ pyzor --homedir /opt/zimbra/amavisd/.pyzor discover
downloading servers from http://pyzor.sourceforge.net/cgi-bin/inform-servers-0-3-x
Traceback (most recent call last):
  File "/usr/bin/pyzor", line 8, in <module>
    pyzor.client.run()
  File "/var/lib/python-support/python2.5/pyzor/client.py", line 1005, in run
    ExecCall().run()
  File "/var/lib/python-support/python2.5/pyzor/client.py", line 184, in run
    self.servers  = self.get_servers(servers_fn)
  File "/var/lib/python-support/python2.5/pyzor/client.py", line 411, in get_servers
    servers.read(open(servers_fn))
  File "/var/lib/python-support/python2.5/pyzor/client.py", line 117, in read
    self.append(pyzor.Address.from_str(line))
  File "/var/lib/python-support/python2.5/pyzor/__init__.py", line 458, in from_str
    fields[1] = int(fields[1])
IndexError: list index out of range

Esse erro é normal, o pyzor tenta baixar o arquivo servers atualizado em http://pyzor.sourceforge.net/cgi-bin/inform-servers-0-3-x porém ele o arquivo não está disponível e retorna o erro.

Para resolver este problema, coloque a linha abaixo no arquivo servers dentro do diretório /opt/zimbra/amavisd/.pyzor, pois ele vai funcionar.

$ echo "public.pyzor.org:24441”> /opt/zimbra/amavisd/.pyzor/servers

Agora vamos fazer um teste para ver se nosso pyzor consegue se conectar no servidor.

$/opt/zimbra/amavisd/.pyzor$ pyzor --homedir /opt/zimbra/amavisd/.pyzor ping
public.pyzor.org:24441     (200, 'OK')

Ajustando o spamassassin para trabalhar com razor2 e pyzor

Edite o arquivo /opt/zimbra/conf/spamassassin/local.cf

ok_languages en es
ok_locales en es
trusted_networks 127. 10.70. 192.168.
use_bayes 1
skip_rbl_checks 0
use_razor2 1
dns_available yes 

## Optional Score Increases
## Choose your preferred values...
score SPF_FAIL 10.000
score SPF_HELO_FAIL 10.000
score RAZOR2_CHECK 2.500
score PYZOR_CHECK 2.500
score BAYES_99 4.300
score BAYES_90 3.500
score BAYES_80 3.000
bayes_ignore_header Received: from mail3.example.com
bayes_ignore_header Received: from localhost
bayes_ignore_header Received: from mail1.example.com
bayes_ignore_header Received: from mail2.example.com

Ajustando configurações do amavisd-new

Edite o arquivo /opt/zimbra/conf/amavisd.conf

$sa_tag_level_deflt  = -10.0;  # add spam info headers if at, or above that level
$sa_tag2_level_deflt = 6.6; # add 'spam detected' headers at that level
$sa_kill_level_deflt = 15; # triggers spam evasive actions
$sa_dsn_cutoff_level = 15;    # spam level beyond which a DSN is not sent
$sa_quarantine_cutoff_level = 15;  # spam level beyond which quarantine is off
$sa_mail_body_size_limit = 512*1024; # don't waste time on SA if mail is larger
$sa_local_tests_only = 0;    # only tests which do not require internet access?


Fonte:

Anúncios

~ por renancariello em setembro 4, 2012.

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

 
%d blogueiros gostam disto: