Passo a Passo para Implementar o SpamAssassin
1. Instale o SpamAssassin
Primeiro, instale o SpamAssassin no seu servidor:
sudo apt-get update
sudo apt-get install spamassassin spamc
2. Ative o SpamAssassin
Por padrão, o SpamAssassin não é ativado. Para ativá-lo, edite o arquivo de configuração principal:
sudo nano /etc/default/spamassassin
Altere a linha ENABLED=0
para ENABLED=1
.
3. Configure o SpamAssassin
O arquivo de configuração principal do SpamAssassin é /etc/spamassassin/local.cf
. Você pode editar este arquivo para personalizar as regras e preferências. Por exemplo:
sudo nano /etc/spamassassin/local.cf
Você pode adicionar linhas como:
rewrite_header Subject *****SPAM*****
required_score 5.0
report_safe 0
use_bayes 1
bayes_auto_learn 1
Estas configurações marcam e-mails detectados como spam, ajustam a pontuação necessária para marcar um e-mail como spam, e ativam o aprendizado Bayesiano.
4. Integre com o Postfix
Para que o Postfix utilize o SpamAssassin, você precisará integrá-los. Uma maneira comum de fazer isso é através do Amavis, que é uma interface entre o MTA (Postfix) e os programas de filtragem de conteúdo como o SpamAssassin.
Instale o Amavis, ClamAV (antivírus), e suas dependências:
sudo apt-get install amavisd-new clamav clamav-daemon zoo unzip bzip2 arj nomarch lzop cabextract apt-listchanges libnet-ldap-perl libauthen-sasl-perl clamav-docs daemon libio-string-perl libio-socket-ssl-perl libnet-ident-perl zip libnet-dns-perl postgrey
Após a instalação, o Amavis será automaticamente integrado com o Postfix.
5. Configure o Amavis
Verifique se o Amavis está configurado para utilizar o SpamAssassin. Normalmente, isso é feito automaticamente, mas você pode verificar o arquivo de configuração:
sudo nano /etc/amavis/conf.d/20-debian_defaults
Confirme que as linhas referentes ao SpamAssassin estão descomentadas.
6. Reinicie os Serviços
Após fazer as alterações, reinicie o SpamAssassin, o Amavis e o Postfix:
sudo systemctl restart spamassassin
sudo systemctl restart amavis
sudo systemctl restart postfix
7. Teste a Configuração
Você deve testar o sistema para garantir que o spam está sendo filtrado corretamente. Uma maneira de fazer isso é enviar um e-mail de teste com o conteúdo que normalmente seria marcado como spam.
Considerações Adicionais
- Manutenção Regular: O SpamAssassin precisa de atualizações regulares para se manter eficaz.
- Desempenho e Sobrecarga: A filtragem de spam pode ser intensiva em recursos, então monitore o desempenho do servidor.
- Afinamento de Regras: Dependendo do fluxo de e-mails, você pode precisar ajustar as configurações do SpamAssassin para minimizar falsos positivos e falsos negativos.
- Segurança Adicional: Considere implementar outras medidas de segurança, como SPF, DKIM e DMARC, para melhorar a segurança do e-mail.
Existem várias soluções prontas que instalam, configuram e fazem a manutenção de tudo isso automaticamente de forma muito mais fácil. Algumas:
https://github.com/modoboa/modoboa (Python. É a que uso atualmente) https://github.com/mail-in-a-box/mailinabox (Python. Usei antes do modoboa) https://github.com/Mailu/Mailu (Python) https://github.com/mailcow/mailcow-dockerized (PHP, Docker) https://github.com/docker-mailserver/docker-mailserver (Shell, Docker)
Tem uma lista com outras opções aqui: https://github.com/awesome-selfhosted/awesome-selfhosted#communication---email---complete-solutions