Am 28.06.13 schrieb Hubert Schölnast hubert@schoelnast.at:
Wandersmann schrieb am 28.06.13 12:34:
Wo ist da ein Widersprüch.
Ich erkläre es dir gerne nochmal:
Tatsache 1:
Ich darf die Domains firstdomain.at, seconddomain.at und thirddomain.at nicht zugleich in virtual_alias_domains und virtual_mailbox_domains eintragen. Folgendes ist also falsch:
In main.cf: virtual_alias_domains = firstdomain.at, seconddomain.at, thirddomain.at virtual_mailbox_domains = firstdomain.at, seconddomain.at, thirddomain.at
Darin stimmen wir überein, daran habe ich nie gezweifelt, und mir wäre es sehr lieb, wenn wir darüber nicht weiter diskutieren würden, denn da waren wir uns immer schon einig.
Sehr schön.
Tatsache 2:
Ich bin "der MX" der drei genannten Domains und es gibt in allen drei Domains gültige E-Mail-Adressen, die an andere E-Mail-Adressen weitergeleitet werden sollen (alle Ziele gehören ebenfalls zu diesen drei Domains).
Das MX kannst du mal außer acht lassen. Deine email kommt am Server an. Sie wird dort entweder von einem anderen Server dahingeschickt, z.B. weil Dein Server als MX im DNS steht oder aufgrund irgendwelcher anderer Weiterleitungen oder Zustellungen.
Für Postfix ist zunächst einfach nur wichtig, was er damit machen soll.
Das Weiterleiten wird mit Hilfe von virtual_alias_maps erledigt,
Unter anderem. Zunächst geht es erstmal um 2 Dinge: a) Soll der Server eine Email an diese DOMAIN überhaupt annehmen? (virtual_mailbox_domains, virtual_alias_domains) wenn a)=JA dann b) habe ich überhaupt eine Adresse zum zustellen? (virtual_alias_maps, virtual_mailbox_maps).
Wenn a) und b) = JA dann zustellen (virtual_mailbox_maps, virtual_alias_maps)
Beispiel, ich habe einen Server dem ich intern einen Namen zur Verwaltung gegeben habe z.B.: verwaltungsnetzwerk.de Und ich habe einige normale Domains z.B. normaledomain.de. Im DNS der normalendomain.de Domains steht nun als MX aber der Mailserver von verwaltungsnetzwerk.de drin.
Daher habe ich in main.cf: mydestination = verwaltungsnetzwerk.de
Da die User alle virtuell sind (das habe ich mit DBMail gelöst): virtual_mailbox_domains = normaledomain.de
Für die Postfächer: virtual_mailbox_maps = mysql:/etc/postfix/mysql-mailboxes.cf
Zur Klärung:
damit Postfix bei einer Adresse aus einer bestimmten Domain aber überhaupt in virtual_alias_maps nachsieht, muss die Domain dieser Adresse in virtual_alias_domains eingetragen sein. Da das bei allen drei Domains der Fall ist, muss ich also zwingend in main.cf das eintragen:
virtual_alias_domains = firstdomain.at, seconddomain.at, thirddomain.at
Das brauchst Du, wenn Du, so steht es im "Purpose", lokale Unix-Benutzer hast die nun Emails empfangen sollen und/oder weiterzuleitende Emails ankommen, z.B. an eine Adresse bei Google
Und wie heißt es so schön im Manual: There is no mail delivery transport parameter. Every address must be aliased to some other address.
In virtual_alias_maps wird auch nachgeschaut wenn die Domain in virtual_mailbox_domains steht. Weil, ganz einfach, es mag ja auch z.B. Systembenutzer geben die keine virtuellen Postfächer haben sondern lokale Accounts.
Hier das Manual: http://www.postfix.org/VIRTUAL_README.html#virtual_mailbox
Tatsache 3:
Alle E-Mail-Empfänger sind virtuelle User. Die Empfänger-E-Mail-Adressen müssen also in virtual_mailbox_maps eingetragen sein. Damit Postfix bei einer Adresse aus einer bestimmten Domain aber überhaupt in virtual_mailbox_maps nachsieht, muss die Domain dieser Adresse in virtual_mailbox_domains eingetragen sein. Da das bei allen drei Domains der Fall ist, muss ich also zwingend in main.cf das eintragen:
virtual_mailbox_domains = firstdomain.at, seconddomain.at, thirddomain.at
Die Tatsachen 2 und 3 ergeben zusammen also einen zwingenden Grund, folgendes in main.cf einzutragen: virtual_alias_domains = firstdomain.at, seconddomain.at, thirddomain.at virtual_mailbox_domains = firstdomain.at, seconddomain.at, thirddomain.at
Das widerspricht aber der Tatsache 1, die wird bereits außer Streit gestellt haben. Also muss in der Tatsache 2 oder der Tatsache 3 ein Fehler sein. Ich weiß aber nicht wo, und weiß nicht was der Fehler ist. Und genau hier benötige ich Hilfe.
Wenn da ein Fehler ist kann es ja wohl keine Tatsache sein. Der Fehler war übrigens in 2.
Virtual aliasing solves one problem: it allows each domain to have its own info mail address. But there still is one drawback: each virtual address is aliased to a UNIX system account. As you add more virtual addresses you also add more UNIX system accounts. The next section eliminates this problem. [virtual_mailbox siehe link oben]
Also, nimm virtual_mailbox_domains... dann klappts. Für virtual_alias_domains hast Du keine Verwendung.
virtual_alias_maps kannst du trotzdem verwenden. Ich nehme dafür aber lieber die eingebauten Möglichkeiten von DBMail. Dadurch dass das ganze System eh auf Datenbankbasis läuft ist jede Map automatisch in Postfix aktuell und da DBMail selber die Weiterleitungen verwaltet braucht man Postfix nicht mehr umzukonfigurieren.
Gruß, Anniyka Wandersmann