Collection items defined in local.d
get merged with the default config. If you want to remove something that is defined by default in the list or the collection, you have to use override.d
.
Create a file /etc/rspamd/override.d/rbl.conf
:
url_whitelist = [];
rbls {
}
You take the module configuration /etc/rspamd/modules.d/rbl.conf
and look for its top level collection, in this case rbl { ... }
. At the bottom of the file, inside the top level collection, sitting directives that include local, dynamic and override files. Since they are loaded from inside of a top level collection, contents of override files should not contain this top level collection. So, you see items of the collection, url_whitelist = [];
, rbls {... }
, and a few variables. You just define those in your file.
To copy a configuration from default and tweak, you copy the file from modules.d
, remove rbl {
and final }
and remove three .include
lines at the bottom. This is what you put into override.d
. Now your override is the copy of the original, but won't be replaced with updates, and you can edit it freely to shape as you like.
The order of processing of those files is as follows. The contents of collections in local.d is merged with the collections in the default; simple values get overridden. Then, dynamic configuration applies, which could override even local.d settings; this dynamic configuration could be updated from the rspamd web interface. Then, override.d is applied with highest priority, so you can put things there to be sure they can't be edited via web interface, because anything defined in override.d files will override things that you can put via web interface.