Archiv

Artikel Tagged ‘Postfix’

Amavisd-new auf einem zentralen Server für mehrere Postfix-Instanzen

21. March 2015 TheMaster Keine Kommentare

Da ich gerade selbst lange suchen musste, hier ein Kurzhowto wie man eine zentrale Amavis-Instanz für mehrere Postfix-Server verwenden  kann:

1) Amavis so konfigurieren, dass es nicht nur auf 127.0.0.1 lauscht:

@inet_acl = qw(127/8 ::1 192.168.0/24);  # adjust the list as appropriate
$inet_socket_bind = undef;

Damit wird eingestellt, dass amavis auf jeder Netzwerkkarte lauscht (inet_socket_bind) und in der acl wird definiert, dass nur lokale Clients auf der selben Maschine (127/8) oder Clients aus dem Netzwerk 192.168.0.0/24 Anfragen stellen dürfen

2) Amavis so konfigurieren, dass es die Antworten (Responses, Notifys) und eMails nach prüfung (Forward) an den anfragenden Mailserver zurückschickt:

$forward_method = ’smtp:*:*’;
$notify_method = $forward_method;

Die Antwort wird an den anfragenen Mailserver (*) geschickt und automatisch auf einen Port höher als die Anfrage kam. Wurde amavis also über den port 10024 angesprochen, kontaktiert er den anfragenden Server auf dem port 10025. Hier kann man auch fest den port 10025 einstellen, ob dies Sinnvoll ist, kann man drüber streiten.

3) Postfix beibringen, dass es auch aus dem Netzwerk Antworten auf Port 10025 annimmt:

In der master.conf eintragen:

192.168.0.55:10025 inet n – - – - smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_client_restrictions=
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o mynetworks=127.0.0.0/8,192.168.0.0/24
-o strict_rfc821_envelopes=yes
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_bin_address=127.0.0.1

Wichtig ist hier, dass die fettmarkierten IP-Adressen korrigiert werden. Oben die eigene IP-Adresse auf der Amavis den Server kontaktiert, unten das Netzwerk aus dem es überhaupt Antworten annehmen kann, danur mynetworks zugelassen ist (s. Zeile drüber).

Es ist sinnvoll, dass die interne Kommunikation über ein eigenes – nicht öffentliches – Netzwerk geschieht, daher hier im Beispiel auch eine IP-Adresse aus einem privaten Netz (192.168.0.0/24

4) Postfix noch erklären, auf welchen Amavis er zugreifen soll

In der Main.conf noch hinterlegen:

content_filter = smtp-amavis:[192.168.0.22]:10024

Die IP-Adresse ist die des Amavis-Servers.

KategorienHowTo Tags: , , , ,

Postfix / Courier-IMAP / Amavis / Procmail – Einsortierung von Spamemails in Unterordner

5. March 2012 TheMaster Keine Kommentare

Da es scheinbar hierzu wenig Ergebnisse bei Google hierzu gibt, hier mal ein paar Tipps dazu, wie man bei obiger Konfiguration unter Beachtung des Mailquotas mittels deliverquota eMails sicher zustellen kann.

In der Postfix main.cf wird procmail als mailbox_command eingetragen:

mailbox_command = procmail -a “$EXTENSION”

Ebenso ist Amavis als smtp_proxy eingetragen:

smtpd_proxy_filter=127.0.0.1:10024

Damit sind schonmal die besten Voraussetzungen geschaffen um die eMails auf Spam / Viren zu prüfen mittels Amavis. Amavis-Konfiguration erfolgt wie gewollt um die Stufen der Spamerkennung einzustellen.

Wichtig ist die Datei /etc/procmailrc, die die Ausführung von procmail steuert, so dass die eMails an deliverquota übergeben werden. Nachfgolgend eine Beispielhafte procmailrc:

DROPPRIVS=yes
LOGFILE=/var/log/procmail
SHELL=/bin/sh
DEFAULT=$HOME/Maildir/

