vexim mit dovecot

vexim ist ein ziemlich gutes mail system
mit mysql backend. bedingt durch die einschränkungen die man mit mysql hat,
ist es sehr zu empfehlen wenn ein admin die möglichkeit sucht seinen usern
freiheit in der mailkonfiguration zu geben und ihnen keinen shell zugriff
geben will bzw. nicht jede änderung händisch einpflegen will. leider wird auf
der vexim webseite nicht näher darauf eingegangen wie man
dovecot als imap/pop3 server benutzen kann, da ich
gerade einmal wieder ein kleines mailsystem einrichte und hier mit dovecot
einen sehr ressourcen schonenden imap server einsetzen wollte, dessen
konfiguration ich ausserdem auch noch sehr gut kenne, gibt es jetzt die
passenden einstellungen um dovecot mit vexim einzusetzen. das ganze ist auf
einem debian etch system gebaut und sollte aber auch mit nur ein paar pfad
anpassungen auch auf allen anderen systemen laufen. die pakete dovecot-
common
und dovecot-imapd sind zu installieren, will man imap nutzen. die
konfiguration ist unter /etc/dovecot/dovecot.conf zu finden und sollte
ungefähr so ausschauen.

protocols = imap imaps
log_timestamp = "%Y-%m-%d %H:%M:%S "
ssl_cert_file = /etc/ssl/CHANGE.crt
ssl_key_file = /etc/ssl/CHANGE.key
login_user = dovecot
mail_location = /usr/local/mail/%d/%n/Maildir
mail_extra_groups = vexim
first_valid_uid = 90
last_valid_uid = 90
first_valid_gid = 90
last_valid_gid = 90
auth default {
  mechanisms = plain
  passdb sql {
    args = /etc/dovecot/dovecot-sql.conf
  }
  userdb sql {
    args = /etc/dovecot/dovecot-sql.conf
  }
  user = root
}

wobei natürlich jeder evtl. noch das ganze an seine gegebenheiten anpassen
sollte. die mail_location muss angepasst werden, wenn die maildir
verzeichnisse an einer anderen stelle liegen. dann geht es an das eigentlich
spannende, die konfiguration das der dovecot auf die datenbank von vexim
zugreifen kann. die /etc/dovecot/dovecot-sql.conf sollte mindestens so
ausschauen, damit der zugriff erfolgen kann.

driver = mysql
connect = host=localhost user=CHANGE password=CHANGE dbname=CHANGE
default_pass_scheme = PLAIN
password_query = SELECT clear as password FROM users WHERE username = '%u' AND type = 'local'
user_query = SELECT smtp as maildir, uid AS uid, gid AS gid FROM users WHERE username = '%u' AND type = 'local'

in beiden configurations auszügen sollte CHANGE durch die hier richtigen
werte ersetzt werden. so funktioniert es bei mir und evtl. hat ja noch jemand
ergänzungen dazu. die besonderheiten mit vexim in der versin 2.2.1 wie es
derzeit aktuell ist, werde ich noch einmal gesondert behandeln.

{% include JB/setup %}