====== Mailing ======
^ Hostname | luthien.akv-soft.de |
===== OpenDKIM =====
Da OpenDKIM von Froxlor (noch) nicht direkt unterstützt wird, muss zunächst eine View in der Datenbank angelegt werden aus welchem OpenDKIM die DKIM-Domains beziehen kann. Dafür in der MySQL-Konsole als **root** folgendes ausführen.
USE froxlor;
CREATE VIEW panel_dkim_domains AS SELECT id, domain FROM panel_domains WHERE dkim=1;
EXIT;
Danach muss in **[[luthien:files:etc_opendkim_conf|/etc/opendkim.conf]]** eine Zugriffsmöglichkeit aktiviert und die Tabellen konfiguriert werden.
Socket inet:8891@localhost
SigningTable dsn:mysql://froxlor:********@localhost/froxlor/table=panel_dkim_domains?keycol=domain?datacol=id
KeyTable dsn:mysql://froxlor:********@localhost/froxlor/table=panel_domains?keycol=id?datacol=domain,concat('dkim',dkim_id),dkim_privkey
Da OpenDKIM nun MySQL/MariaDB benötigt, sollte dem Service in **[[luthien:files:usr_lib_systemd_system_opendkim_service|/usr/lib/systemd/system/opendkim.service]]** als Startvoraussetzung **mariadb.service** hinzugefügt werden.
After=network.target nss-lookup.target mariadb.service
Rechte für Konfigurationsdateien anpassen.
chmod 600 /etc/opendkim.conf
===== Zertifikate =====
Mit folgendem Aufruf kann ein LetsEncrypt-Zertifikat für SMTP und IMAP erstellt werden.
certbot certonly --apache -d mail.akv-soft.de
===== Postfix =====
In der Datei **[[luthien:files:etc_postfix_main_cf|/etc/postfix/main.cf]]** zunächst folgende Konfigurationselemente überprüfen oder ergänzen. Die Einbindung des Spamfilters wird später separat gezeigt. Der zusätzliche IP-Eintrag in **mynetworks** bewirkt, dass der alte Server Mails per SMTP an lokale Nutzer einliefern kann, ohne Authentifizierung zu erfordern. Dieser wird später wieder entfernt. Weiterhin werden weitere Checks für die Mailzustellung, eine DNS-Blacklist und die SSL-Zertifikate konfiguriert.
myhostname = luthien.$mydomain
mydomain = akv-soft.de
mydestination = $myhostname, localhost.$myhostname, localhost.$mydomain, localhost
mynetworks = 127.0.0.0/8 89.238.65.250/32
smtpd_sender_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_unknown_sender_domain,
permit
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_sender_login_mismatch,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_unknown_recipient_domain,
reject_unauth_pipelining,
reject_unauth_destination,
reject_unlisted_recipient,
reject_rbl_client sbl-xbl.spamhaus.org,
permit
smtpd_helo_restrictions = permit_sasl_authenticated,
permit_mynetworks,
reject_unauth_destination,
reject_non_fqdn_sender,
reject_non_fqdn_recipient,
reject_unknown_recipient_domain,
reject_invalid_hostname,
reject_non_fqdn_hostname,
reject_unauth_pipelining,
permit
smtpd_client_restrictions = permit_mynetworks,
permit_sasl_authenticated,
reject_unknown_client_hostname
message_size_limit = 268435456
smtpd_tls_cert_file = /etc/letsencrypt/live/mail.akv-soft.de/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mail.akv-soft.de/privkey.pem
### OpenDKIM settings
milter_protocol = 6
milter_default_action = accept
smtpd_milters = inet:localhost:8891
non_smtpd_milters = ${smtpd_milters}
===== Dovecot =====
In **[[luthien:files:etc_dovecot_local_conf|/etc/dovecot/local.conf]]** müssen die Rechte für die UNIX-Sockets **stats-reader** und **stats-writer** angepasst werden.
service stats {
unix_listener stats-reader {
user = dovecot
group = vmail
mode = 0660
}
unix_listener stats-writer {
user = dovecot
group = vmail
mode = 0660
}
}
Das SSL-Zertifikat für Dovecot wird in der Datei **[[luthien:files:etc_dovecot_conf_d_10_ssl_conf|/etc/dovecot/conf.d/10-ssl.conf]]** hinterlegt.
ssl_cert =
Dienste neu starten.
systemctl daemon-reload
systemctl restart opendkim
systemctl restart postfix
systemctl restart dovecot