After following the Exim documentation on ACLs, I cannot get Exim to utilize the fakereject control for the address noreply@other.com with the following config (only relevant lines included):

# config says I shouldn't need this, but the function it said would return it was being wonky, so I included it
primary_hostname = actual.domain.com

# the domain list, in which the local_domains list is augmented by some others:
domainlist other_aliases = other.com : otherother.com
domainlist local_domains = @ : localhost : localhost.localdomain : +other_aliases

# in the acl_smpt_rcpt list:
warn local_parts = noreply
     domains     = +local_domains
     logwrite    = initiating fakereject
     control     = fakereject/This address is not monitored by a human. Please forward your response to the email address provided in the form data. If there is no email address provided in the form data, contact the administrator of the form.

# this line immediately follows:
accept  hosts = :
        control = dkim_disable_verify

Some notes about noreply: noreply is set up as an actual user on the mailserver, because another client application uses that account to authenticate via SMTP-auth to send email, effectively using the mail server as a relay. The only reason I want to use the fakereject control is because many of our users still try to reply to email from noreply (don't ask me why) and I want to show them something nicer than the standard mailer daemon world-burning-down email.

Besides not sending the fake reject, the log message isn't even written. Any ideas or requests for more information would be much appreciated!

1 Answer 1


Where are you testing from? If you are testing from your local server, the connection has likely been accepted before reaching your warn statement. The recipient ACL starts with some accept statements intended to short-circuit tests designed for incoming mail from the internet.

Is the mail being delivered to the destination handling the noreply mail? This likely requires an alias in /etc/aliases. If not, it may be really bounced before it gets to your warn statement.

Try using exigrep noreply /var/log/exim4/mainlog. This should show detail of each request where noreply was logged. Delivery messages should contain => noreply.

Systems using a noreply address normally set a Reply-To address to which replies are sent. noreploy addresses are typically used by automated system rather than individual users. Personal mail should be sent after authenticating as the user sending the mail.

Testing noreply addresses normally requires generating your own mail to the address. Other than bounce messages, these addresses should see little or no traffic. If you send to well behaved servers, bounces will occur before the delivery has completed, and will appear as a failed delivery. Other serves may accept the message and silently discard messages to invalid addresses.

  • Testing in a live environment. The main log only shows messages coming from noreply, none to noreply. The noreply user actually exists: that's how the clients that need to send email authenticate to the server. Jul 13, 2016 at 23:07
  • @MichaelAtkinson See updates. You will likely have to send your own messages to the noreply address. This should be done from an external source such as a freemail (hotmail, gmail, yahoo, ...) address.
    – BillThor
    Jul 13, 2016 at 23:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.