NAME¶
proxsmtpd.conf —
the configuration file
for proxsmtpd(8)
DESCRIPTION¶
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 to
proxsmtpd(8)
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 proxsmtp distribution.
SETTINGS¶
The various settings are as follows:
- FilterCommand
- 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 ]
- FilterTimeout
- The amount of time in seconds to wait for the
FilterCommand to process email data.
[ Default: 30 seconds ]
- FilterReject
- The rejection message used when
FilterType is set to 'reject'.
[ Default: 530 Email Rejected ]
- 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 variable.
When set to 'reject' then email is immediately rejected using message
defined by the FilterReject option.
[ 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 special values:
- %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 ]
- MaxConnections
- Specifies the maximum number of connections to accept at
once.
[ Default: 64 ]
- OutAddress
- The address of the SMTP server to send email to once it's
been scanned. See syntax of addreses below.
[ Required ]
- Skip
- Whether to skip certain kinds of connections or email from
running through the filter. Specify 'authenticated' to skip SMTP
authenticated connections.
[ Optional ]
- TempDirectory
- The directory to write temp files to.
[ Default: /tmp ]
- TimeOut
- The number of seconds to wait while reading data from
network connections.
[ Default: 180 seconds ]
- TransparentProxy
- Setting this option to 'client' 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 OS.
Specify 'full' to enable a true transparent proxy where neither the client
or server are aware of the proxy by way of the packet headers. This setup
usually involves routers to redirect traffic to proxsmtp, and the setup
varies from OS to OS.
[ 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¶
Addresses can be specified in multiple formats:
- Unix local addresses can be specified by specifying
their full path. (ie: '/var/run/socket').
- 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.
SEE ALSO¶
proxsmtpd(8)
AUTHOR¶
Stef Walter ⟨stef@memberwebs.com⟩