eMail Server werden in gewissen Abständen immer wieder von backscatter eMails zugemüllt. Um ein System vor solchen Phase zu schützen gibt es ein Tool Namens fail2ban. Es ermöglich die Auswertung von Logfiles mit einer entsprechenden Reaktion auf bestimmte Ergebnisse in den Logfiles. Ein Schütz für eMail Server wäre als Beispiel

    /etc/fail2ban/jail.conf

    [postfix-user-unknown]
    enabled = true
    port = smtp,ssmtp
    logpath = /var/log/mail.log
    findtime = 600
    bantime = 86400
    usedns = no
    maxretry = 3
    action = nftables-allports[name=postfix-user-unknown]
    
    

    /etc/fail2ban/filter.d/postfix-user-unknown.conf:

    [INCLUDES]
    before = common.conf
    [Definition]
    _daemon = postfix/?smtp(d|s)
    failregex = ^%(__prefix_line)sNOQUEUE: reject: RCPT from [-._\w]+\[<HOST>\]: 550 5.1.1 (.*): Recipient address rejected: User unknown; from=(.*) to=(.*) proto=(.*) helo=(.*)

    Die Datei ptr.conf besteht aus zwei Zeilen. Der Definition und der eigentlichen Regel. Nach einem Neustart von fail2ban werden alle eMails die keine gültige from=<> Adresse besitzen und mit der Meldung Recipient address rejected: User unknown abgewiesen werden für 345600 Sekunden (4 Tage) geblockt. Achten Sie darauf, dass der Phrase … Recipient address rejectet:… mit denen in Ihren Logfiles übereinstimmt. Andernfalls greift die Regel nicht. Dies wäre der Fall wenn Sie virutelle Mailboxen betreiben. In diesem Fall wäre die Meldung Recipient address rejected: User unknown in virtual mailbox table;

    Man sollte aber zuerst die Log Dateien analysieren um wie sich der Einsatz von fail2ban lohnt. Dazu gbt es ein fertige script. Wenn die Anzahl der rejecteden eMails nicht besonders hoch ist, ist in meinen Augen der Einsatz von fail2ban dennoch Sinnvoll. Das System wird dann zwar nicht permanent „entlastet“, wird aber im Fall von massenhaften Zustellversuchen sehr wahrscheinlich nicht in die Knie gehen.

    Leave A Reply