    ALIASES(5)                                                          ALIASES(5)

    NAME
           aliases - Postfix local alias database format

    SYNOPSIS
           newaliases

    DESCRIPTION
           The  aliases(5)  table provides a system-wide mechanism to
           redirect mail for local recipients. The  redirections  are
           processed by the Postfix local(8) delivery agent.

           Normally, the aliases(5) table is specified as a text file
           that serves as input  to  the  postalias(1)  command.  The
           result,  an  indexed file in dbm or db format, is used for
           fast lookup  by  the  mail  system.  Execute  the  command
           newaliases  in  order  to  rebuild  the indexed file after
           changing the Postfix alias database.

           When the table is provided via other means  such  as  NIS,
           LDAP  or  SQL,  the  same lookups are done as for ordinary
           indexed files.

           Alternatively, the table can be  provided  as  a  regular-
           expression map where patterns are given as regular expres-
           sions. In this case, the lookups are done  in  a  slightly
           different way as described below under "REGULAR EXPRESSION
           TABLES".

           Users can control delivery of their own mail by setting up
           .forward files in their home directory.  Lines in per-user
           .forward files have the same syntax as the right-hand side
           of aliases(5) entries.

           The format of the alias database input file is as follows:

           o      An alias definition has the form

                       name: value1, value2, ...

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

           o      A logical line starts with non-whitespace  text.  A
                  line  that starts with whitespace continues a logi-
                  cal line.

           The name is a local address (no domain part).  Use  double
           quotes  when the name contains any special characters such
           as whitespace, `#', `:', or `@'. The  name  is  folded  to
           lowercase, in order to make database lookups case insensi-
           tive.

           In addition, when an alias exists for owner-name, delivery
           diagnostics  are  directed  to that address, instead of to
           the originator of the message.  This is typically used  to
           direct  delivery  errors  to  the  maintainer of a mailing
           list, who is in a better position  to  deal  with  mailing
           list delivery problems than the originator of the undeliv-
           ered mail.

           The value contains one or more of the following:

           address
                  Mail is forwarded to address, which  is  compatible
                  with the RFC 822 standard.

           /file/name
                  Mail  is  appended  to /file/name. See local(8) for
                  details of delivery to file.  Delivery is not  lim-
                  ited  to regular files.  For example, to dispose of
                  unwanted mail, deflect it to /dev/null.

           |command
                  Mail is piped into command. Commands  that  contain
                  special  characters,  such as whitespace, should be
                  enclosed between double quotes.  See  local(8)  for
                  details of delivery to command.

                  When the command fails, a limited amount of command
                  output is mailed back  to  the  sender.   The  file
                  /usr/include/sysexits.h  defines  the expected exit
                  status codes. For example, use "|exit 67" to  simu-
                  late  a  "user  unknown"  error,  and  "|exit 0" to
                  implement an expensive black hole.

           :include:/file/name
                  Mail is sent to  the  destinations  listed  in  the
                  named file.  Lines in :include: files have the same
                  syntax as the right-hand side of alias entries.

                  A  destination  can  be  any  destination  that  is
                  described in this manual page. However, delivery to
                  "|command" and /file/name is disallowed by default.
                  To  enable,  edit  the  allow_mail_to_commands  and
                  allow_mail_to_files configuration parameters.

    ADDRESS EXTENSION
           When alias database search fails, and the recipient local-
           part  contains  the  optional  recipient  delimiter (e.g.,
           user+foo), the  search  is  repeated  for  the  unextended
           address (e.g., user).

           The   propagate_unmatched_extensions   parameter  controls
           whether an unmatched address extension  (+foo)  is  propa-
           gated to the result of table lookup.

    CASE FOLDING
           The local(8) delivery agent always folds the search string
           to lowercase before database lookup.

    REGULAR EXPRESSION TABLES
           This section describes how the table lookups  change  when
           the table is given in the form of regular expressions. For
           a description of regular expression lookup  table  syntax,
           see  regexp_table(5) or pcre_table(5). NOTE: these formats
           do not use ":" at the end of a pattern.

           Each regular expression is applied to  the  entire  search
           string.  Thus,  a  search string user+foo is not broken up
           into user and foo.

           Regular expressions are applied in the order as  specified
           in  the  table,  until  a regular expression is found that
           matches the search string.

           Lookup results are the same as with indexed file  lookups.
           For  security  reasons there is no support for $1, $2 etc.
           substring interpolation.

    SECURITY
           The local(8) delivery agent disallows  regular  expression
           substitution  of $1 etc. in alias_maps, because that would
           open a security hole.

           The local(8) delivery agent will silently ignore  requests
           to  use  the proxymap(8) server within alias_maps. Instead
           it will open the table directly.  Before  Postfix  version
           2.2,  the  local(8)  delivery  agent will terminate with a
           fatal error.

    CONFIGURATION PARAMETERS
           The following main.cf parameters are especially  relevant.
           The  text  below  provides  only  a parameter summary. See
           postconf(5) for more details including examples.

           alias_database
                  List of alias databases that  are  updated  by  the
                  newaliases(1) command.

           alias_maps
                  List  of  alias  databases  queried by the local(8)
                  delivery agent.

           allow_mail_to_commands
                  Restrict the usage of  mail  delivery  to  external
                  command.

           allow_mail_to_files
                  Restrict  the  usage  of  mail delivery to external
                  file.

           expand_owner_alias
                  When delivering to an alias that has an owner- com-
                  panion  alias,  set  the envelope sender address to
                  the right-hand side of  the  owner  alias,  instead
                  using of the left-hand side address.

           propagate_unmatched_extensions
                  A  list  of  address rewriting or forwarding mecha-
                  nisms that propagate an address extension from  the
                  original  address  to  the  result. Specify zero or
                  more  of  canonical,   virtual,   alias,   forward,
                  include, or generic.

           owner_request_special
                  Give  special treatment to owner-listname and list-
                  name-request addresses.

           recipient_delimiter
                  Delimiter that separates  recipients  from  address
                  extensions.

           Available in Postfix version 2.3 and later:

           frozen_delivered_to
                  Update  the local(8) delivery agent's Delivered-To:
                  address (see prepend_delivered_header)  only  once,
                  at  the  start  of  a  delivery;  do not update the
                  Delivered-To: address while  expanding  aliases  or
                  .forward files.

    STANDARDS
           RFC 822 (ARPA Internet Text Messages)

    SEE ALSO
           local(8), local delivery agent
           newaliases(1), create/update alias database
           postalias(1), create/update alias database
           postconf(5), configuration parameters

    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

                                                                        ALIASES(5)