ALIASES(5) File Formats Manual ALIASES(5)
aliases - Postfix local alias database format
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.
The input and output file formats are expected to be compatible with
Sendmail version 8, and are expected to be suitable for the use as NIS
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 logical 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 insensitive.
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 undelivered
The value contains one or more of the following:
Mail is forwarded to address, which is compatible with the RFC
Mail is appended to /file/name. See local(8) for details of
delivery to file. Delivery is not limited to regular files.
For example, to dispose of unwanted mail, deflect it to
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 simulate a "user unknown" error, and "|exit 0" to
implement an expensive black hole.
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
When alias database search fails, and the recipient localpart 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 propagated to the result of table
The local(8) delivery agent always folds the search string to lowercase
before database lookup.
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.
The following main.cf parameters are especially relevant. The text
below provides only a parameter summary. See postconf(5) for more
details including examples.
List of alias databases that are updated by the newaliases(1)
List of alias databases queried by the local(8) delivery agent.
Restrict the usage of mail delivery to external command.
Restrict the usage of mail delivery to external file.
When delivering to an alias that has an owner- companion alias,
set the envelope sender address to the right-hand side of the
owner alias, instead using of the left-hand side address.
A list of address rewriting or forwarding mechanisms that
propagate an address extension from the original address to the
result. Specify zero or more of canonical, virtual, alias,
forward, include, or generic.
Give special treatment to owner-listname and listname-request
Delimiter that separates recipients from address extensions.
Available in Postfix version 2.3 and later:
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.
RFC 822 (ARPA Internet Text Messages)
local(8), local delivery agent
newaliases(1), create/update alias database
postalias(1), create/update alias database
postconf(5), configuration parameters
Use "postconf readme_directory" or "postconf html_directory" to locate
DATABASE_README, Postfix lookup table overview
The Secure Mailer license must be distributed with this software.
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA