# SpamAssassin - SPF 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. # # ########################################################################### # Requires the Mail::SpamAssassin::Plugin::SPF plugin be loaded. ifplugin Mail::SpamAssassin::Plugin::SPF # SPF support: # "pass" is nice # "neutral" is somewhat bad # "fail" is bad # "softfail" is bad, but not as bad as "fail" # These are more trustworthy results than the SPF_HELO rules. header SPF_PASS eval:check_for_spf_pass() header SPF_NEUTRAL eval:check_for_spf_neutral() header SPF_FAIL eval:check_for_spf_fail() header SPF_SOFTFAIL eval:check_for_spf_softfail() # NOTE: SPF_HELO_PASS is not incredibly hard to fake, so shouldn't # provide much in the way of points compared to SPF_PASS et al. # However, a *failure* is still a very good spamsign. header SPF_HELO_PASS eval:check_for_spf_helo_pass() header SPF_HELO_NEUTRAL eval:check_for_spf_helo_neutral() header SPF_HELO_FAIL eval:check_for_spf_helo_fail() header SPF_HELO_SOFTFAIL eval:check_for_spf_helo_softfail() describe SPF_PASS SPF: sender matches SPF record describe SPF_NEUTRAL SPF: sender does not match SPF record (neutral) describe SPF_FAIL SPF: sender does not match SPF record (fail) describe SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) describe SPF_HELO_PASS SPF: HELO matches SPF record describe SPF_HELO_NEUTRAL SPF: HELO does not match SPF record (neutral) describe SPF_HELO_FAIL SPF: HELO does not match SPF record (fail) describe SPF_HELO_SOFTFAIL SPF: HELO does not match SPF record (softfail) # these are "userconf" so that scores are set by hand tflags SPF_PASS nice userconf net tflags SPF_HELO_PASS nice userconf net tflags SPF_NEUTRAL net tflags SPF_FAIL net tflags SPF_SOFTFAIL net tflags SPF_HELO_NEUTRAL net tflags SPF_HELO_FAIL net tflags SPF_HELO_SOFTFAIL net # rules from earlier than current release that can be reused reuse SPF_PASS reuse SPF_FAIL reuse SPF_SOFTFAIL reuse SPF_HELO_PASS reuse SPF_HELO_FAIL reuse SPF_HELO_SOFTFAIL reuse SPF_NEUTRAL reuse SPF_HELO_NEUTRAL # Implementing the Sender Check for No SPF REcord defaulting to disabled so Admins can override header SPF_NONE eval:check_for_spf_none() describe SPF_NONE SPF: sender does not publish an SPF Record header SPF_HELO_NONE eval:check_for_spf_helo_none() describe SPF_HELO_NONE SPF: HELO does not publish an SPF Record endif # Mail::SpamAssassin::Plugin::SPF