Mailversand verhindern

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
nards
Beiträge: 4
Registriert: 05.03.2015 14:31:12

Mailversand verhindern

Beitrag von nards » 05.03.2015 14:37:03

Hallo,

ich möchte einen Mailserver aufsetzen der bei uns aus dem lokalen Netz Mails empfangen kann und hab (wie empfohlen) Postfix installiert.
Allerdings soll er keine Mails versenden können und hier liegt mein Problem.
Ich konnte bis jetzt nichts dazu finden wie ich den Mailversand komplett ausschalten kann.
Weiß jemand wie das geht?

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Mailversand verhindern

Beitrag von r4pt0r » 05.03.2015 16:42:15

evtl:

Code: Alles auswählen

smtpd_sender_restrictions=
    reject
?

Ansonsten hier eine Bedingung setzen die nie erfüllt werden kann. Am besten mal die restrictions in der postfix-dokumentation anschauen was für deinen anwendungsfall passend wäre...

Benutzeravatar
HZB
Beiträge: 490
Registriert: 22.10.2003 11:52:15
Wohnort: Wien

Re: Mailversand verhindern

Beitrag von HZB » 06.03.2015 11:06:51

Und wo kommen die Mails her, wenn Du keine versenden darfst ? Verstehe noch nicht ganz was erreicht werden soll ?

nards
Beiträge: 4
Registriert: 05.03.2015 14:31:12

Re: Mailversand verhindern

Beitrag von nards » 09.03.2015 08:34:02

HZB hat geschrieben:Und wo kommen die Mails her, wenn Du keine versenden darfst ? Verstehe noch nicht ganz was erreicht werden soll ?
Also ich arbeite in nem Softwarehaus und es ist vorgekomen das von unserem System, dass bei einem Kunden von uns läuft, getriggert durch eingehende Mails, automatisch Mails an Kunden von unseren Kunden rausgegangen sind und das muss verhindert werden. Um das jetzt erstmal testen zu können soll ich eben diesen Mail Server aufsetzen der aus unserem lokalen Netz Mails erhalten kann aber keine raussenden darf.

nards
Beiträge: 4
Registriert: 05.03.2015 14:31:12

Re: Mailversand verhindern

Beitrag von nards » 09.03.2015 08:55:02

nards hat geschrieben:Hallo,

ich möchte einen Mailserver aufsetzen der bei uns aus dem lokalen Netz Mails empfangen kann und hab (wie empfohlen) Postfix installiert.
Allerdings soll er keine Mails versenden können und hier liegt mein Problem.
Ich konnte bis jetzt nichts dazu finden wie ich den Mailversand komplett ausschalten kann.
Weiß jemand wie das geht?

Wenn ich das eintrage kommt beim neustart von Postfix diese Meldungen (die erste vier mal und dann die zweite 15 mal):
postconf: warning: /etc/postfix/main.cf: unused parameter: smtp_sender_restrictions=reject
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtp_sender_restrictions=reject

Muss ich noch was beachten oder heißt das, dass es diesen Paramter nicht gibt

gbotti
Beiträge: 846
Registriert: 16.07.2010 14:24:43
Wohnort: München

Re: Mailversand verhindern

Beitrag von gbotti » 09.03.2015 09:23:29

Hi.

Zum debuggen deaktiviere ich den Mailserver komplett und installiere soetwas wie Mailcatcher

Ich kann mir zudem nicht vorstellen, dass Postfix sich so konfigurieren lässt, dass es keine Mails nach außen schickt. Ich könnte mir allerdings vorstellen, dass es funktionieren könnte, wenn man als relayhost = 127.0.0.1 einträgt (NICHT GETESTET). Dann sollte der Server versuchen die Mails immer wieder an sich selbst zuzustellen, was dann fehlschlägt...

Hier, im Bereich "Postfix on a local network", sind Beispiele, wie man Postfix für das lokale Netzwerk einrichtet. Dort wird auch folgendes Beschrieben:
9 # Optional: forward all non-local mail to firewall
10 #relayhost = [firewall.example.com]
Vielleicht hilft das weiter.
Georg
RTFM, LMGTFY, Orakel... Ach... Warum muss man suchen...
Schrödingers Backup --- "Der Zustand eines Backups ist unbekannt, solange man es nicht wiederherstellt" --- Quelle: Nixcraft

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Mailversand verhindern

Beitrag von r4pt0r » 09.03.2015 09:25:49

nards hat geschrieben:
nards hat geschrieben:Hallo,

ich möchte einen Mailserver aufsetzen der bei uns aus dem lokalen Netz Mails empfangen kann und hab (wie empfohlen) Postfix installiert.
Allerdings soll er keine Mails versenden können und hier liegt mein Problem.
Ich konnte bis jetzt nichts dazu finden wie ich den Mailversand komplett ausschalten kann.
Weiß jemand wie das geht?

Wenn ich das eintrage kommt beim neustart von Postfix diese Meldungen (die erste vier mal und dann die zweite 15 mal):
postconf: warning: /etc/postfix/main.cf: unused parameter: smtp_sender_restrictions=reject
/usr/sbin/postconf: warning: /etc/postfix/main.cf: unused parameter: smtp_sender_restrictions=reject

