aliases

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. 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 maps. 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:
An alias definition has the form
     name: value1, value2, ...
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.
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 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 limited 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 simulate 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 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 lookup.

CASE FOLDING

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

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- companion 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 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.
owner_request_special Give special treatment to owner-listname and listname-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

Use "postconf readme_directory" or
"postconf html_directory" to locate this information.
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