table of contents
Amavis::SpamControl::RspamdClient(3) | User Contributed Perl Documentation | Amavis::SpamControl::RspamdClient(3) |
Amavis extension module to use Rspamd as a spam checker¶
Copyright (c) 2019 Ralph Seichter, partially based on the SpamdClient extension. Released under GNU General Public License; see Amavis LICENSE file for details.
Example configuration #1 (local Rspamd)¶
# Rspamd running on the same machine as Amavis. Default URL # is http://127.0.0.1:11333/checkv2 , matching Rspamd's # "normal" worker defaults. @spam_scanners = ( [ 'Local Rspamd', 'Amavis::SpamControl::RspamdClient', # Adjust scores according to Rspamd's "required score" # setting (defaults to 15). Scores reported by Rspamd # will be multiplied with this factor. The following # adjusts Rspamd scores to SpamAssassin scores. While # this setting is technically optional, not adjusting # scores is prone to cause headaches. score_factor => $sa_tag2_level_deflt / 15.0, # MTA name is used to assess validity of existing # Authentication-Results headers, e.g. if DKIM/DMARC # validation has already happened. mta_name => 'mail.example.com', ] );
Example configuration #2 (remote Rspamd)¶
# Rspamd running behind HTTPS-capable proxy using basic # authentication to control access. @spam_scanners = ( [ 'Remote Rspamd', 'Amavis::SpamControl::RspamdClient', url => 'https://rspamd-proxy.example.com/checkv2', # Response timeout in seconds. Default is 60, matching # Rspamd's standard config for the "normal" worker. timeout => 42, # SSL-options and -credentials passed to LWP::UserAgent, # see https://metacpan.org/pod/LWP::UserAgent . Default: # ssl_opts => { verify_hostname => 1 }, credentials => { # The following <host>:<port> must match the 'url' # defined above or credentials won't be transmitted. netloc => 'rspamd-proxy.example.com:443', # Remote authentication realm realm => 'Rspamd restricted access', username => 'Marco', password => 'Polo', }, # Don't scan messages remotely if the body size extends # the following limit (optional setting). mail_body_size_limit => 32 * 1024, score_factor => $sa_tag2_level_deflt / 15.0, mta_name => 'mail.example.com', ] );
Requirements¶
In addition to Amavis' core requirements, this extension needs the following additional Perl modules:
JSON HTTP::Message LWP::UserAgent LWP::Protocol::https Net::SSLeay
Should your host OS not provide the necessary packages, these modules can be obtained via https://www.cpan.org .
2023-08-12 | perl v5.40.0 |