Skip to content

chore(Postfix): disable DNSBLs#3069

Merged
georglauterbach merged 6 commits intomasterfrom
postfix/dnsbls
Feb 10, 2023
Merged

chore(Postfix): disable DNSBLs#3069
georglauterbach merged 6 commits intomasterfrom
postfix/dnsbls

Conversation

@georglauterbach
Copy link
Copy Markdown
Member

@georglauterbach georglauterbach commented Feb 7, 2023

Description

Postfix should not handle DNSBLs anymore. We should let Postscreen handle this.

Closes #2976

Type of change

  • Improvement (non-breaking change that does improve existing functionality)

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation (README.md or the documentation under docs/)
  • If necessary I have added tests that prove my fix is effective or that my feature works
  • New and existing unit tests pass locally with my changes

@georglauterbach georglauterbach added service/postfix kind/improvement Improve an existing feature, configuration file or the documentation area/configuration (file) labels Feb 7, 2023
@georglauterbach georglauterbach added this to the v12.0.0 milestone Feb 7, 2023
@georglauterbach georglauterbach self-assigned this Feb 7, 2023
@georglauterbach georglauterbach changed the title chore(Postfix): disable DNSBLs for Postfix chore(Postfix): disable DNSBLs Feb 8, 2023
@polarathene
Copy link
Copy Markdown
Member

polarathene commented Feb 9, 2023

Postfix should not handle DNSBLs anymore. We should let Postscreen handle this.

I went over #2976 and looked up some other resources and agree 👍

Everything below is primarily notes I put together while looking over the feature history, safe to ignore :)


This Spamhaus Postfix docs advises to defer to SpamAssassin or Rspamd via milter if either of those are setup, otherwise to prefer Postscreen. Should Postscreen still be enabled if Rspamd has the RBL module active?

This old Mailing list discussion with Postfix maintainers responding about reject_rbl_client vs postscreen_dnsbl_sites:

Quotes from mailing list discussion

On the interfaces and ports that postscreen(8) passes mail to, yes.
If you have a dedicated submission port, this is not affected by postscreen running on port 25.

The other difference is that postscreen caches a "pass" dnsbl result for postscreen_dnsbl_ttl (default 1h).
Some sites may prefer to lower the cache TTL or do the tests in smtpd to quickly catch previously good clients gone bad, or to increase the TTL to reduce DNS lookups and latency.
http://www.postfix.org/postconf.5.html#postscreen_dnsbl_ttl

Note that postscreen caches the results of successful tests, so that it does not repeat every test for every connection. > This is controlled by the postscreen_mumble_ttl parameters.

  • postscreen caches that the client IS NOT listed in DNSBL. It doesn't cache clients that are listed.
  • DNS servers cache that the client IS listed in DNSBL. They don't cache non-existent DNSBL records.

I can give an example of when/why they might help.
Under stress, postscreen reduces the greet pause to 2 seconds. Under stress, the possibility that DNSBL responses might be delayed is greater.
Why would you not avail yourself of that second chance to query zen.spamhaus.org? It's cached now at your nameserver, whether positive or negative, so it hurts nothing.


Related issues / PRs for improved traceability

Mostly for my benefit 😅

DNS

Some advice over the years with the project for working around the many reports of false-positive blockings from the DNSBLs with public DNS resolvers:

@github-actions
Copy link
Copy Markdown
Contributor

Documentation preview for this PR is ready! 🎉

Built with commit: 0acf895

@georglauterbach georglauterbach merged commit ac1df91 into master Feb 10, 2023
@georglauterbach georglauterbach deleted the postfix/dnsbls branch February 10, 2023 23:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/configuration (file) kind/improvement Improve an existing feature, configuration file or the documentation service/postfix

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Double zen.spamhaus.org check is excess?

3 participants