Plugin: rblcheck


This plugin provides an ability for rejecting/deferring/tagging messages based on $RBLCHECK environment variable.

IMPORTANT: This plugin is written for and tested with mailfront 1.12.

Configuration

$RBLCHECK_REJECT

If set, messages will be rejected with code 554.

$RBLCHECK_DEFER

If set, messages will be deferred with code 451.

$RBLCHECK

Do not set this environment variable as this is set by using patched rblsmtpd. You need to patch ucspi-tcp-0.88/rblsmtpd.c with the combined patch (ucspi-tcp-0.88-rblsmtpd.c-combined.patch) provided in this package.

Sender Action

None

Recipient Action

None

Data Action

When client starts to transmit data, this plugin will start its checking for $RBLCHECK environment variable. If $RBLCHECK is not empty, the message will be rejected or deferred or tagged.

If $RBLCHECK_REJECT is set, message will be rejected with code 554.

If $RBLCHECK_DEFER is set, message will be deferred with code 451.

If $RBLCHECK_REJECT and $RBLCHECK_DEFER not set, the following line will be added to the message header:

X-RBL-Check: rbl1 rbl2 rbl3

Example: If you run rblsmtpd -l zen.spamhaus.org -l rbl.spamcop.net -l dnsbl.njabl.org -l cbl.abuseat.org -l dnsbl.sorbs.net -l accredit.habeas.com -l plus.bondedsender.org -l iadb.isipp.com, rblsmtpd set the $RBLCHECK environment variable with zen.spamhaus.org cbl.abuseat.org means the sender's IP is listed in zen.spamhaus.org and cbl.abuseat.org RBL database.

X-RBL-Check: zen.spamhaus.org cbl.abuseat.org

If sender is authenticated or $RELAYCLIENT environment variable is set, then this plugin will be skipped.

Message Action

None