xref: /netbsd-src/external/ibm-public/postfix/dist/proto/master (revision a5847cc334d9a7029f6352b847e9e8d71a0f9e0c)
1#++
2# NAME
3#	master 5
4# SUMMARY
5#	Postfix master process configuration file format
6# DESCRIPTION
7#	The Postfix mail system is implemented by small number of
8#	(mostly) client commands that are invoked by users, and by
9#	a larger number of services that run in the background.
10#
11#	Postfix services are implemented by daemon processes. These
12#	run in the background under control of the \fBmaster\fR(8)
13#	process.  The master.cf configuration file defines how a
14#	client program connects to a service, and what daemon
15#	program runs when a service is requested.  Most daemon
16#	processes are short-lived and terminate voluntarily after
17#	serving \fBmax_use\fR clients, or after inactivity for
18#	\fBmax_idle\fR or more units of time.
19#
20#	All daemons specified here must speak a Postfix-internal
21#	protocol. In order to execute non-Postfix software use the
22#	\fBlocal\fR(8), \fBpipe\fR(8) or \fBspawn\fR(8) services, or
23#	run the server under control by \fBinetd\fR(8) or equivalent.
24# .PP
25#	After changing master.cf you must execute "\fBpostfix reload\fR"
26#	to reload the configuration.
27# SYNTAX
28# .ad
29# .fi
30#	The general format of the master.cf file is as follows:
31# .IP \(bu
32#	Each logical line defines a single Postfix service.
33#	Each service is identified by its name and type as described
34#	below.  When multiple lines specify the same service name
35#	and type, only the last one is remembered.  Otherwise, the
36#	order of master.cf service definitions does not matter.
37# .IP \(bu
38#	Empty lines and whitespace-only lines are ignored, as are
39#	lines whose first non-whitespace character is a `#'.
40# .IP \(bu
41#	A logical line starts with non-whitespace text. A line that
42#	starts with whitespace continues a logical line.
43# .PP
44#	Each logical line consists of eight fields separated by
45#	whitespace.  These are described below in the order as they
46#	appear in the master.cf file.
47#
48#	Where applicable a field of "-" requests that the built-in
49#	default value be used. For boolean fields specify "y" or
50#	"n" to override the default value.
51# .IP "\fBService name\fR"
52#	The service name syntax depends on the service type as
53#	described next.
54# .IP "\fBService type\fR"
55#	Specify one of the following service types:
56# .RS
57# .IP \fBinet\fR
58#	The service listens on a TCP/IP socket and is accessible
59#	via the network.
60#
61#	The service name is specified as \fIhost:port\fR, denoting
62#	the host and port on which new connections should be
63#	accepted. The host part (and colon) may be omitted.  Either
64#	host or port may be given in symbolic form (host or service
65#	name) or in numeric form (IP address or port number).
66#	Host information may be enclosed inside "[]", but this form
67#	is not necessary.
68# .sp
69#	Examples: a service named \fB127.0.0.1:smtp\fR or \fB::1:smtp\fR
70#	receives
71#	mail via the loopback interface only; and a service named
72#	\fB10025\fR accepts connections on TCP port 10025 via
73#	all interfaces configured with the \fBinet_interfaces\fR
74#	parameter.
75#
76# .sp
77#	Note: with Postfix version 2.2 and later specify
78#	"\fBinet_interfaces = loopback-only\fR" in main.cf, instead
79#	of hard-coding loopback IP address information in master.cf
80#	or in main.cf.
81# .IP \fBunix\fR
82#	The service listens on a UNIX-domain socket and is accessible
83#	for local clients only.
84#
85#	The service name is a pathname relative to the Postfix
86#	queue directory (pathname controlled with the \fBqueue_directory\fR
87#	configuration parameter in main.cf).
88# .sp
89#	On Solaris systems the \fBunix\fR type is implemented with
90#	streams sockets.
91# .IP \fBfifo\fR
92#	The service listens on a FIFO (named pipe) and is accessible
93#	for local clients only.
94#
95#	The service name is a pathname relative to the Postfix
96#	queue directory (pathname controlled with the \fBqueue_directory\fR
97#	configuration parameter in main.cf).
98# .IP \fBpass\fR
99#	The service listens on a UNIX-domain socket, and is accessible
100#	to local clients only. It receives one open connection (file
101#	descriptor passing) per connection request.
102#
103#	The service name is a pathname relative to the Postfix
104#	queue directory (pathname controlled with the \fBqueue_directory\fR
105#	configuration parameter in main.cf).
106#
107#	This feature is available as of Postfix version 2.5.
108# .RE
109# .IP "\fBPrivate (default: y)\fR"
110#	Whether or not access is restricted to the mail system.
111#	Internet (type \fBinet\fR) services can't be private.
112# .IP "\fBUnprivileged (default: y)\fR"
113#	Whether the service runs with root privileges or as the
114#	owner of the Postfix system (the owner name is controlled
115#	by the \fBmail_owner\fR configuration variable in the
116#	main.cf file).
117# .sp
118#	The \fBlocal\fR(8), \fBpipe\fR(8), \fBspawn\fR(8), and
119#	\fBvirtual\fR(8) daemons require privileges.
120# .IP "\fBChroot (default: y)\fR"
121#	Whether or not the service runs chrooted to the mail queue
122#	directory (pathname is controlled by the \fBqueue_directory\fR
123#	configuration variable in the main.cf file).
124# .sp
125#	Chroot should not be used with the \fBlocal\fR(8),
126#	\fBpipe\fR(8), \fBspawn\fR(8), and \fBvirtual\fR(8) daemons.
127#	Although the
128#	\fBproxymap\fR(8) server can run chrooted, doing so defeats
129#	most of the purpose of having that service in the first
130#	place.
131# .sp
132#	The files in the examples/chroot-setup subdirectory of the
133#	Postfix source archive show set up a Postfix chroot environment
134#	on a variety of systems. See also BASIC_CONFIGURATION_README
135#	for issues related to running daemons chrooted.
136# .IP "\fBWake up time (default: 0)\fR"
137#	Automatically wake up the named service after the specified
138#	number of seconds. The wake up is implemented by connecting
139#	to the service and sending a wake up request.  A ? at the
140#	end of the wake-up time field requests that no wake up
141#	events be sent before the first time a service is used.
142#	Specify 0 for no automatic wake up.
143# .sp
144#	The \fBpickup\fR(8), \fBqmgr\fR(8) and \fBflush\fR(8)
145#	daemons require a wake up timer.
146# .IP "\fBProcess limit (default: $default_process_limit)\fR"
147#	The maximum number of processes that may execute this
148#	service simultaneously. Specify 0 for no process count limit.
149# .sp
150#	NOTE: Some Postfix services must be configured as a
151#	single-process service (for example, \fBqmgr\fR(8)) and
152#	some services must be configured with no process limit (for
153#	example, \fBcleanup\fR(8)).  These limits must not be
154#	changed.
155# .IP "\fBCommand name + arguments\fR"
156#	The command to be executed.  Characters that are special
157#	to the shell such as ">" or "|" have no special meaning
158#	here, and quotes cannot be used to protect arguments
159#	containing whitespace.
160# .sp
161#	The command name is relative to the Postfix daemon directory
162#	(pathname is controlled by the \fBdaemon_directory\fR
163#	configuration variable).
164# .sp
165#	The command argument syntax for specific commands is
166#	specified in the respective daemon manual page.
167# .sp
168#	The following command-line options have the same effect for
169#	all daemon programs:
170# .RS
171# .IP \fB-D\fR
172#	Run the daemon under control by the command specified with
173#	the \fBdebugger_command\fR variable in the main.cf
174#	configuration file.  See DEBUG_README for hints and tips.
175# .IP "\fB-o \fIname\fR=\fIvalue\fR"
176#	Override the named main.cf configuration parameter. The
177#	parameter value can refer to other parameters as \fI$name\fR
178#	etc., just like in main.cf.  See \fBpostconf\fR(5) for
179#	syntax.
180# .sp
181#	NOTE 1: do not specify whitespace around the "=". In parameter
182#	values, either avoid whitespace altogether, use commas
183#	instead of spaces, or consider overrides like "-o
184#	name=$override_parameter" with $override_parameter set in
185#	main.cf.
186# .sp
187#	NOTE 2: Over-zealous use of parameter overrides makes the
188#	Postfix configuration hard to understand and maintain.  At
189#	a certain point, it might be easier to configure multiple
190#	instances of Postfix, instead of configuring multiple
191#	personalities via master.cf.
192# .IP \fB-v\fR
193#	Increase the verbose logging level. Specify multiple \fB-v\fR
194#	options to make a Postfix daemon process increasingly verbose.
195# SEE ALSO
196#	master(8), process manager
197#	postconf(5), configuration parameters
198# README FILES
199# .ad
200# .fi
201#	Use "\fBpostconf readme_directory\fR" or
202#	"\fBpostconf html_directory\fR" to locate this information.
203# .na
204# .nf
205#	BASIC_CONFIGURATION_README, basic configuration
206#	DEBUG_README, Postfix debugging
207# LICENSE
208# .ad
209# .fi
210#	The Secure Mailer license must be distributed with this software.
211# AUTHOR(S)
212#	Initial version by
213#	Magnus Baeck
214#	Lund Institute of Technology
215#	Sweden
216#
217#	Wietse Venema
218#	IBM T.J. Watson Research
219#	P.O. Box 704
220#	Yorktown Heights, NY 10598, USA
221#--
222