One server I maintain receives huge amounts of spam. In my ongoing attempts at killing as many spam-mails as possible, among others I've been using dns blacklists under the reject_rbl_client option umbrella. For years this worked really well, combined with clamsmtpd, plus some header and body checks. DNS caching also works on the server, the RBLs allow my server to use their lists, yet when I check the mail.log, I'm missing the entries related to RBL blocking entirely. I'm not sure when this changed (has to be longer than 3 months since that's how far back my logs go). Could someone check the config below? (I reformatted the smtpd_recipient_restrictions option to make it easier to skim/check, and x-ed the vital IP/domain info)
# postconf -n anvil_rate_time_unit = 60s anvil_status_update_time = 1800s append_at_myorigin = yes append_dot_mydomain = no biff = no body_checks = regexp:/etc/postfix/body_checks body_checks_size_limit = 4096 bounce_size_limit = 150000 broken_sasl_auth_clients = yes command_directory = /usr/sbin config_directory = /etc/postfix content_filter = scan:127.0.0.1:10025 daemon_directory = /usr/lib/postfix default_minimum_delivery_slots = 4 default_process_limit = 64 default_recipient_limit = 10000 delay_warning_time = 8h disable_vrfy_command = yes empty_address_recipient = admin header_checks = regexp:/etc/postfix/header_checks header_size_limit = 102400 home_mailbox = Maildir/ html_directory = no in_flow_delay = 1s inet_interfaces = x.x.x.x, 127.0.0.1 inet_protocols = ipv4 invalid_hostname_reject_code = 554 local_destination_concurrency_limit = 6 local_recipient_maps = mail_owner = postfix mail_spool_directory = /var/mail mailbox_size_limit = 0 mailq_path = /usr/bin/mailq manpage_directory = /usr/share/man maximal_backoff_time = 3601s maximal_queue_lifetime = 14d message_size_limit = 36000000 mime_header_checks = regexp:/etc/postfix/mime_header_checks minimal_backoff_time = 180s mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, mail.$mydomain, x.com, x.nl, x.net, x.in, x.org, x.pm mydomain = x.net myhostname = x.net mynetworks = x.x.x.0/24 127.0.0.0/8 x.x.x.x myorigin = $mydomain newaliases_path = /usr/bin/newaliases non_fqdn_reject_code = 554 qmgr_message_active_limit = 12000 queue_directory = /var/spool/postfix queue_minfree = 122880000 queue_run_delay = 180s readme_directory = /usr/share/doc/postfix receive_override_options = no_address_mappings recipient_delimiter = + sample_directory = /usr/share/doc/postfix sendmail_path = /usr/sbin/sendmail setgid_group = postdrop smtp_bind_address = x.x.x.x smtp_connect_timeout = 60s smtp_destination_concurrency_limit = 18 smtp_destination_recipient_limit = 24 smtp_helo_name = x.net smtp_helo_timeout = 60s smtp_tls_CAfile = $smtpd_tls_CAfile smtp_tls_ciphers = export smtp_tls_loglevel = 1 smtp_tls_note_starttls_offer = yes smtp_tls_protocols = !SSLv2 smtp_tls_security_level = may smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache smtp_use_tls = yes smtpd_banner = x.net ESMTP smtpd_client_connection_count_limit = 40 smtpd_client_connection_rate_limit = 200 smtpd_client_message_rate_limit = 20 smtpd_data_restrictions = reject_multi_recipient_bounce, reject_unauth_pipelining, permit smtpd_delay_reject = yes smtpd_error_sleep_time = 2s smtpd_hard_error_limit = 18 smtpd_helo_required = yes smtpd_recipient_limit = 80 smtpd_recipient_overshoot_limit = 120 smtpd_recipient_restrictions = reject_invalid_hostname, reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, check_client_access hash:/etc/postfix/whitelist, reject_unauth_destination, reject_non_fqdn_recipient, reject_non_fqdn_sender, reject_unknown_sender_domain, permit_auth_destination, permit_dnswl_client hostkarma.junkemailfilter.com=127.0.0.1, permit_dnswl_client hostkarma.junkemailfilter.com=127.0.0.5, reject_rbl_client badconf.rhsbl.sorbs.net, reject_rbl_client new.spam.dnsbl.sorbs.net, reject_rbl_client hostkarma.junkemailfilter.com=127.0.0.2, reject_rbl_client b.barracudacentral.org, reject_rbl_client all.s5h.net, reject_rbl_client bl.blocklist.de, reject_rbl_client dnsbl.inps.de, reject_rbl_client ubl.unsubscore.com, reject_rbl_client virbl.dnsbl.bit.nl, reject_rbl_client mail-abuse.blacklist.jippg.org, permit smtpd_sasl_auth_enable = yes smtpd_sasl_authenticated_header = no smtpd_sasl_local_domain = smtpd_sasl_security_options = noanonymous smtpd_sender_restrictions = permit_mynetworks, reject_non_fqdn_sender, reject_unknown_sender_domain, check_sender_access hash:/etc/postfix/sender_access, permit smtpd_soft_error_limit = 8 smtpd_tls_CAfile = /etc/postfix/ssl/ca-certificates.crt smtpd_tls_auth_only = no smtpd_tls_cert_file = /etc/postfix/ssl/x.net.crt smtpd_tls_dh1024_param_file = /etc/postfix/dh_1024.pem smtpd_tls_dh512_param_file = /etc/postfix/dh_512.pem smtpd_tls_eecdh_grade = strong smtpd_tls_key_file = /etc/postfix/ssl/x.net.key smtpd_tls_loglevel = 1 smtpd_tls_received_header = no smtpd_tls_security_level = may smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache smtpd_tls_session_cache_timeout = 3600s smtpd_use_tls = yes strict_rfc821_envelopes = yes tls_preempt_cipherlist = yes tls_random_source = dev:/dev/urandom undisclosed_recipients_header = To: (Probably SPAM or SCAM) undisclosed-recipients:; unknown_address_reject_code = 554 unknown_client_reject_code = 554 unknown_hostname_reject_code = 554 unknown_local_recipient_reject_code = 554 unknown_virtual_alias_reject_code = 554 unknown_virtual_mailbox_reject_code = 554 unverified_recipient_reject_code = 554 unverified_sender_reject_code = 554 and # cat master.cf # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (100) # ========================================================================== # SMTP (25/TCP) smtp inet n - y - - smtpd -o smtpd_sasl_auth_enable=yes # Submission (587/TCP+UDP) submission inet n - y - - smtpd -o smtpd_sasl_auth_enable=yes smtp inet n - n - 24 smtpd # raised from 10 (2014-07): -o smtpd_client_connection_count_limit=16 pickup fifo n - n 60 1 pickup cleanup unix n - n - 0 cleanup qmgr fifo n - n 300 1 qmgr #qmgr fifo n - n 300 1 oqmgr tlsmgr unix - - n 1000? 1 tlsmgr rewrite unix - - n - - trivial-rewrite bounce unix - - n - 0 bounce defer unix - - n - 0 bounce trace unix - - n - 0 bounce verify unix - - n - 1 verify flush unix n - n 1000? 0 flush proxymap unix - - n - - proxymap smtp unix - - n - - smtp # When relaying mail as backup MX, disable fallback_relay to avoid MX loops relay unix - - n - - smtp -o fallback_relay= # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5 showq unix n - n - - showq error unix - - n - - error discard unix - - n - - discard local unix - n n - - local virtual unix - n n - - virtual lmtp unix - - n - - lmtp anvil unix - - n - 1 anvil scache unix - - n - 1 scache maildrop unix - n n - - pipe flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient} old-cyrus unix - n n - - pipe flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension} ${user} cyrus unix - n n - - pipe user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user} uucp unix - n n - - pipe flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) ifmail unix - n n - - pipe flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient) bsmtp unix - n n - - pipe flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient # [ ClamSMTP begin scan filter (used by content_filter) scan unix - - n - 16 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o smtp_enforce_tls=no # For injecting mail back into postfix from the filter 127.0.0.1:10026 inet n - n - 16 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_style=host -o smtpd_authorized_xforward_hosts=127.0.0.0/8 # Clamsmtpd end ] retry unix - - - - - error Any insights into what could be wrong?