Filtrando spam para uma pasta IMAP com postfix, policyd e amavis?

1

Usando o amavisd-new, estou marcando com sucesso vários cabeçalhos e informando com precisão a maioria dos spams.

No entanto, neste momento estou a entregá-lo à caixa de entrada e gostaria de ter uma pasta Junk. De vez em quando eu vou executar sa-learn nessas caixas (uma para cada conta). Então falsos negativos poderiam ser colocados lá e o sistema aprenderia com isso.

Não tenho certeza se postfix, amavis ou policyd é o lugar certo para começar. Como estou usando domínios virtuais, haveria uma pasta diferente para cada usuário @ domínio e não uma quarentena geral.

Alguma ideia de como configurar isso? Eu acho que eu quero que ele funcione como Gmail ou Yahoo Mail hoje, movendo automaticamente SPAM suspeito em uma pasta de lixo eletrônico.

    
por FilmJ 24.09.2009 / 11:24

4 respostas

3

Existem várias opções para fazer isso, e todas dependem muito do agente de entrega que você está usando para fazer a entrega final para a caixa de correio virtual de um usuário.

  1. Se você estiver usando o arquivo de postagem Postfix agente de entrega virtual (8), você não pode faça isso.
  2. Se você estiver usando o Cyrus LDA ou o Dovecot LDA, você tem dois mais opções: você pode usar sua funcionalidade interna Sieve (um rápida pesquisa do Google revelar como analisar o Cabeçalho X-Spam-Status) e fornecer um script global Sieve ou fazer uso de delimitadores de destinatários (conjunto recipient_delimiter = + in Postfix 'main.cf e dê uma olhada a documentação de redirecionamento para amavisd-new).
  3. Se você estiver usando maildrop, veja Resposta de James.
  4. Se nenhuma dessas opções for aplicável, você poderia deixar amavisd-new colocou esses e-mails em um quarentena. Gerentes de quarentena de OSS são escassos, para quarentena baseada em SQL Eu só sei de MailZu e MailZu-ng para a modernidade amavisd-novo. Maia Mailguard vem com o seu próprio amavisd-novo implementação (eu não recomendo usando o Maia por várias razões). Finalmente, ultimamente tenho escrito um combinados quarentena / mailsettings aplicação de gerenciamento , mas eu não pode dar quaisquer datas sobre quando esta um estará terminado).

Uma abordagem totalmente diferente, dado que o seu volume de e-mail é baixo ou você tem acesso a algum hardware sério, seria executar o amavisd-new como before queue filter , eliminando assim a necessidade de pastas de spam / lixo ou quarentena completamente: se um email legítimo for rejeitado como spam, o remetente será notificado pelo seu próprio servidor de email - uma vez que você tecnicamente nunca aceitou o e-mail, você não será responsável por nada.

    
por 25.09.2009 / 16:45
1

Você precisará configurar algo como o procmail ou o maildrop para filtrar o e-mail na pasta correta quando for entregue.

Usando o maildrop você pode ter uma configuração padrão do sistema que irá verificar os cabeçalhos e filtrar o spam para o local correto, com algo assim em / etc / maildroprc:

if (/^X-Spam-Status: yes) {
    to "Maildir/.Spam"
}

altere a localização da caixa de correio, dependendo da sua configuração local.

    
por 24.09.2009 / 16:02
0

Em primeiro lugar, desculpe, pois esta não é uma resposta direta às suas perguntas, mas apenas a postagem da configuração do postfix à prova de spam.

Eu mantenho o servidor corporativo, incluindo email. Nos últimos anos, experimentei diferentes servidores de email, várias configurações e plugins. Até agora, o número normal de spam que está sendo entregue a uma das caixas de correio dos usuários é em média 1 por semana . Levando em consideração que tenho mais de uma centena de caixas de correio, o resultado é incrível. Claro, isso envolve a verificação regular de logs de e-mail e o bloqueio de IPs de servidores que podem passar pelo postfix, mas, acredite, é melhor colocar um IP no banco de dados de SPAM manualmente do que mexer com filtros de SPAM.

Recentemente, publiquei um pequeno artigo sobre a configuração do postfix do AntiSPAM no meu blog .

Minha configuração atual usa o Postfix com o postgrey e o Dovecot, ambos usando o mesmo banco de dados do PostgreSQL.

    
por 24.09.2009 / 11:41
0

Eu não confiaria 100% no amavisd para descartar mensagens consideradas spam; Eu apenas marcaria o assunto de alguma forma e ainda entregaria

no entanto, até lá, há greylisting, spf e rbl, que são realmente ótimos

    
por 24.09.2009 / 15:16