Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Contact Us
Online Help
Domain Status
Man Pages

Virtual Servers

Topology Map

Server Agreement
Year 2038

USA Flag



Man Pages

Manual Reference Pages  -  POLICYD-WEIGHT (8)


policyd-weight - weighted SMTP policy daemon



Beta, Documentation incomplete


policyd-weight [-option] [-option2 <arg>] command


policyd-weight(8) is a SMTP policy daemon written in perl(1) for postfix(1). It evaluates based on RBL/RHSBL results, HELO and MAIL FROM domain and subdomain arguments and the client IP address the possibility of forgery or SPAM. It is designed to be called before the SMTP DATA command at the RCPT TO stage. This way it is a) possible to reject a mail attempt before the body has been received and b) to keep multirecipient mail intact, i.e. provide the functionality of selective usage based on recipients.

To make policyd-weight(8) work with postfix(1), it is required to add a system account for $USER (default: polw)

Policyd-weight can operate in or daemon mode. In mode it uses postfix’ spawn(8), which results in number of simultanous requests perl instances. In daemon mode it uses shared memory and forks on load, and only if all childs are busy.

At the time of writing the man-pages for policyd-weight assume a postfix installation. It has been reported that policyd-weight works with other MTAs like Exim, too.

SETUP mode: policy unix - n n - - spawn user=polw
argv=/usr/bin/perl /usr/local/bin/policyd-weight smtpd_recipient_restrictions =
... authenticated permits ...
... whitelists, role accounts, clients ...
check_policy_service unix:private/policy

daemon mode:

start the daemon with policyd-weight start. Poliyd-weight then listens on $TCP_PORT (default: 12525) for policy requests. To make postfix talk to that port do following changes to smtpd_recipient_restrictions =
... authenticated permits ...
... whitelists, role accounts, clients ...
check_policy_service inet:

It is possible to have more than one postfix server talk to the daemonized policyd-weight by configuring each postfix machine to query the policy server with check_policy_service inet:IP:12525 where IP is the host on which policyd-weight runs.

Please note that check_policy_service should come at last, or at least after reject_unauth_destination, or else you may become an open relay.


Following commands exist and are reserved for daemon mode only:
start start the policy server
stop stop the policy server
restart restart the policy server
reload tells the policy server to reload its configuration
defaults prints the default settings to STDOUT and exits


-d operate in debug mode Not for use in In debug mode everything is reported on STDOUT instead of syslog(3). Also an own debug cache daemon will be spawned. The socket-file is named after the value of $SPATH with ".debug" as suffix.

-f Pass a configuration file to policyd-weight

-h show help

-k kill cache daemon Not for use in Together with -d this kills the debug cache daemon. Without -d it kills the global running cache daemon.

-s show cache entries Not for use in

-v show version


Logging is done via syslog(3) with facility "mail" and priority "info". For a complete list of log entries and their correspondending configuration parameters refer to policyd-weight.conf(5).


Please report bugs to


March 2005 Ralf Hildebrandt (Author of the Book of Postfix) is the spiritual father of policyd-weight. It was his idea to have a scored RBL evaluation, I’ve added the weighted MAIL FROM/HELO DNS-evaluation. For that purpose I used Meng Wong’s which was shipped with the postfix source as example.


/etc/policyd-weight.conf, Policyd-weight configuration file
/etc/postfix/, Postfix configuration parameters
/etc/postfix/, Postfix daemon processes


policyd-weight.conf(5), Policyd-weight configuration file
master(5), Postfix file syntax
postconf(5), Postfix file syntax
access(5), Postfix SMTP access control table


GNU General Public License


Robert Felber <>
PC & IT Services Selling-IT
85560 Ebersberg, Germany
Search for    or go to Top of page |  Section 8 |  Main Index

--> POLICYD-WEIGHT (8) Aug 25th, 2006

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.