[Postfixbuch-users] PostfixAdmin

Kai Fürstenberg postfix at fuerstenberg.ws
Fr Nov 10 07:24:01 CET 2006


Manuel Bender schrieb:
> Hallo Georg, hallo Liste,
>
>>
>> qpopper kann nicht mit virtuellen Postfächern umgehen, nur mit 
>> Systemusern.
>> Also entweder per Alias die Mails zu einem lokalen User leiten oder 
>> statt
>> qpopper zB Courier einsetzen.
> Würd es so funktionieren:
> Virtuelle User mit virtual_maps anlegen (mit dem Kommand postmap)
> Über Aliase (kommando postalias) die virtuellen User an einen (oder 
> mehreren) systemuser weiterleiten??
> Wie sieht das Kommando für die postalias datei aus das einen 
> virtuellen Alias auf einen Systemuser weiterleitet?
Zunächst mal: User werden in Tabellen angelegt, nicht mit den 
angegebenen Kommandos.
Postmap wandelt eine Tabelle ins Berkeley-Format um, damit Postfix 
darauf zugreifen kann.
Genau das gleiche macht postalias aber halt mit der Aliases-Tabelle.
Aber das, was du vorhast, geht:
Du legst erst mal die Domains an, z.B. in /etc/postfix/virtual_domains 
(im Bedarfsfall diese Datei neu anlegen):
domain1.tld     anything
domain2.tld     egal
(was genau in der zweiten Spate steht ist völlig egal. Diese Spalte muss 
nur vorhanden sein).

Dann legst du z.B. in /etc/postfix/virtual_users die Email-Adressen an 
(im Bedarfsfall diese Datei neu anlegen):
email1 at domain1.tld     local_user1 at localhost.localdomain
email2 at domain1.tld     local_user2 at localhost.localdomain
email1 at domain2.tld     local_user3 at localhost.localdomain
email2 at domain2.tld     local_user1 at localhost.localdomain

Du siehst, dass local_user1 zwei E-Mail-Adressen hat, die aber in eine 
Mailbox gehen sollen.

Local_user1-3 sind System-User. Wenn diese genau so im System angelegt 
sind (mit useradd), brauchst du die /etc/aliases auch nicht anpassen und 
auch kein postalias ausführen. Wenn aber z.B. mail, die an root 
adressiert ist, an local_user2 gehen soll, dann kommt in die /etc/aliases:
root:     local_user2
rein.
Dann must du auch postalias anwenden.
Eine Urlaubsabwesenheit könnte auch so geregelt werden (der User kann es 
allerdings nicht selbst):
local_user1:     local_user3
Die Mail die eigentlich an local_user1 gehen soll, geht dann an local_user3.
Aber jedesmal: postalias.

Was bemerkt? In der /etc/aliases ist immer ein Doppelpunkt hinter dem 
Benutzernamen der umgeschrieben werden soll, ich den anderen Tabellen 
nicht, ist aber richtig so.

Jetzt passt du /etc/postfix/main.cf an:
mydestination = localhost.localdomain, localhost
virtual_alias_domains = hash:/etc/postfix/virtual_domains
virtual_alias_maps = hash:/etc/postfix/virtual_users

Jetzt müssen
die obigen beiden Dateien virtual_users und virtual_domains noch ins 
Berkeley Datenbankformat konvertiert werden:
postmap /etc/postfix/virtual_users
postmap /etc/postfix/virtual_domains

Danach findest du in /etc/postfix zwei neue Dateien:
virtual_domains.db
virtual_users.db

Genau dies sind die Dateien mit denen Postfix arbeiten kann. Trotzdem 
werden in der main.cf die Dateinamen _ohne_ das .db angegeben.

Wenn diese Listen sehr übersichtlich sind, kannst du auch alles in eine 
Tabelle reinschreiben:
z.B. /etc/postfix/virtual:
domain1.tld     anything
domain2.tld     anything
email1 at domain1.tld     local_user1 at localhost.localdomain
email2 at domain1.tld     local_user2 at localhost.localdomain
email1 at domain2.tld     local_user3 at localhost.localdomain
email2 at domain2.tld     local_user1 at localhost.localdomain

Dafür dann in Main.cf:
virtual_alias_domains = hash:/etc/postfix/virtual
virtual_alias_maps = hash:/etc/postfix/virtual

Gleiches Spiel dann mit postmap.

So, das grenzt ja fast an ein HowTo.
Für die weiteren Einstellungen (auch obige müssen noch ein wenig 
angepasst werden) empfehe ich als Bettlektüre:
Das Buch von Peer
Das Buch von Ralf (muss ich zugeben, hab ich selbst nicht :-( )
http://www.postfix.org/BASIC_CONFIGURATION_README.html
http://www.postfix.org/VIRTUAL_README.html
http://www.postfix.org/SASL_README.html (ganz wichtig, sonst gibt es 
eine Spamschleuder mehr)
http://www.postfix.org/TLS_README.html (eventuell)
http://www.postfix.org/MYSQL_README.html (falls du irgendwann die User 
und Domains über MySQL verwalten willst)
.. und natürlich "man 5 postconf", bzw. 
http://www.postfix.org/postconf.5.html

Gruß
Kai



Mehr Informationen über die Mailingliste Postfixbuch-users