26.02.2014 Aufrufe

Linux-Magazin Clean Linux (Vorschau)

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

Sysadmin<br />

www.linux-magazin.de Mailheader 09/2013<br />

64<br />

Headerdaten der E-Mail sehen jetzt so<br />

aus, als kämen sie von einem einzigen<br />

Rechner namens »smtp.example.com«,<br />

ganz gleich von welchem Clientrechner<br />

im LAN ein Benutzer die E-Mails wirklich<br />

abgeschickt hat. Die Headerdaten<br />

werden, ausgenommen die unterschiedlichen<br />

E-Mail-Adressen und Timestamps,<br />

immer gleich aussehen.<br />

Sensible Daten im Betreff<br />

Apropos E-Mail-Adressen: Viele Sysadmins<br />

lassen sich Statusmeldungen per<br />

Mail zuschicken. Zum Beispiel könnte<br />

die Absenderadresse »root@Meine_Domain.local«<br />

lauten, was aber natürlich<br />

wieder Rückschlüsse auf Interna zulässt.<br />

Address Rewriting [4] beseitigt solche<br />

Informationen.<br />

Vorsicht ist ohnehin geboten: Viele Statusmeldungen<br />

enthalten den FQDN des<br />

betreffenden Rechners aber auch im<br />

Betreff. Erwischt Header_checks einen<br />

solchen Subject-Header, schmeißt es ihn<br />

natürlich auch raus und die Mail erreicht<br />

den Empfänger, also den Sysadmin, ohne<br />

Betreffzeile – ein großer Nachteil gerade<br />

bei Mails mit Logs, die sich Admins gerne<br />

per Sieve in Ordner einsortieren lassen,<br />

01 # Nochmal zur Sicherheit Domain entfernen<br />

02 /^.*\.Meine_Domain\.local.*$/i IGNORE<br />

03 # Amavis braucht auch keiner zu sehen<br />

04 /^.*amavis.*$/i IGNORE<br />

05 # Localhost‐Einträge löschen<br />

06 /^Received: from localhost.*$/i IGNORE<br />

07 # Der MUA sollte auch nicht erscheinen<br />

08 /^User‐Agent.*$/i IGNORE<br />

09 # KMail ist eindeutig zu geschwätzig<br />

10 /^X‐KMail.*$/i IGNORE<br />

11 # weitere Regeln für individuelle Mailclients<br />

12 [...]<br />

Listing 4: »/etc/postfix/header_<br />

checks«<br />

Listing 5: Mit Header_checks bereinigte Mail<br />

01 Received: from smtp.example.com<br />

02 (Name_meines_Routers.Mein_ISP.com [1.2.3.4])<br />

03 by smtp.Mein_ISP.com (xxxxx xxxx) (RZmta<br />

31.27 DYNA|AUTH)<br />

04 with (DHE‐RSA‐AES256‐SHA encrypted) ESMTPA id<br />

906d2cp5H92jgY<br />

05 for ;<br />

06 Mon, 17 Jun 2013 11:10:34 +0200 (CEST)<br />

07 To: Adresse@Externe_Domain.com<br />

08 Subject: test<br />

09 From: "Dr. Harry Knitter" <br />

10 Date: Mon, 17 Jun 2013 11:10:31 +0200<br />

in denen schnell mal hundert Mails liegen.<br />

Hier hilft folgende Regel als erster<br />

Eintrag in der Datei »/etc/postfix/header_checks«<br />

weiter:<br />

/^Subject:(.*)@(.*)\.?Meine_Domain.localU<br />

(.*)$/i REPLACE Subject:$(1)$(2).<br />

Sie ersetzt den Namen der internen Domain<br />

»Meine_Domain.local« einschließlich<br />

der Subdomains, also der FQDNs<br />

der sendenden Rechner, durch einen<br />

Nullstring. Wie der Sysadmin Postfix<br />

dazu überredet, ihm den Inhalt solcher<br />

Statusmeldungen auch noch automatisch<br />

verschlüsselt zu übertragen, beschreibt<br />

der Artikel im <strong>Linux</strong>-<strong>Magazin</strong> [5].<br />

Finetuning<br />

Anpassungen für den individuellen Bedarf<br />

sind im beschriebenen Szenario unvermeidlich.<br />

Manche E-Mail-Programme<br />

tragen sich nämlich nicht im Header<br />

»User‐Agent«, sondern mit »X‐Mailer«<br />

