Email is not delivered: DEFER during call 'grey' handler

Refers to:

  • Plesk 12.5 for Linux
  • Plesk 10.4 for Linux
  • Plesk Onyx for Linux
  • Plesk 11.0 for Linux
  • Plesk 11.5 for Linux
  • Plesk 12.0 for Linux
  • Plesk 12.5 for Windows

Created:

2016-11-16 12:47:07 UTC

Modified:

2016-12-21 19:12:25 UTC

0

Was this article helpful?


Have more questions?

Submit a request

Email is not delivered: DEFER during call 'grey' handler

Symptoms

Email is not delivered. The following messages are shown in the /var/log/maillog log:

handlers_stderr: DEFER
DEFER during call 'grey' handler
Message aborted.
milter-reject: DATA from mail.example.com[x.x.x.58]: 451 4.7.1 Service unavailable - try again later; from=<the_sender@example1.com> to=<the_recipient@example1.com> proto=ESMTP helo=<email.example.com>

or:

Handlers Filter before-queue for qmail started ...
from=user@example.com
to=mailbox@example2.com
Starting greylisting filter...
handlers_stderr: DEFER
DEFER during call 'grey' handler

After a while, email finally arrives into the mailbox with the following entries in /var/log/maillog log:

Starting greylisting filter...
handlers_stderr: SKIP
SKIP during call 'grey' handler

Cause

This is an expected behavior of Greylisting that introduces a short delay before accepting mail: mail gets deferred for the first time, then gets delivered for the second attempt to send an email. In most cases, mail from a valid sender will be delivered within an hour, but depending on how the sending server is configured, it could be much longer.

Mail from a spammer, on the other hand, will be deferred for 1 time and mail sending will not be retried: spammers usually send mail in bulk to thousands of recipients and do not bother with resending. See Plesk Administrator Guide for more details.

Delay takes place because Greylisting verifies three components of message: IP, sender, recipient. Based on these components Greylisting determines whether it should issue a temporary reject code or accept the message.

Workaround

To prevent delay, put required mailbox or the whole domain *@example.com into White List in:

Tools and Settings > Spam Filter > White List

This way email from the white-listed senders will be accepted without passing through the greylisting check.

Alternatively, disable Greylisting spam protection on the whole server:

Tools and Settings > Spam Filter > Switch on server-wide greylisting spam protection

Additional information

The following statuses can be seen in maillog : DEFER, SKIP, REJECT

In terms of Greylisting DEFER means 'try again later'; SKIP means 'allow delivery'; REJECT means that the sender IP is blacklisted globally.

Have more questions? Submit a request
Please sign in to leave a comment.