Das hier soll mir in erster Linie als Gedächtnisstütze dienen, andere können es auch gerne als Tutorial nutzen.

Worum gehts: Habe einen Server mit Open-Exchange drauf, und nun soll Postfix und Dovecot so konfiguriert werden das Mails angenommen und versendet werden. Die Logindaten usw. sollen von Openexchange genommen werden.

Howtoquellen:

  1. Installation Open-Exchange
  2. Anleitung Postfix Dovecot

Idee: Ich erzeuge mir aus der Open-Exchange Datenbank mittels views die Tabellen die ich für Postfix/Dovecot benötige. Die binde ich dann entsprechend ein.

1. Postfix_domains

# mysql> CREATE VIEW postfix_domains AS SELECT DISTINCT RIGHT(mail,LENGTH(mail)-INSTR(mail,"@")) AS domain FROM user WHERE imapServer='imap://localhost' ;

Es wird in unter den Usereinstellungen gesucht, welche User auf den lokalen imap-Server verbinden. Bei den dazugehörigen Domains gehe ich davon aus, daß der Mailserver für sie zuständig ist.

Die mysql-virtual-mailbox-domains.cf sieht dann entsprechend aus:

user = mailuser
password = mailuser2007
hosts = 127.0.0.1
dbname = oxdatabase_6
query = SELECT 1 FROM postfix_domains WHERE domain='%s'

Als drittes sollten wir dem mailuser noch Leserechte auf die Tabelle geben:

#mysql> GRANT SELECT ON oxdatabase_6.postfix_domains TO mailuser@localhost IDENTIFIED BY 'mailuser2007' ;

2. postfix_users

mysql> CREATE VIEW postfix_users AS SELECT mail AS email ,userPassword AS password FROM user WHERE imapServer='imap://localhost' ;

/etc/postfix/mysql-virtual-mailbox-maps.cf


user=mailuser
password = mailuser2007
hosts = 127.0.0.1
dbname = oxdatabase_6
query = SELECT 1 FROM postfix_users WHERE email='%s'

RECHTE:
GRANT SELECT ON oxdatabase_6.postfix_users TO mailuser@localhost IDENTIFIED BY 'mailuser2007' ;

Die Weiterleitungstables hab ich mal weggelassen. Bis jetzt brauch ich sie noch nicht. Und mal schauen vielleicht kommt dabei ja auch ein zweiter Teil raus.

Dann das Tutorial weiter abarbeiten, dabei bei Datenbankzugriffen drauf achten dir richtigen Daten zu nehmen.

UND GANZ WICHTIG: /etc/dovecot/dovecot-sql.conf

driver = mysql
connect = host=127.0.0.1 dbname=oxdatabase_6 user=mailuser password=mailuser2007
default_pass_scheme = SHA
password_query = SELECT email as user, password FROM postfix_users WHERE email='%u';

Amavis und Spamassasin stehen noch nicht. Da muss ich später nochmal schauen.

Auf jeden Fall läufts so momentan mit etch und OX 6.6