Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
| mail-import_via_milter [2023/07/05 10:37] – [Details der Anbindung] lwsystems | mail-import_via_milter [2024/02/05 07:37] (aktuell) – [Alternative Anbindung in der "master.cf"] lwsystems | ||
|---|---|---|---|
| Zeile 14: | Zeile 14: | ||
| - | Auf Debian und auf Debian basierenden Systemen erfolgt die Grund-Installation direkt aus dem Paket // | + | Auf Debian und auf Debian basierenden Systemen erfolgt die Grund-Installation direkt aus dem Paket // |
| Auf anderen Systemen sollte die manuelle Installation vorgenommen werden. | Auf anderen Systemen sollte die manuelle Installation vorgenommen werden. | ||
| Zeile 21: | Zeile 21: | ||
| Falls mehrere Systeme als Importquellen angebunden werden, sollten die Anmerkungen der [[Multi-Import|Multi-Import Konfiguration]] beachtet werden. | Falls mehrere Systeme als Importquellen angebunden werden, sollten die Anmerkungen der [[Multi-Import|Multi-Import Konfiguration]] beachtet werden. | ||
| + | |||
| ====== Installation aus Debian Package ====== | ====== Installation aus Debian Package ====== | ||
| Zeile 52: | Zeile 53: | ||
| </ | </ | ||
| - | Falls der MILTER Daemon vom MTA getrennt installiert werden soll, kann der Benno MILTER Daemon per [[#milter_per_tcp-socket|über TCP angebunden]] werden. | + | Falls der MILTER Daemon vom MTA getrennt installiert werden soll, kann der Benno MILTER Daemon per [[#tcp-socket|über TCP angebunden]] werden. |
| Danach den Postfix-Daemon neu starten. | Danach den Postfix-Daemon neu starten. | ||
| **Achtung**: | **Achtung**: | ||
| Dieses ist zum Beispiel beim Einsatz von Amavis der Fall. | Dieses ist zum Beispiel beim Einsatz von Amavis der Fall. | ||
| - | ==== Details der Anbindung | + | |
| + | ===== TCP-Socket ===== | ||
| + | |||
| + | Falls der MILTER Daemon auf einem vom SMTP-Service getrennten Host installiert werden soll, muss der MILTER Daemon an einen TCP-Socket gebunden werden und der Deamon muss nicht mit der Gruppe //postfix// gestartet werden. Hierfür wird vom Pre-Install Script des Pakets die Override-Datei ''/ | ||
| + | |||
| + | Diese Konfiguration kann auch nachträglich in '' | ||
| + | |||
| + | In der Postfix-Konfiguration werden die Pfade zum Socket durch die Angabe von Hostname/ | ||
| + | |||
| + | smtpd_milters = inet: | ||
| + | non_smtpd_milters = inet: | ||
| + | |||
| + | |||
| + | |||
| + | ===== Details der Anbindung | ||
| *smtpd_milters - Pfad zum Socket des MILTER-Daemons für per SMTP eingehende E-Mails. Der Pfad wird relativ zur chroot(2) Umgebung der Postfix-Installation angegeben. | *smtpd_milters - Pfad zum Socket des MILTER-Daemons für per SMTP eingehende E-Mails. Der Pfad wird relativ zur chroot(2) Umgebung der Postfix-Installation angegeben. | ||
| Zeile 65: | Zeile 80: | ||
| - | ====== Spezielle Konfigurationen / Andere MTAs ====== | ||
| - | Das benno-milter Paket ist so konfiguriert, | + | ====== Spezielle Konfigurationen |
| - | Falls dieses Verzeichnis nicht angelegt werden konnte, weil kein Postfix installiert war, kann der MILTER Daemon nicht starten. | + | |
| - | Nach Installation von Postfix | + | Bei der Installation |
| - | '' | + | |
| - | Die Anbindung an einen anderen MTA sollte per [[# | ||
| ===== Anbindung bei getrenntem Benno MailArchiv Host ===== | ===== Anbindung bei getrenntem Benno MailArchiv Host ===== | ||
| Zeile 79: | Zeile 90: | ||
| Die einfachste Möglichkeit ist, den MILTER-Daemon auf dem Archivierungs-Host zu installieren. | Die einfachste Möglichkeit ist, den MILTER-Daemon auf dem Archivierungs-Host zu installieren. | ||
| - | Der MILTER wird so konfiguriert, | + | Der MILTER wird so konfiguriert, |
| Diese Konfiguration hat den Nachteil, daß der eigentiche Mailtransport von einem weiteren Host abhängig ist. | Diese Konfiguration hat den Nachteil, daß der eigentiche Mailtransport von einem weiteren Host abhängig ist. | ||
| Zeile 175: | Zeile 186: | ||
| </ | </ | ||
| - | Falls der // | + | Falls der **// |
| Bei Angabe des Pfades zum Socket ist die //chroot// Konfiguration des Dienstes wichtig. Falls //chroot// auf //n// gesetzt wird oder der Defaultwert in der Kommentarzeile mit //n// angegeben ist, muss der Pfad als kompletter Pfad zum Socket angegeben werden. Im Beispiel oben ist der Pfad relativ zum chroot-Verzeichnis konfiguriert. | Bei Angabe des Pfades zum Socket ist die //chroot// Konfiguration des Dienstes wichtig. Falls //chroot// auf //n// gesetzt wird oder der Defaultwert in der Kommentarzeile mit //n// angegeben ist, muss der Pfad als kompletter Pfad zum Socket angegeben werden. Im Beispiel oben ist der Pfad relativ zum chroot-Verzeichnis konfiguriert. | ||
| - | ====== MILTER per TCP-Socket ====== | ||
| - | Falls der MILTER Daemon auf einem vom SMTP-Service getrennten Host installiert werden soll, muss der MILTER Daemon an einen TCP-Socket gebunden werden. In der Konfigurationsdatei ''/ | ||
| - | |||
| - | SOCKET_TYPE=inet | ||
| - | SOCKET=22500@0.0.0.0 | ||
| - | |||
| - | gesetzt. In der Postfix-Konfiguration werden die Pfade zum Socket durch die Angabe von Hostname/ | ||
| - | |||
| - | smtpd_milters = inet: | ||
| - | non_smtpd_milters = inet: | ||
| - | |||
| - | | ||
| ====== Manuelle Installation ====== | ====== Manuelle Installation ====== | ||
| Zeile 211: | Zeile 210: | ||
| - '' | - '' | ||
| - ''/ | - ''/ | ||
| + | |||
| ===== Anbindung an Postfix | ===== Anbindung an Postfix | ||
| Zeile 235: | Zeile 235: | ||
| + | ====== Debugging ====== | ||
| + | |||
| + | Das Logging des Services erfolgt mittels syslog mit der Facility LOG_MAIL. | ||
| + | |||
| + | ===== Testaufruf ===== | ||
| + | |||
| + | Zu Testzwecken kann der Daemon auch auf der Konsole mit dem folgenden Kommandoaufruf gestartet werden. | ||
| + | |||
| + | <code bash> | ||
| + | sudo -u benno -g postfix / | ||
| + | -p local:/ | ||
| + | -o / | ||
| + | -l / | ||
| + | </ | ||
| + | |||
| + | Der Paramter '' | ||
| + | |||
| + | ===== Systemd ===== | ||
| + | |||
| + | Der Benno MILTER Daemon wird von //systemd// gestartet. Die Konfiguration des Services wird im Servicefile ''/ | ||
| + | |||
| + | Der Daemon wird letztendlich mit dem folgenden Aufruf gestartet: | ||
| + | |||
| + | <code bash> | ||
| + | / | ||
| + | -l ${RUNTIME_DIRECTORY}/ | ||
| + | -p ${SOCKET_TYPE}: | ||
| + | -o ${SPOOLDIR} ${MILTERARGS} | ||
| + | </ | ||
| + | |||
| + | Die hier aufgeführten Umgebungsvariablen werden im Servicefile vorkonfiguriert: | ||
| + | |||
| + | # systemctl show benno-milter --property=Environment | ||
| + | |||
| + | <code bash> | ||
| + | SOCKET_TYPE=local | ||
| + | SOCKET=/ | ||
| + | SPOOLDIR=/ | ||
| + | PIDFILE=/ | ||
| + | </ | ||
| + | |||
| + | Diese Variablen werden ggfs. durch die Einstellungen der Konfigurationsdatei ''/ | ||
| + | |||
| + | ==== Benutzer und Gruppe ==== | ||
| + | |||
| + | Falls der MILTER per UNIX DOMAIN Socket an Postfix angebunden ist, wird der Service mit dem User " | ||
| + | |||
| + | # systemctl show benno-milter --property=User | ||
| + | # systemctl show benno-milter --property=Group | ||
| + | |||
| + | Vom Standard abweichende Einstellungen sind in der Konfigurationsdatei ''/ | ||
| + | |||
| + | ==== Systemd Start ==== | ||
| + | |||
| + | |||
| + | <code bash> | ||
| + | eval $(systemctl show benno-milter --property=User --property=Group \ | ||
| + | --property=Environment --property=RuntimeDirectory|\ | ||
| + | perl -pe ' | ||
| + | . / | ||
| + | sudo -u $User -g $Group \ | ||
| + | / | ||
| + | -l / | ||
| + | -p ${SOCKET_TYPE}: | ||
| + | -o ${SPOOLDIR} ${MILTERARGS} | ||
| + | </ | ||