NAME
spfquery - checks if an IP address is an
SPF-authorized SMTP sender for a domain
VERSION
2.3
SYNOPSIS
spfquery
--mail-from|-m|--sender|-s
email-address|domain --helo|-h
hostname --ip|-i ip-address
[OPTIONS]
spfquery --helo|-h hostname
--ip|-i ip-address [OPTIONS]
spfquery --file|-f filename|-
[OPTIONS]
spfquery --version|-V
spfquery --help
DESCRIPTION
spfquery performs
Sender Policy Framework (SPF) authorization
checks based on the command-line arguments or data given in a file
or on standard input. For information on SPF
see <http://www.openspf.org>.
The --mail-from form checks if the given
ip-address is an authorized SMTP
sender for the given envelope sender domain or
email-address and "HELO" hostname (so-called
"MAIL FROM" check). If a domain is given,
"postmaster" will be substituted for the localpart.
The --helo form checks if the given ip-address is
an authorized SMTP sender for the given
"HELO" hostname (so-called "HELO" check).
The --file form reads "ip-address
sender-address helo-hostname" tuples from the file
with the specified filename, or from standard input if
filename is -.
The --version form prints version information of
spfquery. The --help form prints usage information for
spfquery.
OPTIONS
The --mail-from,
--helo, and --file forms optionally take any of the
following additional OPTIONS:
- --debug
- Print out debug information.
- --default-explanation string
- Use the specified string as the
default explanation if the SPF record does
not specify an explanation string itself.
- --guess spf-terms
- Use spf-terms as a default record
if no SPF record is found. This is a
non-standard feature.
- --keep-comments
-
- --no-keep-comments
- Do (not) print any comments found when
reading from a file or from standard input.
- --local spf-terms
- Process spf-terms as local policy
before resorting to a default result (the implicit or explicit
"all" mechanism at the end of the domain's SPF record). For example, this could be used for
white-listing one's secondary MXes:
"mx:mydomain.example.org".
- --max-lookup-count n
- Perform a maximum of n SPF record lookups. Defaults to 10.
- --name hostname
- Use hostname as the hostname of the
local system instead of auto-detecting it.
- --override domain=spf-record
-
- --fallback domain=spf-record
- Set overrides and fallbacks. Each option
can be specified multiple times. For example: "--override
example.org='v=spf1 -all' --override '*.example.net'='v=spf1 a mx
-all' --fallback example.com='v=spf1 -all'". This is a
non-standard feature.
- --rcpt-to email-addresses
- Automatically allow the secondary MXes of
the comma-separated list of email-addresses.
- --sanitize
-
- --no-sanitize
- Do (not) sanitize the output by condensing
consecutive white-space into a single space and replacing
non-printable characters with question marks. Enabled by default.
- --trusted
-
- --no-trusted
- Do (not) perform
"trusted-forwarder.org" accreditation checking. Disabled
by default. This is a non-standard feature.
RESULT CODES
- pass
- The specified IP
address is an authorized mailer for the sender domain/address.
- fail
- The specified IP
address is not an authorized mailer for the sender domain/address.
- softfail
- The specified IP
address is not an authorized mailer for the sender domain/address,
however the domain is still in the process of transitioning to
SPF.
- neutral
- The sender domain makes no assertion about
the status of the IP address.
- unknown
- The sender domain has a syntax error in
its SPF record.
- error
- A temporary DNS
error occurred while resolving the sender policy. Try again later.
- none
- There is no SPF
record for the sender domain.
EXIT CODES
- 0
- pass
- 1
- fail
- 2
- softfail
- 3
- neutral
- 4
- unknown
- 5
- error
- 6
- none
EXAMPLES
spfquery -i 11.22.33.44 -m user@example.com -h spammer.example.net
spfquery -f test_data
echo "127.0.0.1
SEE ALSO
Mail::SPF::Query, spfd
AUTHORS
This version of
spfquery was written by Wayne Schlitt <wayne@midwestcs.com>.
This man-page was written by Julian Mehnle <julian@mehnle.net>, based on a
man-page written by S. Zachariah Sprackett for an older version of
spfquery.