• DocFraggle

    • Community Hero
    Moolevel 252
  • Edited

Also Spamhaus Technology - Deutsch Icon da

steht folgendes:

1.1. Der Data Query Service wird kleinen und mittelgroßen Organisationen kostenlos für die nichtgewerbliche Nutzung bereitgestellt.

So hab ich mich da jetzt auch angemeldet, ist ja nur privat mein Server.

  • DocFraggle

    • Community Hero
    Moolevel 252
  • Edited

Ja, genau.
Hilft leider alles nichts solange die Config nicht geladen wird…

Ich werde heute Abend mal ein Issue auf GitHub erstellen, habe vorher keine Zeit

Das Schlimme ist dass mit dem Commit auch die restlichen Blocklisten aus der main.cf entfernt wurden und somit auch gar nicht mehr gezogen werden

DocFraggle

Eigenartig, die Datei dns_blocklists.cf existiert bei mir gar nicht in data/conf/postfix.

  • DocFraggle

    • Community Hero
    Moolevel 252

Bist Du denn auf der neuesten Version?

    DocFraggle

    Ja, allerdings mit der ARM64-dev auf einem Hetzner-Server. Lief seit Wochen völlig problemlos. Ich muss mal gucken, ob die von Dir erwähnte Datei vor dem gestrigen Update noch vorhanden war. Zur Not muss ich sonst ein Snapshot von vor dem Update wieder einspielen. Das wäre allerdings schade.

    • DocFraggle

      • Community Hero
      Moolevel 252
    • Edited

    Die Datei kam ja jetzt erst neu dazu

    Hier wäre übrigens der Spamhaus Blocklist Tester:

    blt.spamhaus.com Icon Access the Portal – Blocklist Tester | Spamhaus

    Da braucht man allerdings den DQS Key dafür

      DocFraggle

      Das ist allerdings komisch, weil sie bei mir nicht erzeugt wurde. Hängt bestimmt damit zusammen, dass ARM64 noch in der Testphase ist. Vielleicht hätte ich besser damit noch ein wenig länger abgewartet, aber die Preise bei Hetzner für ARM64-Server waren einfach zu verführerisch. Naja, ich werde morgen mal etwas genauer gucken und zur Not einen neuen Server hochziehen und dieses Mal auf auf x86 setzen. Sich ist sicher.

      Danke für Deine Hilfe!

      OK, ich glaube ich habe das Problem gefunden, die dns_blocklists.cf wird aktuell nicht analog der extra.cf mit in die main.cf gepackt

      GitHub Icon mailcow-dockerized/data/Dockerfiles/postfix/postfix.sh at 020cb21b35723339008d745c479cd039dca7475b · mailcow/mailcow-dockerized

      Dadurch wird die Config nicht aktiv

      DocFraggle

      Hey super, vielen Dank für Deine Mühe.

      Ich habe auf Github Deinen Kommentar bezüglich smtpd_recipient_restriction gelesen und das bei mir direkt mal ausprobiert. Funktioniert bestens, jedoch wird der DQS-Key bei jeder Reject-Message geleakt. Auf Spamhaus gibt’s eine Anleitung, wie man das verhindern kann (docs.spamhaus.com Icon Configuring DQS on Postfix — Spamhaus Technology Documentation 2.0 documentation

      ), allerdings klappt das bei mir überhaupt nicht. Der Key wird ständig mit übertragen.

      Hast Du für Dich dafür eine Lösung gefunden, oder denkst Du, dass der Leak weniger dramatisch ist?

      Danke!

      • DocFraggle

        • Community Hero
        Moolevel 252
      • Edited

      Hi, was meinst Du denn mit “geleaked”? Dass er im postfix Log steht? Oder schickt Postfix nen NDR?

      Der Key steht in der Reject-Message, die an den Sender der abgelehnten Mail geht. Hier zum Beispiel aus meinem Postfix-Log:

      NOQUEUE: reject: RCPT from zrd-dqs.blt.spamhaus.net[199.168.89.93]: 554 5.7.1 Service unavailable; Unverified Client host [zrd-dqs.blt.spamhaus.net] blocked using MYKEYHERE.zrd.dq.spamhaus.net; zrd-dqs.blt.spamhaus.net first seen around 31-Jul-2023 15:00 UTC; from=test@zrd-dqs.blt.spamhaus.net to=spamhaus@MYDOMAIN.com proto=ESMTP helo=<unlisted.blt.spamhaus.net>

      • DocFraggle

        • Community Hero
        Moolevel 252
      • Edited

      Ah okay, evtl weil ich den Rest noch nicht gemacht habe der in der Doku steht… Hier mal die ganze Doku bzgl postfix:

      Edit main.cf (usually located in /etc/postfix), and add

              reject_rhsbl_sender         XXXXXXXXX.dbl.dq.spamhaus.net=127.0.1.[2..99],
              reject_rhsbl_helo           XXXXXXXXX.dbl.dq.spamhaus.net=127.0.1.[2..99],
              reject_rhsbl_reverse_client XXXXXXXXX.dbl.dq.spamhaus.net=127.0.1.[2..99],
              reject_rhsbl_sender         XXXXXXXXX.zrd.dq.spamhaus.net=127.0.2.[2..24],
              reject_rhsbl_helo           XXXXXXXXX.zrd.dq.spamhaus.net=127.0.2.[2..24],
              reject_rhsbl_reverse_client XXXXXXXXX.zrd.dq.spamhaus.net=127.0.2.[2..24],
              reject_rbl_client           XXXXXXXXX.zen.dq.spamhaus.net=127.0.0.[2..255]

      in the list of smtpd_recipient_restrictions.
      Then create in /etc/postfix a file named for instance dnsbl-reply-map containing the lines

      XXXXXXXXX.sbl.dq.spamhaus.net=127.0.0.[2..255]      $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using sbl.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.xbl.dq.spamhaus.net=127.0.0.[2..255]      $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using xbl.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.pbl.dq.spamhaus.net=127.0.0.[2..255]      $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using pbl.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.sbl-xbl.dq.spamhaus.net=127.0.0.[2..255]  $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using sbl-xbl.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.zen.dq.spamhaus.net=127.0.0.[2..255]      $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using zen.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.dbl.dq.spamhaus.net=127.0.1.[2..99]       $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using dbl.spamhaus.org${rbl_reason?; $rbl_reason}
      XXXXXXXXX.zrd.dq.spamhaus.net=127.0.2.[2..24]      $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using zrd.spamhaus.org${rbl_reason?; $rbl_reason}

      Create a hash map of it with
      postmap hash:/etc/postfix/dnsbl-reply-map
      then insert
      rbl_reply_maps = hash:/etc/postfix/dnsbl-reply-map
      in main.cf. Reload postfix.

      Wenn ich das richtig sehe sollte dann die Message oben anstatt der mit dem Key im NDR verschickt werden.
      Gerne mal testen, ich komme erst morgen wieder dazu

      Gruß Christian

      Yo, genauso hatte ich das probiert, aber der Key steht weiterhin in der Reject-Meldung.
      Weiß nicht, ob das irgendwas mit Docker zu tun hat. Naja, ich teste noch ein wenig.

      Vielen Dank nochmal.

      Hallo Christian,

      also, ich habe es nochmal nach Deiner Anleitung probiert.
      Von sieben Testmails haben noch drei den Key in der Reject-Message. Die vier anderen haben ihn nicht mehr.

      554 5.7.1 Service unavailable; Client host [199.168.89.88] blocked using XXXXXXXXXX.zen.dq.spamhaus.net; https://www.spamhaus.org/sbl/query/SBL18

      Dieses ist die Antwort, die man auf der Blocklist Tester Seite als Server Response bekommt.

      Wenn ich das Prinzip richtig verstanden habe, müsste diese Zeile in der dnsbl-reply-map dafür verantwortlich sein:

      XXXXXXXXXXX.zen.dq.spamhaus.net=127.0.0.[2..255] $rbl_code Service unavailable; $rbl_class [$rbl_what] blocked using zen.spamhaus.org${rbl_reason?; $rbl_reason}

      Hast Du eine Ahnung, was hier das Problem sein könnte?

      Danke Dir!

      Gruß
      Jürgen

      Hier noch ein Auszug aus dem Postfix-Log:

      • DocFraggle

        • Community Hero
        Moolevel 252
      • Edited

      Ich habe gerade auch geschaut, das Problem ist der postscreen. Wenn man den DQS Key in der mailcow.conf eingetragen hat wird ja automatisch auch die postscreen Config mit den Spamhaus Domains samt Key gesetzt, und wenn die zuschlägt dann sieht man o.g. Meldung, denn die kommt noch vor den smtpd_recipient_restrictions. Ich habe mal in der postfix.sh den ganzen postscreen Spamhaus Kram auskommentiert so dass die postscreen Config im Grunde nur aus dem Standard besteht

      . Wenn man dann die Test-Mails generiert passt alles.
      Insofern ist der Einwand auf Github eines anderen Users durchaus berechtigt, der wollte im Grunde einen Opt-Out aus der ganzen postscreen Geschichte

      ach OK, weil das hier fehlt für die postscreen config:

      postscreen_dnsbl_reply_map = texthash:/etc/postfix/dnsbl_reply

      with dnsbl_reply containing the lines

      XXXXXXXXXXXXXXXXXXX.sbl.dq.spamhaus.net     sbl.spamhaus.org
      XXXXXXXXXXXXXXXXXXX.xbl.dq.spamhaus.net     xbl.spamhaus.org
      XXXXXXXXXXXXXXXXXXX.pbl.dq.spamhaus.net     pbl.spamhaus.org
      XXXXXXXXXXXXXXXXXXX.zen.dq.spamhaus.net     zen.spamhaus.org
      XXXXXXXXXXXXXXXXXXX.dbl.dq.spamhaus.net     dbl.spamhaus.org
      XXXXXXXXXXXXXXXXXXX.zrd.dq.spamhaus.net     zrd.spamhaus.org

      Super! Tausend Dank, Christian.

      Aber müsste dnsbl_reply nicht eigentlich erstmal gehasht werden, damit Postfix sie lesen kann?

      docker compose exec postfix-mailcow postmap /opt/postfix/conf/dnsbl_reply

      Naja, bei mir zumindest funktioniert das sowieso alles nicht. Egal welchen Weg bzw. welche Anleitung ich nehme, der DQS-Key taucht immer wieder auf. Nervt langsam. Werde das bis zum endgültigen Fix erstmal wieder rauswerfen.