Hallo, Am Mon, 23 Jul 2012, Sandy Drobic schrieb:
Am 23.07.2012 12:43, schrieb David Haller:
Äh, ja, wir haben beide was ausgelassen ...
Ich hab den Fall ausgelassen (bzw. nicht dran gedacht), daß man direkt an den MX der Zieldomain ausliefert falls kein Smarthost definiert ist (per relayhost in der main.cf oder in der transport:
Grins! Wenn man alle Fälle berücksichtigen möchte, schreibt man Romane. Ich bin dafür, dass unser OP mal sagt, ob er Mails nur an sich selbst (interner Mailserver oder externes Postfach) schickt oder ob Mails auch an externe Mailserver wie GMX und Web.de geschickt werden.
Äh, schon extern, davon kann man IMO ausgehen.
==== /etc/postfix/transport ==== # and specify a wildcard for all other destinations. [..] # * smtp:outbound-relay.my.domain ====
BTW: AFAIK müsste (zumindest ist das bei sendmail so) auch '.', also die root des DNS, als Zielspezifikation statt '*' gehen ;)
Zu Sendmail kann ich nichts sagen, da ich mich auf Postfix eingeschossen habe.
Ist aber ja ne Postfix-Frage: da '.' eine gültige Domain ist, müßte Postfix die genauso wie z.B. .de. oder foo.de. in der transport in der ersten Spalte akzeptieren. Was die gleiche Wirkung hätte wie der '*' dort, aber eben auch wie der '.' in sendmail's /etc/mail/mailertable an gleicher Stelle (die bei AFAIK fast gleicher Syntax das gleiche macht wie postfix' transport (AFAIR erlaubt sendmail keinen local-Part in der ersten Spalte also user@domain.tld.)).
Wenn weder das eine (relayhost = ... / '* smtp:...' in der transport) definiert sind liefert postfix alles, was nicht in der transport anderweitig umgeleitet wird direkt an den MX der jew. Domain (siehe z.B. 'dig mx [subdomains.]domain.tld'[1]).
Postfix folgt dem RFC2821, wo zuerst im DNS nach dem zuständigen MX der Zieldomain gesucht wird oder, wenn MX nicht gesetzt, nach einem A-Eintrag der Domain.
Nur, wenn ein Eintrag in der transport_maps gesetzt wurde oder ein Relayhost definiert ist, wird dies übersteuert.
Du sagst das gleiche wie ich, nur andersrum ;) - zuerst wird in transport geguckt ob was passt (je spezifischer, desto "besser") - falls dort (inkl. Wildcards, s.o., womit sich ein Smarthost definieren läßt) nix passendes gefunden wird, wird die Variable relayhost konsultiert (aus main.cf, ist Definition eines Smarthosts) - falls sich auch dort nix findet wirft postfix sein "dig mx" an und frag per DNS wer der MX für die Domain ist und ab geht die Mail direkt an den MX der jew. Empfänger-Domain Falls man das versenden direkt an den MX nicht wünscht (weil man an ner Dyn-IP hängt, und s. Sandy unten ...), kann man entweder in der transport per wildcard '*', oder per 'relayhost = ' Variable in der main.cf einen sog. "Smarthost" beim eigenen (Mail-)Provider definieren. Meiner ist z.B. mail.$mydomain beim Hoster der Domain wo ich mich per SMTP-Auth authentifiziere ... Bei der Telekom kann das AFAIK immer noch über die Einwahl selber authentifiziert werden ;)
Sandy hat ausgelassen, wo und wozu man einen Smarthost definiert und hat sich ganz auf den Fall "weder relayhost noch wildcard in der transport gesetzt", also den daß direkt an den MX[1] ausgeliefert wird konzentriert.
Ich bin vom "dial-up" ausgegangen, wo man fast immer nen Relay braucht um seine Mail loszuwerden, Sandy wohl eher von nem Server mit fester Anbindung und IP, dessen Mail normalerweise von anderen MXen angenommen wird und wo man das "direkt an den MX" daher durchaus konfigurieren kann... Als ONU, der am DSL ohne feste IP hängt und von seiner Linuxkiste Mails rausschicken will wäre das "direkt an MX" masochistisch ...
Hatte ich vor etlichen Jahren mal durchexerziert, aber sehr bald ernüchtert aufgegeben. Heute ist es außer für Spezialaufgaben praktisch unmöglich, einen Mailserver auf einer dynamischen IP zu betreiben.
Zumindest ohne einen Smarthost für die ausgehende Mail ;)
-dnh, hoffend nix falsch erklärt zu haben, da zwar firm bei SMTP, aber nicht bei Postfix. Sandy hat den Thread zum Glück offenbar gefunden, wird mich also ggfs. hoffentlich korrigieren :)
Bisher keine Ursache. (^-^)
Wunderbar :)
PS@Sandy: Ui, ich hab glaub auch das mit den Ausnahmen für $mydomain kapiert, scheint jedenfalls zu funktionieren. echo "" | mutt -s "" user -> lokal, wie gewünscht echo "" | mutt -s "" user@$mydomain -> smtp, dito dank: user@$mydomain smtp:mail.$mydomain in der transport wobei mail.$mydomain der MX für $mydomain ist (und mail.$mydomain wird intern nicht als hostname verwendet) ;) Muß ich die Tage aber mal "in echt" und nicht nur bis zur mqueue testen.
Frage einfach, wenn etwas unlogisch erscheint in der Konfig.
Öh, im Moment läuft alles prima. Aber vermutlich ist das ein oder andere etwas seltsam konfiguriert. Ich mail dir vielleicht mal meine 'postconf -n' Ausgabe und die master.cf/transport (ohne Kommentare) o.ä. halt was weder default noch in 'postconf -n' drinsteht. Mal schauen. Vielleicht. Es läuft ja :)
[1] z.B. für deine Mail: $ dig mx gmx.de [..] Allerdings, je nachdem wie die beiden MX konfiguriert sind, nehmen die MXe Mail von Dial-Up-IPs erst gar nicht an, ergo muß man da nen "relayhost" verwenden (das muß nicht der des Providers sein ;)
GMX ist da ziemlich rabiat. Die Unterbrechen sogar die SMTP-Verbindung direkt, wenn eine Dynamische IP versucht, sich zu verbinden, ohne erst wie sonst üblich bis zum RCTP TO zu gehen. Postfix in früheren Versionen hat da etwas verdrossen drauf reagiert.
Eben. *gwärks*. Daher geh ich halt auch erstmal davon aus, daß da ein "Smarthost" involviert ist. Wenn sich die Frage auf so eine "Smarthost" bezieht sollte das eigentlich auch aus der Fragestellung hervorgehen ;) -dnh -- Die Menschen sagen, der Weg zur Hölle sei mit guten Vorsätzen gepflastert. Wieso? Denken sie etwa, es gäbe einen Mangel an schlechten Vorsätzen? -- Karm'Luk P'an Ku, "Die Freude der Klarheit", n.C. 8633 -- Andromeda 1x15 - Forced Perspective -- 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