Ich versuche, MIMEDefang auf meinem Debian Stretch zu installieren, aber es funktioniert nicht sofort und ich kann keine Anleitungen finden, die funktionieren.
Nachdem apt install mimedefang
ich folgendes hinzugefügt habe /etc/postfix/main.cf
:
smtpd_milters = unix:/var/spool/MIMEDefang/mimedefang.sock
milter_default_action = accept
Postfix neu geladen und service mimedefang status
sagt, es ist aktiv und läuft .
Auch versucht , das Kopieren /etc/mimedefang-filter
zu /etc/mail/mimedefang-filter
und es ausführbar gemacht ...
Aber ich verstehe das immer noch /var/log/mail.log
:
postfix/smtpd[29832]: warning: connect to Milter service unix:/var/spool/MIMEDefang/mimedefang.sock: No such file or directory
Die Datei /var/spool/MIMEDefang/mimedefang.sock
existiert jedoch.
sendmail
ist schon von vorher installiert.
Wie installiere und aktiviere ich dieses Ding?
Antworten:
Mit der freundlichen Hilfe von Benoît Panizzon auf der MIMEDefang-Mailingliste habe ich herausgefunden, dass ich
inet
stattdessenunix
den Listening-Socket verwenden muss, damit er den TCP-Port auf dem angegebenen lokalen oder Remote-Host überwacht . Das Setup-Verfahren für MIMEDefang unter Debian / Ubuntu ist also:apt install mimedefang
/etc/default/mimedefang
Set (benutze einen anderen Port wenn du willst):SOCKET=inet:33333
/etc/postfic/main.cf
:smtpd_milters = inet:localhost:33333 milter_default_action = accept
/etc/mimedefang-filter
nach/etc/mail/mimedefang-filter
und ändern Sie sie entsprechend Ihren Anforderungen (Sie müssen sie nicht ausführbar machen).sudo systemctl reload postfix mimedefang
MIMEDefang muss bei jedem Wechsel neu geladen werden
mimedefang-filter
.Übrigens vermittelt diese Präsentation ein gutes Verständnis von MIMEDefang: https://www.mimedefang.org/static/mimedefang-lisa04.pdf
Das aktuell ausgeführte Perl-Skript befindet sich in
/usr/bin/mimedefang.pl
dem dann auch enthalten istmimedefang-filter
.Ich wollte auch in der Lage sein, meine Filterlogik in PHP anstelle von Perl zu schreiben , deshalb kam ich auf die folgende Lösung. Fügen Sie dies zum Ende von z. die
filter_begin
Funktion inmimedefang-filter
:Verwenden Sie dann den folgenden Code,
email-filter.php
um loszulegen:Überwachen Sie,
/var/log/mail.log
ob alles ordnungsgemäß funktioniert.quelle