O SpamAssassin tem algumas técnicas para encontrar spam. Uma delas é sua expressão regular (como notado pela resposta de MadHatter), mas isso não é muito potente hoje em dia. Outro (também apontado por MadHatter) é o SPF, embora eu chame isso de insignificante em sua capacidade de capturar spam não-tratado.
As técnicas mais potentes no SpamAssassin são a detecção bayesiana e pesquisas on-line ( DNSBLs (também conhecidas como "RBLs") e URI DNSBLs , bem como sistemas de hashing como Razor e Pyzor , veja também as páginas wiki do SA para instalando o Razor e instalando o Pyzor ).
Pesquisas on-line são de longe as mais simples; configure-os bem e você está pronto para ir. Eles manterão atualizados os spams que atingem as várias redes de armadilhas de spam (honeypots), mas não protegem você contra raquetes de neve (que são muito rápidas) ou ataques direcionados como spearphishing (que é muito pequeno). / p>
A detecção bayesiana requer manutenção constante; é um sistema de aprendizado de máquina e, portanto, deve ser treinado regularmente sobre o que perdeu (e sobre o que foi capturado de forma inadequada). Quanto mais atenção receber, melhor será.
O SpamAssassin tem um sistema de autoaprendizado que assumirá todos os spams de pontuação muito alta deve ser aprendido como tal e todo o presunto de pontuação muito baixa deve ser similarmente aprendido como presunto. O problema é que é apenas aprender com o que é fácil, e (especialmente para o presunto) pode aprender com mensagens erradas, o que reforçará os erros do SpamAssassin.
Nenhuma implantação de SpamAssassin deve confiar em auto-aprendizado sem treinamento manual adicional. É destinado a complementar o treinamento manual, não substituí-lo. Você deve usar sa-learn
(ou spamassassin --report
, que também reporta ao Pyzor, ao Razor e ao SpamCop DNSBL).
Você pode aprender mais sobre Bayes no wiki do SpamAssassin .