header_checks - Interne Header entfernen

BlScOfDe

New Member
Hallo,

ich möchte gerne die "Received:" und "Authentication-Results" Header von einem internen Relay entfernen.

In der /etc/postfix/main.cf ist folgendes eingetragen:

Code:
header_checks = pcre:/etc/postfix/header_checks.rgx

Die vereinfachte Config in /etc/postfix/header_checks.rgx
Code:
/^Received:.*/ IGNORE
/^Authentication-Results:.*/ IGNORE

----

Als ich noch "regexp" statt "pcre" verwendet habe, hat mir
Code:
postmap -q "...." regexp:/etc/postfix/header_checks.rgx
den Fehler
Code:
postmap: fatal: unsupported dictionary type: Received
bzw.
Code:
postmap: fatal: unsupported dictionary type: Authentication-Results
ausgespuckt.
Nachdem ich auf "pcre" umgestiegen bin, hat zwar "Received" funktioniert, aber "Authentication-Results" liefert noch immer den selben Fehler.

Im Postfach sehe ich ebenfalls, dass zwar der "Received" Header vom Relay weg ist, aber der "Authentication-Results" Header ist noch da.

Habe ich etwas übersehen?
 
smtp_header_checks = pcre:/etc/postfix/header_checks.rgx
Hi. thx for the suggestion.
But as i understand it, smtp_header_checks are only for outgoing mails, but i want to modify incoming mails.

I tried it anyways just to besure and it didn't do anything.
My rgx
Code:
/^Received:.*myInternalHost\.tld/ IGNORE
/^Authentication-Results:/ IGNORE
Even the more general "/^Authentication-Results:/ IGNORE" wasn't applied
 
Hier funktioniert es:
Code:
[root@devnull:~] # cat header_checks.pcre
~^[[:alnum:]+/]{60,}$~           OK
/^Received:.*/m                  IGNORE
/^Authentication-Results:.*/m    IGNORE
[root@devnull:~] # cat email.txt
Return-Path: <test@example.com>
Delivered-To: test@examplle.net
Received: from mail.example.com
        by mail.example.com with LMTP
        id +hJNOu5iCWWoEAAA8MippA
        (envelope-from <test@example.com>)
        for <test@example..net>; Tue, 19 Sep 2023 08:59:26 +0000
Authentication-Results: bla
        foo
Message-ID: <92fa5462-c94b-4b3f-86b9-ea5c2d890bb2@example.com>
Date: Tue, 19 Sep 2023 10:59:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: Test <test@example.com>
From: Test <test@example.net>
Subject: test
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

-ignore-
[root@devnull:~] # postmap -hmq - pcre:header_checks.pcre < email.txt
Received: from mail.example.com
        by mail.example.com with LMTP
        id +hJNOu5iCWWoEAAA8MippA
        (envelope-from <test@example.com>)
        for <test@example..net>; Tue, 19 Sep 2023 08:59:26 +0000        IGNORE
Authentication-Results: bla
        foo     IGNORE
[root@devnull:~] #
 
Hier funktioniert es:
Code:
[root@devnull:~] # cat header_checks.pcre
~^[[:alnum:]+/]{60,}$~           OK
/^Received:.*/m                  IGNORE
/^Authentication-Results:.*/m    IGNORE
[root@devnull:~] # cat email.txt
Return-Path: <test@example.com>
Delivered-To: test@examplle.net
Received: from mail.example.com
        by mail.example.com with LMTP
        id +hJNOu5iCWWoEAAA8MippA
        (envelope-from <test@example.com>)
        for <test@example..net>; Tue, 19 Sep 2023 08:59:26 +0000
Authentication-Results: bla
        foo
Message-ID: <92fa5462-c94b-4b3f-86b9-ea5c2d890bb2@example.com>
Date: Tue, 19 Sep 2023 10:59:25 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
Content-Language: en-US
To: Test <test@example.com>
From: Test <test@example.net>
Subject: test
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

-ignore-
[root@devnull:~] # postmap -hmq - pcre:header_checks.pcre < email.txt
Received: from mail.example.com
        by mail.example.com with LMTP
        id +hJNOu5iCWWoEAAA8MippA
        (envelope-from <test@example.com>)
        for <test@example..net>; Tue, 19 Sep 2023 08:59:26 +0000        IGNORE
Authentication-Results: bla
        foo     IGNORE
[root@devnull:~] #
Vielen Dank Joe für das Beispiel!
Wenn ich es exakt so einrichte, funktioniert es mit "postmap -hmq - pcre:header_checks.pcre < email.txt".
Jetzt auch mit meinen Regeln. Wobei ich nicht weiß, ob es am "/m" am Ende vom Regex lag, oder der Dateiendung (.rgx -> .pcre), oder noch irgendwo ein typo.
 
Back
Top