Virtual domains mit Postfix/Cyrus IMAP - Verständnisproblem
So, ich hab mal wieder eine umfangreichere Frage an die versammelte kundige Leserschaft: Gegeben sei ein Server mit Suse 9.2, darauf laufend Postfix und Cyrus IMAP in den mitgelieferten Versionen. Auf dem Server sollen mehrere Domains mailtechnisch wie auch webserverseitig gehostet werden. Letzteres ist kein Problem, klar. Ersteres normalerweise auch nicht, wenn ich einfach die Einträge in der virtual-map selbst pflege. Nun soll aber das Ganze so eingerichtet werden, dass Besitzer einiger der auf dem Server gehosteten Domains ihre Emailkonten selbst verwalten können. Dazu brauchte ich ein wie auch immer geartetes Tool, welches die virtual-maps bearbeitet, aber dem Benutzer halt nur administrativen Zugriff auf seine eigenen Postfächer gestattet. Das habe ich mit Tequila (http://www.holgilein.de/coolprox/tequila/tequila_de.html) auch gefunden. Die Einrichtung dieses Toolsets ist trivial, nur funktioniert es halt nicht ganz so schön, wie ich mir das erhofft hatte. Kurze Einführung: Tequila pflegt im Grunde 3 Dateien für Postfix, nämlich eine summary_aliases, eine summary_virtual und eine summary_domains. Selbige soll man in die Postfix-Konfiguration einfügen. Ausserdem pflegt Tequila die sasldb und erstellt Cyrus-Postfächer. Da dieses Tool darauf ausgelegt ist, Benutzer nicht als Systembenutzer, sondern als SASL-Accounts anzulegen, habe ich in der /etc/imapd.conf und in /usr/lib/sasl2/smtpd.conf den Eintrag "pwcheck_method: saslauthd" in "pwcheck_method: auxprop" geändert (zugegebenermassen ohne recht zu wissen, warum, sondern einfach deswegen, weil das in der Anleitung so beschrieben war). Seitdem kann ich schon mal Mails an Systembenutzer nicht mehr zustellen, weil sie für Postfix nicht mehr bekannt sind. Das wäre die erste Frage: wie kann ich Postfix eine "Mischung" aus virtuellen Benutzern (in der sasldb) und Systembenutzern bekannt machen, so dass Mails an z.B. root noch zugestellt werden und ich nicht einen Alias von root auf root@hosted-domain.de setzen muss? Gut, dieses Problem habe ich wie erwähnt bisher durch setzen eines Alias umschifft, aber das nächste Problem konnte ich bisher nicht lösen. Nach der Dokumentation auf postfix.org sollen in virtual_alias_domains die Alias-Domains stehen, und selbige sollen auch _keinesfalls_ in mydestination nochmals aufgeführt werden. Wenn ich das so mache, entsteht eine mail forwarding loop, was laut Dokumentation genau dann passieren kann, wenn man vergisst, die Virtual Alias Domains mit virtual_alias_domains bekanntzumachen. (Zitat: " the virtual_alias_domains setting tells Postfix that example.com is a so-called virtual alias domain. If you omit this setting then Postfix will reject mail (relay access denied) or will not be able to deliver it (mail for example.com loops back to myself)). Wenn ich jetzt den Kardinalfehler begehe, virtual_alias_domains zusätzlich noch als mydestination anzugeben (was dann auch in den Logfiles sofort bemeckert wird), dann geht der gesamte Mailverkehr aber plötzlich und unerwarteterweise. Ich füge jetzt hier mal _auszugsweise_ Konfigurationseinstellungen an: --- /etc/postfix/main.cf ------------------------------------------- myhostname = inetsrv.domain.de masquerade_domains = $mydomain, $virtual_alias_domains mydestination = $myhostname, $virtual_alias_domains <- siehe oben! mailbox_transport = lmtp:unix:/var/lib/imap/socket/lmtp alias_maps = hash:/etc/aliases, hash:/opt/tequila/domains/postfix/summary_aliases virtual_alias_domains = hash:/opt/tequila/domains/postfix/summary_domains virtual_alias_maps = hash:/opt/tequila/domains/postfix/summary_virtual --- /etc/imapd.conf ------------------------------------------------ sasl_pwcheck_method: auxprop defaultdomain: domain.de unixhierarchysep: yes virtdomains: userid umask: 027 --- /opt/tequila/domains/postfix/summary_domains ------------------- hosted-domain.de virtual domain.de virtual --- /opt/tequila/domains/postfix/summary_virtual ------------------- info@hosted-domain.de info~hosted-domain.de root@domain.de root~domain.de --- /opt/tequila/domains/postfix/summary_aliases ------------------- info~hosted-domain.de: hosted-domain.de!info root~domain.de: domain.de!root -------------------------------------------------------------------- inetsrv:~ # cyradm --user cyrus localhost IMAP Password:localhost> localhost> lm user/info@hosted-domain.de (\HasNoChildren) user/root (\HasNoChildren) -------------------------------------------------------------------- inetsrv:~ # sasldblistusers2 root@domain.de: userPassword root@inetsrv: userPassword info@hosted-domain.de: userPassword -------------------------------------------------------------------- Wenn ich das richtig verstanden habe, werden die Mails an die virtuellen User user@domain.de an die lokalen Benutzer user~domain.de umgesetzt, welche dann wiederum durch die Zuordnung in der aliases-Datei an domain.de!user weitergeleitet werden. Dadurch landen sie, warum verstehe ich übrigens auch nicht, in den Cyrus-Postfächern. Die heissen doch eigentlich ganz anders, z.B. eben auch user@hosted-domain.de? Wieso landen die an hosted-domain.de!user ausgelieferten Mails trotzdem in seinem Postfach? Fragen über Fragen. Sollten noch Auszüge aus Logfiles gewünscht werden, reiche ich die gern nach, bisher ist aber die Mail meines Meinung nach lang genug. :D Ich hoffe, dass mir einer weiterhelfen kann. Bin echt ratlos, sogar fast rudi ratlos. ;) -- Es sagte einmal einer / Zu den Steinen: / Werdet menschlicher. Da sagten die Steine: / Wir sind noch nicht / Hart genug. (Erich Fried)
participants (1)
-
Johannes Studt