Muss ich noch was beachten oder heißt das, dass es diesen Paramter nicht gibt
smtpd_sender_restrictions

Dimejo
Beiträge: 503
Registriert: 21.07.2014 13:37:23

Re: Mailversand verhindern

Beitrag von Dimejo » 09.03.2015 10:52:28

Meine erste Idee wäre alle Nachrichten auf /dev/null umzuleiten. Dazu setzt Du in /etc/aliases etwa folgendes:

Code: Alles auswählen

[...]
nobody: root
postmaster: root
root: devnull
devnull: /dev/null
Danach postalias nicht vergessen.

Eine zweite Möglichkeit wäre noch default_transport auf error zu setzen. Allerdings dürfte das wahrscheinlich Bounces erzeugen, die Dir irgendwann das System verstopfen. Aber dem könnte man mit einem Cronjob leicht Abhilfe schaffen.

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Mailversand verhindern

Beitrag von r4pt0r » 09.03.2015 11:26:40

Stimmt, transport-maps dürfte die schönste variante sein - dort kennt postfix auch "discard", das erzeugt keine bounces.

Dann klappern die mails zwar die gesamte Zustellkette bis zum ausgehenden transport ab, aber das setup dürfte am einfachsten zu verstehen sein (fehlersuche!) - die smtpd_something_restrictions können teilweise etwas hinterhältig sein...

Zudem kann man dann auch einzelne domains whitelisten:

/etc/postfix/transport_map

Code: Alles auswählen

erlaubte-domain.tld:
* discard:

nards
Beiträge: 4
Registriert: 05.03.2015 14:31:12

Re: Mailversand verhindern

Beitrag von nards » 09.03.2015 13:09:26

Also smtp_sender_restrictions = reject bewirkt das eingehende Mails abgewiesen werden
(hab dann auch smtp_recipient_restrictions = reject versucht, dass bewirkt aber nichts)
Den relayhost auf 127.0.0.1 setzten lässt die Mails tatsächlich erstmal nicht ankommen, würde ich aber nicht als dauerhafte Lösung verwenden wollen weil die mails dann ja immer noch in der Schleife sind und bei einer umkonfiguration immer noch ankommen.

@r4pt0r
Also ich trag in meiner main.cf erstmal default_transport = error ein (wenn ich das richtig verstanden habe)
In meinem /etc/postfix/ Verzeichnis gibt es allerdings keine transport_map Datei.
Muss ich die dann als transport_map.cf anlegen oder wäre das auch ein Eintrag in der main.cf (und wie sähe der dann aus)

r4pt0r
Beiträge: 1237
Registriert: 30.04.2007 13:32:44
Lizenz eigener Beiträge: MIT Lizenz

Re: Mailversand verhindern

Beitrag von r4pt0r » 09.03.2015 16:10:09

Für die sender/recipient restrictions müsste man eine Regel bauen die mails AN (recipient) die eigene domain erlaubt, z.b. per check_recipient_access + entsprechender tabelle. Falls der Server wirklich mit vielen mails zugemüllt wird die er nicht versenden soll dann solltest du dich in die restrictions einlesen und schauen was am besten auf dein Szenario passt, auch in hinblick auf weitere restriktionen:
http://www.postfix.org/postconf.5.html# ... strictions
http://www.postfix.org/postconf.5.html# ... strictions
http://www.postfix.org/postconf.5.html# ... strictions

Es gibt mit sicherheit dutzende wege über die restrictions und entsprechenden maps was funktionierendes zu bauen...
smtpd_client_restrictions + check_client_access gegen den internen IP-bereich (oder einfach alle rfc1918 IP-bereiche) wäre auch eine Variante.

Sind es nur wenige mails kann man das durchlaufend er Zustellkette hinnehmen und die mail in letzter Instanz (beim transport) verwerfen/ablehnen.
@r4pt0r
Also ich trag in meiner main.cf erstmal default_transport = error ein (wenn ich das richtig verstanden habe)
In meinem /etc/postfix/ Verzeichnis gibt es allerdings keine transport_map Datei.
Muss ich die dann als transport_map.cf anlegen oder wäre das auch ein Eintrag in der main.cf (und wie sähe der dann aus)
Nein, transport wird ja auch für die lokale domain (=eingehende Mails) benutzt.

virtual_transport bzw transport_maps = hash:/etc/postfix/transport_maps (oder lookup in eine Datenbank je nach dem wie dein Setup aussieht...)

In dieser map wird dann für die lokale Domain (=das was angenommen werden soll) der entsprechende transport definiert (z.b. lmtp:unix:/private/dovecot-lmtp), darunter dann noch ggf Domains an die gesendet werden darf und darunter "* discard:".

Nicht vergessen die map per postmap auch für postfix lesbar zu machen.

Siehe dazu auch die manpages zu transport: http://www.postfix.org/transport.5.html
(Allgemein sind die manpages/dokumentation zu postfix recht ausführlich und ne gute Anlaufstelle bei Problemen bzw Fragen zum Syntax!)

Antworten