#++ # NAME # master 5 # SUMMARY # Postfix master process configuration file format # DESCRIPTION # 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 under control of the \fBmaster\fR(8) # process. The master.cf 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 \fBmax_use\fR clients, or after inactivity for # \fBmax_idle\fR or more units of time. # # All daemons specified here must speak a Postfix-internal # protocol. In order to execute non-Postfix software use the # \fBlocal\fR(8), \fBpipe\fR(8) or \fBspawn\fR(8) services, or # run the server under control by \fBinetd\fR(8) or equivalent. # .PP # After changing master.cf you must execute "\fBpostfix reload\fR" # to reload the configuration. # SYNTAX # .ad # .fi # The general format of the master.cf file is as follows: # .IP \(bu # Each logical line defines a single Postfix service. # Each service 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 master.cf service definitions does not matter. # .IP \(bu # Empty lines and whitespace-only lines are ignored, as are # lines whose first non-whitespace character is a `#'. # .IP \(bu # A logical line starts with non-whitespace text. A line that # starts with whitespace continues a logical line. # .PP # Each logical line consists of eight fields separated by # whitespace. These are described below in the order as they # appear in the master.cf 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. # .IP "\fBService name\fR" # The service name syntax depends on the service type as # described next. # .IP "\fBService type\fR" # Specify one of the following service types: # .RS # .IP \fBinet\fR # The service listens on a TCP/IP socket and is accessible # via the network. # # The service name is specified as \fIhost:port\fR, 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 (host or service # name) or in numeric form (IP address or port number). # Host information may be enclosed inside "[]", but this form # is not necessary. # .sp # Examples: a service named \fB127.0.0.1:smtp\fR or \fB::1:smtp\fR # receives # mail via the loopback interface only; and a service named # \fB10025\fR accepts connections on TCP port 10025 via # all interfaces configured with the \fBinet_interfaces\fR # parameter. # # .sp # Note: with Postfix version 2.2 and later specify # "\fBinet_interfaces = loopback-only\fR" in main.cf, instead # of hard-coding loopback IP address information in master.cf # or in main.cf. # .IP \fBunix\fR # The service listens on a UNIX-domain socket and is accessible # for local clients only. # # The service name is a pathname relative to the Postfix # queue directory (pathname controlled with the \fBqueue_directory\fR # configuration parameter in main.cf). # .sp # On Solaris systems the \fBunix\fR type is implemented with # streams sockets. # .IP \fBfifo\fR # The service listens on a FIFO (named pipe) and is accessible # for local clients only. # # The service name is a pathname relative to the Postfix # queue directory (pathname controlled with the \fBqueue_directory\fR # configuration parameter in main.cf). # .IP \fBpass\fR # The service listens on a UNIX-domain 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 \fBqueue_directory\fR # configuration parameter in main.cf). # .sp # On Solaris systems the \fBpass\fR type is implemented with # streams sockets. # # This feature is available as of Postfix version 2.5. # .RE # .IP "\fBPrivate (default: y)\fR" # Whether or not access is restricted to the mail system. # Internet (type \fBinet\fR) services can't be private. # .IP "\fBUnprivileged (default: y)\fR" # Whether the service runs with root privileges or as the # owner of the Postfix system (the owner name is controlled # by the \fBmail_owner\fR configuration variable in the # main.cf file). # .sp # The \fBlocal\fR(8), \fBpipe\fR(8), \fBspawn\fR(8), and # \fBvirtual\fR(8) daemons require privileges. # .IP "\fBChroot (default: y)\fR" # Whether or not the service runs chrooted to the mail queue # directory (pathname is controlled by the \fBqueue_directory\fR # configuration variable in the main.cf file). # .sp # Chroot should not be used with the \fBlocal\fR(8), # \fBpipe\fR(8), \fBspawn\fR(8), and \fBvirtual\fR(8) daemons. # Although the # \fBproxymap\fR(8) server can run chrooted, doing so defeats # most of the purpose of having that service in the first # place. # .sp # The files in the examples/chroot-setup subdirectory of the # Postfix source archive show set up a Postfix chroot environment # on a variety of systems. See also BASIC_CONFIGURATION_README # for issues related to running daemons chrooted. # .IP "\fBWake up time (default: 0)\fR" # Automatically wake up the named service after the specified # number 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 automatic wake up. # .sp # The \fBpickup\fR(8), \fBqmgr\fR(8) and \fBflush\fR(8) # daemons require a wake up timer. # .IP "\fBProcess limit (default: $default_process_limit)\fR" # The maximum number of processes that may execute this # service simultaneously. Specify 0 for no process count limit. # .sp # NOTE: Some Postfix services must be configured as a # single-process service (for example, \fBqmgr\fR(8)) and # some services must be configured with no process limit (for # example, \fBcleanup\fR(8)). These limits must not be # changed. # .IP "\fBCommand name + arguments\fR" # 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 whitespace. # .sp # The command name is relative to the Postfix daemon directory # (pathname is controlled by the \fBdaemon_directory\fR # configuration variable). # .sp # The command argument syntax for specific commands is # specified in the respective daemon manual page. # .sp # The following command-line options have the same effect for # all daemon programs: # .RS # .IP \fB-D\fR # Run the daemon under control by the command specified with # the \fBdebugger_command\fR variable in the main.cf # configuration file. See DEBUG_README for hints and tips. # .IP "\fB-o \fIname\fR=\fIvalue\fR" # Override the named main.cf configuration parameter. The # parameter value can refer to other parameters as \fI$name\fR # etc., just like in main.cf. See \fBpostconf\fR(5) for # syntax. # .sp # NOTE 1: do not specify whitespace around the "=". In parameter # values, either avoid whitespace altogether, use commas # instead of spaces, or consider overrides like "-o # name=$override_parameter" with $override_parameter set in # main.cf. # .sp # NOTE 2: 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 multiple # instances of Postfix, instead of configuring multiple # personalities via master.cf. # .IP \fB-v\fR # Increase the verbose logging level. Specify multiple \fB-v\fR # options to make a Postfix daemon process increasingly verbose. # SEE ALSO # master(8), process manager # postconf(5), configuration parameters # README FILES # .ad # .fi # Use "\fBpostconf readme_directory\fR" or # "\fBpostconf html_directory\fR" to locate this information. # .na # .nf # BASIC_CONFIGURATION_README, basic configuration # DEBUG_README, Postfix debugging # LICENSE # .ad # .fi # The Secure Mailer license must be distributed with this software. # AUTHOR(S) # 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 #--