Skip to content

Commit 81b0353

Browse files
committed
Update info on each module. New bottom sections.
1 parent ed8718b commit 81b0353

File tree

1 file changed

+64
-19
lines changed

1 file changed

+64
-19
lines changed

doc/modules/index.md

+64-19
Original file line numberDiff line numberDiff line change
@@ -27,18 +27,21 @@ and [here](faq.html#what-are-the-locald-and-overrided-directories).
2727

2828
Available C modules:
2929

30-
- [chartable](chartable.html): checks character sets of text parts in messages. (Note:
31-
"char" as in character, and "table" as in a table of character sets.)
32-
- [dkim](dkim.html): performs DKIM signatures checks.
33-
- [fuzzy_check](fuzzy_check.html): checks a message's fuzzy hashes against public blacklists.
34-
- [regexp](regexp.html): a core module that deals with regular expressions, internal
30+
- [chartable](chartable.html) - checks character sets of text parts in messages.
31+
- (Note: "char" as in character, and "table" as in a table of character sets.)
32+
- [dkim](dkim.html) - performs [DKIM](http://www.dkim.org/) signatures checks.
33+
- The `dkim` C module was previously used for both checking for inbound signatures and for
34+
writing outbound signatures. Now these feature are separated, where [dkim](dkim.html) processes inbound
35+
messages and the [dkim_signing](dkim_signing.html) Lua module processes outbound messages.
36+
- [fuzzy_check](fuzzy_check.html) - checks a message's fuzzy hashes against public blacklists.
37+
- [regexp](regexp.html) - a core module that deals with regular expressions, internal
3538
functions and Lua code to filter messages.
3639

3740
In prior releases other C modules were enabled by default:
3841

39-
- [spf](spf.html): checks SPF records for messages processed. This C module was removed in
42+
- [spf](spf.html) - checks SPF records for messages processed. This C module was removed in
4043
version 2.3 and replaced by an equivalent Lua module.
41-
- [surbl](surbl.html): extracts URLs from messages and check them against
44+
- [surbl](surbl.html) - extracts URLs from messages and check them against
4245
public DNS black-lists to filter messages containing malicious URLs. This module was removed
4346
in version 2.0 and replaced by the [rbl module](rbl.html). In an upgrade to v2, the existing
4447
configuration is automatically converted.
@@ -61,22 +64,29 @@ modules {
6164
If a path is a directory then Rspamd scans it for `*.lua` pattern and load all
6265
files matched.
6366

64-
The following Lua modules are enabled in the default configuration (but may require additional configuration to work, see notes below):
67+
The following Lua modules are enabled in the default configuration. Except where noted with a trailing asterisk,
68+
each of these modules has its own module_name.conf file in $LOCAL_CONFDIR/modules.d. Some modules require
69+
additional configuration to work, see notes below. :
6570

6671
- [antivirus](antivirus.html) - integrates virus scanners (requires configuration)
6772
- [arc](arc.html) - checks and signs ARC signatures
6873
- [asn](asn.html) - looks up ASN-related information
69-
- [clickhouse](clickhouse.html) - pushes scan-related information to clickhouse DBMS (requires configuration)
70-
- [bayes_expiry](bayes_expiry.html) - provides expiration of statistical tokens (requires Redis and configuration)
74+
- [clickhouse](clickhouse.html) - pushes scan-related information to the clickhouse DBMS (requires configuration)
75+
- [bayes_expiry](bayes_expiry.html) - provides expiration of statistical tokens (requires Redis and configuration) *
7176
- [dcc](dcc.html) - performs [DCC](http://www.dcc-servers.net/dcc/) lookups to determine message bulkiness (requires configuration)
72-
- [dkim_signing](dkim_signing.html) - adds DKIM signatures to messages (requires configuration)
73-
- [dmarc](dmarc.html) - performs DMARC policy checks (requires Redis & configuration for reporting)
77+
- [dkim_signing](dkim_signing.html) - adds [DKIM](http://www.dkim.org/) signatures to messages (requires configuration)
78+
- The `dkim` C module was previously used for both checking for inbound signatures and for
79+
writing outbound signatures. Now these feature are separated, where [dkim](dkim.html) processes inbound
80+
messages and the [dkim_signing](dkim_signing.html) Lua module processes outbound messages.
81+
- [dmarc](dmarc.html) - performs DMARC policy checks (requires Redis and configuration for reporting)
7482
- [elastic](elastic.html) - pushes scan-related information to Elasticsearch. (requires configuration)
75-
- [emails](emails.html) - extract emails from a message and checks it against DNS blacklists. (requires configuration)
83+
- [external_services](external_services.html) - allows use of many external services (requires configuration)
7684
- [force_actions](force_actions.html) - forces actions if selected symbols are detected (requires configuration)
77-
- [greylisting](greylisting.html) - allows to delay suspicious messages (requires Redis)
85+
- [forged_recipients](forged_recipients.html) - Check forged recipients **and senders** (e.g. mime and smtp recipients mismatch (requires configuration)
86+
- [greylist](greylisting.html) - allows suspicious messages to be delayed (requires Redis)
87+
- Some documentation refers to this as the 'greylist**ing**' module, but internally it is seen as 'greylist'.
88+
- [hfilter](hfilter.html) - filters some known bad patterns in hostnames, received headers, helo domains and reverse dns (requires configuration)
7889
- [history redis](history_redis.html) - stores history in Redis (requires Redis)
79-
- [ip_score](ip_score.html) - dynamically scores sender reputation (requires Redis). This module is removed since Rspamd 2.0 and replaced by [reputation module](reputation.html). The existing configuration is automatically converted by Rspamd.
8090
- [maillist](maillist.html) - determines the common mailing list signatures in a message.
8191
- [metadata_exporter](metadata_exporter.html) - pushes message metadata to external systems (requires configuration)
8292
- [metric_exporter](metric_exporter.html) - pushes statistics to external monitoring systems (requires configuration)
@@ -85,30 +95,65 @@ The following Lua modules are enabled in the default configuration (but may requ
8595
- [mime_types](mime_types.html) - applies some rules about mime types met in messages
8696
- [multimap](multimap.html) - a complex module that operates with different types of maps.
8797
- [neural networks](neural.html) - allows to post-process messages using neural network classification. (requires Redis).
98+
- Some documentation refers to this as the 'neural **network**' module, but internally it is referenced as just 'neural'.
8899
- [once_received](once_received.html) - detects messages with a single `Received` headers and performs some additional checks for such messages.
89100
- [phishing](phishing.html) - detects messages with phished URLs.
90101
- [ratelimit](ratelimit.html) - implements leaked bucket algorithm for ratelimiting (requires Redis & configuration)
91-
- [replies](replies.html) - checks if an incoming message is a reply for our own message (requires Redis)
92102
- [rbl](rbl.html) - a plugin that checks messages against DNS runtime blacklists.
103+
- [replies](replies.html) - checks if an incoming message is a reply for our own message (requires Redis)
93104
- [reputation](reputation.html) - a plugin that manages reputation evaluation based on various rules.
94105
- [rspamd_update](rspamd_update.html) - load dynamic rules and other Rspamd updates (requires configuration)
95106
- [spamassassin](spamassassin.html) - load spamassassin rules (requires configuration)
96107
- [spf.html](spf.html) - perform SPF checks
97108
- [trie](trie.html) - uses suffix trie for extra-fast patterns lookup in messages. (requires configuration)
98-
- [whitelist](whitelist.html) - provides a flexible way to whitelist (or blacklist) messages based on SPF/DKIM/DMARC combinations
99109
- [url_redirector](url_redirector.html) - dereferences redirects (requires Redis configuration)
110+
- [whitelist](whitelist.html) - provides a flexible way to whitelist (or blacklist) messages based on SPF/DKIM/DMARC combinations
111+
112+
The following modules have been removed or deprecated:
113+
114+
- [emails](emails.html) - extract email addresses from a message and checks them against DNS blacklists. (requires configuration)
115+
- Deprecated, use [rbl](rbl.html).
116+
- [ip_score](ip_score.html) - dynamically scores sender reputation (requires Redis).
117+
- Removed as of v2.0 and replaced by the [reputation module](reputation.html). The existing configuration
118+
in older installations is automatically converted by an Rspamd upgrade.
100119

101120
The following modules are explicitly disabled in the default configuration, set `enabled = true` in `local.d/${MODULE_NAME}.conf` to enable them:
102121

103122
- [mx_check](mx_check.html) - checks if sending domain has a connectable MX (requires Redis)
123+
- **p0f** - see below
124+
- [spamtrap](spamtrap.html) - catch spam trapped emails or even a catch-all domain. Intended for learning Bayes spam. (requires configuration)
104125

105-
The following modules are explicitly disabled and are experimental, so you need to set `enabled = true` in `local.d/${MODULE_NAME}.conf` **AND** to set the global option `enable_experimental = true` in `local.d/options.inc`:
126+
The following modules are explicitly disabled and are experimental, see below to Enable a module **AND** set the global option `enable_experimental = true` in `local.d/options.inc`:
106127

107128
- [url_reputation](url_reputation.html) - assigns reputation to domains in URLs (requires Redis). Removed in Rspamd 2.0.
108129
- [url_tags](url_tags.html) - persists URL tags in Redis (requires Redis). Removed in Rspamd 2.0.
109130

110131
Experimental modules are not recommended for production usage!
111132

133+
The following modules require documentation:
134+
135+
- **http_headers**
136+
- **p0f** - passive OS fingerprinting : [Wikipedia](https://en.wikipedia.org/wiki/P0f) / Rspamd [PR #3037](https://github.com/rspamd/rspamd/pull/3037)
137+
138+
112139
## Disabling module
113140

114-
To disable an entire module you can set `enabled = false;` in `/etc/rspamd/local.d/${MODULE_NAME}.conf`
141+
To disable an entire module set `enabled = false;` in `$LOCAL_CONFDIR/local.d/${MODULE_NAME}.conf`.
142+
143+
## Enabling a disabled module
144+
145+
To enable an entire module set `enabled = true;` in `$LOCAL_CONFDIR/local.d/${MODULE_NAME}.conf`.
146+
147+
## Config file locations for modules
148+
149+
Here are some guidelines regarding where module configurations are stored:
150+
151+
- The Rspamd-provided configuration files are in `$LOCAL_CONFDIR/modules.d`.
152+
- Your overrides are set in `$LOCAL_CONFDIR/local.d`
153+
- The value of `$LOCAL_CONFDIR` is usually `$PREFIX/etc/rspamd`
154+
- The value of `$CONFDIR` is usually the same as `$LOCAL_CONFDIR`
155+
- The value of `$PREFIX` is usually null
156+
- So defaults are usually in `/etc/rspamd/modules.d`, overrides in `/etc/rspamd/local.d`
157+
- These $values may be changed at build time - the rules here apply for a default build
158+
- To see the values of the environment variables that are actually being used by Rspamd at run-time,
159+
Run `rspamadm lua` and enter `rspamd_paths` at the prompt. This returns a JSON object with values. Ctrl-C to exit.

0 commit comments

Comments
 (0)