From 8e68cbcd1904bfca6d9d1f5b0bb7fcc0c7eda91e Mon Sep 17 00:00:00 2001 From: Bill Forsyth Date: Thu, 26 Jun 2025 23:46:10 -0400 Subject: [PATCH] add optional regex for 450 errors (bad/no PTR) Extpression matches these lines: Jun 18 08:05:17 myhost sm-mta[17002]: 55IC59VD017002: ruleset=check_rcpt, arg1=, relay=[45.125.66.67], reject=450 4.4.0 ... Relaying temporarily denied. Cannot resolve PTR record for 45.125.66.67 Jun 18 08:39:01 myhost sm-mta[18321]: 55ICcxnU018321: ruleset=check_rcpt, arg1=, relay=[45.125.66.67], reject=450 4.4.0 ... Relaying temporarily denied. Cannot resolve PTR record for 45.125.66.67 Jun 19 15:57:25 myhost sm-mta[1995]: 55JJvOSJ001995: ruleset=check_rcpt, arg1=, relay=[165.154.217.238], reject=450 4.4.0 ... Relaying temporarily denied. Cannot resolve PTR record for 165.154.217.238 Signed-off-by: bill --- config/filter.d/sendmail-reject.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/config/filter.d/sendmail-reject.conf b/config/filter.d/sendmail-reject.conf index fab80e79..8205b32b 100644 --- a/config/filter.d/sendmail-reject.conf +++ b/config/filter.d/sendmail-reject.conf @@ -36,6 +36,7 @@ mdre-normal = mdre-extra = ^(?:\S+ )?\[](?: \(may be forged\))? did not issue \S+ during connection mdre-aggressive = ^lost input channel from (\S+ )?\[\] to MTA(?:-v[46])? after (rcpt|mail)$ + ^ruleset=check_rcpt, arg1=(?P<\S+@\S+>), relay=(\S+ )?\[\](?: \(may be forged\))?, reject=(?:450 4\.4\.0(?: (?P=email)\.\.\.)?(?: Relaying temporarily denied\.)?(?: Cannot resolve PTR record for (\d+\.){3}\d+))$ %(mdre-extra)s failregex = %(cmnfailre)s