1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
|
# SpamAssassin - DKIM rules
#
# Please don't modify this file as your changes will be overwritten with
# the next update. Use @@LOCAL_RULES_DIR@@/local.cf instead.
# See 'perldoc Mail::SpamAssassin::Conf' for details.
#
# <@LICENSE>
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to you under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at:
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# </@LICENSE>
#
###########################################################################
# Requires the Mail::SpamAssassin::Plugin::DKIM plugin be loaded.
ifplugin Mail::SpamAssassin::Plugin::DKIM
# Note: DKIM_SIGNED, DKIM_VALID and DKIM_VALID_AU are mainly informational
# rules, and can serve as a basis for meta rules; it is not difficult for a
# sender to cause hits on them or to prevent them from firing, so their score
# should be kept low.
full DKIM_SIGNED eval:check_dkim_signed()
describe DKIM_SIGNED Message has a DKIM or DK signature, not necessarily valid
tflags DKIM_SIGNED net
reuse DKIM_SIGNED
full DKIM_VALID eval:check_dkim_valid()
describe DKIM_VALID Message has at least one valid DKIM or DK signature
tflags DKIM_VALID net nice
reuse DKIM_VALID
meta DKIM_INVALID DKIM_SIGNED && !DKIM_VALID
describe DKIM_INVALID DKIM or DK signature exists, but is not valid
full DKIM_VALID_AU eval:check_dkim_valid_author_sig()
describe DKIM_VALID_AU Message has a valid DKIM or DK signature from author's domain
tflags DKIM_VALID_AU net nice
reuse DKIM_VALID_AU
if (version >= 3.004002)
full DKIM_VALID_EF eval:check_dkim_valid_envelopefrom()
describe DKIM_VALID_EF Message has a valid DKIM or DK signature from envelope-from domain
tflags DKIM_VALID_EF net nice
reuse DKIM_VALID_EF
endif
full __DKIM_DEPENDABLE eval:check_dkim_dependable()
describe __DKIM_DEPENDABLE A validation failure not attributable to truncation
reuse __DKIM_DEPENDABLE
header DKIM_ADSP_NXDOMAIN eval:check_dkim_adsp('N')
describe DKIM_ADSP_NXDOMAIN No valid author signature and domain not in DNS
tflags DKIM_ADSP_NXDOMAIN net
reuse DKIM_ADSP_NXDOMAIN
header DKIM_ADSP_DISCARD eval:check_dkim_adsp('D')
describe DKIM_ADSP_DISCARD No valid author signature, domain signs all mail and suggests discarding the rest
tflags DKIM_ADSP_DISCARD net
reuse DKIM_ADSP_DISCARD
header DKIM_ADSP_ALL eval:check_dkim_adsp('A')
describe DKIM_ADSP_ALL No valid author signature, domain signs all mail
tflags DKIM_ADSP_ALL net
reuse DKIM_ADSP_ALL
header DKIM_ADSP_CUSTOM_LOW eval:check_dkim_adsp('1')
describe DKIM_ADSP_CUSTOM_LOW No valid author signature, adsp_override is CUSTOM_LOW
tflags DKIM_ADSP_CUSTOM_LOW net userconf
reuse DKIM_ADSP_CUSTOM_LOW
header DKIM_ADSP_CUSTOM_MED eval:check_dkim_adsp('2')
describe DKIM_ADSP_CUSTOM_MED No valid author signature, adsp_override is CUSTOM_MED
tflags DKIM_ADSP_CUSTOM_MED net userconf
reuse DKIM_ADSP_CUSTOM_MED
header DKIM_ADSP_CUSTOM_HIGH eval:check_dkim_adsp('3')
describe DKIM_ADSP_CUSTOM_HIGH No valid author signature, adsp_override is CUSTOM_HIGH
tflags DKIM_ADSP_CUSTOM_HIGH net userconf
reuse DKIM_ADSP_CUSTOM_HIGH
full __RESIGNER1 eval:check_dkim_valid('linkedin.com')
tflags __RESIGNER1 net
reuse __RESIGNER1
full __RESIGNER2 eval:check_dkim_valid('googlegroups.com','yahoogroups.com','yahoogroups.de')
tflags __RESIGNER2 net
reuse __RESIGNER2
meta __VIA_RESIGNER __RESIGNER1 || __RESIGNER2
describe __VIA_RESIGNER Mail through a popular signing remailer
meta NML_ADSP_CUSTOM_LOW DKIM_ADSP_CUSTOM_LOW && !__VIA_ML && !__VIA_RESIGNER
describe NML_ADSP_CUSTOM_LOW ADSP custom_low hit, and not from a mailing list
meta NML_ADSP_CUSTOM_MED DKIM_ADSP_CUSTOM_MED && !__VIA_ML && !__VIA_RESIGNER
describe NML_ADSP_CUSTOM_MED ADSP custom_med hit, and not from a mailing list
meta NML_ADSP_CUSTOM_HIGH DKIM_ADSP_CUSTOM_HIGH && !__VIA_ML && !__VIA_RESIGNER
describe NML_ADSP_CUSTOM_HIGH ADSP custom_high hit, and not from a mailing list
if can(Mail::SpamAssassin::Plugin::DKIM::has_arc)
full ARC_SIGNED eval:check_arc_signed()
describe ARC_SIGNED Message has a ARC signature
tflags ARC_SIGNED net
reuse ARC_SIGNED
full ARC_VALID eval:check_arc_valid()
describe ARC_VALID Message has a valid ARC signature
tflags ARC_VALID net nice
reuse ARC_VALID
meta ARC_INVALID ARC_SIGNED && !ARC_VALID
describe ARC_INVALID ARC signature exists, but is not valid
endif
#
# old, declared for compatibility with pre-3.3, should have scores 0
#
full DKIM_VERIFIED eval:check_dkim_valid()
tflags DKIM_VERIFIED net nice
reuse DKIM_VERIFIED
header DKIM_POLICY_TESTING eval:check_dkim_testing()
tflags DKIM_POLICY_TESTING net nice
reuse DKIM_POLICY_TESTING
header DKIM_POLICY_SIGNSOME eval:check_dkim_signsome()
tflags DKIM_POLICY_SIGNSOME net nice
reuse DKIM_POLICY_SIGNSOME
header DKIM_POLICY_SIGNALL eval:check_dkim_signall()
tflags DKIM_POLICY_SIGNALL net nice
reuse DKIM_POLICY_SIGNALL
endif # Mail::SpamAssassin::Plugin::DKIM
|