Die Grundkonfiguration von procmail

# All mail tagged as spam (eg. with a score higher than the set threshold)
# is moved to “probably-spam”.
:0:
* ^X-Spam-Status: Yes
$HOME/Maildir/.Spam/

Hiermit werden eMails, die von Amavis mit der Headerzeile X-Spam-Status: Yes versehen werden in den Unterordner Spam im IMAP verschoben.

:0w
|/usr/bin/deliverquota -w 90 $HOME/Maildir

Dies übergibt die nicht als Spam erkannten eMails an deliverquoa mit dem Parameter, dass ab 90% Quota-Auslastung eine Warnung an das Postfach zugestellt werden soll. Wichtig ist, hier dass es mit :o w und nicht mit :o fw eingeleitet wird, da sonst bei jeder eMail die reinkommt 2 eMails im Postfach laden.  Einmal die komplette eMail und einmal eine komplett leere. Mehr hierzu am Ende des Beitrages.

# Work around procmail bug: any output on stderr will cause the “F” in “From”
# to be dropped.  This will re-add it.
:0 H
* ! ^From[ ]
* ^rom[ ]
{
LOG=”*** Dropped F off From_ header! Fixing up. ”

:0 fhw
| sed -e ’s/^rom /From /’
}

INCLUDERC=$HOME/.procmailrc

Wer möchte kann im Homedirectory des Users nochmal eine seperate .procmailrc abspeichern, welche weitere Konfigurationen vornimmt.

EOF

Um auf das Problem der doppelte eMail zurückzukommen. Dieses Problem scheinen viele Administratoren zu haben, die eine solche Konfiguration aufsetzen wollen. Wenn hier als Parameter noch ein “f” eingegeben wird, wie z.B. :o fw, so sieht procmail den Anruf als Filter an, übergibt also die komplette eMail an deliverquota und arbeitet mit der Rückgabe weiter. Dies ist jedoch nichts, also stellt procmail eine leere Datei an das Postfach zu, welches dann wiederum zu einer scheinbar leeren eMail ohne Header führt.

Mailer Dämon Meldungen – eine Erklärung

13. March 2011 TheMaster Keine Kommentare

Da wir in letzter Zeit im Support mehr und mehr Anfragen bzgl. Mail Delivery Meldungen haben, habe ich mir die Mühe gemacht und angefangen die häufigsten Mail Delivery Meldungen in unserer Hosting-Hilfe zu erklären:

MAILER-DAEMON eMailfehlermeldungen

Postfix SSL mit Thawte mit Intermediate Zertifikat

22. July 2010 TheMaster Keine Kommentare

Seit drei Wochen hat Thawte aus Sicherheitsgründen ebenfalls ein Intermediate Zertifikat eingeführt.

Dieses muss im Server natürlich entsprechend eingetragen werden. Postfix kann dieses über den Parameter

smtpd_tls_CAfile = /etc/postfix/ssl/cabundle.crt

Die SSL Konfiguration sieht in der main.cf also so aus:

# tls / ssl config
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cabundle.crt
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
tls_lrandom_prng_update_period = 3600s

Den Inhalt der cabundle.crt findet man auf der Website von Thawte:

z.B. für das SSL 123: https://search.thawte.com/support/ssl-digital-certificates/index?page=content&id=SO14821

KategorienHowTo Tags: , , , ,

maildirmake -q 10000S hängt – Anlegen von Maildirquotas

Wer beim Anlegen eines Maildirs über obigen Befehl sich wundert, dass der Befehl kein Ergebnis hat und ewig läuft, dem sei gesagt:

Erst das Maildir ohne Quota anlegen (maildirmake ./Maildir) und danach erst mittels -q Parameter das Quota setzen:

maildirmake ./Maildir
maildirmake -q 10000S ./Maildir

Danke an die Postfixbuch-users Mailingliste für die schnelle Hlife hierzu :-)