xref: /netbsd-src/external/ibm-public/postfix/dist/proto/master (revision 5f2f42719cd62ff11fd913b40b7ce19f07c4fd25)
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#	Empty lines and whitespace-only lines are ignored, as are
33#	lines whose first non-whitespace character is a `#'.
34# .IP \(bu
35#	A logical line starts with non-whitespace text. A line that
36#	starts with whitespace continues a logical line.
37# .IP \(bu
38#	Each logical line defines a single Postfix service.
39#	Each service is identified by its name and type as described
40#	below.  When multiple lines specify the same service name
41#	and type, only the last one is remembered.  Otherwise, the
42#	order of master.cf service definitions does not matter.
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 (see \fBhosts\fR(5) or
65#	\fBservices\fR(5)) or in numeric form (IP address or port number).
66#	Host information may be enclosed inside "[]"; this form
67#	is necessary only with IPv6 addresses.
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 stream socket and is
83#	accessible 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 8 and earlier systems the \fBunix\fR type is
90#	implemented with streams sockets.
91# .IP \fBunix-dgram\fR
92#	The service listens on a UNIX-domain datagram socket and is
93#	accessible 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 "\fBfifo\fR (obsolete)"
99#	The service listens on a FIFO (named pipe) and is accessible
100#	for local clients only.
101#
102#	The service name is a pathname relative to the Postfix
103#	queue directory (pathname controlled with the \fBqueue_directory\fR
104#	configuration parameter in main.cf).
105# .IP \fBpass\fR
106#	The service listens on a UNIX-domain stream socket, and is
107#	accessible to local clients only. It receives one open
108#	connection (file descriptor passing) per connection request.
109#
110#	The service name is a pathname relative to the Postfix
111#	queue directory (pathname controlled with the \fBqueue_directory\fR
112#	configuration parameter in main.cf).
113# .sp
114#	On Solaris 8 and earlier systems the \fBpass\fR type is
115#	implemented with streams sockets.
116#
117#	This feature is available as of Postfix version 2.5.
118# .RE
119# .IP "\fBPrivate (default: y)\fR"
120#	Whether or not access is restricted to the mail system.
121#	Internet (type \fBinet\fR) services can't be private.
122# .IP "\fBUnprivileged (default: y)\fR"
123#	Whether the service runs with root privileges or as the
124#	owner of the Postfix system (the owner name is controlled
125#	by the \fBmail_owner\fR configuration variable in the
126#	main.cf file).
127# .sp
128#	The \fBlocal\fR(8), \fBpipe\fR(8), \fBspawn\fR(8), and
129#	\fBvirtual\fR(8) daemons require privileges.
130# .IP "\fBChroot (default: Postfix >= 3.0: n, Postfix <3.0: y)\fR"
131#	Whether or not the service runs chrooted to the mail queue
132#	directory (pathname is controlled by the \fBqueue_directory\fR
133#	configuration variable in the main.cf file).
134# .sp
135#	Chroot should not be used with the \fBlocal\fR(8),
136#	\fBpipe\fR(8), \fBspawn\fR(8), and \fBvirtual\fR(8) daemons.
137#	Although the
138#	\fBproxymap\fR(8) server can run chrooted, doing so defeats
139#	most of the purpose of having that service in the first
140#	place.
141# .sp
142#	The files in the examples/chroot-setup subdirectory of the
143#	Postfix source show how to set up a Postfix chroot environment
144#	on a variety of systems. See also BASIC_CONFIGURATION_README
145#	for issues related to running daemons chrooted.
146# .IP "\fBWake up time (default: 0)\fR"
147#	Automatically wake up the named service after the specified
148#	number of seconds. The wake up is implemented by connecting
149#	to the service and sending a wake up request.  A ? at the
150#	end of the wake-up time field requests that no wake up
151#	events be sent before the first time a service is used.
152#	Specify 0 for no automatic wake up.
153# .sp
154#	The \fBpickup\fR(8), \fBqmgr\fR(8) and \fBflush\fR(8)
155#	daemons require a wake up timer.
156# .IP "\fBProcess limit (default: $default_process_limit)\fR"
157#	The maximum number of processes that may execute this
158#	service simultaneously. Specify 0 for no process count limit.
159# .sp
160#	NOTE: Some Postfix services must be configured as a
161#	single-process service (for example, \fBqmgr\fR(8)) and
162#	some services must be configured with no process limit (for
163#	example, \fBcleanup\fR(8)).  These limits must not be
164#	changed.
165# .IP "\fBCommand name + arguments\fR"
166#	The command to be executed.  Characters that are special
167#	to the shell such as ">" or "|" have no special meaning
168#	here, and quotes cannot be used to protect arguments
169#	containing whitespace. To protect whitespace, use "{"
170#	and "}" as described below.
171# .sp
172#	The command name is relative to the Postfix daemon directory
173#	(pathname is controlled by the \fBdaemon_directory\fR
174#	configuration variable).
175# .sp
176#	The command argument syntax for specific commands is
177#	specified in the respective daemon manual page.
178# .sp
179#	The following command-line options have the same effect for
180#	all daemon programs:
181# .RS
182# .IP \fB-D\fR
183#	Run the daemon under control by the command specified with
184#	the \fBdebugger_command\fR variable in the main.cf
185#	configuration file.  See DEBUG_README for hints and tips.
186# .IP "\fB-o { \fIname\fR = \fIvalue\fB }\fR (long form, Postfix >= 3.0)"
187# .IP "\fB-o \fIname\fR=\fIvalue\fR (short form)"
188#	Override the named main.cf configuration parameter. The
189#	parameter value can refer to other parameters as \fI$name\fR
190#	etc., just like in main.cf.  See \fBpostconf\fR(5) for
191#	syntax.
192# .sp
193#	NOTE 1: With the "long form" shown above, whitespace
194#	after "{", around "=", and before "}" is ignored, and
195#	whitespace within the parameter value is preserved.
196# .sp
197#	NOTE 2: with the "short form" shown above, do not specify
198#	whitespace around the "=" or in
199#	parameter values. To specify a parameter value that contains
200#	whitespace, use the long form described above, or use commas
201#	instead of spaces, or specify the value in main.cf. Example:
202# .sp
203# .nf
204#	/etc/postfix/master.cf:
205#	    submission inet .... smtpd
206#		-o smtpd_xxx_yyy=$submission_xxx_yyy
207# .sp
208#	/etc/postfix/main.cf
209#	    submission_xxx_yyy = text with whitespace...
210# .fi
211# .sp
212#	NOTE 3: Over-zealous use of parameter overrides makes the
213#	Postfix configuration hard to understand and maintain.  At
214#	a certain point, it might be easier to configure multiple
215#	instances of Postfix, instead of configuring multiple
216#	personalities via master.cf.
217# .IP \fB-v\fR
218#	Increase the verbose logging level. Specify multiple \fB-v\fR
219#	options to make a Postfix daemon process increasingly verbose.
220# .IP "Other command-line arguments"
221#	Specify "{" and "}" around command arguments that contain
222#	whitespace (Postfix 3.0 and later). Whitespace
223#	after "{" and before "}" is ignored.
224# SEE ALSO
225#	master(8), process manager
226#	postconf(5), configuration parameters
227# README FILES
228# .ad
229# .fi
230#	Use "\fBpostconf readme_directory\fR" or
231#	"\fBpostconf html_directory\fR" to locate this information.
232# .na
233# .nf
234#	BASIC_CONFIGURATION_README, basic configuration
235#	DEBUG_README, Postfix debugging
236# LICENSE
237# .ad
238# .fi
239#	The Secure Mailer license must be distributed with this software.
240# AUTHOR(S)
241#	Initial version by
242#	Magnus Baeck
243#	Lund Institute of Technology
244#	Sweden
245#
246#	Wietse Venema
247#	IBM T.J. Watson Research
248#	P.O. Box 704
249#	Yorktown Heights, NY 10598, USA
250#
251#	Wietse Venema
252#	Google, Inc.
253#	111 8th Avenue
254#	New York, NY 10011, USA
255#--
256