0

I have smtp server exim. I want to forbid to sent bounce message if the e-mail came to a non-existent address. I added to the beginning of acl in the config:


    begin acl
    acl_check_rcpt:
         deny   domains = +local_domains
         message = Can't verify recipient
         !verify  = recipient

but it not helped me.

in the log can see that working router:


rcpt_check_router:
driver = redirect
allow_fail
no_verify
data = "${if eq{}{${lookup mysql{ SQLUSR }}}{:fail: unknown local user}{$local_part@$domain} }"

when :fail: was replaced :blackhole:


rcpt_check_router:
driver = redirect
allow_fail
no_verify
data = "${if eq{}{${lookup mysql{ SQLUSR }}}{:blackhole: unknown local user}{$local_part@$domain} }"

no bounce message. but exim receive message.

How to use :fail: without e-mail to sender from Mail Delivery System ?

fevil
  • 1
  • 1
  • The destination addresses are local; why are you accepting mail to those addresses in the first place? – Law29 Apr 29 '20 at 21:44

1 Answers1

0

Your ACL will notify the sending server that the address was not accepted. If you want to avoid bouncing invalid addesses you need to accept in this case. Alternatively, you can defer which will cause the sending server to requeue the message. Most spambots will not retry.

If you don't bounce or defer to legitimate senders, you are likely to get high volumes of mail to address which were once valid. With the standard configuration any messages sent when you reject the sender are sent by the sending server, not by Exim. Bouncing messages after accepting them results in backscatter spam.

If you are accepting all messages to local domains, you should configure a router for mail to invalid email addresses. If you get the router wrong, you are may drop valid email. It looks like your router should work if you accept. However, if the database call fails, you may blackhole legitimate messages.

BillThor
  • 27,737
  • 3
  • 37
  • 69