Skip to content

mailclassifier

Marco Favero edited this page Dec 22, 2017 · 6 revisions

This is the wiki for the Mail Classifier extension to RBL Manager. Mail Classifier is a tool which interfaces to your IMAP account and read all your headers to find out authentication and spam classification.

Introduced with version 2.3 of RBL Manager, Mail Classifier works with Spamassassin headers, DSPAM headers and standard AR headers.

Mail Classifier shows a list of all your mails by selected folder, explaining info about DMARC, DKIM, SPF, Spam/Ham classification. If you have DSPAM, you can install dspamc and learn "on error" your mails to correct misclassification.

Installation

From contrib/RPM download the rblmanager-mailClassifier package and install it through yum.

yum install rblmanager-mailClassifier

The package searches for dependecies the same version of rblmanager and dspam-client (you can find it on EPEL). The dspam-client is a cheap tool, don't worry if you don't use it.

Configuration

In /usr/share/RBL/contrib/mailClassifier/ you find imap.conf. Here you find:

[imap]
mailhost        = imap.example.com
authuser        = admin
authpassword    = password
oldestday       = 15
dspamtospamass  = false
; Current learn values are 'false' and 'dspamc'
learn           = false

[host]
ar[]            = mx1.example.com
ar[]            = mx2.example.com

The authuser and authpassword are the IMAP admin credential to access to all imap accounts. If you are administrator, you can access to all mailboxes. If you login as a normal user you will be restricted to your mailboxes only.

The oldestday is the oldest date to search from.

If you have DSPAM, a "level" is calculated as done by the dspam-spamassassin plugin.

If you use Spamassassin and DSPAM too, you can install the dspam-spamassassin plugin. With dspamtospamass = true the dspam "level" and classification are exctracted directly from Spamassassin headers and they are not calculated from DSPAM headers.

DSPAM Learn on error

With learn = dspamc an interactive button let you to learn your mail with DSPAM through dspamc. A DSPAM header must expose the signature, because DSPAM use it to learn.

You must configure dspam.conf to properly apply DLMTP. For instance, the local dspam.conf client could be:

ClientHost     dspamserver.example.com
ClientPort     20024
ClientIdent    "key@local"

And dspamserver.example.com must contain:

ServerMode auto
ServerPass.local     "key"

Authentication Results headers

This process read the standard AR headers to know if your mail passes DMARC, DKIM, SPF. You can trust your host that verify authentication by adding it in ar[] configuration setting. The mail will present AR headers like

Authentication-Results: mx1.example.com; dmarc=none (p=none dis=none) header.from=gmail.com
Authentication-Results: mx1.example.com; spf=pass smtp.mailfrom=gmail.com
Authentication-Results: mx1.example.com;
	dkim=pass (1024-bit key) header.d=gmail.com header.i=@gmail.com header.b="YF47NAbx"

Spamassassin headers

This tool need mails with Spamassassin X-Spam-Status header, such as

X-Spam-Status: No, score=-1.739 tagged_above=-999 required=6.5
	tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1,
	DSPAM_HAM_99=-2.5, HTML_MESSAGE=0.001, SPF_PASS=-0.001] autolearn=disabled

There's no need to configure something for this.

Clone this wiki locally