Configuração de Email · 6 min read · Oct 12, 2025

Usuários e Domínios Virtuais Com Postfix, Courier E MySQL (CentOS 5.1) - Página 4

12 Instalar Razor, Pyzor E DCC E Configurar SpamAssassin

Razor, Pyzor e DCC são filtros de spam que utilizam uma rede de filtragem colaborativa. Para instalar o Razor, execute

yum install perl-Razor-Agent razor-agents

O Pyzor não está disponível nos repositórios do CentOS 5.1, mas podemos instalar o pacote Pyzor para RHEL 5:

rpm -ivh ftp://ftp.pbone.net/mirror/download.fedora.redhat.com/pub/fedora/epel/5/i386/pyzor-0.4.0-11.el5.noarch.rpm

(Você pode usar a busca RPM em http://rpm.pbone.net/ para encontrar a versão atual se o link acima não funcionar mais.)

Em seguida, inicialize ambos os serviços:

chmod -R a+rX /usr/share/doc/pyzor-0.4.0 /usr/bin/pyzor /usr/bin/pyzord  
chmod -R a+rX /usr/lib/python2.4/site-packages/pyzor  
mkdir /var/spool/amavisd  
chown amavis:amavis /var/spool/amavisd  
su -m amavis -c 'pyzor --homedir /var/spool/amavisd discover'  
su -m amavis -c 'razor-admin -home=/var/spool/amavisd -create'  
su -m amavis -c 'razor-admin -home=/var/spool/amavisd -register'

Em seguida, instalamos o DCC da seguinte forma:

cd /tmp  
wget http://www.dcc-servers.net/dcc/source/dcc-dccproc.tar.Z  
tar xzvf dcc-dccproc.tar.Z  
cd dcc-dccproc-1.3.76  
./configure --with-uid=amavis  
make  
make install  
chown -R amavis:amavis /var/dcc  
ln -s /var/dcc/libexec/dccifd /usr/local/bin/dccifd

Agora precisamos informar ao SpamAssassin para usar esses três programas. Edite /etc/mail/spamassassin/local.cf para que fique assim:

vi /etc/mail/spamassassin/local.cf

| # Esses valores podem ser substituídos editando ~/.spamassassin/user_prefs.cf # (veja spamassassin(1) para detalhes) # Essas devem ser suposições seguras e permitir uma triagem visual simples # sem risco de perda de e-mails. #required_hits 5 #report_safe 0 #rewrite_header Subject [SPAM] # dcc use_dcc 1 dcc_path /usr/local/bin/dccproc #pyzor use_pyzor 1 pyzor_path /usr/bin/pyzor #razor use_razor2 1 razor_config /var/spool/amavisd/razor-agent.conf #bayes use_bayes 1 use_bayes_rules 1 bayes_auto_learn 1 |

Em seguida, devemos habilitar o plugin DCC no SpamAssassin. Abra /etc/mail/spamassassin/v310.pre e descomente a linha loadplugin Mail::SpamAssassin::Plugin::DCC:

vi /etc/mail/spamassassin/v310.pre

| # Este é o lugar certo para personalizar sua instalação do SpamAssassin. # # Veja 'perldoc Mail::SpamAssassin::Conf' para detalhes do que pode ser # ajustado. # # Este arquivo foi instalado durante a instalação do SpamAssassin 3.1.0, # e contém comandos de carregamento de plugins para os novos plugins adicionados nessa # versão. Não será sobrescrito durante futuras instalações do SpamAssassin, # então você pode modificá-lo para habilitar alguns plugins desativados por padrão abaixo, # se assim desejar. # # Agora há múltiplos arquivos lidos para habilitar plugins no # diretório /etc/mail/spamassassin; anteriormente, apenas um, "init.pre" era # lido. Agora tanto "init.pre", "v310.pre", quanto quaisquer outros arquivos terminando em # ".pre" serão lidos. À medida que novas versões forem lançadas, novos plugins serão # adicionados a novos arquivos, nomeados de acordo com a versão em que foram adicionados. ########################################################################### # DCC - realizar verificações de mensagens DCC. # # DCC está desativado aqui porque não é open source. Veja a licença do DCC # para mais detalhes. # loadplugin Mail::SpamAssassin::Plugin::DCC # Pyzor - realizar verificações de mensagens Pyzor. # loadplugin Mail::SpamAssassin::Plugin::Pyzor # Razor2 - realizar verificações de mensagens Razor2. # loadplugin Mail::SpamAssassin::Plugin::Razor2 # SpamCop - realizar relatórios de mensagens SpamCop # loadplugin Mail::SpamAssassin::Plugin::SpamCop # AntiVirus - algumas verificações simples de antivírus, isso não é um substituto # para um filtro antivírus como Clam AntiVirus # #loadplugin Mail::SpamAssassin::Plugin::AntiVirus # AWL - realizar verificações de lista branca automática # loadplugin Mail::SpamAssassin::Plugin::AWL # AutoLearnThreshold - discriminador baseado em limiar para auto-aprendizagem Bayes # loadplugin Mail::SpamAssassin::Plugin::AutoLearnThreshold # TextCat - adivinhador de idioma # #loadplugin Mail::SpamAssassin::Plugin::TextCat # AccessDB - pesquisa de endereços de remetente no banco de dados de acesso # #loadplugin Mail::SpamAssassin::Plugin::AccessDB # WhitelistSubject - Lista Branca/Lista Negra de certas expressões regulares de assunto # loadplugin Mail::SpamAssassin::Plugin::WhiteListSubject ########################################################################### # plugins experimentais # DomainKeys - realizar verificação de DomainKeys # # Módulos externos necessários para uso, veja INSTALL para mais informações. # Note que isso pode ser redundante se você também planeja usar o plugin DKIM. # #loadplugin Mail::SpamAssassin::Plugin::DomainKeys # MIMEHeader - aplicar regras regexp contra cabeçalhos MIME na mensagem # loadplugin Mail::SpamAssassin::Plugin::MIMEHeader # ReplaceTags # loadplugin Mail::SpamAssassin::Plugin::ReplaceTags |

Você pode verificar sua configuração do SpamAssassin executando:

spamassassin --lint

Não deve mostrar nenhum erro.

Execute

/etc/init.d/amavisd restart

depois.

Agora quero inserir alguns conjuntos de regras personalizadas que podem ser encontrados na internet no SpamAssassin. Testei esses conjuntos de regras e eles tornam a filtragem de spam muito mais eficaz. Crie o arquivo /usr/local/sbin/sa_rules_update.sh:

vi /usr/local/sbin/sa_rules_update.sh

| #!/bin/sh PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/71_sare_redirect_pre3.0.0.cf -O 71_sare_redirect_pre3.0.0.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_bayes_poison_nxm.cf -O 70_sare_bayes_poison_nxm.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_html.cf -O 70_sare_html.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_html4.cf -O 70_sare_html4.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_html_x30.cf -O 70_sare_html_x30.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_header0.cf -O 70_sare_header0.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_header3.cf -O 70_sare_header3.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_header_x30.cf -O 70_sare_header_x30.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_specific.cf -O 70_sare_specific.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_adult.cf -O 70_sare_adult.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/72_sare_bml_post25x.cf -O 72_sare_bml_post25x.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/99_sare_fraud_post25x.cf -O 99_sare_fraud_post25x.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_spoof.cf -O 70_sare_spoof.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_random.cf -O 70_sare_random.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_oem.cf -O 70_sare_oem.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_genlsubj0.cf -O 70_sare_genlsubj0.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_genlsubj3.cf -O 70_sare_genlsubj3.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_genlsubj_x30.cf -O 70_sare_genlsubj_x30.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_unsub.cf -O 70_sare_unsub.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/70_sare_uri.cf -O 70_sare_uri.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.timj.co.uk/linux/bogus-virus-warnings.cf -O bogus-virus-warnings.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.yackley.org/sa-rules/evilnumbers.cf -O evilnumbers.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.stearns.org/sa-blacklist/random.current.cf -O random.current.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/88_FVGT_body.cf -O 88_FVGT_body.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/88_FVGT_rawbody.cf -O 88_FVGT_rawbody.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/88_FVGT_subject.cf -O 88_FVGT_subject.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/88_FVGT_headers.cf -O 88_FVGT_headers.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/88_FVGT_uri.cf -O 88_FVGT_uri.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/99_FVGT_DomainDigits.cf -O 99_FVGT_DomainDigits.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/99_FVGT_Tripwire.cf -O 99_FVGT_Tripwire.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.rulesemporium.com/rules/99_FVGT_meta.cf -O 99_FVGT_meta.cf &> /dev/null cd /etc/mail/spamassassin/ &> /dev/null && /usr/bin/wget http://www.nospamtoday.com/download/mime_validate.cf -O mime_validate.cf &> /dev/null /etc/init.d/amavisd restart &> /dev/null exit 0 |

Torne o script executável:

chmod 755 /usr/local/sbin/sa_rules_update.sh

Em seguida, execute esse script uma vez, ele buscará esses conjuntos de regras e os inserirá no SpamAssassin:

/usr/local/sbin/sa_rules_update.sh

Criamos um trabalho cron para que esses conjuntos de regras sejam atualizados regularmente. Execute

crontab -e

para abrir o editor de trabalhos cron. Crie o seguinte trabalho cron:

| 23 4 */2 * * /usr/local/sbin/sa_rules_update.sh &> /dev/null |

Isso atualizará os conjuntos de regras a cada dois dias às 4:23h.

13 Notificações de Excedência de Quota

Se você deseja receber notificações sobre todas as contas de e-mail que estão acima da quota, faça o seguinte:

cd /usr/local/sbin/  
wget http://puuhis.net/vhcs/quota.txt  
mv quota.txt quota_notify  
chmod 755 quota_notify

Abra /usr/local/sbin/quota_notify e edite as variáveis no topo. Mais abaixo no arquivo (perto do final) há duas linhas onde você deve adicionar um sinal de %:

vi /usr/local/sbin/quota_notify

| [...] my $POSTFIX_CF = "/etc/postfix/main.cf"; my $MAILPROG = "/usr/sbin/sendmail -t"; my $WARNPERCENT = 80; my @POSTMASTERS = ('[email protected]'); my $CONAME = 'Minha Empresa'; my $COADDR = '[email protected]'; my $SUADDR = '[email protected]'; my $MAIL_REPORT = 1; my $MAIL_WARNING = 1; [...] print "Subject: WARNING: Sua caixa de correio está $lusers{ $luser}% cheia.\n"; [...] print "Sua caixa de correio: $luser está $lusers{ $luser}% cheia.\n\n"; [...] |

Execute

crontab -e

para criar um trabalho cron para esse script:

| 0 0 * * * /usr/local/sbin/quota_notify &> /dev/null |

Share: X/Twitter LinkedIn

Receba novas postagens na sua caixa de entrada

Sem spam. Cancele a assinatura a qualquer momento.