adminForge

free | no tracking | no logging | no advertising

Das ist unser Motto. Mit adminForge bieten wir kostenlose Dienste an. Unser Ziel ist es, eine freie und datensparsame Alternative zu bekannten Diensten bereitzustellen. Seit 2014 betreiben wir adminForge gemeinsam mit Spaß an der Technik und an Open-Source.

Postfix Header anonymisieren

Wenn ein eigener Mailserver betrieben wird sendet dieser unter anderem auch deinen User-Agent und deine IP-Adresse im ersten Received Block mit.

Received: from [192.168.xxx.xxx] (xxx-xxx-xxx-xxx-xxx.netcologne.de [78.34.xxx.xxx])
 (Authenticated sender: tester)
 by mailout.adminforge.de (Postfix) with ESMTPSA id 4CED91036375B;
 Sun, 21 Mai 2017 08:36:27 +0200 (CEST)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101  Thunderbird/52.1.1

Mit folgender Anleitung kannst du dies in Postfix unterbinden und bleibst dabei RFC5321 konform.

Punkt 1: Header Check hinzufügen

Wir sagen Postfix das er eine Header Datei hat und diese auch für jede ausgehende Mail anwenden soll.

# add header for authenticated mail to strip IP
smtpd_sasl_authenticated_header = yes
smtp_header_checks = pcre:/etc/postfix/header_checks

Dazu wird das Paket postfix-pcre benötigt.

apt-get install postfix-pcre

Punkt 2: Header anonymisieren

Nun sagen wir Postfix er möge diese Zeilen im Header der ausgehende Mails ignorieren.

/^Received: .*\(Authenticated sender:.*/ IGNORE
/^Received: by MAIL\.HOSTNAME\.DE .*from userid [0-9]+\)/ IGNORE
/^User-Agent:/ IGNORE
/^X-Originating-IP:/ IGNORE

WICHTIG: In der zweiten Zeile ersetzt ihr MAIL\.HOSTNAME\.DE mit z.B. mail\.adminforge\.de, dem Hostnamen deines Postfix.

Punkt 3: Postfix Restart und Test

Wir starten den Mail Service neu.

systemctl restart postfix.service

Jetzt kann getestet werden, sende eine Testmail an die genannte Adresse auf der Webseite mail-tester.com.

Das erste Feld „Klicken Sie hier, um Ihre Nachricht anzuzeigen“ klappen wir aus und klicken auf „Quelle“. Dort sollte kein User-Agent und keine Received Zeile mit deiner IP-Adresse mehr zu finden sein.

Update 01.04.2018: REPLACE anstelle IGNORE

Obige Methode funktioniert weiterhin tadellos.
Wer seinen ersten Received Header des Clients behalten möchte, kann seine IP-Adresse mit  127.0.0.1 austauschen.

In der Hauptkonfiguration lassen wir smtpd_sasl_authenticated_header weg (Default: no).

# add header to strip IP
smtp_header_checks = pcre:/etc/postfix/header_checks

Der Header wird mit diesen 3 Zeilen gesäubert.

/^(Received: from)[^\n]*(.*)/ REPLACE $1 127.0.0.1 (localhost [127.0.0.1])$2
/^User-Agent/ IGNORE
/^X-Originating-IP/ IGNORE

Nach einem Neustart von Postfix sieht die erste gesäuberte Received-Zeile in etwa so aus.

Received: from 127.0.0.1 (localhost [127.0.0.1])
	(using TLSv1.2 with cipher ECDHE-ECDSA-AES128-GCM-SHA256 (128/128 bits))
	by mail.adminforge.de (Postfix) with ESMTPSA id D7F5718D258
	for <xxx@xxx.xx>; Sun,  1 Apr 2018 10:35:55 +0200 (CEST)