Configuração · 8 min read · Nov 14, 2025
Filtro de Spam Postfix usando Ubuntu Dapper, MailScanner, SpamAssassin, Razor, Pyzor, DCC e ClamAV - Página 4
3 Configuração do Pyzor, Razor, DCC, SpamAssassin e MailScanner
3.1 Configuração do Pyzor
Precisamos mudar algumas permissões no pyzor primeiro:
chmod -R a+rX /usr/share/doc/pyzor /usr/bin/pyzor /usr/bin/pyzordEste próximo comando terá que ser modificado se você tiver uma versão diferente do python. Tente localizar o pyzor.
chmod -R a+rX /usr/lib/site-python/pyzorAqui fornecemos o endereço IP do servidor Pyzor ao Pyzor. Isso criará um diretório .pyzor nos diretórios home dos usuários e colocará o endereço IP do servidor em um arquivo de servidores lá. Em seguida, ele testará a conexão. Se você estiver atrás de um firewall, abra a porta 24441/udp para dentro e para fora do seu servidor. Enquanto você está nisso, também abra 6277/udp para DCC, 2703/tcp para Razor e 783/tcp para SpamAssassin:
pyzor pingNormalmente você receberá um timeout do ping do pyzor, então não se preocupe com isso. Testaremos novamente mais tarde.
Se no futuro o endereço IP do servidor mudar, você precisará passar por esta seção novamente. Você pode encontrar o endereço do servidor Pyzor atual aqui http://pyzor.sourceforge.net/cgi-bin/inform-servers-0-3-x.
Se o Pyzor estiver funcionando, você verá “Pyzor: got response:” O Pyzor consulta um servidor Pyzor da mesma forma que seu computador consulta um servidor DNS. A única diferença prática é o número da porta que é usado. Se o Pyzor não estiver funcionando, você pode precisar abrir a porta no seu firewall ou o servidor Pyzor está ocupado.
3.2 Configuração do Razor
Crie uma configuração default.razor no diretório home do root:
cd
rm /etc/razor/razor-agent.conf
razor-admin -create
razor-admin -createO Razor v2 requer que os repórteres sejam registrados para que suas reputações possam ser calculadas ao longo do tempo e eles possam participar do mecanismo de revogação. O registro é feito com razor-admin -register. Quando razor-admin -register é invocado como root, ele negocia um registro com o Servidor de Nomeação e escreve as informações de identidade em /root/.razor/identity-username. Invocá-lo manualmente de uma das seguintes maneiras:
- Para registrar o usuário: foo e senha: s1kret (foo e s1kret são exemplos):
razor-admin -register -user=foo -pass=s1kr3t- Para registrar com um endereço de e-mail e ter a senha atribuída:
razor-admin -register [email protected]- Para ter tanto o nome de usuário (aleatório) quanto a senha atribuídos:
razor-admin -registerEu geralmente faço apenas o número 3. Faça as seguintes alterações em /root/.razor/razor-agent.conf:
vi /root/.razor/razor-agent.confMude debuglevel = 3 para debuglevel = 0 (sim, zero não “o”). Isso impedirá que o Razor preencha seu disco com informações de depuração. Também moveremos essas configurações para um lugar que o usuário Postfix possa lê-las, então adicione a linha razorhome ao final do arquivo. Essas duas linhas devem ficar assim quando terminadas:
debuglevel = 0
razorhome = /var/lib/MailScanner/.razor/Testaremos o Razor mais tarde. man razor-agent.conf ou vá para http://razor.sourceforge.net/docs/razor-agent.conf.php para mais informações sobre o Razor.
3.3 Configuração e Instalação do DCC
Instale o DCC:
apt-get install dcc-clientNão estamos executando um servidor DCC, então não precisamos perder tempo verificando nós mesmos: Se você é uma grande organização (100.000 mensagens por dia), deve investigar a execução do seu próprio servidor.
Uma vez que a instalação esteja concluída, execute:
cdcc "delete 127.0.0.1"
cdcc "delete 127.0.0.1 Greylist"Teste nossa instalação com:
cdcc infoVocê deve receber ‘requests ok’ dos servidores.
4 Configuração do MailScanner, ClamAV e SpamAssassin
4.1 MailScanner e ClamAV
Pare o Postfix:
postfix stopInstale os pacotes:
apt-get install mailscanner clamavAtualize as definições de vírus do ClamAV:
freshclamVamos começar com o MailScanner. O MailScanner que foi recém-instalado dos repositórios é uma versão muito antiga, então agora vamos removê-lo e instalar o pacote MailScanner a partir do código-fonte.
Baixe o tarball de http://www.mailscanner.info/downloads.html … No momento da redação, está na versão 4.56.8-1 e o link do tarball é http://www.mailscanner.info/files/4/tar/MailScanner-install-4.56.8-1.tar.gz. Em seguida, instale o MailScanner usando o script install.sh.
cd
apt-get remove mailscanner
wget http://www.mailscanner.info/files/4/tar/MailScanner-install-4.56.8-1.tar.gz
tar zxvf MailScanner-install-4.56.8-1.tar.gz
cd MailScanner-install-4.56.8
./install.shIgnore a mensagem sobre as linhas cron que precisamos adicionar ao cron por enquanto.
Uma vez que isso esteja feito, precisamos criar um diretório para o SpamAssassin no spool e dar permissões ao postfix, se você executar sa-learn –force como root, o banco de dados bayes que é armazenado nesses diretórios mudará para root:root e o spamassassin apresentará erro ao olhar para o db. Apenas fique de olho no mail.log e você se lembrará de mudar as permissões de volta. Também desative as configurações padrão do MailScanner:
mkdir /var/spool/MailScanner/spamassassin
mv /etc/MailScanner /etc/MailScanner.distFaça um backup do seu arquivo MailScanner.conf:
cp /opt/MailScanner/etc/MailScanner.conf /opt/MailScanner/etc/MailScanner.conf.backEdite o MailScanner.conf:
vi /opt/MailScanner/etc/MailScanner.confMude os seguintes parâmetros no MailScanner.conf:
%org-name% = SEUDOMINIO-COM
%org-long-name% = Nome Longo da Sua Empresa INC
%web-site% = www.seudominio.com
Run As User = postfix
Run As Group = postfix
Incoming Queue Dir = /var/spool/postfix/hold
Outgoing Queue Dir = /var/spool/postfix/incoming
MTA = postfix
Virus Scanners = clamav
Spam Subject Text = [SPAM]
Send Notices = no
Spam List = ORDB-RBL SBL+XBL
Required SpamAssassin Score = 6
High SpamAssassin Score = 10
Spam Actions = deliver striphtml
High Scoring Spam Actions = delete
Rebuild Bayes Every = 86400
Wait During Bayes Rebuild = yes
SpamAssassin User State Dir = /var/spool/MailScanner/spamassassinAs primeiras 9 linhas são basicamente necessárias para que tudo funcione, o resto é recomendado. O MailScanner.conf é bem documentado, então, por favor, leia as notas lá se você tiver alguma dúvida sobre o resto das opções que mudamos. Dê uma olhada neste arquivo de cima para baixo.
Também dê uma olhada na seção “Removendo/Registrando conteúdo perigoso ou potencialmente ofensivo” no arquivo MailScanner.conf. Tive que desativar a maioria dessas porque os clientes estavam reclamando sobre mensagens ‘{Desarmadas}’.
4.2 SpamAssassin
Primeiro precisamos desativar o arquivo de configuração padrão do SpamAssassin:
mv /etc/spamassassin/local.cf /etc/spamassassin/local.cf.disabledAgora vamos fazer um backup do arquivo de configuração do SpamAssassin no MailScanner e depois editar:
cp /opt/MailScanner/etc/spam.assassin.prefs.conf /opt/MailScanner/etc/spam.assassin.prefs.conf.backvi /opt/MailScanner/etc/spam.assassin.prefs.confAdicione estas duas linhas ao topo do spam.assassin.prefs.conf:
pyzor_options --homedir /var/lib/MailScanner/
razor_config /var/lib/MailScanner/.razor/razor-agent.confMude onde o SpamAssassin procura o banco de dados Bayes, comente o caminho bayes_path padrão ou mude-o conforme necessário:
#bayes_path /var/lib/MailScanner/bayes
bayes_path /var/spool/MailScanner/spamassassin/bayesProcure por estas linhas e mude-as conforme necessário:
bayes_ignore_header X-SEUDOMINIO-COM-MailScanner
bayes_ignore_header X-SEUDOMINIO-COM-MailScanner-SpamCheck
bayes_ignore_header X-SEUDOMINIO-COM-MailScanner-SpamScore
bayes_ignore_header X-SEUDOMINIO-COM-MailScanner-Information“SEUDOMINIO-COM” deve ser substituído pelo que você usou para “%org-name%” no arquivo MailScanner.conf. Deixe o “X-“ no lugar.
Certifique-se de que “bayes_auto_expire 0” não esteja comentado:
bayes_auto_expire 0Edite o SpamAssassin v310.pre para habilitar Razor e DCC
vi /etc/spamassassin/v310.preDescomente as seguintes linhas:
loadplugin Mail::SpamAssassin::Plugin::DCC
loadplugin Mail::SpamAssassin::Plugin::Razor25 Juntando Tudo
Copie as configurações do Pyzor e Razor para um lugar que o usuário Postfix possa lê-las:
cp -R /root/.pyzor /var/lib/MailScanner
cp -R /root/.razor /var/lib/MailScannerAgora que temos tudo lá, defina as permissões corretas:
chown -R postfix.postfix /var/spool/MailScanner/
chown -R postfix.postfix /var/lib/MailScanner/Vamos ver se o SpamAssassin está feliz:
su postfix -p -c 'spamassassin -x -D -C /opt/MailScanner/etc/spam.assassin.prefs.conf --lint'Você deve ver linhas aparecendo com DCC, Pyzor e Razor que dizem carregando plugin e, esperançosamente, sem erros.
NOTA: Se você executar o sa-learn, lembre-se de executá-lo assim, su postfix -p -c ‘sa-learn –sync –force-expire -C /opt/MailScanner/etc/spam.assassin.prefs.conf’ caso contrário, quando o SpamAssassin reconstruir o banco de dados bayes, ele não poderá lê-lo.
Se tudo estiver parecendo bom, continue, se não, faça a solução de problemas e depois continue.
Finalizando esta parte, precisamos adicionar jobs cron que limparão/atualizarão/executarão o Mailscanner, você provavelmente viu a mensagem sobre isso após o script de instalação do MailScanner terminar. A razão pela qual fazemos isso agora é porque não queremos que o MailScanner inicie enquanto terminamos a configuração do SpamAssassin.
crontab -eAdicione estas linhas:
37 5 * * * /opt/MailScanner/bin/update_phishing_sites
58 23 * * * /opt/MailScanner/bin/clean.quarantine
42 * * * * /opt/MailScanner/bin/update_virus_scanners
3,23,43 * * * * /opt/MailScanner/bin/check_mailscannerPrecisamos adicionar uma linha ao rc.local para que o MailScanner inicie em uma reinicialização:
vi /etc/rc.localAntes da linha “Exit 0” adicione:
/opt/MailScanner/bin/check_mailscannerAproveite e vincule o arquivo “check_mailscanner” ao diretório bin. Assim você pode executá-lo sempre que precisar reiniciar o MailScanner:
cd /usr/bin
ln -s /opt/MailScanner/bin/check_mailscanner check_mailscannerApenas para lhe dar um log limpo para olhar e reinicie:
rm /var/log/mail.log
rebootSe você ver alguns erros na reinicialização ao iniciar o MailScanner sobre o Perl Sys/Hostname/Long.pm, você precisará instalá-lo assim:
perl -MCPAN -e shellSe ele perguntar se você deseja configurá-lo agora, diga não, a menos que você saiba o que está fazendo. Agora execute o seguinte para instalar o módulo:
install Sys::Hostname::LongQuando isso estiver feito, digite “quit” para voltar ao console. Reinicie ou inicie o MailScanner com o script “check_mailscanner”.
Neste ponto, você deve ter um filtro de spam totalmente funcional. Dê uma olhada em tail -f /var/log/mail.log, deve estar praticamente livre de erros.
Este README deve ser útil para uso futuro. Copie-o para o seu filtro de spam para uma referência rápida.
POSTFIX, UBUNTU, MAILSCANNER README
************************************************
ADD DOMAIN
**********************************************
- Edite '/etc/postfix/relay_recipients', 'relay_domains' e 'transport'.
- Execute 'postmap /etc/postfix/relay_recipients'. O mesmo para 'relay_domains' e 'transport' após editar para adicionar domínios ao arquivo db.
- 'postfix reload' para o postfix ler novos arquivos db.
- Para adicionar usuários aos domínios, edite o 'relay_recipients' e 'postmap' isso.
**********************************************
CONTROLLANDO BLIST WLIST
**********************************************
- Edite /etc/postfix/sender_access
- Execute 'postmap /etc/postfix/sender_access'
- Execute 'postfix reload'
**********************************************
OUTROS ARQUIVOS DE CONFIGURAÇÃO
**********************************************
- Para editar as Configurações do MailScanner "/opt/MailScanner/etc/MailScanner.conf"
- Para editar as Configurações do spamassassin "/opt/MailScanner/etc/spam.assassin.prefs.conf"
- Para editar as Configurações do clamav "/etc/clamav/clamd.conf"
**********************************************
MISC
************************************************
- Execute 'LINUX2' se erros do postfix aparecerem sobre arquivos não correspondendo no jailroot.
- Execute 'postfix check' para ver se o postfix está sincronizado com o jailroot.
- Execute newaliases para atualizar o banco de dados /etc/postfix/aliases se alguma alteração for feita nesse arquivo..
- 'mailq' e 'qshape' para verificar a fila.
- 'check_mailscanner' para reiniciar o MailScanner.Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.