table of contents
PublicInbox::SaPlugin::ListMirror(3pm) | User Contributed Perl Documentation | PublicInbox::SaPlugin::ListMirror(3pm) |
NAME¶
PublicInbox::SaPlugin::ListMirror - SpamAssassin plugin for mailing list mirrors
SYNOPSIS¶
loadplugin PublicInbox::SaPlugin::ListMirror
Declare some mailing lists based on the expected List-Id value, expected servers, and mailing list address:
list_mirror List-Id <foo.example.com> *.example.com foo@example.com list_mirror List-Id <bar.example.com> *.example.com bar@example.com
Bump the score for messages which come from unexpected servers:
header LIST_MIRROR_RECEIVED eval:check_list_mirror_received() describe LIST_MIRROR_RECEIVED Received does not match expected score LIST_MIRROR_RECEIVED 10
Bump the score for messages which Bcc the list:
header LIST_MIRROR_BCC eval:check_list_mirror_bcc() describe LIST_MIRROR_BCC Mailing list was Bcc-ed score LIST_MIRROR_BCC 5
DESCRIPTION¶
This plugin contains common functions to provide accurate, ongoing mirrors of existing mailing lists. It may be used independently of the rest of public-inbox, it does not depend on any public-inbox code, only SpamAssassin.
ADMINISTRATOR SETTINGS¶
This plugin has no administrator settings, aside from the need to load it via "loadplugin" and enabling user rules "allow_user_rules 1"
USER SETTINGS¶
- list_mirror HEADER HEADER_VALUE HOSTNAME_GLOB [LIST_ADDRESS]
- Declare a list based on an expected
"HEADER" matching
"HEADER_NAME" exactly coming from
"HOSTNAME_GLOB".
"LIST_ADDRESS" is optional, but may
specify the address of the mailing list being mirrored.
"List-Id" or "X-Mailing-List" are common values of "HEADER"
An example of "HEADER_VALUE" is "<foo.example.org>" if "HEADER" is "List-Id".
"HOSTNAME_GLOB" may be a wildcard match for machines where mail can come from or an exact match.
"LIST_ADDRESS" is only required if using the "check_list_mirror_bcc" eval rule
"list_mirror" may be specified multiple times.
EVAL FUNCTIONS¶
- header LIST_MIRROR_RECEIVED eval:check_list_mirror_received()
- The "check_list_mirror_received"
function implements "Received:" header
checking based on "list_mirror" configuration values.
This rule can be used to score and prevent messages from being injected directly into your mirror without going through the expected mailing list servers:
ifplugin PublicInbox::SaPlugin::ListMirror header LIST_MIRROR_RECEIVED eval:check_list_mirror_received() describe LIST_MIRROR_RECEIVED Received does not match expected endif
- header LIST_MIRROR_BCC eval:check_list_mirror_bcc()
- The "check_list_mirror_bcc" function
checks for Bcc to mailing lists declared with a
"LIST_ADDRESS" via
"list_mirror"
Spammers will often Bcc mailing lists; while it's uncommon and strange for valid messages to be Bcc-ed to any public mailing list. This rule allows users to assign a score to Bcc-ed messages
ifplugin PublicInbox::SaPlugin::ListMirror header LIST_MIRROR_BCC eval:check_list_mirror_bcc() describe LIST_MIRROR_BCC Mailing list was Bcc-ed endif
CONTACT¶
Feedback welcome via plain-text mail to <mailto:meta@public-inbox.org>
The mail archives are hosted at <https://public-inbox.org/meta/> and <http://hjrcffqmbrq6wope.onion/meta/>
COPYRIGHT¶
Copyright (C) 2016-2020 all contributors <mailto:meta@public-inbox.org>
License: AGPL-3.0+ <http://www.gnu.org/licenses/agpl-3.0.txt>
SEE ALSO¶
Mail::SpamAssassin::Conf
2022-01-02 | perl v5.32.1 |