DSPAM

Description

DSPAM, originally created by Nuclear Elephant, is a free, open-source statistical SPAM filter. In contrast to Bogofilter and CRM114 it can be run in a server/client setup (and has to be for Decency, if you plan to use it). Decency connects to DSPAM via it's DLMTP protocol.

Configuration

Please read first:

default_user

Default: -
Allowed values: string (path)
Required: no

If you want to use one, global, shared User which you train and use for all mail accounts.

client_ident

Default: secret@Relay1
Allowed values: string
Required: yes

This has to be set to the same value as in your dspam.conf.

DSPAM (dspam.conf):

ServerPass.Relay1   "secret"

Decency (dspam.yml):

client_ident: 'secret@Relay1'

host

Default: localhost
Allowed values: string
Required: yes

The hostname / ip where the DSPAM server runs (dspam.conf: ServerHost)

port

Default: 1024
Allowed values: integer
Required: yes

The port number where the DSPAM server listens (dspam.conf: ServerPort)

mode_check

Default: "--user %user% --client --classify --stdout"
Allowed values: String
Required: yes

Checking a mail. Don't change if you do not really know what you are doing.

mode_learn_spam

Default: "--client --user %user% --mode=teft --source=corpus --class=spam --deliver=spam --stdout"
Allowed values: String
Required: yes

Command args for learning. Don't change if you do not really know what you are doing.

mode_unlearn_spam

Default: "--client --user %user% --mode=toe --source=corpus --class=innocent --deliver=innocent --stdout"
Allowed values: String
Required: yes

Command args for learning. Don't change if you do not really know what you are doing.

mode_learn_ham

Default: "--client --user %user% --mode=teft --source=corpus --class=innocent --deliver=innocent --stdout"
Allowed values: String
Required: yes

Command args for learning. Don't change if you do not really know what you are doing.

mode_unlearn_ham

Default: "--client --user %user% --mode=toe --source=corpus --class=spam --deliver=spam --stdout"
Allowed values: String
Required: yes

Command args for learning. Don't change if you do not really know what you are doing.

Example

---

disable: 0

default_user: shared_user
port: 12345

Performance

Strongly dependent on the size of your css files, disk speed, RAM size and so on. If you keep your DSPAM database reasonable small (dont use multiple GB large CSS files), it should be well below a second scanning an average sized mail.