1Mail::SpamAssassin::PluUgsienr::CHoansthrBiLb(u3t)ed PerMlaiDlo:c:uSmpeanmtAastsiaosnsin::Plugin::HashBL(3)
2
3
4
6 HashBL - query hashed (and unhashed) DNS blocklists
7
9 loadplugin Mail::SpamAssassin::Plugin::HashBL
10
11 header HASHBL_EMAIL eval:check_hashbl_emails('ebl.msbl.org')
12 describe HASHBL_EMAIL Message contains email address found on EBL
13
14 hashbl_acl_freemail gmail.com
15 header HASHBL_OSENDR eval:check_hashbl_emails('rbl.example.com/A', 'md5/max=10/shuffle', 'X-Original-Sender', '^127\.', 'freemail')
16 describe HASHBL_OSENDR Message contains email address found on HASHBL
17 tflags HASHBL_OSENDR net
18
19 body HASHBL_BTC eval:check_hashbl_bodyre('btcbl.foo.bar', 'sha1/max=10/shuffle', '\b([13][a-km-zA-HJ-NP-Z1-9]{25,34})\b')
20 describe HASHBL_BTC Message contains BTC address found on BTCBL
21 priority HASHBL_BTC -100 # required priority to launch async lookups
22
23 header HASHBL_URI eval:check_hashbl_uris('rbl.foo.bar', 'sha1', '127.0.0.32')
24 describe HASHBL_URI Message contains uri found on rbl
25
27 This plugin support multiple types of hashed or unhashed DNS
28 blocklists.
29
30 OPTS refers to multiple generic options:
31
32 raw do not hash data, query as is
33 md5 hash query with MD5
34 sha1 hash query with SHA1
35 case keep case before hashing, default is to lowercase
36 max=x maximum number of queries
37 shuffle if max exceeded, random shuffle queries before truncating to limit
38
39 Multiple options can be separated with slash or other non-word
40 character. If OPTS is empty ('') or missing, default is used.
41
42 HEADERS refers to slash separated list of Headers to process:
43
44 ALL all headers
45 ALLFROM all From headers as returned by $pms->all_from_addrs()
46 EnvelopeFrom message envelope from (Return-Path etc)
47 HeaderName any header as used with $pms->get()
48
49 if HEADERS is empty ('') or missing, default is used.
50
51 header RULE check_hashbl_emails('bl.example.com/A', 'OPTS',
52 'HEADERS/body', '^127\.')
53 Check email addresses from DNS list, "body" can be specified along
54 with headers to search body for emails. Optional subtest regexp to
55 match DNS answer. Note that eval rule type must always be
56 "header".
57
58 DNS query type can be appended to list with /A (default) or /TXT.
59
60 Additional supported OPTS:
61
62 nodot strip username dots from email
63 notag strip username tags from email
64 nouri ignore emails inside uris
65 noquote ignore emails inside < > or possible quotings
66
67 Default OPTS: sha1/notag/noquote/max=10/shuffle
68
69 Default HEADERS: ALLFROM/Reply-To/body
70
71 For existing public email blacklist, see: http://msbl.org/ebl.html
72
73 header HASHBL_EBL check_hashbl_emails('ebl.msbl.org')
74 priority HASHBL_EBL -100 # required for async query
75
76 header RULE check_hashbl_uris('bl.example.com/A', 'OPTS', '^127\.')
77 Check uris from DNS list, optional subtest regexp to match DNS
78 answer.
79
80 DNS query type can be appended to list with /A (default) or
81 /TXT.
82
83 Default OPTS: sha1/max=10/shuffle
84
85 body RULE check_hashbl_bodyre('bl.example.com/A', 'OPTS',
86 '\b(match)\b', '^127\.')
87 Search body for matching regexp and query the string captured.
88 Regexp must have a single capture ( ) for the string ($1).
89 Optional subtest regexp to match DNS answer. Note that eval rule
90 type must be "body" or "rawbody".
91
92
93
94perl v5.30.1 2020-02-M0a3il::SpamAssassin::Plugin::HashBL(3)