Isso está relacionado a esta pergunta:
Digamos que estou gerando endereços de e-mail como este quando envio boletins para identificar devoluções e cancelá-las da minha newsletter: [email protected]
Eu suponho que eu usaria isso no caminho de retorno, certo?
Então, como eu o configuraria no postfix para coletar todos esses endereços prefixados com "bounce-" em uma caixa de correio?
Finalmente, ouvi as pessoas mencionarem um salto suave vs. um salto duro. Alguém pode explicar o diferente e como eles devem ser contados para saber quando remover alguém permanentemente de um boletim por e-mail?
email
postfix
email-server
Brian Armstrong
fonte
fonte
Message-Id
no cabeçalho, ele deve ser enviado de volta e isso basta verificar quem é quem.Respostas:
A resposta exata à sua pergunta (manipulação do
[email protected]
endereço) depende de como o servidor está configurado para receber email. Seexample.com
for o domínio virtual, o melhor que você pode fazer é coletar as mensagens na[email protected]
caixa de correio (supondorecipient_delimiter = -
).Se
example.com
é o domínio entregue localmente para o servidor (o correio é entregue nas contas reais do sistema), você pode adicionar um.forward
arquivo ao diretório inicial dobounce
usuário, que é entregue a um programa que analisa as informações de devolução e as registra em um banco de dados ou arquivo . Consulteman local
para obter mais informações sobre o.forward
formato e como enviar para um programa.O que fazemos, desde que enviamos mensagens para um grande número de domínios, é usado
bounces.example.com
como nosso domínio VERP. Este domínio precisa ser adicionado arelay_domains
. Crie/etc/postfix/transport_maps
com este conteúdo:Em seguida, acrescente uma linha semelhante a esta
/etc/postfix/master.cf
:O
bounce_handler.py
script aceita o endereço VERP como sua opção de linha de comando, analisa-o e faz as atualizações necessárias no banco de dados para registrar o retorno.fonte
Na verdade, a resposta do Instyle é muito difícil de implementar se você deseja dar suporte a muitos domínios diferentes e está errado porque:
a) Com o exemplo dele
transport_maps
, todos os emails enviados para esse domínio são enviados para esse serviço específico, independentemente de os emails serem devolvidos ou não. Como ele usa um nome de domínio específico, na verdade deve ser apenas emails devolvidos ... mas não pode ser garantido dessa maneira.b) Os dados enviados ao seu script são o próprio email e não a mensagem de devolução. Em outras palavras, seu código pode não ter idéia do motivo pelo qual o email foi devolvido (por exemplo, o reembolso local enviará apenas o email original).
A maneira correta de fazer essa configuração no postfix é usar a classe de notificação de rejeição.
1) Em /etc/postfix/main.cf
2) Em / etc / postfix / transport_maps
Como você pode ver, agora dizemos ao postfix para uso
[email protected]
sempre que um email for devolvido. Em seguida, no mapa de transporte, use-obulkbounce
como serviço para manipular qualquer endereço de email[email protected]
.Finalmente, você pode definir
bulkbounce
com seu script:3) Em /etc/postfix/master.cf
Este script requer que você tenha um usuário.
nobody
é uma boa escolha também. Se você deseja ter um usuário específico, pode criá-lo com:Sem o script
master.cf
, os e-mails são enviados para a conta de conversão em massa. Portanto, se você tiver um script que analise e-mails de arquivos, isso funcionaria sem as alteraçõestransport_maps
emaster.cf
.De um comentário abaixo:
fonte
+id@
pode ser um envelope de algum tipo?A maioria dos softwares modernos de lista de mala direta já sabe como lidar com mensagens VERP se o MTA estiver configurado corretamente para transmiti-las ao software de mala direta. No caso do GNU Mailman, você deve consultar a página de perguntas e respostas apropriadamente chamada "Como uso o VERP com um delimitador (Postfix container_delimiter)?".
Se você está criando seu próprio software de boletim personalizado para lidar com isso, deve se perguntar por que está reinventando a roda em vez de usar aplicativos existentes que podem lidar com a tarefa de maneira simples e fácil para você.
fonte