master - Postfix master process configuration file format


   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  master(8)  process.   The
   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
   max_use clients, or after inactivity for  max_idle  or  more  units  of

   All  daemons  specified here must speak a Postfix-internal protocol. In
   order to execute non-Postfix software  use  the  local(8),  pipe(8)  or
   spawn(8)  services,  or  run  the  server  under control by inetd(8) or

   After changing you must execute "postfix  reload"  to  reload
   the configuration.


   The general format of the file is as follows:

   *      Empty  lines and whitespace-only lines are ignored, as are lines
          whose first non-whitespace character is a `#'.

   *      A logical line starts with  non-whitespace  text.  A  line  that
          starts with whitespace continues a logical line.

   *      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
          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

   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.

   Service name
          The service name syntax depends on the service type as described

   Service type
          Specify one of the following service types:

          inet   The service listens on a TCP/IP socket and is  accessible
                 via the network.

                 The  service name is specified as host:port, 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  "[]";
                 this form is necessary only with IPv6 addresses.

                 Examples:  a  service  named  or ::1:smtp
                 receives mail via the  loopback  interface  only;  and  a
                 service named 10025 accepts connections on TCP port 10025
                 via all interfaces configured  with  the  inet_interfaces

                 Note:   with   Postfix  version  2.2  and  later  specify
                 "inet_interfaces = loopback-only" in, instead  of
                 hard-coding  loopback IP address information in
                 or in

          unix   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
                 queue_directory configuration parameter in

                 On  Solaris  8  and  earlier  systems  the  unix  type is
                 implemented with streams sockets.

          fifo   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
                 queue_directory configuration parameter in

          pass   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

                 The service name is a pathname relative  to  the  Postfix
                 queue    directory    (pathname   controlled   with   the
                 queue_directory configuration parameter in

                 On Solaris  8  and  earlier  systems  the  pass  type  is
                 implemented with streams sockets.

                 This feature is available as of Postfix version 2.5.

   Private (default: y)
          Whether  or  not  access  is  restricted  to  the  mail  system.
          Internet (type inet) services can't be private.

   Unprivileged (default: y)
          Whether the service runs with root privileges or as the owner of
          the  Postfix  system  (the  owner  name  is  controlled  by  the
          mail_owner configuration variable in the file).

          The local(8), pipe(8), spawn(8), and virtual(8) daemons  require

   Chroot (default: Postfix >= 3.0: n, Postfix <3.0: y)
          Whether  or  not  the  service  runs  chrooted to the mail queue
          directory  (pathname  is  controlled  by   the   queue_directory
          configuration variable in the file).

          Chroot  should not be used with the local(8), pipe(8), spawn(8),
          and virtual(8) daemons.  Although the proxymap(8) 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
          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.

   Wake up time (default: 0)
          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.

          The pickup(8), qmgr(8) and flush(8) daemons require  a  wake  up

   Process limit (default: $default_process_limit)
          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
          single-process  service (for example, qmgr(8)) and some services
          must  be  configured  with  no  process  limit   (for   example,
          cleanup(8)).  These limits must not be changed.

   Command name + arguments
          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. To protect whitespace, use "{" and "}" as  described

          The  command  name  is  relative to the Postfix daemon directory
          (pathname is controlled by  the  daemon_directory  configuration

          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:

          -D     Run  the  daemon  under  control by the command specified
                 with  the  debugger_command  variable  in   the
                 configuration file.  See DEBUG_README for hints and tips.

          -o { name = value } (long form, Postfix >= 3.0)

          -o name=value (short form)
                 Override  the  named configuration parameter. The
                 parameter value can refer to other  parameters  as  $name
                 etc., just like in  See postconf(5) for syntax.

                 NOTE  1:  With  the  "long  form" shown above, whitespace
                 after "{", around "=", and before  "}"  is  ignored,  and
                 whitespace within the parameter value is preserved.

                 NOTE 2: with the "short form" shown above, do not specify
                 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, or specify the value in Example:

                     submission inet .... smtpd
                         -o smtpd_xxx_yyy=$submission_xxx_yyy

                     submission_xxx_yyy = text with whitespace...

                 NOTE 3: 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

          -v     Increase  the  verbose logging level. Specify multiple -v
                 options to make a  Postfix  daemon  process  increasingly

          Other command-line arguments
                 Specify "{" and "}" around command arguments that contain
                 whitespace (Postfix 3.0 and later). Whitespace after  "{"
                 and before "}" is ignored.


   master(8), process manager
   postconf(5), configuration parameters


   Use  "postconf readme_directory" or "postconf html_directory" to locate
   this information.
   BASIC_CONFIGURATION_README, basic configuration
   DEBUG_README, Postfix debugging


   The Secure Mailer license must be distributed with this software.


   Initial version by
   Magnus Baeck
   Lund Institute of Technology

   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


More Linux Commands

Tcl_InputBuffered(3) - buffered I/O facilities using channel
The Tcl channel mechanism provides a device-independent and platform-independent mechanism for performing buffered input and output operations on a variety of f

aoss(1) - Wrapper script to facilitate use of the ALSA OSS c
aoss is a simple wrapper script which facilitates the use of the ALSA OSS compatibility library. It just sets the appropriate LD_PRELOAD path and then runs the

ri.ruby2.1(1) Ruby API reference front end - Linux man page
ri is a CLI front end for the Ruby API reference. You can search and read API reference for classes and methods with . ri is a part of Ruby. target can be one o

systemd-tmpfiles-setup-dev.service(8) Creates, deletes and c
systemd-tmpfiles creates, deletes, and cleans up volatile and temporary files and directories, based on the configuration file format and location specified in

btrfs(5) mount options and supported file attributes for the
This document describes mount options specific to the btrfs filesystem. Other generic mount options are available,and are described in the mount(8) manpage. MOU

systemd-update-utmp(8) Write audit and utmp updates at bootu
systemd-update-utmp-runlevel.service is a service that writes SysV runlevel changes to utmp and wtmp, as well as the audit logs, as they occur. systemd-update-u

cacaview(1) - ASCII image browser - Linux manual page.......
cacaview is a lightweight text mode image viewer. It renders images using colour ASCII characters. It is a powerful add-on to famous console programs such as th

insw(2) - port I/O (System calls - Linux man page)..........
This family of functions is used to do low-level port input and output. The out* functions do port output, the in* functions do port input; the b-suffix functio

FcPatternDuplicate(3) - Copy a pattern - Linux manual page
Copy a pattern, returning a new pattern that matches p. Each pattern may be modified without affecting the other. VERSION Fontconfig version 2.8.0 FcPatternDupl

chvt(1) - change foreground virtual terminal (Man Page).....
The command chvt N makes /dev/ttyN the foreground terminal. (The corresponding screen is created if it did not exist yet. To get rid of unused VTs, use deallocv

glTexCoord2sv(3gl) - set the current texture coordinates....
glTexCoord specifies texture coordinates in one, two, three, or four dimensions. glTexCoord1 sets the current texture coordinates to (s, 0, 0, 1); a call to glT

apxs2(1) APache eXtenSion tool (Commands - Linux man page)
apxs2.1 - apxs is a tool for building and installing extension modules for the Apache HyperText Transfer Protocol (HTTP) server. This is achieved by building a

We can't live, work or learn in freedom unless the software we use is free.