Rspamd for Easy Spam Fighter

About

Rspamd is a binary replacement for SpamAssassin so will have much better performance with much lower resource consumption.
The DirectAdmin implmentation will piggy-back onto the Easy Spam Fighter (ESF) scoring system, so the Rspamd ACLs in the exim configs will mainly just add scores and headers, and leaves it to ESF to decide how to handle the message (with some exceptions, like dropping high-scoring spam, if set by the User)

Requirements

At the time of this writing, SpamBlocker (exim.conf) 4.5+ is sufficient.
EasySpamFighter 1.17 is required, as it has the needed include lines to load the Rspamd configs.
It may require exim to be patched, yet unknown:


Recompile Exim

Installation

Run the following CustomBuild 2.0 commands to install Rspamd:


Help

See the forum for issues or questions:
http://forum.directadmin.com/forumdisplay.php?f=####


Files

All Rspamd files are kept under

/etc/exim/rspamd/*


This file tells exim the spamd_address should be variant=rspamd.
Not currently any "variables" in this file. -- variables.conf
However, the ESF variable EASY_IS_SPAM is used to add to ESF score if it is spam.
If you want to customize the file, create your own file:
-- variables.conf.custom, and set only the values in this file as desired, and they'll override the defaults. You must use double == in this file, and issue ./build exim_conf to merge to the main conf.

-- connect.conf
Used to set acl_m_rspamd = 1 so ESF knows which spamd is being used (SpamAssassin or Rspamd).
-- check_message.conf
Actually makes the "spam =" call to rspamd as nobody and sets all variables.
Adds headers as needed, and adds score to acl_m_easy69 for ESF decision.
Note that, unlike SpamAssassin, where exim needs to tell spamd which User to run as, to determine per-User config,
Rspamd is not told what to do. The headers of the message is used match up the rspamd configs, created by DA, and internally decisions are made by Rspamd to decide which configs to used, based on regexes, etc..