Removendo cabeçalhos do correio enviado por postfix

1

Existe um cabeçalho muito chato nas mensagens enviadas pelo daemon Postfix e estou procurando uma maneira de me livrar dele:

Received: by somedomain.net (Postfix, from userid 509)

Algo fora do tópico, mas também é possível remover o nome do host do ID da mensagem, deixando apenas o domínio?

Message-ID: <[email protected]>
    
por atx 28.12.2010 / 16:28

5 respostas

2

Parece que serverfault já recebeu uma resposta significativa sobre isso:
usando a diretiva header_checks em main.cf .

Veja a resposta completa .

Sugiro que você também leia os comentários, que não recomendam remover sistematicamente os cabeçalhos.

    
por 01.01.2011 / 10:29
0

Você pode usar header_checks para ignorar o cabeçalho ou, melhor, para substituí-lo usando um regexp para X-Received ou algo semelhante.

Dito isso, se você remover sua linha Received:, lembre-se de que isso pode aumentar a probabilidade de spam nos e-mails enviados por esse servidor. A verificação de cabeçalhos é frequentemente uma parte da análise de spam bayesiana.

    
por 30.12.2010 / 17:57
0

Você pode configurar um filtro de fila de postagem. Como estão as suas habilidades perl / sed?

A primeira coisa que você precisa fazer é escrever um script que aceite uma mensagem bruta em STDIN e modifique a mensagem como quiser (suponho que você já tenha esse recurso). Em seguida, você configura o postfix para passar todas as mensagens para esse script como um filtro. Como a última coisa que o script faz, passe a mensagem de volta para o postfix.

Para escrever o script, sugiro usar o perl. Tem um motor regexp muito poderoso. Você também pode usar Net::SMTP para tornar a reenvio de volta ao postfix fácil.

Veja como configurar o postfix para fazer isso:

Em master.cf na sua linha smtpd , altere a última parte para incluir o filtro.

Linha original:

smtp      inet  n       -       n       -       -       smtpd

Nova linha:

smtp      inet  n       -       n       -       -       smtpd -o content_filter=myfilter

Adicione seu serviço de filtro a master.cf :

myfilter unix  -       n       n       -       3       pipe
    flags=   user=nobody argv=/usr/local/bin/myfilter.pl localhost 25252 $sender $recipient

Observe que o remetente e o destinatário aqui são do envelope e não do corpo . Você precisará fazer parte do envelope ao passar a mensagem de volta ao postfix.

Por fim, adicione um receptor SMTP não filtrado a master.cf para aceitar as mensagens recém-modificadas:

local:25252 inet n      -       n       -       -       smtpd
    -o content_filter=
    
por 30.12.2010 / 20:46
0

Claro, você pode mangle cabeçalhos existentes no postfix se você realmente quiser. Mas IIRC, a maioria dos MTAs não adicionará esse cabeçalho, a menos que ele não tenha sido adicionado pelo MUA.

    
por 03.01.2011 / 00:58
0

Como foi mencionado, o postfix header_checks é o lugar para fazer isso. Eu uso isso em retransmissões de email que enviam email em nome de servidores na nuvem EC2 da Amazon. Sistemas anti-spam odeiam encontrar qualquer coisa relacionada ao EC2, portanto, este tipo de cloaking é lamentavelmente necessário. Dito isso, provavelmente replicaria essa configuração para redes de produção no futuro. A reputação dos e-mails é um negócio complicado, e ocultar todos os e-mails para que pareça ter origem em um pequeno número de retransmissões torna o gerenciamento de reputação mais fácil.

Aqui está um exemplo de header_checks snippit para sua consideração.

/ ^ (Recebido:. amazonaws.com. ) / REPLACE X-Cloak- $ 1

Isso encontra e pega "Received: host1.amazonaws.com" e substitui por "X-Cloak-Received: host1.amazonaws.com".

    
por 03.01.2011 / 01:22

Tags