POSTCONF(1)                                                        POSTCONF(1)

NAME
       postconf - Postfix configuration utility

SYNOPSIS
       Managing main.cf:

       postconf [-dfhnopvx] [-c config_dir] [-C class,...] [parameter ...]

       postconf [-epv] [-c config_dir] parameter=value ...

       postconf -# [-pv] [-c config_dir] parameter ...

       postconf -X [-pv] [-c config_dir] parameter ...

       Managing master.cf service entries:

       postconf -M [-fovx] [-c config_dir] [service[/type] ...]

       postconf -M [-ev] [-c config_dir] service/type=value ...

       postconf -M# [-v] [-c config_dir] service/type ...

       postconf -MX [-v] [-c config_dir] service/type ...

       Managing master.cf service fields:

       postconf -F [-fovx] [-c config_dir] [service[/type[/field]] ...]

       postconf -F [-ev] [-c config_dir] service/type/field=value ...

       Managing master.cf service parameters:

       postconf -P [-fovx] [-c config_dir] [service[/type[/parameter]] ...]

       postconf -P [-ev] [-c config_dir] service/type/parameter=value ...

       postconf -PX [-v] [-c config_dir] service/type/parameter ...

       Managing bounce message templates:

       postconf -b [-v] [-c config_dir] [template_file]

       postconf -t [-v] [-c config_dir] [template_file]

       Managing other configuration:

       postconf -a|-A|-l|-m [-v] [-c config_dir]

