policyd-spf man page on DragonFly

Man page or keyword search:  
man Server   44335 pages
apropos Keyword Search (all sections)
Output format
DragonFly logo
[printable version]


policy-spf(1)							 policy-spf(1)

NAME
       python-policyd-spf - pure-Python Postfix policy daemon for SPF checking

VERSION
       1.3

USAGE
       NOTE: Depending on the packaging and distribution, the exact path to
       the executable may vary.

       $ policyd-spf (Start using installed config file)

       $ policyd-spf -h (Display usage message)

       $ policyd-spf /usr/local/etc/postfix-policyd-spf-python/policyd-
       spf.conf (Config file name to use)

       Configuration options are described in the sample configuration file
       provided with the package (policyd-spf.conf.commented) and in policyd-
       spf.conf(5).  The provided setup.py installs an uncommented configura‐
       tion file in /usr/local/etc/postfix-policyd-spf-python/.

       Additionally, whitelisting certain IP addresses or IP addresses used by
       listed domains from SPF checks is supported.  Skipping SPF checks for
       local submission or trusted relays is also provided.  The sample con‐
       figuration file and policyd-spf.conf(5) shows the format to use.

OTHER DOCUMENTATION
       This documentation assumes you have read Postfix's README_FILES/
       SMTPD_POLICY_README and are generally familiar with Sender Policy
       Framework (SPF).	 See RFC 7208 for details.

       See man 5 policyd-spf.conf for configuration file information.

       man 5 policyd-spf.peruser provides documentation on setting up and
       using different configuration options on a per user (mail reciepient)
       basis.

SYNOPSIS
       python-policyd-spf is a Postfix SMTPd policy daemon for SPF checking.
       It is implemented in pure Python and uses the pyspf module.  The SPF
       web site is http://www.openspf.org/.  The Postfix configuration must be
       changed to check SPF.

DESCRIPTION
       Logging is sent to syslogd.

       Each time a Postfix SMTP server process is started it connects to the
       policy service socket and Postfix runs one instance of this Python
       script.	By default, a Postfix SMTP server process terminates after 100
       seconds of idle time, or after serving 100 clients.  Thus, the cost of
       starting this Python script is smoothed over time

       The default policy_time_limit is 1000 seconds.  This may be too short
       for some SMTP transactions to complete.	As recommended in SMTPD_POL‐
       ICY_README, this should be extended to 3600 seconds.  To do so, set
       "policy_time_limit = 3600" in /usr/local/etc/postfix/main.cf.

       Messages that get a Fail SPF result will be rejected.  Messages that
       get a Permerror are, by default, treated as if they had no SPF record.
       Messages that get a Temperror result are, by default, treated as if
       they had no SPF record, but can (and probably should) be deferred if
       otherwise permitted.  Messages that get other SPF results (Pass, None,
       Neutral, Softfail) will have the SPF Received header prepended.	Note:
       Spamasassisn 3.2 and follow will use this header for spam scoring so
       there is no need to configure a separate SPF check in these Spamassas‐
       sin versions.  See Spamassassin documentation for details.

       Default Mail From rejection/deferal criteria are, by design, conserva‐
       tive.  Default HELO check actions are to reject mail with other than
       Pass/None. HELO records are much simpler than Mail From records and
       rejecting based on HELO checking does not present a false positive
       risk.  These settings are a matter of local policy and should be
       adjusted to meet the requirements of site administrators.  See policyd-
       spf.conf(5) for configuration file details.

LOGGING
       Policyd-spf will log messages to syslog about it's activities.  The
       "debugLevel" value in "policyd-spf.conf" can be increased to get addi‐
       tional information to be logged.	 When set to a value of "0", only test
       results (SPF hits/misses) are logged.  Results will be returned to
       Postfix and logged as a warning by Postfix also.	 For logging by this
       policy server, look for "policyd-spf" in your mail log files.

TESTING THE POLICY DAEMON
       Testing the policy daemon

       To test the policy daemon by hand, execute:

	   policyd-spf

       Each query is a bunch of attributes.  Order does not matter, and the
       daemon uses only a few of all the attributes shown below:

	   request=smtpd_access_policy
	   protocol_state=RCPT
	   protocol_name=SMTP
	   helo_name=some.domain.tld
	   queue_id=8045F2AB23
	   instance=12345.6789
	   sender=foo@bar.tld
	   recipient=bar@foo.tld
	   client_address=1.2.3.4
	   client_name=another.domain.tld
	   [empty line]

       The policy daemon will answer in the same style, with an attribute list
       followed by a empty line:

	   action=dunno
	   [empty line]

POSTFIX INTEGRATION
	1. Add the following to /usr/local/etc/postfix/master.cf:

	       policyd-spf  unix  -	  n	  n	  -	  0
       spawn
		   user=nobody argv=/usr/local/bin/policyd-spf

	   NOTE: Check the path to both the installed Python interpreter and
		 policyd-spf.  These vary from system to system.  To use non-
       default
		 settings, you must also add the config file (see above and
		 policyd-spf.conf(5) for details).  If you run other services
       with
		 user nobody, create a dedicated user for this policy server
       and use
		 that instead.

	2. Configure the Postfix policy service in /usr/local/etc/post‐
       fix/main.cf:

	       smtpd_recipient_restrictions =
		   ...
		   reject_unauth_destination
		   check_policy_service unix:private/policyd-spf
		   ...
	       policyd-spf_time_limit = 3600

	   NOTE:  Specify check_policy_service AFTER reject_unauth_destination
       or
		  else your system can become an open relay.

	3. Reload Postfix.

SEE ALSO
       policyd-spf.conf(5), policyd-spf.peruser(5), python-spf,
       <http://www.openspf.org>, RFC 7208

AUTHORS
       This version of python-policyd-spf was written by Copyright © 2007-2012
       Scott Kitterman <scott@kitterman.com>.  It is derived from Tumgreyspf,
       written by Sean Reifschneider, tummy.com, ltd <jafo@tummy.com>. Por‐
       tions of the documentation were written by Meng Weng Wong <meng‐
       wong@pobox.com>.

       This man-page was created by Scott Kitterman <scott@kitterman.com>.

				  2012-03-17			 policy-spf(1)
[top]

List of man pages available for DragonFly

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net