LINUX.ORG.RU
ФорумAdmin

Postfix header_checks

 ,


1

1

Здравствуйте! Есть вот такая проблема. Вот исходник письма:

Delivered-To: user@gmail.com 
Received: by 10.36.69.68 with SMTP id y65csp999344ita; 
        Fri, 20 Feb 2015 02:42:22 -0800 (PST) 
X-Received: by 10.180.88.193 with SMTP id bi1mr23250160wib.70.1424428941729; 
        Fri, 20 Feb 2015 02:42:21 -0800 (PST) 
Return-Path: <root@localhost.localdomain> 
Received: from localhost.localdomain (static.10.10.10.10.clients.your-server.de. [10.10.10.10]) 
        by mx.google.com with ESMTP id jh6si1867719wid.94.2015.02.20.02.42.21 
        for <user@gmail.com>; 
        Fri, 20 Feb 2015 02:42:21 -0800 (PST) 
Received-SPF: none (google.com: root@localhost.localdomain does not designate permitted sender hosts) client-ip=10.10.10.10; 
Authentication-Results: mx.google.com; 
       spf=none (google.com: root@localhost.localdomain does not designate permitted sender hosts) smtp.mail=root@localhost.localdomain 
Received: by local_mail_server (Postfix, from userid 0) 
   id E7AFE8943B; Fri, 20 Feb 2015 02:42:20 -0800 (PST) 
To: user@gmail.com 
Subject: test 
Message-Id: <20150220104220.E7AFE8943B@localhost.localdomain> 
Date: Fri, 20 Feb 2015 02:42:20 -0800 (PST) 
From: root@localhost.localdomain (root) 

/root
Например заменить «Received: by »
/^Received: by .*(wi.*)/ REPLACE Received: by 10.0.0.10 ${1}
для

Received: by 10.36.69.68 with SMTP id y65csp999344ita; Fri, 20 Feb 2015 02:42:22 -0800 (PST)

Не работает, если пробовать постмапом, то с регуляркой все ок

postmap -q 'Received: by 10.36.69.68 with SMTP id y65csp999344ita;        Fri, 20 Feb 2015 02:42:22 -0800 (PST)' pcre:/etc/postfix/header_checks 
REPLACE Received: by 10.0.0.10 with SMTP id y65csp999344ita;        Fri, 20 Feb 2015 02:42:22 -0800 (PST)
/^Received: by mydomain\.localdomain (.*)$/  REPLACE Received: by local_mail_server ${1}
для

Received: by local_mail_server (Postfix, from userid 0) id E7AFE8943B; Fri, 20 Feb 2015 02:42:20 -0800 (PST)

Работает

В чем причина, подскажите пожалуйста. И реально ли подменить хэдер тот который первый?

Спасибо!


Вы работаете в гугле или каким образом письмо для user@gmail.com попадает на ваш postfix?

mky ★★★★★
()
Ответ на: комментарий от YuraI

Может я чего не так понял, но, в приведённом фрагменте письма в стартовом сообщении все строки выше:

Received: by local_mail_server (Postfix, from userid 0)

создаются серверами гугла, по мере того, как через них проходит письмо. Если ваш postfix это тот, который "(Postfix, from userid 0)", то он не может исправить то поле Received, которое вы хотите исправить, его ещё просто нет в письме.

mky ★★★★★
()
Ответ на: комментарий от mky

Спасибо за ответы! Received: by 10.36.69.68 with SMTP id y65csp999344ita; или это например, Received: from localhost.localdomain (static.10.10.10.10.clients.your-server.de. [10.10.10.10]) могу подменить?

YuraI
() автор топика
Ответ на: комментарий от YuraI

Нет, «by mx.google.com with ESMTP» означает, что эта запись сделана mx-сервером гугла. Когда письмо покидает ваш postfix, этих записей там вобще нет (ещё нет).

Я исхожу из того, что письмо так и остаётся в ящике гугла. Если вы его потом забираете каким-нибудь fetchmail, пропускаете через свой postfix, который складывает его в ваш локальный ящик, то это другое дело.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.