openMM Wheezy/Squeeze Installation
Installieren Sie zunächst ein Debian Wheezy/Squeeze mit dem Netinst-ISO und melden Sie sich anschließend als root-Benutzer am System an.
aptitude update
aptitude dist-upgrade
aptitude install ssh
aptitude install postfix postfix-mysql
Wählen Sie bei der Konfiguration "Internet Site".
aptitude install mysql-server
aptitude install phpmyadmin mutt unzip less sudo telnet php5-curl
aptitude install dovecot-imapd dovecot-lmtpd dovecot-mysql dovecot-sieve
Datenbank
Erstellen Sie einen MySQL-Benutzer mit Datenbank:
mysql -uroot -p -e "CREATE USER 'openmm'@'localhost' IDENTIFIED BY 'Zpaqkxtt8n0lafm';
GRANT USAGE ON * . * TO 'openmm'@'localhost' IDENTIFIED BY 'Zpaqkxtt8n0lafm' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
CREATE DATABASE IF NOT EXISTS openmm;
GRANT ALL PRIVILEGES ON openmm . * TO 'openmm'@'localhost';"
Geben Sie das MySQL-root-passwort ein, um den Befehl auszuführen.
openMM
Installieren Sie openMM nach /var/www/openMM und geben Sie im Installation-Plugin an:
- Host: localhost
- Benutzer: openmm
- Passwort: Zpaqkxtt8n0lafm
- Datenbank: openmm
Bei der Installation werden automatisch alle benötigten Tabellen erzeugt.
Sie können dann bereits im openMM als Benutzer die ersten Domains und Mailboxen anlegen.
Zu Testzwecken legen Sie bitte mindestens die Domain test.de sowie die Mailbox test@test.de und den Alias alias@test.de an.
Postfix
Nachfolgend wird Postfix so konfiguriert, dass die Datenbank verwendet wird.
echo "user = openmm
password = Zpaqkxtt8n0lafm
hosts = 127.0.0.1
dbname = openmm
query = SELECT 1 FROM VDomain WHERE VDomainName='%s'" > /etc/postfix/mysql-virtual-mailbox-domains.cf
postconf -e virtual_mailbox_domains=mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
postmap -q test.de mysql:/etc/postfix/mysql-virtual-mailbox-domains.cf
Postmap sollte als Ergebnis "1" zurückliefern.
echo "user = openmm
password = Zpaqkxtt8n0lafm
hosts = 127.0.0.1
dbname = openmm
query = SELECT 1 FROM VUser WHERE VUserName='%s'" > /etc/postfix/mysql-virtual-mailbox-maps.cf
postconf -e virtual_mailbox_maps=mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
postmap -q test@test.de mysql:/etc/postfix/mysql-virtual-mailbox-maps.cf
Postmap sollte als Ergebnis "1" zurückliefern.
echo "user = openmm
password = Zpaqkxtt8n0lafm
hosts = 127.0.0.1
dbname = openmm
query = SELECT VAliasDestination FROM VAlias WHERE VAliasSource='%s'" > /etc/postfix/mysql-virtual-alias-maps.cf
postconf -e virtual_alias_maps=mysql:/etc/postfix/mysql-virtual-alias-maps.cf
postmap -q alias@test.de mysql:/etc/postfix/mysql-virtual-alias-maps.cf
Postmap sollte als Ergebnis "test@test.de" zurückliefern.
Abschließend stellen Sie die Rechte sicher:
chgrp postfix /etc/postfix/mysql-*.cf
chmod u=rw,g=r,o= /etc/postfix/mysql-*.cf
Und Postfix soll Dovecot verwenden:
postconf -e virtual_transport=lmtp:unix:private/dovecot-lmtp
Dovecot
groupadd -g 5000 vmail
useradd -g vmail -u 5000 vmail -d /var/mail -m
chown -R vmail:vmail /var/mail
chmod u+w /var/mail
nano /etc/dovecot/conf.d/10-auth.conf
disable_plaintext_auth = no
auth_mechanisms = plain login
#!include auth-system.conf.ext
!include auth-sql.conf.ext
nano /etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:/var/mail/%d/%n/mail/
mail_privileged_group = vmail
nano /etc/dovecot/conf.d/auth-sql.conf.ext
passdb { driver = sql args = /etc/dovecot/dovecot-sql.conf.ext }
userdb { driver = static args = uid=vmail gid=vmail home=/var/mail/%d/%n }
Kommentieren Sie den Absatz der SQL-userdb aus!
nano /etc/dovecot/conf.d/15-lda.conf
postmaster_address = test@test.de
nano /etc/dovecot/dovecot-sql.conf.ext
driver = mysql
connect = host=127.0.0.1 dbname=openmm user=openmm password=Zpaqkxtt8n0lafm
password_query = SELECT VUserName AS user, VUserPassword AS password FROM VUser WHERE VUserName='%u';
nano /etc/dovecot/conf.d/10-master.conf
Passen Sie den Block "service lmtp" folgendermaßen an:
service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { mode = 0600 user = postfix group = postfix } }
Kommentieren Sie den Block "service auth" aus und fügen Sie ihn neu ein:
service auth { unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } unix_listener auth-userdb { mode = 0600 user = vmail } user = dovecot }
Der Block "service auth-worker" muss nur minimal angepasst werden:
service auth-worker {
user = vmail
}
chown -R vmail:dovecot /etc/dovecot
chmod -R o-rwx /etc/dovecot
Sie können jetzt eine Test-E-Mail mit dem openMM Wizard verschicken.