ein. Die beschriebenen Säuberungsaktionen<br />

gestalten auch das Debuggen deutlich<br />

schwieriger: Wer selbst Analysen<br />

von Mailheadern vornehmen will, muss<br />

damit rechnen, dass nicht unbedingt alle<br />

Transportinformationen eingehender<br />

Mails erkennbar sind: Die beschriebenen<br />

Maßnahmen wendet Postfix nämlich<br />

auch bei eingehenden Mails an.<br />

Schon Fetchmail, das vielleicht die Daten<br />

vom ISP abholt, liefert die Mails über<br />

den lokalen MTA aus – und weg sind<br />

die Header. Allerdings geschieht dies<br />

nur ein Mal, wenn Postfix die Mail von<br />

Fetchmail erhält. Die später folgenden<br />

Zugriffe des MTA, zum Beispiel beim<br />

Filtern durch Amavis bis zur Ablage in<br />

IMAP, haben keinen Einfluss mehr auf<br />

den Inhalt der dabei erzeugten Header,<br />

wenn in der Konfigurationsdatei »mas-<br />

11 MIME‐Version: 1.0<br />

12 Content‐Type: Text/Plain;<br />

13 charset="iso‐8859‐15"<br />

14 Content‐Transfer‐Encoding: 7bit<br />

15 Message‐Id: <br />

16 X‐Seen: false<br />

17 X‐ENVELOPE‐TO: <br />

18 X‐Length: 3387<br />

19 X‐UID: 21011<br />

20 Status: R<br />

21 X‐Status: N<br />

ter.cf« als Option für die Rückgabe der<br />

Mail durch den Contentfilter an den MTA<br />

»‐o receive_override_options=no_header_body_checks«<br />

eingetragen ist.<br />

Außerdem machen manche Clients wundersame<br />

Dinge: Admins, die mit Kmail<br />

testen, werden sich fragen, warum die<br />

mit Kmail empfangenen E-Mails dennoch<br />

wieder die unerwünschten »X‐KMail«-<br />

Header aufweisen. Direkt auf dem IMAP<br />

sind diese Header in der E-Mail nicht vorhanden.<br />

Sie entstehen, wenn Kmail die<br />

Mails via IMAP abholt. E-Mail-Adressen,<br />

die andere MUAs verwenden, sehen davon<br />

also nichts. Verwendet der Sender<br />

einen anderen MUA als Kmail, passiert<br />

dies ebenfalls nicht.<br />

Fazit<br />

Das Ausplaudern unnötiger und sicherheitskritischer<br />

Daten in den Mailheadern<br />

ist mit recht einfachen Mitteln zu unterbinden.<br />

Die beschriebenen Maßnahmen<br />

sind – sieht man von den regulären Ausdrücken<br />

ab – ohne Programmieraufwand<br />

und ohne Beeinträchtigung der E-Mail-<br />

Kommunikation möglich. Zwar bezieht<br />

sich das Beispiel auf eine relativ simple<br />

LAN-Topologie, die beschriebenen Mechanismen<br />

eignen sich aber genauso für<br />

größere Installationen. (mfe) n<br />

Infos<br />

[1] Postfix-Dokumentation: [ http:// www.​<br />

postfix. org/ documentation. html]<br />

[2] Postfix Header_checks: [http:// www.​<br />

postfix. org/ header_checks. 5. html]<br />

[3] Jeffrey E. F. Friedl, „Reguläre Ausdrücke“:<br />

O’Reilly, Oktober 2007<br />

[4] Postfix Address Rewriting:<br />

[http:// www. postfix. org/ ADDRESS_<br />

REWRITING_README. html]<br />

[5] Harry Knitter, „Schlüsseldienst“: <strong>Linux</strong>-<br />

<strong>Magazin</strong> 07/​13, S. 68;<br />

[http:// www. linux‐magazin. de/ Ausgaben/​<br />

2013/ 07/ Schluesseldienst]<br />

Der Autor<br />

Dr. Harry Knitter [http:// www. knitter‐edv‐be ratung.<br />

de] berät und betreut kleine und mittlere<br />

Unternehmen in den Bereichen Netzwerk und<br />

IT-Sicherheit und setzt dabei auf <strong>Linux</strong>. Er ist<br />

in Hof als EDV-Dozent an der Fachhochschule<br />

für Öffentliche Verwaltung und Rechtspflege in<br />

Bayern tätig.

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!