Anschließend nehmen Sie noch einige grundlegende Einstellungen an Dovecot vor. Das erledigen Sie in /etc/dovecot/dovecot.conf (Listing 9).
Listing 9
!include_try /usr/share/dovecot/protocols.d/*.protocol listen = * base_dir = /var/run/dovecot/ # Greeting message for clients. login_greeting = Dovecot ready. !include conf.d/*.conf !include_try local.conf
Nun definieren Sie einige Sockets, was ermöglicht, dass Postfix und Dovecot miteinander kommunizieren. Die beiden tauschen Login-Informationen und E-Mails über diese Schnittstelle aus (Listing 10).
Listing 10
#/etc/dovecot/conf.d/10-master.conf
service auth {
unix_listener auth-userdb {
mode = 0600
user = vmail
group = vmail
}
# Postfix smtp-auth
unix_listener /var/spool/postfix/private/auth {
mode = 0660
user = postfix
group = postfix
}
}
service lmtp {
unix_listener /var/spool/postfix/private/dovecot-lmtp {
mode = 0660
group = postfix
user = postfix
}
user = vmail
}
Damit Dovecot die Möglichkeit hat, sich selbst über E-Mails zu melden, benötigt es noch eine Mailadresse für den Postmaster. Es verhält sich überaus unkooperativ, wenn Sie diese nicht setzen. Zu diesem Zweck verwenden Sie in der Datei /etc/dovecot/conf.d/15-lda.conf den Parameter postmaster_address.
Sichere Verbindungen
Alle in diesem Artikel verwendeten Zertifikate rufen eine Warnung hervor, da sie nicht von einer richtigen Zertifizierungsstelle signiert sind. Zum Ausprobieren ist das aber ein praktikabler Weg.
Es gibt zwei Alternativen, mit denen Sie diese Meldung verhindern: Sie arbeiten komplett unverschlüsselt. Das ist nicht zu empfehlen. Oder Sie besorgen sich ein offizielles Zertifikat. Es gibt Anbieter, die für einen bestimmten Zeitraum signierte Zertifikate bereitstellen. So haben Sie die Möglichkeit, zu testen. Meist verfallen diese Zertifikate nach 90 Tagen.
Zu Testzwecken reicht es, nach der Installation den Server mit den vorhandenen Zertifikaten zu betreiben (Listing 11), auch wenn man weiß, dass das Fehlermeldungen produziert.
Listing 11
#/etc/dovecot/conf.d/10-ssl.conf ssl = required ssl_cert = </etc/dovecot/dovecot.pem ssl_key = </etc/dovecot/private/dovecot.pem ssl_protocols = !SSLv2 !SSLv3 ssl_cipher_list = EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA
In der Datei /etc/dovecot/dovecot-sql.conf.ext teilen Sie Dovecot mit, dass es die Informationen über die User und die Domänen aus der MySQL-Datenbank erhält. Dovecot ist nun vollständig eingerichtet und bereit, die Postfächer zu verwalten.
Listing 12
driver = mysql connect = host=127.0.0.1 dbname=vmail user=vmail password=vmailpasswort default_pass_scheme = SHA512-CRYPT password_query = SELECT username, domain, password FROM users WHERE username = '%n' AND domain = '%d' #iterate_query = SELECT username, domain FROM users
Postfix einrichten
Postfix [5] ist die Komponente im Mailsystem, die sich um das Zustellen kümmert. Dovecot stellt die Briefkästen bereit; Postfix ist der Postbote. Damit dieser Austausch klappt, bearbeiten Sie die Datei /etc/postfix/main.cf entsprechend (Listing 13). Das beinhaltet auch die Verbindungen zu den Tabellen in der Datenbank, wie den Zugang via SSL. Es stehen umfangreiche Änderungen an, sodass es unter Umständen einfacher ist, die Version von der DVD zu nehmen.
Listing 13
#/etc/postfix/main.cf
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
##### TLS parameters ######
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mydestination =
recipient_delimiter =
inet_interfaces = all
myorigin = /etc/mailname
inet_protocols = all
###### SASL Auth ######
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
inet_protocols = ipv4
##### TLS parameters ######
smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
smtpd_use_tls=yes
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
###### Use Dovecot LMTP Service to deliver Mails to Dovecot ######
virtual_transport = lmtp:unix:private/dovecot-lmtp
##### Only allow mail transport if client is authenticated or in own network (PHP Scripts, ...) ######
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
###### MySQL Connection ######
virtual_alias_maps = mysql:/etc/postfix/virtual/mysql-aliases.cf
virtual_mailbox_maps = mysql:/etc/postfix/virtual/mysql-maps.cf
virtual_mailbox_domains = mysql:/etc/postfix/virtual/mysql-domains.cf
local_recipient_maps = $virtual_mailbox_maps
###### SASL Auth ######
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
Wenn Sie Ihre master.cf mit der Datei von der DVD überschreiben, ist es notwendig, dass Sie den Parameter myhostname= wieder auf den Wert setzen, der zu Ihrem Setup passt. In die Datei /etc/postfix/master.cf fügen Sie die Zeilen aus Listing 14 ein.





