280 lines
16 KiB
HTML
280 lines
16 KiB
HTML
<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
|
|
"https://www.w3.org/TR/html4/loose.dtd">
|
|
<html> <head>
|
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<link rel='stylesheet' type='text/css' href='postfix-doc.css'>
|
|
<title> Postfix manual - master(5) </title>
|
|
</head> <body> <pre>
|
|
MASTER(5) MASTER(5)
|
|
|
|
<b><a name="name">NAME</a></b>
|
|
master - Postfix master process configuration file format
|
|
|
|
<b><a name="description">DESCRIPTION</a></b>
|
|
The Postfix mail system is implemented by small number of (mostly)
|
|
client commands that are invoked by users, and by a larger number of
|
|
services that run in the background.
|
|
|
|
Postfix services are implemented by daemon processes. These run in the
|
|
background, started on-demand by the <a href="master.8.html"><b>master</b>(8)</a> process. The <a href="master.5.html">master.cf</a>
|
|
configuration file defines how a client program connects to a service,
|
|
and what daemon program runs when a service is requested. Most daemon
|
|
processes are short-lived and terminate voluntarily after serving
|
|
<b><a href="postconf.5.html#max_use">max_use</a></b> clients, or after inactivity for <b><a href="postconf.5.html#max_idle">max_idle</a></b> or more units of
|
|
time.
|
|
|
|
All daemons specified here must speak a Postfix-internal protocol. In
|
|
order to execute non-Postfix software use the <a href="local.8.html"><b>local</b>(8)</a>, <a href="pipe.8.html"><b>pipe</b>(8)</a> or
|
|
<a href="spawn.8.html"><b>spawn</b>(8)</a> services, or execute the software with <b>inetd</b>(8) or equivalent.
|
|
|
|
After changing <a href="master.5.html">master.cf</a> you must execute "<b>postfix reload</b>" to reload
|
|
the configuration.
|
|
|
|
<b><a name="syntax">SYNTAX</a></b>
|
|
The general format of the <a href="master.5.html">master.cf</a> file is as follows:
|
|
|
|
<b>o</b> Empty lines and whitespace-only lines are ignored, as are lines
|
|
whose first non-whitespace character is a `#'.
|
|
|
|
<b>o</b> A logical line starts with non-whitespace text. A line that
|
|
starts with whitespace continues a logical line.
|
|
|
|
<b>o</b> Each logical line defines a single Postfix service. Each ser-
|
|
vice is identified by its name and type as described below.
|
|
When multiple lines specify the same service name and type, only
|
|
the last one is remembered. Otherwise, the order of <a href="master.5.html">master.cf</a>
|
|
service definitions does not matter.
|
|
|
|
Each logical line consists of eight fields separated by whitespace.
|
|
These are described below in the order as they appear in the <a href="master.5.html">master.cf</a>
|
|
file.
|
|
|
|
Where applicable a field of "-" requests that the built-in default
|
|
value be used. For boolean fields specify "y" or "n" to override the
|
|
default value.
|
|
|
|
<b>Service name</b>
|
|
The service name syntax depends on the service type as described
|
|
next.
|
|
|
|
<b>Service type</b>
|
|
Specify one of the following service types:
|
|
|
|
<b>inet</b> The service listens on a TCP/IP socket and is accessible
|
|
via the network.
|
|
|
|
The service name is specified as <i>host:port</i>, denoting the
|
|
host and port on which new connections should be
|
|
accepted. The host part (and colon) may be omitted.
|
|
Either host or port may be given in symbolic form (see
|
|
<b>hosts</b>(5) or <b>services</b>(5)) or in numeric form (IP address
|
|
or port number). Host information may be enclosed inside
|
|
"[]"; this form is necessary only with IPv6 addresses.
|
|
|
|
Examples: a service named <b>127.0.0.1:smtp</b> or <b>::1:smtp</b>
|
|
receives mail via the loopback interface only; and a ser-
|
|
vice named <b>10025</b> accepts connections on TCP port 10025
|
|
via all interfaces configured with the <b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a></b>
|
|
parameter.
|
|
|
|
Note: with Postfix version 2.2 and later specify
|
|
"<b><a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback-only</b>" in <a href="postconf.5.html">main.cf</a>, instead of
|
|
hard-coding loopback IP address information in <a href="master.5.html">master.cf</a>
|
|
or in <a href="postconf.5.html">main.cf</a>.
|
|
|
|
<b>unix</b> The service listens on a UNIX-domain stream socket and is
|
|
accessible for local clients only.
|
|
|
|
The service name is a pathname relative to the Postfix
|
|
queue directory (pathname controlled with the
|
|
<b><a href="postconf.5.html#queue_directory">queue_directory</a></b> configuration parameter in <a href="postconf.5.html">main.cf</a>).
|
|
|
|
On Solaris 8 and earlier systems the <b>unix</b> type is imple-
|
|
mented with streams sockets.
|
|
|
|
<b>unix-dgram</b>
|
|
The service listens on a UNIX-domain datagram socket and
|
|
is accessible for local clients only.
|
|
|
|
The service name is a pathname relative to the Postfix
|
|
queue directory (pathname controlled with the
|
|
<b><a href="postconf.5.html#queue_directory">queue_directory</a></b> configuration parameter in <a href="postconf.5.html">main.cf</a>).
|
|
|
|
<b>fifo</b> (obsolete)
|
|
The service listens on a FIFO (named pipe) and is acces-
|
|
sible for local clients only.
|
|
|
|
The service name is a pathname relative to the Postfix
|
|
queue directory (pathname controlled with the
|
|
<b><a href="postconf.5.html#queue_directory">queue_directory</a></b> configuration parameter in <a href="postconf.5.html">main.cf</a>).
|
|
|
|
<b>pass</b> The service listens on a UNIX-domain stream socket, and
|
|
is accessible to local clients only. It receives one open
|
|
connection (file descriptor passing) per connection
|
|
request.
|
|
|
|
The service name is a pathname relative to the Postfix
|
|
queue directory (pathname controlled with the
|
|
<b><a href="postconf.5.html#queue_directory">queue_directory</a></b> configuration parameter in <a href="postconf.5.html">main.cf</a>).
|
|
|
|
On Solaris 8 and earlier systems the <b>pass</b> type is imple-
|
|
mented with streams sockets.
|
|
|
|
This feature is available as of Postfix version 2.5.
|
|
|
|
<b>Private (default: y)</b>
|
|
Whether a service is internal to Postfix (pathname starts with
|
|
<b>private/</b>), or exposed through Postfix command-line tools (path-
|
|
name starts with <b>public/</b>). Internet (type <b>inet</b>) services can't
|
|
be private.
|
|
|
|
<b>Unprivileged (default: y)</b>
|
|
Whether the service runs with root privileges or as the owner of
|
|
the Postfix system (the owner name is controlled by the
|
|
<b><a href="postconf.5.html#mail_owner">mail_owner</a></b> configuration variable in the <a href="postconf.5.html">main.cf</a> file).
|
|
|
|
The <a href="local.8.html"><b>local</b>(8)</a>, <a href="pipe.8.html"><b>pipe</b>(8)</a>, <a href="spawn.8.html"><b>spawn</b>(8)</a>, and <a href="virtual.8.html"><b>virtual</b>(8)</a> daemons require
|
|
privileges.
|
|
|
|
<b>Chroot (default: Postfix</b> ><b>= 3.0: n, Postfix</b> < <b>3.0: y)</b>
|
|
Whether or not the service runs chrooted to the mail queue
|
|
directory (pathname is controlled by the <b><a href="postconf.5.html#queue_directory">queue_directory</a></b> config-
|
|
uration variable in the <a href="postconf.5.html">main.cf</a> file).
|
|
|
|
Chroot should not be used with the <a href="local.8.html"><b>local</b>(8)</a>, <a href="pipe.8.html"><b>pipe</b>(8)</a>, <a href="spawn.8.html"><b>spawn</b>(8)</a>,
|
|
and <a href="virtual.8.html"><b>virtual</b>(8)</a> daemons. Although the <a href="proxymap.8.html"><b>proxymap</b>(8)</a> server can run
|
|
chrooted, doing so defeats most of the purpose of having that
|
|
service in the first place.
|
|
|
|
The files in the examples/chroot-setup subdirectory of the Post-
|
|
fix source show how to set up a Postfix chroot environment on a
|
|
variety of systems. See also <a href="BASIC_CONFIGURATION_README.html">BASIC_CONFIGURATION_README</a> for
|
|
issues related to running daemons chrooted.
|
|
|
|
<b>Wake up time (default: 0)</b>
|
|
Automatically wake up the named service after the specified num-
|
|
ber of seconds. The wake up is implemented by connecting to the
|
|
service and sending a wake up request. A ? at the end of the
|
|
wake-up time field requests that no wake up events be sent
|
|
before the first time a service is used. Specify 0 for no auto-
|
|
matic wake up.
|
|
|
|
The <a href="pickup.8.html"><b>pickup</b>(8)</a>, <a href="qmgr.8.html"><b>qmgr</b>(8)</a> and <a href="flush.8.html"><b>flush</b>(8)</a> daemons require a wake up
|
|
timer.
|
|
|
|
<b>Process limit (default: $<a href="postconf.5.html#default_process_limit">default_process_limit</a>)</b>
|
|
The maximum number of processes that may execute this service
|
|
simultaneously. Specify 0 for no process count limit.
|
|
|
|
NOTE: Some Postfix services must be configured as a sin-
|
|
gle-process service (for example, <a href="qmgr.8.html"><b>qmgr</b>(8)</a>) and some services
|
|
must be configured with no process limit (for example,
|
|
<a href="cleanup.8.html"><b>cleanup</b>(8)</a>). These limits must not be changed.
|
|
|
|
<b>Command name + arguments</b>
|
|
The command to be executed. Characters that are special to the
|
|
shell such as ">" or "|" have no special meaning here, and
|
|
quotes cannot be used to protect arguments containing white-
|
|
space. To protect whitespace, use "{" and "}" as described
|
|
below.
|
|
|
|
The command name is relative to the Postfix daemon directory
|
|
(pathname is controlled by the <b><a href="postconf.5.html#daemon_directory">daemon_directory</a></b> configuration
|
|
variable).
|
|
|
|
The command argument syntax for specific commands is specified
|
|
in the respective daemon manual page.
|
|
|
|
The following command-line options have the same effect for all
|
|
daemon programs:
|
|
|
|
<b>-D</b> Run the daemon under control by the command specified
|
|
with the <b><a href="postconf.5.html#debugger_command">debugger_command</a></b> variable in the <a href="postconf.5.html">main.cf</a> config-
|
|
uration file. See <a href="DEBUG_README.html">DEBUG_README</a> for hints and tips.
|
|
|
|
<b>-o {</b> <i>name</i> = <i>value</i> <b>}</b> (long form, Postfix >= 3.0)
|
|
Override the named <a href="postconf.5.html">main.cf</a> configuration parameter. The
|
|
parameter value can refer to other parameters as <i>$name</i>
|
|
etc., just like in <a href="postconf.5.html">main.cf</a>. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for syntax.
|
|
|
|
The "long form" supports whitespace in parameter values.
|
|
Whitespace after the outer "{", around "=", and before
|
|
the outer "}" is ignored. Example:
|
|
|
|
/etc/postfix/<a href="master.5.html">master.cf</a>:
|
|
submission inet .... smtpd
|
|
-o { smtpd_xxx_yyy = text with whitespace... }
|
|
|
|
NOTE: Over-zealous use of parameter overrides makes the
|
|
Postfix configuration hard to understand and maintain.
|
|
At a certain point, it might be easier to configure mul-
|
|
tiple instances of Postfix, instead of configuring multi-
|
|
ple personalities via <a href="master.5.html">master.cf</a>.
|
|
|
|
<b>-o</b> <i>name</i>=<i>value</i> (short form)
|
|
Override the named <a href="postconf.5.html">main.cf</a> configuration parameter. The
|
|
parameter value can refer to other parameters as <i>$name</i>
|
|
etc., just like in <a href="postconf.5.html">main.cf</a>. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for syntax.
|
|
|
|
The "short form" does not support whitespace around the
|
|
"=" or in parameter values. To specify a parameter value
|
|
that contains whitespace, use the long form described
|
|
above, or use commas instead of spaces if the parameter
|
|
supports that, or specify the value in <a href="postconf.5.html">main.cf</a>. Example:
|
|
|
|
/etc/postfix/<a href="master.5.html">master.cf</a>:
|
|
submission inet .... smtpd
|
|
-o smtpd_xxx_yyy=$submission_xxx_yyy
|
|
|
|
/etc/postfix/<a href="postconf.5.html">main.cf</a>
|
|
submission_xxx_yyy = text with whitespace...
|
|
|
|
NOTE: Over-zealous use of parameter overrides makes the
|
|
Postfix configuration hard to understand and maintain.
|
|
At a certain point, it might be easier to configure mul-
|
|
tiple instances of Postfix, instead of configuring multi-
|
|
ple personalities via <a href="master.5.html">master.cf</a>.
|
|
|
|
<b>-v</b> Increase the verbose logging level. Specify multiple <b>-v</b>
|
|
options to make a Postfix daemon process increasingly
|
|
verbose.
|
|
|
|
<b>Command-line arguments that start with {</b>
|
|
|
|
<b>Command-line arguments that contain whitespace</b>
|
|
|
|
<b>Command-line arguments that must be empty</b>
|
|
Specify "{" and "}" around such arguments (Postfix 3.0
|
|
and later). The outer "{" and "}" will be removed,
|
|
together with any leading or trailing whitespace in the
|
|
remaining text.
|
|
|
|
<b><a name="see_also">SEE ALSO</a></b>
|
|
<a href="master.8.html">master(8)</a>, process manager
|
|
<a href="postconf.5.html">postconf(5)</a>, configuration parameters
|
|
|
|
<b><a name="readme_files">README FILES</a></b>
|
|
<a href="BASIC_CONFIGURATION_README.html">BASIC_CONFIGURATION_README</a>, basic configuration
|
|
<a href="DEBUG_README.html">DEBUG_README</a>, Postfix debugging
|
|
|
|
<b><a name="license">LICENSE</a></b>
|
|
The Secure Mailer license must be distributed with this software.
|
|
|
|
<b>AUTHOR(S)</b>
|
|
Initial version by
|
|
Magnus Baeck
|
|
Lund Institute of Technology
|
|
Sweden
|
|
|
|
Wietse Venema
|
|
IBM T.J. Watson Research
|
|
P.O. Box 704
|
|
Yorktown Heights, NY 10598, USA
|
|
|
|
Wietse Venema
|
|
Google, Inc.
|
|
111 8th Avenue
|
|
New York, NY 10011, USA
|
|
|
|
MASTER(5)
|
|
</pre> </body> </html>
|