Alterar a recepção na fila do postfix

3

Depois de executar postqueue -p i, às vezes, encontra endereços de e-mail incorretos,
existe uma maneira de alterar o endereço de recepção (envelope para endereço) das mensagens,
para que possa ser entregue.

exemplo:

postqueue -p
-Queue ID- --Size-- ----Arrival Time---- -Sender/Recipient-------
A78C42189B1     2523 Thu Jul 25 14:53:57  [email protected]
                (connect to tellia.com[141.8.224.25]:25: Connection timed out)
                                         [email protected]
-- 2 Kbytes in 1 Request.

Eu quero pegar o upp A78C42189B1 e alterar o endereço [email protected] para [email protected]

    
por Puggan Se 30.07.2013 / 12:02

2 respostas

3

Até agora eu descobri que posso:

  1. usando postcat -q A78C42189B1 i pode obter uma cópia do item enfileirado
  2. limpe a mensagem dos metadados, as mensagens postcat podem parecer:

    *** ENVELOPE RECORDS deferred/A/A78C42189B1 ***
    message_size:            2523             248               2               0            2523
    message_arrival_time: Thu Jul 25 14:53:57 2013
    create_time: Thu Jul 25 14:53:57 2013
    named_attribute: rewrite_context=local
    sender_fullname: nobody
    sender: FROM:[email protected]
    original_recipient: [email protected]
    recipient: [email protected]
    *** MESSAGE CONTENTS deferred/A/A78C42189B1 ***
    
    mail headers...
    
    mail body...
    
    *** HEADER EXTRACTED deferred/A/A78C42189B1 ***
    named_attribute: notify_flags=1
    original_recipient: [email protected]
    done_recipient: [email protected]
    *** MESSAGE FILE END deferred/A/A78C42189B1 ***
    

    Limpe o cabeçalho e o rodapé do postfix, de modo que apenas cabeçalhos de correio e corpo de e-mail sejam deixados no arquivo, usando um editor de texto ou sed.

  3. use o sendmail para enviar o email para a nova receita

    sendmail [email protected] < edited_mail_file
    
  4. remova o e-mail original da fila postsuper -d mailID

se alguém com habilidades sed, puder cortar o cabeçalho e o corpo do correio, os 3 primeiros passos devem ser capazes de unir o tubo

    
por 31.07.2013 / 17:27
2

Sim, seu método descrito está trabalhando com correspondência bloqueada no mailqueue.

Embora não seja realmente uma resposta para o seu problema específico, gostaria de compartilhar o que fiz para (re) resolver alguns nomes de domínio com erros de ortografia comuns no futuro, usando sua dica:

No postfix / main.cf:

recipient_canonical_maps = regexp:/etc/postfix/maps/recipient_canonical

Arquivo / etc / postfix / maps / recipient_canonical:

/^(.*@)htomail.com$/ ${1}hotmail.com
/^(.*@)homail.com$/ ${1}hotmail.com
/^(.*@)hotmai.com$/ ${1}hotmail.com
/^(.*@)hotmai.co$/ ${1}hotmail.com
/^(.*@)hotma.com$/ ${1}hotmail.com
/^(.*@)gmial.com$/ ${1}gmail.com
/^(.*@)gmail.co$/ ${1}gmail.com
/^(.*@)gmail.nl$/ ${1}gmail.com
    
por 31.07.2013 / 21:56