DESCRIPTION
       By default, the postconf(1) command displays the values of main.cf con-
       figuration parameters, and warns  about  possible  mis-typed  parameter
       names  (Postfix  2.9 and later).  It can also change main.cf configura-
       tion parameter values, or display other configuration information about
       the Postfix mail system.

       Options:

       -a     List  the available SASL server plug-in types.  The SASL plug-in
              type is selected with the smtpd_sasl_type configuration  parame-
              ter by specifying one of the names listed below.

              cyrus  This  server  plug-in  is available when Postfix is built
                     with Cyrus SASL support.

              dovecot
                     This  server  plug-in  uses  the  Dovecot  authentication
                     server,  and  is available when Postfix is built with any
                     form of SASL support.

              This feature is available with Postfix 2.3 and later.

       -A     List the available SASL client plug-in types.  The SASL  plug-in
              type  is selected with the smtp_sasl_type or lmtp_sasl_type con-
              figuration parameters by specifying  one  of  the  names  listed
              below.

              cyrus  This  client  plug-in  is available when Postfix is built
                     with Cyrus SASL support.

              This feature is available with Postfix 2.3 and later.

       -b [template_file]
              Display the message text that appears at the beginning of deliv-
              ery  status notification (DSN) messages, replacing $name expres-
              sions with actual values as described in bounce(5).

              To override the built-in templates, specify a template file name
              at  the  end  of the postconf(1) command line, or specify a file
              name in main.cf with the bounce_template_file parameter.

              To force selection of the built-in templates, specify  an  empty
              template  file  name  on  the postconf(1) command line (in shell
              language: "").

              This feature is available with Postfix 2.3 and later.

       -c config_dir
              The main.cf configuration file is in the named directory instead
              of the default configuration directory.

       -C class,...
              When  displaying main.cf parameters, select only parameters from
              the specified class(es):

              builtin
                     Parameters with built-in names.

              service
                     Parameters with service-defined names (the first field of
                     a master.cf entry plus a Postfix-defined suffix).

              user   Parameters with user-defined names.

              all    All the above classes.

              The default is as if "-C all" is specified.

              This feature is available with Postfix 2.9 and later.

       -d     Print  main.cf default parameter settings instead of actual set-
              tings.  Specify -df to fold long  lines  for  human  readability
              (Postfix 2.9 and later).

       -e     Edit  the  main.cf configuration file, and update parameter set-
              tings with the "name=value" pairs  on  the  postconf(1)  command
              line.

              With  -M, edit the master.cf configuration file, and replace one
              or more service entries with new values as specified with  "ser-
              vice/type=value" on the postconf(1) command line.

              With  -F, edit the master.cf configuration file, and replace one
              or more service fields with new values  as  specied  with  "ser-
              vice/type/field=value"  on  the  postconf(1)  command line. Cur-
              rently, the "command" field contains the command name  and  com-
              mand arguments.  this may change in the near future, so that the
              "command" field contains only the command name, and a new "argu-
              ments" pseudofield contains the command arguments.

              With  -P,  edit  the  master.cf  configuration  file, and add or
              update one  or  more  service  parameter  settings  (-o  parame-
              ter=value  settings)  with  new  values  as  specied  with "ser-
              vice/type/parameter=value" on the postconf(1) command line.

              In all cases the file is copied to a temporary file then renamed
              into  place.   Specify  quotes to protect special characters and
              whitespace on the postconf(1) command line.

              The -e option is no longer needed with Postfix version  2.8  and
              later.

       -f     Fold long lines when printing main.cf or master.cf configuration
              file entries, for human readability.

              This feature is available with Postfix 2.9 and later.

       -F     Show master.cf per-entry field settings (by default all services
              and all fields), formatted as one "service/type/field=value" per
              line. Specify -Ff to fold long lines.

              Specify one or more "service/type/field" instances on the  post-
              conf(1)  command line to limit the output to fields of interest.
              Trailing parameter name or service type fields that are  omitted
              will be handled as "*" wildcard fields.

              This feature is available with Postfix 2.11 and later.

       -h     Show  parameter  or attribute values without the "name = " label
              that normally precedes the value.

       -l     List the names of all supported mailbox locking methods.   Post-
              fix supports the following methods:

              flock  A  kernel-based  advisory  locking method for local files
                     only.  This locking method is available on systems with a
                     BSD compatible library.

              fcntl  A  kernel-based  advisory  locking  method  for local and
                     remote files.

              dotlock
                     An application-level locking method. An application locks
                     a  file  named  filename  by  creating a file named file-
                     name.lock.  The application is expected to remove its own
                     lock  file,  as  well  as stale lock files that were left
                     behind after abnormal program termination.

       -m     List the names of all supported lookup table types.  In  Postfix
              configuration  files,  lookup tables are specified as type:name,
              where type is one of the types listed below. The table name syn-
              tax  depends  on the lookup table type as described in the DATA-
              BASE_README document.

              btree  A sorted, balanced tree structure.  Available on  systems
                     with support for Berkeley DB databases.

              cdb    A  read-optimized structure with no support for incremen-
                     tal updates.  Available on systems with support  for  CDB
                     databases.

              cidr   A  table  that  associates  values  with Classless Inter-
                     Domain Routing (CIDR)  patterns.  This  is  described  in
                     cidr_table(5).

              dbm    An indexed file type based on hashing.  Available on sys-
                     tems with support for DBM databases.

              environ
                     The UNIX process environment array. The lookup key is the
                     variable  name. Originally implemented for testing, some-
                     one may find this useful someday.

              fail   A table that reliably fails all requests. The lookup  ta-
                     ble  name  is used for logging. This table exists to sim-
                     plify Postfix error tests.

              hash   An indexed file type based on hashing.  Available on sys-
                     tems with support for Berkeley DB databases.

              internal
                     A  non-shared, in-memory hash table. Its content are lost
                     when a process terminates.

              lmdb   OpenLDAP  LMDB  database  (a  memory-mapped,   persistent
                     file).   Available on systems with support for LMDB data-
                     bases.  This is described in lmdb_table(5).

              ldap (read-only)
                     LDAP database client. This is described in ldap_table(5).

              memcache
                     Memcache  database  client.  This  is  described  in mem-
                     cache_table(5).

              mysql (read-only)
                     MySQL database client.  Available on systems with support
                     for  MySQL  databases.   This  is  described in mysql_ta-
                     ble(5).

              pcre (read-only)
                     A lookup table based on Perl Compatible  Regular  Expres-
                     sions.  The file format is described in pcre_table(5).

              pgsql (read-only)
                     PostgreSQL   database   client.   This  is  described  in
                     pgsql_table(5).

              pipemap (read-only)
                     A lookup table that  constructs  a  pipeline  of  tables.
                     Example:  "pipemap:{type_1:name_1,  ..., type_n:name_n}".
                     Each "pipemap:" query is given to the first table.   Each
                     lookup result becomes the query for the next table in the
                     pipeline, and the last table produces the  final  result.
                     When  any  table  lookup produces no result, the pipeline
                     produces no result. The first and last characters of  the
                     "pipemap:" table name must be "{" and "}".  Within these,
                     individual maps are separated with comma or whitespace.

              proxy  Postfix proxymap(8) client for shared access  to  Postfix
                     databases. The table name syntax is type:name.

              randmap (read-only)
                     An  in-memory table that performs random selection. Exam-
                     ple:  "randmap:{result_1,  ...,  result_n}".  Each  table
                     query returns a random choice from the specified results.
                     The first and last characters  of  the  "randmap:"  table
                     name  must be "{" and "}".  Within these, individual maps
                     are separated with comma or whitespace.

              regexp (read-only)
                     A lookup table based on  regular  expressions.  The  file
                     format is described in regexp_table(5).

              sdbm   An indexed file type based on hashing.  Available on sys-
                     tems with support for SDBM databases.

              socketmap (read-only)
                     Sendmail-style  socketmap  client.  The  table  name   is
                     inet:host:port:name  for  a  TCP/IP server, or unix:path-
                     name:name for a UNIX-domain server. This is described  in
                     socketmap_table(5).

              sqlite (read-only)
                     SQLite database. This is described in sqlite_table(5).

              static (read-only)
                     A  table  that  always returns its name as lookup result.
                     For example, static:foobar always returns the string foo-
                     bar as lookup result.

              tcp (read-only)
                     TCP/IP client. The protocol is described in tcp_table(5).

              texthash (read-only)
                     Produces similar results as hash: files, except that  you
                     don't  need  to run the postmap(1) command before you can
                     use the file, and that it does not detect  changes  after
                     the file is read.

              unionmap (read-only)
                     A  table  that sends each query to multiple lookup tables
                     and that concatenates all  found  results,  separated  by
                     comma.  The table name syntax is the same as for pipemap.

              unix (read-only)
                     A limited view of the UNIX authentication  database.  The
                     following tables are implemented:

                     unix:passwd.byname
                            The  table  is the UNIX password database. The key
                            is a login name.  The result is  a  password  file
                            entry in passwd(5) format.

                     unix:group.byname
                            The table is the UNIX group database. The key is a
                            group name.  The result is a group file  entry  in
                            group(5) format.

              Other  table types may exist depending on how Postfix was built.

       -M     Show master.cf file contents instead of main.cf  file  contents.
              Specify -Mf to fold long lines for human readability.

              Specify zero or more arguments, each with a service-name or ser-
              vice-name/service-type pair, where  service-name  is  the  first
              field  of  a  master.cf  entry and service-type is one of (inet,
              unix, fifo, or pass).

              If service-name or service-name/service-type is specified,  only
              the  matching  master.cf  entries  will  be output. For example,
              "postconf -Mf smtp" will output all services named  "smtp",  and
              "postconf  -Mf smtp/inet" will output only the smtp service that
              listens on the network.  Trailing service type fields  that  are
              omitted will be handled as "*" wildcard fields.

              This feature is available with Postfix 2.9 and later. The syntax
              was changed from "name.type" to "name/type",  and  "*"  wildcard
              support was added with Postfix 2.11.

       -n     Show only configuration parameters that have explicit name=value
              settings in main.cf.  Specify -nf to fold long lines  for  human
              readability (Postfix 2.9 and later).

       -o name=value
              Override main.cf parameter settings.

              This feature is available with Postfix 2.10 and later.

       -p     Show main.cf parameter settings. This is the default.

              This feature is available with Postfix 2.11 and later.

       -P     Show  master.cf  service parameter settings (by default all ser-
              vices   and   all   parameters).    formatted   as   one   "ser-
              vice/type/parameter=value"  per  line.  Specify -Pf to fold long
              lines.

              Specify one or more "service/type/parameter"  instances  on  the
              postconf(1)  command  line  to limit the output to parameters of
              interest.  Trailing parameter name or service type  fields  that
              are omitted will be handled as "*" wildcard fields.

              This feature is available with Postfix 2.11 and later.

       -t [template_file]
              Display  the templates for text that appears at the beginning of
              delivery status notification (DSN) messages,  without  expanding
              $name expressions.

              To override the built-in templates, specify a template file name
              at the end of the postconf(1) command line, or  specify  a  file
              name in main.cf with the bounce_template_file parameter.

              To  force  selection of the built-in templates, specify an empty
              template file name on the postconf(1)  command  line  (in  shell
              language: "").

              This feature is available with Postfix 2.3 and later.

       -v     Enable  verbose  logging  for  debugging  purposes.  Multiple -v
              options make the software increasingly verbose.

       -x     Expand $name in  main.cf  or  master.cf  parameter  values.  The
              expansion is recursive.

              This feature is available with Postfix 2.10 and later.

       -X     Edit  the  main.cf configuration file, and remove the parameters
              named on the postconf(1) command line.  Specify a list of param-
              eter names, not "name=value" pairs.

              With  -M,  edit the master.cf configuration file, and remove one
              or more service entries as specified with "service/type" on  the
              postconf(1) command line.

              With  -P,  edit the master.cf configuration file, and remove one
              or more service parameter settings (-o parameter=value settings)
              as specied with "service/type/parameter" on the postconf(1) com-
              mand line.

              In all cases the file is copied to a temporary file then renamed
              into place.  Specify quotes to protect special characters on the
              postconf(1) command line.

              There is no postconf(1) command to perform  the  reverse  opera-
              tion.

              This  feature is available with Postfix 2.10 and later.  Support
              for -M and -P was added with Postfix 2.11.

       -#     Edit the main.cf configuration file, and comment out the parame-
              ters named on the postconf(1) command line, so that those param-
              eters revert to their default values.  Specify a list of parame-
              ter names, not "name=value" pairs.

              With  -M, edit the master.cf configuration file, and comment out
              one or more service entries as specified with "service/type"  on
              the postconf(1) command line.

              In all cases the file is copied to a temporary file then renamed
              into place.  Specify quotes to protect special characters on the
              postconf(1) command line.

              There  is  no  postconf(1) command to perform the reverse opera-
              tion.

              This feature is available with Postfix 2.6  and  later.  Support
              for -M was added with Postfix 2.11.

DIAGNOSTICS
       Problems are reported to the standard error stream.

ENVIRONMENT
       MAIL_CONFIG
              Directory with Postfix configuration files.

CONFIGURATION PARAMETERS
       The  following  main.cf parameters are especially relevant to this pro-
       gram.

       The text below provides only a parameter summary. See  postconf(5)  for
       more details including examples.

       config_directory (see 'postconf -d' output)
              The  default  location of the Postfix main.cf and master.cf con-
              figuration files.

       bounce_template_file (empty)
              Pathname of a configuration file with bounce message  templates.

FILES
       /etc/postfix/main.cf, Postfix configuration parameters
       /etc/postfix/master.cf, Postfix master daemon configuration

SEE ALSO
       bounce(5), bounce template file format master(5), master.cf
       configuration file syntax postconf(5), main.cf configuration
       file syntax

README FILES
       DATABASE_README, Postfix lookup table overview

LICENSE
       The Secure Mailer license must be distributed with this software.

AUTHOR(S)
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

                                                                   POSTCONF(1)