Postfix - Mails nur für best. Adressen annehmen, den Rest ablehnen
Hallo Zusammen, ich glaub ich seh den Wald vor lauter Bäumen nicht. Ich möchte die Mails für user1@domain.a user1@domain.b user2@domain.a user3@domain.a annehmen und den Rest an @domain.a @domain.b ablehnen. Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern. Danke für jeden Tip Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 27.11.2011 17:30, schrieb Daniel Bauer:
Ich möchte die Mails für user1@domain.a user1@domain.b user2@domain.a user3@domain.a annehmen und den Rest an @domain.a @domain.b ablehnen.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern. Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen.
gruß Ingo -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Daniel, Am Sonntag 27 November 2011 schrieb Daniel Bauer:
Hallo Zusammen,
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für user1@domain.a user1@domain.b user2@domain.a user3@domain.a annehmen und den Rest an @domain.a @domain.b ablehnen.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert. Dazu ist er an eine IP gebunden. Rest regelt die main.cf über ein paar (wenige) Direktiven. In der main.cf stehen natürlich auch die virtual-Dateien, die er verarbeiten soll. Simple Konfiguration, klappt jedoch seit Jahren ohne Stress auf einem Rootserver. (Einen Open-Relay-Check mache ich allerdings immer mal wieder, besonders aber bei Änderungen in der main.cf). Die Systembenutzer schicken ihre Mail übrigens dem localen root und den Admins mit normalen User-Account. Mein wichtiges Werkzeug, sie zu überwachen ist logwatch. Helga -- ## Technik: [http://de.opensuse.org] ## Politik: [http://www.piratenpartei.de] ## Privat: [http://www.eschkitai.de] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am Sonntag 27 November 2011 schrieb I.H.: [...]
Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen.
Nix gegen YaST, aber die Mailserverkonfiguration macht man lieber mit der Hand. Original wegkopieren, der Übersicht wegen alle Kommentare wegwerfen und diese Kopie als Basis für die eigene Konfiguration verwenden. YaST schreibt seine Änderungen nämlich ganz unten in die Konfig rein, nicht dahein, wo man es vielleicht anhand der Kommentare vermuten würde. Wenn man das nicht weiß, wird man nicht so sonderlich glücklich damit. Helga -- ## Technik: [http://de.opensuse.org] ## Politik: [http://www.piratenpartei.de] ## Privat: [http://www.eschkitai.de] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 27.11.2011 19:00, schrieb Helga Fischer:
Am Sonntag 27 November 2011 schrieb I.H.: [...]
Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen. Nix gegen YaST, aber die Mailserverkonfiguration macht man lieber mit der Hand.
Original wegkopieren, der Übersicht wegen alle Kommentare wegwerfen und diese Kopie als Basis für die eigene Konfiguration verwenden.
YaST schreibt seine Änderungen nämlich ganz unten in die Konfig rein, nicht dahein, wo man es vielleicht anhand der Kommentare vermuten würde. Wenn man das nicht weiß, wird man nicht so sonderlich glücklich damit. Also es geht um diesen Parameter in der postfix/main.cf
myhostname = domain.a mydestination = $myhostname, localhost.$mydomain Du solltest also myhostname anpassen wenn du verhindern willst das Postfix Mails für alle lokalen Benutzer animmst. Ingo -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
From: "I.H."
Am 27.11.2011 19:00, schrieb Helga Fischer:
Am Sonntag 27 November 2011 schrieb I.H.: [...]
Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen. Nix gegen YaST, aber die Mailserverkonfiguration macht man lieber mit der Hand.
Original wegkopieren, der Übersicht wegen alle Kommentare wegwerfen und diese Kopie als Basis für die eigene Konfiguration verwenden.
YaST schreibt seine Änderungen nämlich ganz unten in die Konfig rein, nicht dahein, wo man es vielleicht anhand der Kommentare vermuten würde. Wenn man das nicht weiß, wird man nicht so sonderlich glücklich damit. Also es geht um diesen Parameter in der postfix/main.cf
myhostname = domain.a mydestination = $myhostname, localhost.$mydomain
Du solltest also myhostname anpassen wenn du verhindern willst das Postfix Mails für alle lokalen Benutzer animmst.
ich kann mir nicht wirklich vorstellen, hier etwas falsches anzugeben. myhostname wird für das HELO gebraucht und wenn das nicht paßt, gibt es teilweise Probleme mit anderen Mailservern. Gruß Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
N'Abend Helga,
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für user1@domain.a user1@domain.b user2@domain.a user3@domain.a annehmen und den Rest an @domain.a @domain.b ablehnen.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert.
Dazu ist er an eine IP gebunden.
Rest regelt die main.cf über ein paar (wenige) Direktiven. In der main.cf stehen natürlich auch die virtual-Dateien, die er verarbeiten soll.
Simple Konfiguration, klappt jedoch seit Jahren ohne Stress auf einem Rootserver. (Einen Open-Relay-Check mache ich allerdings immer mal wieder, besonders aber bei Änderungen in der main.cf).
Die Systembenutzer schicken ihre Mail übrigens dem localen root und den Admins mit normalen User-Account. Mein wichtiges Werkzeug, sie zu überwachen ist logwatch.
kannst Du mir mal ein Beispiel senden, gerne auch per PM? Danke Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
N'Abend Helga,
Hallo Daniel, jetzt bin ich von der 12.1 zurück.
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für
[...] Ist vielleicht besser, wenn Du uns verrätst, was Dein Einsatzszenario überhaupt ist.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert.
Dazu ist er an eine IP gebunden.
Deswegen war meine Antwort relativ kurz.
kannst Du mir mal ein Beispiel senden, gerne auch per PM?
Kann ich machen, wenn's wirklich passt. Denn man kann unendlich viel Kram in einem Postfix-System konfigurieren. Wenn Du mehr postfix brauchst, dann gibt es nur eins: Peer Heinlein, »Das Postfix-Buch. Sichere Mailserver mit Linux«. Zum Buch gibt's auch eine gute Mailingliste. Helga -- ## Technik: [http://de.opensuse.org] ## Politik: [http://www.piratenpartei.de] ## Privat: [http://www.eschkitai.de] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 27.11.2011 20:42, Daniel Bauer wrote:
From: "I.H."
Am 27.11.2011 19:00, schrieb Helga Fischer:
Am Sonntag 27 November 2011 schrieb I.H.: [...]
Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen. Nix gegen YaST, aber die Mailserverkonfiguration macht man lieber mit der Hand.
Original wegkopieren, der Übersicht wegen alle Kommentare wegwerfen und diese Kopie als Basis für die eigene Konfiguration verwenden.
YaST schreibt seine Änderungen nämlich ganz unten in die Konfig rein, nicht dahein, wo man es vielleicht anhand der Kommentare vermuten würde. Wenn man das nicht weiß, wird man nicht so sonderlich glücklich damit. Also es geht um diesen Parameter in der postfix/main.cf
myhostname = domain.a mydestination = $myhostname, localhost.$mydomain
Du solltest also myhostname anpassen wenn du verhindern willst das Postfix Mails für alle lokalen Benutzer animmst.
ich kann mir nicht wirklich vorstellen, hier etwas falsches anzugeben. myhostname wird für das HELO gebraucht und wenn das nicht paßt, gibt es teilweise Probleme mit anderen Mailservern.
Bisher kam hier noch nicht der richtige Hinweis: für Domains in mydestination ist local_recipient_maps die Antwort. Default: postconf -d local_recipient_maps local_recipient_maps = proxy:unix:passwd.byname $alias_maps Also alle User in /etc/passwd und postconf -d alias_maps alias_maps = hash:/etc/aliases, nis:mail.aliases Kommentiere also alle Systemuser in /etc/aliases aus, welche du nicht empfangen möchtest und führe "newaliases" aus, dann sollte das Problem erledigt sein. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hi Sandy,
From: "Sandy Drobic"
On 27.11.2011 20:42, Daniel Bauer wrote:
From: "I.H."
Am 27.11.2011 19:00, schrieb Helga Fischer:
Am Sonntag 27 November 2011 schrieb I.H.: [...]
Soweit ich das verstehe ist deine eingetragen Hostdomain vermutlich domain.a somit nimmt Postfix Mails für alle Benutzer die in dieser Domain sind an und das sind halt alle Benutzer die das System kennt, wwwrun@domain.b sollte nicht funktinieren. Lösung wäre z.B. deinem Linux über Yast Netzwerk eine andere Domain zuzuweisen. Nix gegen YaST, aber die Mailserverkonfiguration macht man lieber mit der Hand.
Original wegkopieren, der Übersicht wegen alle Kommentare wegwerfen und diese Kopie als Basis für die eigene Konfiguration verwenden.
YaST schreibt seine Änderungen nämlich ganz unten in die Konfig rein, nicht dahein, wo man es vielleicht anhand der Kommentare vermuten würde. Wenn man das nicht weiß, wird man nicht so sonderlich glücklich damit. Also es geht um diesen Parameter in der postfix/main.cf
myhostname = domain.a mydestination = $myhostname, localhost.$mydomain
Du solltest also myhostname anpassen wenn du verhindern willst das Postfix Mails für alle lokalen Benutzer animmst.
ich kann mir nicht wirklich vorstellen, hier etwas falsches anzugeben. myhostname wird für das HELO gebraucht und wenn das nicht paßt, gibt es teilweise Probleme mit anderen Mailservern.
Bisher kam hier noch nicht der richtige Hinweis: für Domains in mydestination ist local_recipient_maps die Antwort.
Default: postconf -d local_recipient_maps local_recipient_maps = proxy:unix:passwd.byname $alias_maps
soweit kann ich Dir folgen und sehe auch hier das Problem.
Also alle User in /etc/passwd und postconf -d alias_maps alias_maps = hash:/etc/aliases, nis:mail.aliases
Kommentiere also alle Systemuser in /etc/aliases aus, welche du nicht empfangen möchtest und führe "newaliases" aus, dann sollte das Problem erledigt sein.
aber in der /etc/aliases stehen nur meine Adressen und nicht die Systemuser. kann ich das evtl. so lösen: local_recipient_maps = $alias_maps und somit die passwd komplett unberücksichtigt lassen? Danke + Gruß Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für
[...]
Ist vielleicht besser, wenn Du uns verrätst, was Dein Einsatzszenario überhaupt ist.
1. Authentifizierte Benutzer sollen Mails versenden können. Das klappt auch wunderbar. 2. Mails für alles in der virtual_alias_maps und alias_maps sollen angenommen werden. Das geht leider zu "gut" und wird wie beschrieben auch für jeden Systemuser angenommen. 3. Spamfilter - da bin ich noch dabei.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert.
Dazu ist er an eine IP gebunden.
Deswegen war meine Antwort relativ kurz.
kannst Du mir mal ein Beispiel senden, gerne auch per PM?
Kann ich machen, wenn's wirklich passt. Denn man kann unendlich viel Kram in einem Postfix-System konfigurieren.
das war mit dem " ich glaub ich seh den Wald vor lauter Bäumen nicht" gemeint.
Wenn Du mehr postfix brauchst, dann gibt es nur eins: Peer Heinlein, »Das Postfix-Buch. Sichere Mailserver mit Linux«. Zum Buch gibt's auch eine gute Mailingliste.
ich hab das Buch, bin aber noch nicht auf der Mailingliste. Gruß Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 11:56, Daniel Bauer wrote:
Hi Sandy,
Bisher kam hier noch nicht der richtige Hinweis: für Domains in mydestination ist local_recipient_maps die Antwort.
Default: postconf -d local_recipient_maps local_recipient_maps = proxy:unix:passwd.byname $alias_maps
soweit kann ich Dir folgen und sehe auch hier das Problem.
Also alle User in /etc/passwd und postconf -d alias_maps alias_maps = hash:/etc/aliases, nis:mail.aliases
Kommentiere also alle Systemuser in /etc/aliases aus, welche du nicht empfangen möchtest und führe "newaliases" aus, dann sollte das Problem erledigt sein.
aber in der /etc/aliases stehen nur meine Adressen und nicht die Systemuser.
kann ich das evtl. so lösen: local_recipient_maps = $alias_maps und somit die passwd komplett unberücksichtigt lassen?
Grins! Es ist DEIN System, damit kannst du machen, was du willst. (^-°) Wenn das deinen Anforderungen gerecht wird, warum nicht. Hüte dich nur vor der Falle, zuviel manuell pflegen zu müssen, dann fasert das System auseinander. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
From: "Sandy Drobic"
On 28.11.2011 11:56, Daniel Bauer wrote:
Hi Sandy,
Bisher kam hier noch nicht der richtige Hinweis: für Domains in mydestination ist local_recipient_maps die Antwort.
Default: postconf -d local_recipient_maps local_recipient_maps = proxy:unix:passwd.byname $alias_maps
soweit kann ich Dir folgen und sehe auch hier das Problem.
Also alle User in /etc/passwd und postconf -d alias_maps alias_maps = hash:/etc/aliases, nis:mail.aliases
Kommentiere also alle Systemuser in /etc/aliases aus, welche du nicht empfangen möchtest und führe "newaliases" aus, dann sollte das Problem erledigt sein.
aber in der /etc/aliases stehen nur meine Adressen und nicht die Systemuser.
kann ich das evtl. so lösen: local_recipient_maps = $alias_maps und somit die passwd komplett unberücksichtigt lassen?
Grins! Es ist DEIN System, damit kannst du machen, was du willst. (^-°) Wenn das deinen Anforderungen gerecht wird, warum nicht.
Hüte dich nur vor der Falle, zuviel manuell pflegen zu müssen, dann fasert das System auseinander.
ich verstehe den Einwand, aber ich verstehe leider nicht, wie ich es besser lösen sollte. Nachdem die aliases nur meine User enthält, entspricht es doch dem gleichen als wären alle Systemuser auskommentiert, oder? Ich hab es auch grad probiert: mail@domain.a wird immer noch angenommen, obwohl ich es expliziet als Kommentar in der aliases aufgeführt habe. So sieht nun meine alias_maps aus: postmaster: root root: user1 #mail: root user1: user1 user2: user2 user3: user1,user2 So sieht meine virtual_alias_maps aus user1@domain.a user1 user1@domain.b user1 user2@domain.a user2 user3@domain.a user3 nachdem er aber auf die passwd zugreift, ist der mail@... immer noch aktiv, was mache ich falsch :( Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 12:18, Daniel Bauer wrote:
Kommentiere also alle Systemuser in /etc/aliases aus, welche du nicht empfangen möchtest und führe "newaliases" aus, dann sollte das Problem erledigt sein.
aber in der /etc/aliases stehen nur meine Adressen und nicht die Systemuser.
kann ich das evtl. so lösen: local_recipient_maps = $alias_maps und somit die passwd komplett unberücksichtigt lassen?
Grins! Es ist DEIN System, damit kannst du machen, was du willst. (^-°) Wenn das deinen Anforderungen gerecht wird, warum nicht.
Hüte dich nur vor der Falle, zuviel manuell pflegen zu müssen, dann fasert das System auseinander.
ich verstehe den Einwand, aber ich verstehe leider nicht, wie ich es besser lösen sollte. Nachdem die aliases nur meine User enthält, entspricht es doch dem gleichen als wären alle Systemuser auskommentiert, oder?
Ich hab es auch grad probiert: mail@domain.a wird immer noch angenommen, obwohl ich es expliziet als Kommentar in der aliases aufgeführt habe.
Ich gehe davon aus, dass dein Test falsch läuft. Wenn du intern aus dem Netz eine Mail schickst und in smtpd_recipient_restrictions = .... permit_mynetworks permit_sasl_authenticated reject_unauth_destination ... steht, dann wird die Mail angenommen, weil der Client im internen Netz steht. Die Frage ist eher: wird die Mail auch von einem externen Client abgewiesen? Stelle mal als erstes einfach ein smtpd_recipient_restrictions = reject_unlisted_recipient permit_mynetworks permit_sasl_authenticated reject_unauth_destination Dann sollte es auch von einem internen Client abgewiesen werden.
So sieht nun meine alias_maps aus: postmaster: root root: user1 #mail: root user1: user1 user2: user2 user3: user1,user2
Völlig normal. Außer dass user2 auf user2 zeigt.
So sieht meine virtual_alias_maps aus user1@domain.a user1 user1@domain.b user1 user2@domain.a user2 user3@domain.a user3
Ok für virtuelle Domains. Diese stehen dann in virtual_alias_domains?
nachdem er aber auf die passwd zugreift, ist der mail@... immer noch aktiv, was mache ich falsch :(
Wenn es auch von einem externen Client funktioniert, dann komme ich ohne Ausgabe von "postconf -n" und dem Logauszug mit der Annahme der Mail nicht weiter. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Daniel, Am Montag 28 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für
[...]
Ist vielleicht besser, wenn Du uns verrätst, was Dein Einsatzszenario überhaupt ist.
1. Authentifizierte Benutzer sollen Mails versenden können. Das klappt auch wunderbar.
2. Mails für alles in der virtual_alias_maps und alias_maps sollen angenommen werden. Das geht leider zu "gut" und wird wie beschrieben auch für jeden Systemuser angenommen.
Hmmm... Systembenutzer sind bei Dir welche? Normalerweise haben Datenbank, Postfix oder Nobody einen Sperraccount und besitzen damit keinen Useraccount. Normalerweise sollten sie daher auch keine Mails bekommen. root kann Mails annehmen, die von außen kommen. Darüber habe ich jedoch noch nie irgendeine Spammail bekommen. Hier sind mal Auszüge aus meiner main.cf (KMail bricht halt an ein paar Stellen um) smtpd_banner = $myhostname ESMTP biff = no # appending .domain is the MUA's job. append_dot_mydomain = no # Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h myhostname = mailserver.domain.tld mydomain = domain.tld alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = $myhostname, $mydomain, localhost, localhost. $mydomain mynetworks = 123.123.123.123, 127.0.0.0/8 # Naechste Zeile dient der Spamabwehr ueber nicht-existente Subdomains parent_domain_matches_subdomains= mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all smtpd_delay_reject=yes # Authentifizierung der Nutzer # saslauth einrichten; je nach Distri manchmal etwas zickig smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes # Noch ein paar Schalter fuer Spamabwehr (sonstiges) smtpd_helo_required = yes # smtp-helo-restrictions (Stufe 1 Spamabwehr) smtpd_helo_restrictions = permit_mynetworks, warn_if_reject, reject_unauth_pipelining, reject_invalid_hostname # smtp-restrictions (Stufe 2 Spamabwehr) # Hier kann man alle Pruefungen eintragen smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain # Die Schalter sorgen für die Abwehr von Spammern # Die halten sich halt nicht an die Regeln # Hier kann man sicher noch mehr machen smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_unauth_pipelining, reject_unlisted_recipient, reject_invalid_hostname # Liste Weiterleitungen virtual_alias_maps = $virtual_alias virtual_alias_maps = hash:/etc/postfix/virtual_alias # Liste der virtuellen Domains # Hier kann man, wenn man will, Catch-Alls einrichten # Nein, das will man nicht wirklich virtual_alias_domains = $virtual_domains virtual_alias_domains = hash:/etc/postfix/virtual_domains [...] Der Trick ist, die alias_map sorgt dafür, dass der Postfix erst da nachguckt, ob er den Benutzer kennt. Dann checkt er noch ab, ob er für die Domain zuständig ist. Mein Mailserver versorgt halt ein paar Domains, die auf der gleichen IP gehostet sind.
3. Spamfilter - da bin ich noch dabei.
Sehr wirksam: Greylisting. Hab's aber noch nicht eingerichtet.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Du musst die Stelle finden, wo Postfix die Erlaubnis gegeben wird, für den wwwrun die Post zu akzeptieren. Hast Du überhaupt eine aliasdb bzw. eine alias_map?
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert.
Dazu ist er an eine IP gebunden.
Deswegen war meine Antwort relativ kurz.
kannst Du mir mal ein Beispiel senden, gerne auch per PM?
Kann ich machen, wenn's wirklich passt. Denn man kann unendlich viel Kram in einem Postfix-System konfigurieren.
das war mit dem " ich glaub ich seh den Wald vor lauter Bäumen nicht" gemeint.
Ah... OK. Das kann ich nachfühlen.
Wenn Du mehr postfix brauchst, dann gibt es nur eins: Peer Heinlein, »Das Postfix-Buch. Sichere Mailserver mit Linux«. Zum Buch gibt's auch eine gute Mailingliste.
ich hab das Buch, bin aber noch nicht auf der Mailingliste.
:) So gut das Buch ist, so eine Mailservereinrichtung kann einem schon den Kopf zerbrechen lassen. Helga -- ## Technik: [http://de.opensuse.org] ## Politik: [http://www.piratenpartei.de] ## Privat: [http://www.eschkitai.de] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 13:49, Helga Fischer wrote:
Hallo Daniel,
Am Montag 28 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für
[...]
Ist vielleicht besser, wenn Du uns verrätst, was Dein Einsatzszenario überhaupt ist.
1. Authentifizierte Benutzer sollen Mails versenden können. Das klappt auch wunderbar.
2. Mails für alles in der virtual_alias_maps und alias_maps sollen angenommen werden. Das geht leider zu "gut" und wird wie beschrieben auch für jeden Systemuser angenommen.
Hmmm... Systembenutzer sind bei Dir welche? Normalerweise haben Datenbank, Postfix oder Nobody einen Sperraccount und besitzen damit keinen Useraccount. Normalerweise sollten sie daher auch keine Mails bekommen. root kann Mails annehmen, die von außen kommen. Darüber habe ich jedoch noch nie irgendeine Spammail bekommen.
Hier sind mal Auszüge aus meiner main.cf (KMail bricht halt an ein paar Stellen um)
smtpd_banner = $myhostname ESMTP biff = no
# appending .domain is the MUA's job. append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h
myhostname = mailserver.domain.tld mydomain = domain.tld alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = $myhostname, $mydomain, localhost, localhost. $mydomain
mynetworks = 123.123.123.123, 127.0.0.0/8
# Naechste Zeile dient der Spamabwehr ueber nicht-existente Subdomains parent_domain_matches_subdomains=
mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all
smtpd_delay_reject=yes
# Authentifizierung der Nutzer # saslauth einrichten; je nach Distri manchmal etwas zickig
smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes
# Noch ein paar Schalter fuer Spamabwehr (sonstiges) smtpd_helo_required = yes
# smtp-helo-restrictions (Stufe 1 Spamabwehr) smtpd_helo_restrictions = permit_mynetworks, warn_if_reject, reject_unauth_pipelining, reject_invalid_hostname
# smtp-restrictions (Stufe 2 Spamabwehr) # Hier kann man alle Pruefungen eintragen
smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain
# Die Schalter sorgen für die Abwehr von Spammern # Die halten sich halt nicht an die Regeln # Hier kann man sicher noch mehr machen smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_unauth_pipelining, reject_unlisted_recipient, reject_invalid_hostname
Es ist gerade für Beginner einfacher, alles unter smtpd_recipient_restrictions einzutragen. wenn smtpd_delay_reject=yes (default) ist, dann gibt es ohnehin keine Vorteile, dies auf die einzelnen smtpd_*_restrictions zu verteilen. Im Gegenteil, das führt eher zu Situationen, die das Haareraufen fördern, wenn z.B. ein Client sich erfolgreich authentifiziert, aber dann doch von der Spamabwehr abgewiesen wird, weil der HELO nicht als gültig einstuft wird. Inzwischen hat sich auch die Nomenklatur von Postfix etwas geändert und ist eindeutiger geworden (seit Postfix 2.3, also schon einige Jahre). reject_invalid_hostname -> reject_invalid_helo_hostname reject_non_fqdn_hostname -> reject_non_fqdn_helo_hostname Da du bereits reject_invalid_helo_hostname in smtpd_recipient_restrictions gesetzt hast, brauchst du den Check nicht zusätzlich in smtpd_helo_restrictions aufführen. Ausnahmen wie Whitelists sind weit sauberer einzusetzen, wenn man sie nicht in jeder einzelnen smtpd_*_restrictions platzieren muss.
# Liste Weiterleitungen virtual_alias_maps = $virtual_alias virtual_alias_maps = hash:/etc/postfix/virtual_alias
# Liste der virtuellen Domains # Hier kann man, wenn man will, Catch-Alls einrichten # Nein, das will man nicht wirklich virtual_alias_domains = $virtual_domains virtual_alias_domains = hash:/etc/postfix/virtual_domains
[...]
Der Trick ist, die alias_map sorgt dafür, dass der Postfix erst da nachguckt, ob er den Benutzer kennt. Dann checkt er noch ab, ob er für die Domain zuständig ist.
Das sollte nicht funktionieren. Wenn ein Parameter doppelt vergeben wird, zählt nur die letzte Einstellung. Schaue dir mal die Ausgabe von "postconf -n" an. Das bildet die effektive Konfiguration recht gut ab. (postconf -n entspricht der Default-Konfiguration überlagert von Änderungen). Ob Postfix für eine Domain zuständig ist, wird durch den Check reject_unauth_destination geprüft. Wo dieser gesetzt wird ist eine Sache des Admins, es sollte jedoch sinnvollerweise vor der Prüfung des einzelnen Empfängers sein.
Mein Mailserver versorgt halt ein paar Domains, die auf der gleichen IP gehostet sind.
Das ist normal.
3. Spamfilter - da bin ich noch dabei.
Sehr wirksam: Greylisting. Hab's aber noch nicht eingerichtet.
Da gibt es viele Verfahren. Ich verwende ein selektives Greylisting, das nur Mails von Clients mit unbekannten oder dynamisch aussehenden Hostnamen ins Greylisting schickt. Ganz billig ist z.B. reject_non_fqdn_helo_hostname, was Clients abweist, die keinen vollständigen Hostnamen im HELO angeben. Die Fehlerquote ist auch sehr gering.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Du musst die Stelle finden, wo Postfix die Erlaubnis gegeben wird, für den wwwrun die Post zu akzeptieren. Hast Du überhaupt eine aliasdb bzw. eine alias_map?
local_recipient_maps für Domains in mydestination. Das zentrale How-To für Domains in Postfix ist: http://www.postfix.org/ADDRESS_CLASS_README.html Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
From: "Sandy Drobic"
On 28.11.2011 12:18, Daniel Bauer wrote:
[...] Ich hab es auch grad probiert: mail@domain.a wird immer noch angenommen, obwohl ich es expliziet als Kommentar in der aliases aufgeführt habe.
Ich gehe davon aus, dass dein Test falsch läuft. Wenn du intern aus dem Netz eine Mail schickst und in smtpd_recipient_restrictions = .... permit_mynetworks permit_sasl_authenticated reject_unauth_destination ... steht, dann wird die Mail angenommen, weil der Client im internen Netz steht. Die Frage ist eher: wird die Mail auch von einem externen Client abgewiesen?
Stelle mal als erstes einfach ein smtpd_recipient_restrictions = reject_unlisted_recipient permit_mynetworks permit_sasl_authenticated reject_unauth_destination
Dann sollte es auch von einem internen Client abgewiesen werden.
also das reject_unlisted_recipient hat gefehlt, leider sind IMHO die User aber gelistet durch die /etc/passwd und somit gehen die Mails doch durch, näheres unten in der Mail. Mein mynetworks ist nur localnet, da ich auch intern die User mit Authentifizierung betreibe. Desweiteren teste gerade immer von außerhalb mit meiner GMX Adresse. Wenn ich das mit dem von Dir beanstanden Paramter local_recipient_maps = $alias_maps mache funktioniert es, aber was ist dann dadurch falsch/unwartbar usw.
[...] Wenn es auch von einem externen Client funktioniert, dann komme ich ohne Ausgabe von "postconf -n" und dem Logauszug mit der Annahme der Mail nicht weiter.
Hier nun die gewünschten Ausgaben, bisher habe ich noch nicht allzu viel
konfiguriert um mich nicht zu verrennen.
postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
config_directory = /etc/postfix
home_mailbox = Maildir/
html_directory = /usr/share/doc/postfix/html
mail_name = mail.domain.a
mailbox_command = procmail -a "$EXTENSION"
mailbox_size_limit = 0
message_size_limit = 0
mydestination = domain.a, localhost.localdomain, localhost,
localhost.tld
myhostname = mail.domain.a
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = /usr/share/doc/postfix
recipient_delimiter = +
smtpd_recipient_restrictions = reject_unlisted_recipient,
permit_sasl_authenticated, permit_mynetworks,
reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain =
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions = permit_sasl_authenticated,
permit_mynetworks, reject_unauth_destination
smtpd_use_tls = no
virtual_alias_maps = hash://etc/postfix/virtual
Maillog:
Nov 28 15:02:17 mail postfix/smtpd[4132]: connect from
mailout-de.gmx.net[213.165.64.22]
Nov 28 15:02:17 mail postfix/smtpd[4132]: 3D453F1604F:
client=mailout-de.gmx.net[213.165.64.22]
Nov 28 15:02:17 mail postfix/cleanup[4134]: 3D453F1604F:
message-id=<...@gmx.net>
Nov 28 15:02:17 mail postfix/qmgr[3614]: 3D453F1604F:
from=<...@gmx.net>, size=1027, nrcpt=2 (queue active)
Nov 28 15:02:17 mail postfix/smtpd[4132]: disconnect from
mailout-de.gmx.net[213.165.64.22]
Nov 28 15:02:17 mail postfix/local[4136]: 3D453F1604F:
to=
Servus Helga,
From: "Helga Fischer"
Am Montag 28 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
Am Sonntag 27 November 2011 schrieb Daniel Bauer:
ich glaub ich seh den Wald vor lauter Bäumen nicht.
Ich möchte die Mails für
[...]
Ist vielleicht besser, wenn Du uns verrätst, was Dein Einsatzszenario überhaupt ist.
1. Authentifizierte Benutzer sollen Mails versenden können. Das klappt auch wunderbar.
2. Mails für alles in der virtual_alias_maps und alias_maps sollen angenommen werden. Das geht leider zu "gut" und wird wie beschrieben auch für jeden Systemuser angenommen.
Hmmm... Systembenutzer sind bei Dir welche? Normalerweise haben Datenbank, Postfix oder Nobody einen Sperraccount und besitzen damit keinen Useraccount. Normalerweise sollten sie daher auch keine Mails bekommen. root kann Mails annehmen, die von außen kommen. Darüber habe ich jedoch noch nie irgendeine Spammail bekommen.
z.B. wwwrun, mail usw.
Hier sind mal Auszüge aus meiner main.cf (KMail bricht halt an ein paar Stellen um)
smtpd_banner = $myhostname ESMTP biff = no
# appending .domain is the MUA's job. append_dot_mydomain = no
# Uncomment the next line to generate "delayed mail" warnings #delay_warning_time = 4h
myhostname = mailserver.domain.tld mydomain = domain.tld alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = $myhostname, $mydomain, localhost, localhost. $mydomain
mynetworks = 123.123.123.123, 127.0.0.0/8
hier steht bei mir nur localnet, da sich auch die internen Clients authentifizieren müssen ...
# Naechste Zeile dient der Spamabwehr ueber nicht-existente Subdomains parent_domain_matches_subdomains=
mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all
smtpd_delay_reject=yes
# Authentifizierung der Nutzer # saslauth einrichten; je nach Distri manchmal etwas zickig
smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous broken_sasl_auth_clients = yes
# Noch ein paar Schalter fuer Spamabwehr (sonstiges) smtpd_helo_required = yes
# smtp-helo-restrictions (Stufe 1 Spamabwehr) smtpd_helo_restrictions = permit_mynetworks, warn_if_reject, reject_unauth_pipelining, reject_invalid_hostname
# smtp-restrictions (Stufe 2 Spamabwehr) # Hier kann man alle Pruefungen eintragen
smtpd_sender_restrictions = permit_mynetworks, reject_unknown_sender_domain
# Die Schalter sorgen für die Abwehr von Spammern # Die halten sich halt nicht an die Regeln # Hier kann man sicher noch mehr machen smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination, reject_unauth_pipelining, reject_unlisted_recipient, reject_invalid_hostname
# Liste Weiterleitungen virtual_alias_maps = $virtual_alias virtual_alias_maps = hash:/etc/postfix/virtual_alias
# Liste der virtuellen Domains # Hier kann man, wenn man will, Catch-Alls einrichten # Nein, das will man nicht wirklich virtual_alias_domains = $virtual_domains virtual_alias_domains = hash:/etc/postfix/virtual_domains
[...]
Der Trick ist, die alias_map sorgt dafür, dass der Postfix erst da nachguckt, ob er den Benutzer kennt. Dann checkt er noch ab, ob er für die Domain zuständig ist.
Mein Mailserver versorgt halt ein paar Domains, die auf der gleichen IP gehostet sind.
3. Spamfilter - da bin ich noch dabei.
Sehr wirksam: Greylisting. Hab's aber noch nicht eingerichtet.
Bei fehlerhaften Benutzern z.B. xyz@domain.a funktioniert das auch schon, aber z.B. bei Systembenutzern nimmt Postfix die Mails an, z.B. wwwrun@domain.a und das will ich verhindern.
Du musst die Stelle finden, wo Postfix die Erlaubnis gegeben wird, für den wwwrun die Post zu akzeptieren. Hast Du überhaupt eine aliasdb bzw. eine alias_map?
Bei mir stehen alle Benutzer, die der Postfix bedienen soll, in der virtual_alias. Jede domain, für er zuständig ist, in der virtual_domain, was aber nicht zur Folge hat, dass er auch irgendeine beliebige Mail dieser domain akzeptiert.
Dazu ist er an eine IP gebunden.
Deswegen war meine Antwort relativ kurz.
kannst Du mir mal ein Beispiel senden, gerne auch per PM?
Kann ich machen, wenn's wirklich passt. Denn man kann unendlich viel Kram in einem Postfix-System konfigurieren.
das war mit dem " ich glaub ich seh den Wald vor lauter Bäumen nicht" gemeint.
Ah... OK. Das kann ich nachfühlen.
Wenn Du mehr postfix brauchst, dann gibt es nur eins: Peer Heinlein, »Das Postfix-Buch. Sichere Mailserver mit Linux«. Zum Buch gibt's auch eine gute Mailingliste.
ich hab das Buch, bin aber noch nicht auf der Mailingliste.
:)
So gut das Buch ist, so eine Mailservereinrichtung kann einem schon den Kopf zerbrechen lassen.
ich glaub, ich werd bevor das hier ausartet, nochmals das Buch lesen und es Schritt für Schritt durchgehen. Mich irritiert nur die Aussage von Sandy, daß die Lösung evtl. ungut ist: local_recipient_maps = $alias_maps denn damit würde es so funktionieren, wie ich mir das vorstellen. Herzlichen Dank Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 16:18, Daniel Bauer wrote:
From: "Sandy Drobic"
On 28.11.2011 12:18, Daniel Bauer wrote:
[...] Ich hab es auch grad probiert: mail@domain.a wird immer noch angenommen, obwohl ich es expliziet als Kommentar in der aliases aufgeführt habe.
Ich gehe davon aus, dass dein Test falsch läuft. Wenn du intern aus dem Netz eine Mail schickst und in smtpd_recipient_restrictions = .... permit_mynetworks permit_sasl_authenticated reject_unauth_destination ... steht, dann wird die Mail angenommen, weil der Client im internen Netz steht. Die Frage ist eher: wird die Mail auch von einem externen Client abgewiesen?
Stelle mal als erstes einfach ein smtpd_recipient_restrictions = reject_unlisted_recipient permit_mynetworks permit_sasl_authenticated reject_unauth_destination
Dann sollte es auch von einem internen Client abgewiesen werden.
also das reject_unlisted_recipient hat gefehlt, leider sind IMHO die User aber gelistet durch die /etc/passwd und somit gehen die Mails doch durch, näheres unten in der Mail.
Postfix prüft die recipient_maps automatisch am Ende der smtpd_recipient_restrictions. mit reject_unlisted_recipients kann man diese Prüfung jedoch vorziehen, wenn man z.B. vor aufwendigen Checks erst klären will, ob die Mail überhaupt angenommen werden kann. Warum Greylisten, wenn die Mail ohnehin abgewiesen wird, weil der Empfänger ungültig ist? Ja, bei der Konfiguration kann man nur noch eine Blacklist einsetzen, welche die entsprechenden Accounts blockt. Du kannst dies entweder manuell machen (sollte für den Anfang reichen) oder ein Script schreiben, welche die /etc/passwd ausliest und die Accounts mit uid < 1000 in diese Blacklist nimmt.
Mein mynetworks ist nur localnet, da ich auch intern die User mit Authentifizierung betreibe.
Desweiteren teste gerade immer von außerhalb mit meiner GMX Adresse.
Wenn ich das mit dem von Dir beanstanden Paramter local_recipient_maps = $alias_maps mache funktioniert es, aber was ist dann dadurch falsch/unwartbar usw.
[...] Wenn es auch von einem externen Client funktioniert, dann komme ich ohne Ausgabe von "postconf -n" und dem Logauszug mit der Annahme der Mail nicht weiter.
Hier nun die gewünschten Ausgaben, bisher habe ich noch nicht allzu viel konfiguriert um mich nicht zu verrennen.
postconf -n alias_database = hash:/etc/aliases alias_maps = hash:/etc/aliases append_dot_mydomain = no biff = no broken_sasl_auth_clients = yes config_directory = /etc/postfix home_mailbox = Maildir/ html_directory = /usr/share/doc/postfix/html mail_name = mail.domain.a mailbox_command = procmail -a "$EXTENSION" mailbox_size_limit = 0 message_size_limit = 0 mydestination = domain.a, localhost.localdomain, localhost, localhost.tld myhostname = mail.domain.a mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 myorigin = /etc/mailname readme_directory = /usr/share/doc/postfix recipient_delimiter = + smtpd_recipient_restrictions = reject_unlisted_recipient, permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous smtpd_sender_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination smtpd_use_tls = no virtual_alias_maps = hash://etc/postfix/virtual
/etc/postfix/reject_internal_accounts: wwwrun 550 invalid recipient # "postmap /etc/postfix/reject_internal_accounts" nicht vergessen (^-^) /etc/postfix/main.cf: smtpd_recipient_restrictions = check_recipient_access hash://etc/postfix/reject_internal_accounts reject_unlisted_recipient permit_sasl_authenticated, permit_mynetworks reject_unauth_destination Für deine augenblickliche Konfig würde dies bedeuten, dass auch Mails von authentifizierten Clients an ungültige interne Empfänger direkt abgewiesen werden und nicht erst angenommen und später gebounced. Dann sollte der Spuk vorbei sein. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo Daniel, Am Montag 28 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
[...] So gut das Buch ist, so eine Mailservereinrichtung kann einem schon den Kopf zerbrechen lassen.
ich glaub, ich werd bevor das hier ausartet, nochmals das Buch lesen und es Schritt für Schritt durchgehen. Mich irritiert nur die Aussage von Sandy, daß die Lösung evtl. ungut ist:
Tja... Sandy ist, was postfix angeht, ein richtiger Experte! Ich würde auf ihn hören.
local_recipient_maps = $alias_maps
denn damit würde es so funktionieren, wie ich mir das vorstellen.
Bestimmt übersehen wir alle was. Helga -- ## Technik: [http://de.opensuse.org] ## Politik: [http://www.piratenpartei.de] ## Privat: [http://www.eschkitai.de] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 17:06, Daniel Bauer wrote:
ich glaub, ich werd bevor das hier ausartet, nochmals das Buch lesen und es Schritt für Schritt durchgehen. Mich irritiert nur die Aussage von Sandy, daß die Lösung evtl. ungut ist:
local_recipient_maps = $alias_maps
denn damit würde es so funktionieren, wie ich mir das vorstellen.
Weil du damit auf manuelle Pflege der /etc/aliases angewiesen bist. Besser ist es, einmal die Systemaccounts zu sperren, dann musst du nicht für jeden neuen Mailuser manuell die Adresse in /etc/aliases eintragen. Deshalb bevorzuge ich als saubere Lösung: - Script, welches nachts per cron läuft und die /etc/passwd auswertet wenn Unterschiede gefunden werden: Mail an Admin mit diff-Ausgabe - local_recipients auf Default lassen. - reject_internal_accounts als Blacklist in smtpd_recipient_restrictions setzen. Damit hast du eine automatische Lösung, die du nicht weiter pflegen musst und nicht "gegen das Design" arbeitet. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 28.11.2011 17:25, Helga Fischer wrote:
Hallo Daniel,
Am Montag 28 November 2011 schrieb Daniel Bauer:
From: "Helga Fischer"
[...] So gut das Buch ist, so eine Mailservereinrichtung kann einem schon den Kopf zerbrechen lassen.
ich glaub, ich werd bevor das hier ausartet, nochmals das Buch lesen und es Schritt für Schritt durchgehen. Mich irritiert nur die Aussage von Sandy, daß die Lösung evtl. ungut ist:
Tja... Sandy ist, was postfix angeht, ein richtiger Experte! Ich würde auf ihn hören.
local_recipient_maps = $alias_maps
denn damit würde es so funktionieren, wie ich mir das vorstellen.
Bestimmt übersehen wir alle was.
Grins! Hand auf's Herz und beichten: wie oft macht man ein Backup, welches manuell aufgerufen werden muss? Es geht hier darum, die menschlichen Fehler auszuschalten, die bei zuviel manuell notwendigen Einträgen einfach immer wieder passieren. Was, wenn mal ein Kollege das System warten muss im Urlaub? Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hi Sandy,
From: "Sandy Drobic"
On 28.11.2011 16:18, Daniel Bauer wrote:
also das reject_unlisted_recipient hat gefehlt, leider sind IMHO die User aber gelistet durch die /etc/passwd und somit gehen die Mails doch durch, näheres unten in der Mail.
Postfix prüft die recipient_maps automatisch am Ende der smtpd_recipient_restrictions. mit reject_unlisted_recipients kann man diese Prüfung jedoch vorziehen, wenn man z.B. vor aufwendigen Checks erst klären will, ob die Mail überhaupt angenommen werden kann. Warum Greylisten, wenn die Mail ohnehin abgewiesen wird, weil der Empfänger ungültig ist?
das gefällt mir sogar sehr gut, ich will weder intern, noch extern "ungültige" Empfänger und das mit den aufwendigeren Prüfungen leuchtet mir absolut ein.
Ja, bei der Konfiguration kann man nur noch eine Blacklist einsetzen, welche die entsprechenden Accounts blockt. Du kannst dies entweder manuell machen (sollte für den Anfang reichen) oder ein Script schreiben, welche die /etc/passwd ausliest und die Accounts mit uid < 1000 in diese Blacklist nimmt.
das wäre kein Thema.
/etc/postfix/reject_internal_accounts: wwwrun 550 invalid recipient
# "postmap /etc/postfix/reject_internal_accounts" nicht vergessen (^-^)
bis hier ist es mir klar.
/etc/postfix/main.cf: smtpd_recipient_restrictions = check_recipient_access hash://etc/postfix/reject_internal_accounts
das verstehe ich jetzt aber leider nicht, müßte hier nicht was von reject stehen?
reject_unlisted_recipient permit_sasl_authenticated, permit_mynetworks reject_unauth_destination
Für deine augenblickliche Konfig würde dies bedeuten, dass auch Mails von authentifizierten Clients an ungültige interne Empfänger direkt abgewiesen werden und nicht erst angenommen und später gebounced.
Dann sollte der Spuk vorbei sein.
leider nicht, irgendwas läuft noch schief :( Ich werde mich jetzt erstmal nochmals in das Postfix Buch vergraben und nochmal neu beginnen. Danke Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
On 29.11.2011 18:11, Daniel Bauer wrote:
Ja, bei der Konfiguration kann man nur noch eine Blacklist einsetzen, welche die entsprechenden Accounts blockt. Du kannst dies entweder manuell machen (sollte für den Anfang reichen) oder ein Script schreiben, welche die /etc/passwd ausliest und die Accounts mit uid < 1000 in diese Blacklist nimmt.
das wäre kein Thema.
/etc/postfix/reject_internal_accounts: wwwrun 550 invalid recipient
# "postmap /etc/postfix/reject_internal_accounts" nicht vergessen (^-^)
bis hier ist es mir klar.
/etc/postfix/main.cf: smtpd_recipient_restrictions = check_recipient_access hash://etc/postfix/reject_internal_accounts
das verstehe ich jetzt aber leider nicht, müßte hier nicht was von reject stehen?
check_recipient_access wertet die Empfängeradresse gegen die Datei aus, welche angegeben wird. Ich habe hier jedoch vergessen, die komplette Adresse für wwwrun anzugeben. Also testen mit wwwrun@domain.tld 550 invalid recipient 5xx ist ein endgültiger reject-Code. Du kannst auch schreiben: wwwrun@domain.tld reject invalid recipient
reject_unlisted_recipient permit_sasl_authenticated, permit_mynetworks reject_unauth_destination
Für deine augenblickliche Konfig würde dies bedeuten, dass auch Mails von authentifizierten Clients an ungültige interne Empfänger direkt abgewiesen werden und nicht erst angenommen und später gebounced.
Dann sollte der Spuk vorbei sein.
leider nicht, irgendwas läuft noch schief :( Ich werde mich jetzt erstmal nochmals in das Postfix Buch vergraben und nochmal neu beginnen.
Teste mal die vollständige Adresse aus für wwwrun. Sandy -- Sandy Antworten bitte nur in die Mailingliste! PMs bitte an: news-reply2 (@)drobic (.) de -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
From: "Sandy Drobic"
On 29.11.2011 18:11, Daniel Bauer wrote:
[...]
/etc/postfix/main.cf: smtpd_recipient_restrictions = check_recipient_access hash://etc/postfix/reject_internal_accounts
das verstehe ich jetzt aber leider nicht, müßte hier nicht was von reject stehen?
check_recipient_access wertet die Empfängeradresse gegen die Datei aus, welche angegeben wird. Ich habe hier jedoch vergessen, die komplette Adresse für wwwrun anzugeben. Also testen mit
wwwrun@domain.tld 550 invalid recipient
5xx ist ein endgültiger reject-Code. Du kannst auch schreiben:
das funktioniert und gibt 550 zurück ...
wwwrun@domain.tld reject invalid recipient
auch das klappt und gibt 554 zurück ... Super, herzlichen Dank für Deine Hilfe Daniel -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (4)
-
Daniel Bauer
-
Helga Fischer
-
I.H.
-
Sandy Drobic