É possível manter mensagens rejeitadas em uma fila?

5

Eu tenho um back-end personalizado do Postgresql para minhas tabelas virtuais no Postfix, mas há momentos em que o email de um usuário não está configurado corretamente e é respondido com um erro User unknown in virtual alias table . Eu gostaria de poder manter essas mensagens em uma fila para revisão e, possivelmente, enviar para o e-mail configurado corretamente mais tarde. É possível configurar o Postfix para enviar esses emails rejeitados para uma fila?

Editar: a melhor solução que encontrei é usar defer_if_reject em main.cf , mas se eu quiser apenas defer_if_reject quando o endereço de e-mail não for encontrado na tabela de endereços de e-mail virtual, como poderia Eu faço isso? E seria possível encaminhar apenas esse tipo de mensagem para uma fila separada, em vez da fila deferred genérica?

    
por josh 15.01.2014 / 04:31

1 resposta

2

Se você concordar com defer_if_reject solution, poderá adicionar essa regra em smtpd_recipient_restriction

defer_if_reject reject_unlisted_recipient

Para mais informações, consulte a documentação oficial

Para a solução HOLD , você pode pesquisar a consulta postgresql para retornar o valor HOLD se a conta não existir na tabela. O googling rápido revela que o Postgre tem o recurso WHERE NOT EXISTS ( veja esta página para alguns exemplos). (Desculpe, eu não estou familiarizado com o Postgre :))

Então, em smtpd_recipient_restriction, defina

check_recipient_access pgsql:/path/to/pgsql/config

Para o conteúdo de /path/to/pgsql/config , consulte esta página de manual

    
por 20.09.2014 / 16:45

Tags