User Tools

Site Tools


luthien:mailing

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
luthien:mailing [2024/05/04 21:47] lordjaxomluthien:mailing [2025/07/07 08:54] (current) lordjaxom
Line 1: Line 1:
 +====== 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.
 +
 +<code mysql>
 +USE froxlor;
 +CREATE VIEW panel_dkim_domains AS SELECT id, domain FROM panel_domains WHERE dkim=1;
 +EXIT;
 +</code>
 +
 +Danach muss in **[[luthien:files:etc_opendkim_conf|/etc/opendkim.conf]]** eine Zugriffsmöglichkeit aktiviert und die Tabellen konfiguriert werden.
 +
 +<code>
 +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
 +</code>
 +
 +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.
 +
 +<code>
 +After=network.target nss-lookup.target mariadb.service
 +</code>
 +
 +Rechte für Konfigurationsdateien anpassen.
 +
 +<code bash>
 +chmod 600 /etc/opendkim.conf
 +</code>
 +
 +===== Zertifikate =====
 +
 +Mit folgendem Aufruf kann ein LetsEncrypt-Zertifikat für SMTP und IMAP erstellt werden.
 +
 +<code bash>
 +certbot certonly --apache -d mail.akv-soft.de
 +</code>
 +
 +===== 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.
 +
 +<code>
 +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}
 +</code>
 +
 +===== 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.
 +
 +<code>
 +service stats {
 +  unix_listener stats-reader {
 +    user = dovecot
 +    group = vmail
 +    mode = 0660
 +  }
 +  unix_listener stats-writer {
 +    user = dovecot
 +    group = vmail
 +    mode = 0660
 +  }
 +}
 +</code>
 +
 +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.
 +
 +<code>
 +ssl_cert = </etc/letsencrypt/live/mail.akv-soft.de/fullchain.pem
 +ssl_key = </etc/letsencrypt/live/mail.akv-soft.de/privkey.pem
 +</code>
 +
 +Dienste neu starten.
 +
 +<code bash>
 +systemctl daemon-reload
 +systemctl restart opendkim
 +systemctl restart postfix
 +systemctl restart dovecot
 +</code>
luthien/mailing.txt · Last modified: 2025/07/07 08:54 by lordjaxom

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki