Qpsmtpd check earlytalker

From SME Server
Jump to: navigation, search

qpsmtpd: check_earlytalker

When a remote mail server sends email to your SME server, the SMTP specifications stipulate that it must wait until your SME server says "go ahead" before transmitting anything.

The "go ahead" response on a SME server should look like

220 mail.mysmeserver.com ESMTP

Many spam servers do not wait for the "go ahead" from the receiving mail server. Waiting for each connection, even for as little as a second or two, would greatly increase the amount of time required to send the spam. Also, until recently most mail servers would accept the email even from impolite senders that didn't wait.

SME Server uses the qpsmtpd check_earlytalker plugin to reject email from any mail server that tries to send email without waiting for permission.

The default settings insert a 1 second delay after the remote system connects to the SME server before the SME server responds.

You can increase this default delay from 1 second (to 3 seconds in the following example) at present only with a custom template:

Prior SME9.2 : check_earlytalker plugin

mkdir -p /etc/e-smith/templates-custom/var/service/qpsmtpd/config/peers/0
cd /etc/e-smith/templates-custom/var/service/qpsmtpd/config/peers/0
echo "check_earlytalker wait 3" > 10check_earlytalker
signal-event email-update

For SME9.2 and higher : earlytalker plugin

if updating remove previous template custom:

rm /etc/e-smith/templates-custom/var/service/qpsmtpd/config/peers/0/10check_earlytalker

then install:

mkdir -p /etc/e-smith/templates-custom/var/service/qpsmtpd/config/peers/0
cd /etc/e-smith/templates-custom/var/service/qpsmtpd/config/peers/0
echo "earlytalker wait 3" > 10earlytalker
signal-event email-update

The following command will let you monitor your connections to verify that (check_)earlytalker is working as expected:

tail -f /var/log/qpsmtpd/current |tai64nlocal| egrep  "Accepted connection|earlytal"

Mmccarn 17:59, 9 October 2008 (UTC)