Ich versuche mal deutlicher auszudrücken.
Ich habe auf dem System Postfix und Apache2 installiert. Ein Benutzer der eine Webseite auf dem System hat kann darüber womöglich E-Mails versenden. Die Webseite wird durch mod_fcgid immer als Benutzer ausgeführt dem die Webseite gehört.
Ich möchte erreichen, dass mithilfe der Webseiten, die über den Apache2 ausgeführt werden, nur E-Mails versendet werden können, welche als Absender eine E-Mail Adresse hat, die dem Benutzer gehört über den die Webseite ausgeführt wird.
Mit anderen Worten: Benutzer A führt die Webseite aus und soll nur mit den Absendern versenden dürfen, welche er auch schon als E-Mail Adresse auf dem System hat.

Am 03.04.2011 17:13, schrieb Florian Streibelt:
Hi Danny,

Am 03.04.2011 15:48 schrieb Danny Löser:
Hallo,
ich suche seit geraumer Zeit eine Möglichkeit mein System so
einzustellen, dass eine Mail nur versendet werden kann, wenn die
Absender-Adresse zum Benutzer im System passt.
Bis jetzt habe ich aber nur die Möglichkeit
smtpd_sender_restrictions =
    reject_sender_login_mismatch
gefunden.
Ja, das passt. Hier wird innerhalb des SMTP-Dialogs geprüft, oder der
authentifizierte Benutzer diesen Absender setzen darf. (Also Anhand des
logins).

Was aber nur beim versenden über snmp wirkt.
SNMP != SMTP ;)

Das eine erfasst Daten von z.B. Routern und Switches, das andere ist das
Simple Mail Transfer Protocol ;)
Der Unterschied ist schon klar, hatte mich nur verschrieben. Meinte natürlich SMTP ;-)
Versende ich aber z.B. über die PHP Mail-Funktion, welche meines Wissens
nach über einen Sendmail-Wrapper an Postfix übergibt, funktioniert das
nicht.
die php funktion kann beides, je nachdem wie man sie aufruft. Nur wird das
ein grundsätzliches Problem nicht beheben: Die Emails werden entweder lokal
direkt oder via SMTP per Netzwerk von localhost eingeliefert, und da kann
und muss man beliebige 'Absender' erlauben, weil sonst diverse andere Dinge
nicht mehr funktionieren.
Per SMTP wäre doch nicht die PHP-Mail-Funktion. Oder kannst du mir sagen wie die PHP-Mail-Funktion unter Linux einen SMTP-Server bedienen soll. Das geht nur unter Windows, laut php.net. Außerdem, was für Funktionen sollen, denn dann nicht mehr funktionieren, nur mal so ein Beispiel, Bitte.

Kennt jemand eine Möglichkeit das gewünschte nicht nur bei snmpd zu
erreichen, sondern auch bei Mails die per Sendmail-Wrapper versendet
werden?
z.B. in dem man irgendwie angibt, dass Mails die per Sendmail-Wrapper
versendet werden auch den snmpd Regeln unterliegen.
Was willst Du denn genau erreichen?

Wenn ein normaler Systembenutzer mails verschickt, steht im Header meist
die Userid mit drin, beim Einliefern auf port 25 sieht das anders aus, hier
könnte man evtl. ein Login erzwingen, hab ich aber noch nie versucht, keine
Ahnung was da dann evtl. alles kaputt geht.

Daher nochmal die Frage: Bei Dir haben Leute die Möglichkeit eigene
php-scripte laufen zu lassen und Du willst verhindern, dass sie beliebige
Absender setzen, oder was ist das Problem ;)


Grüße,
 Florian

Beliebige Absender sollen sie schon setzen dürfen, aber es sollen eben nur die von Postfix genehmigt werden, welche er selbst auch schon auf dem System hat. Angemeldet am System ist er ja mithilfe von mod_fcgid.