proxsmtpd.conf - the configuration file for proxsmtpd(8)
proxsmtpd(8) reads a configuration file when starting up. The location of
the file is dependent on how you compiled proxsmtp but it should usually
be in either the /usr/local/etc/ or /etc/ directories. If proxsmtpd(8)
does not find its configuration file it’ll print a warning when it starts
up along with the location it’s expecting to find it in. You can also
specify a different location for a config file by passing the -f argument
The settings are specified one per line. The setting names come first,
followed by a colon and then the value. Comments start with the ’#’
character on a line of their own. Whitespace is ignored at the beginning
of line, end of line and around the colons.
A sample configuration file can be found in the doc/ directory of the
The various settings are as follows:
This is the command used to filter email through. If not
specified then no filtering will be done. Specify all the
arguments the command needs as you would on a command-line.
[ Default: no filtering ]
The amount of time in seconds to wait for the FilterCommand
to process email data.
[ Default: 30 seconds ]
FilterType When set to ’pipe’ the email data is piped through the
FilterCommand using standard in and standard out. When set to
’file’ the email data is saved to a file and the file name is
passed to the FilterCommand using the EMAIL environment
[ Default: pipe ]
Header A header to add to scanned messages. Put an empty value to
suppress adding a header. You can include the following
special formatting characters in the string to include
%i Client IP Address
%l Local IP Address
%d Current Date
You can also include the standard \r or \n escapes.
[ Optional ]
KeepAlives On slow connections the server will sometimes timeout before
proxsmtpd(8) is finished filtering the file. This option
sends NOOP’s to the server to keep the connection alive.
Specify the number of seconds, or 0 to disable.
[ Default: 0 ]
Listen The address and port to listen for SMTP connections on. See
syntax of addresses below.
[ Default: port 10025 on all local IP addresses ]
Specifies the maximum number of connections to accept at
[ Default: 64 ]
OutAddress The address of the SMTP server to send email to once it’s
been scanned. See syntax of addreses below.
[ Required ]
The directory to write temp files to.
[ Default: /tmp ]
TimeOut The number of seconds to wait while reading data from network
[ Default: 180 seconds ]
This option enables transparent proxy support, which allows
you to route all SMTP traffic that’s going through a gateway
through proxsmtp which will then send it on to its final
destination. This setup usually involves firewall rules which
redirect traffic to proxsmtp, and the setup varies from OS to
[ Default: off ]
User The user to run as. If this option is specified then
proxsmtpd(8) must be started as root. It will then drop root
privileges and run as the specified user. The user can either
be a name or a numerical user id.
[ Optional ]
XClient Send an XCLIENT command to the receiving server. This is
useful for forwarding client addresses and connection info to
servers that support this feature.
[ Default: off ]
Addresses can be specified in multiple formats:
· Unix local addresses can be specified by specifying their full path.
· IP addresses can be specified using dotted notation with a colon
before the port number (ie: ’127.0.0.1:3310’).
· IPv6 addresses are implemented but disabled. The code needs testing.
Stef Walter 〈firstname.lastname@example.org〉