xref: /netbsd-src/external/ibm-public/postfix/dist/proto/aliases (revision 059c16a85b0b39d60ad6d18f53c09510815afa2b)
1#++
2# NAME
3#	aliases 5
4# SUMMARY
5#	Postfix local alias database format
6# SYNOPSIS
7# .fi
8#	\fBnewaliases\fR
9# DESCRIPTION
10#	The \fBaliases\fR(5) table provides a system-wide mechanism to
11#	redirect mail for local recipients. The redirections are
12#	processed by the Postfix \fBlocal\fR(8) delivery agent.
13#
14#	Normally, the \fBaliases\fR(5) table is specified as a text file
15#	that serves as input to the \fBpostalias\fR(1) command. The
16#	result, an indexed file in \fBdbm\fR or \fBdb\fR format, is
17#	used for fast lookup by the mail system. Execute the command
18#	\fBnewaliases\fR in order to rebuild the indexed file after
19#	changing the Postfix alias database.
20#
21#	When the table is provided via other means such as NIS, LDAP
22#	or SQL, the same lookups are done as for ordinary indexed files.
23#
24#	Alternatively, the table can be provided as a regular-expression
25#	map where patterns are given as regular expressions. In
26#	this case, the lookups are done in a slightly different way
27#	as described below under "REGULAR EXPRESSION TABLES".
28#
29#	Users can control delivery of their own mail by setting
30#	up \fB.forward\fR files in their home directory.
31#	Lines in per-user \fB.forward\fR files have the same syntax
32#	as the right-hand side of \fBaliases\fR(5) entries.
33#
34#	The format of the alias database input file is as follows:
35# .IP \(bu
36#	An alias definition has the form
37# .sp
38# .nf
39#	     \fIname\fR: \fIvalue1\fR, \fIvalue2\fR, \fI...\fR
40# .fi
41# .IP \(bu
42#	Empty lines and whitespace-only lines are ignored, as
43#	are lines whose first non-whitespace character is a `#'.
44# .IP \(bu
45#	A logical line starts with non-whitespace text. A line that
46#	starts with whitespace continues a logical line.
47# .PP
48#	The \fIname\fR is a local address (no domain part).
49#	Use double quotes when the name contains any special characters
50#	such as whitespace, `#', `:', or `@'. The \fIname\fR is folded to
51#	lowercase, in order to make database lookups case insensitive.
52# .PP
53#	In addition, when an alias exists for \fBowner-\fIname\fR,
54#	this will override the envelope sender address, so that
55#	delivery diagnostics are directed to \fBowner-\fIname\fR,
56#	instead of the originator of the message (for details, see
57#	\fBowner_request_special\fR, \fBexpand_owner_alias\fR and
58#	\fBreset_owner_alias\fR).
59#	This is typically used to direct delivery errors to the maintainer of
60#	a mailing list, who is in a better position to deal with mailing
61#	list delivery problems than the originator of the undelivered mail.
62# .PP
63#	The \fIvalue\fR contains one or more of the following:
64# .IP \fIaddress\fR
65#	Mail is forwarded to \fIaddress\fR, which is compatible
66#	with the RFC 822 standard.
67# .IP \fI/file/name\fR
68#	Mail is appended to \fI/file/name\fR. For details on how a
69#	file is written see the sections "EXTERNAL FILE DELIVERY"
70#	and "DELIVERY RIGHTS" in the \fBlocal\fR(8) documentation.
71#	Delivery is not limited to regular files.  For example, to dispose
72#	of unwanted mail, deflect it to \fB/dev/null\fR.
73# .IP "|\fIcommand\fR"
74#	Mail is piped into \fIcommand\fR. Commands that contain
75#	special characters, such as whitespace, should be enclosed
76#	between double quotes. For details on how a command is
77#	executed see "EXTERNAL COMMAND DELIVERY" and "DELIVERY
78#	RIGHTS" in the \fBlocal\fR(8) documentation.
79# .sp
80#	When the command fails, a limited amount of command output is
81#	mailed back to the sender.  The file \fB/usr/include/sysexits.h\fR
82#	defines the expected exit status codes. For example, use
83#	\fB"|exit 67"\fR to simulate a "user unknown" error, and
84#	\fB"|exit 0"\fR to implement an expensive black hole.
85# .IP \fB:include:\fI/file/name\fR
86#	Mail is sent to the destinations listed in the named file.
87#	Lines in \fB:include:\fR files have the same syntax
88#	as the right-hand side of alias entries.
89# .sp
90#	A destination can be any destination that is described in this
91#	manual page. However, delivery to "|\fIcommand\fR" and
92#	\fI/file/name\fR is disallowed by default. To enable, edit the
93#	\fBallow_mail_to_commands\fR and \fBallow_mail_to_files\fR
94#	configuration parameters.
95# ADDRESS EXTENSION
96# .ad
97# .fi
98#	When alias database search fails, and the recipient localpart
99#	contains the optional recipient delimiter (e.g., \fIuser+foo\fR),
100#	the search is repeated for the unextended address (e.g., \fIuser\fR).
101#
102#	The \fBpropagate_unmatched_extensions\fR parameter controls
103#	whether an unmatched address extension (\fI+foo\fR) is
104#	propagated to the result of table lookup.
105# CASE FOLDING
106# .ad
107# .fi
108#	The local(8) delivery agent always folds the search string
109#	to lowercase before database lookup.
110# REGULAR EXPRESSION TABLES
111# .ad
112# .fi
113#	This section describes how the table lookups change when the table
114#	is given in the form of regular expressions. For a description of
115#	regular expression lookup table syntax, see \fBregexp_table\fR(5)
116#	or \fBpcre_table\fR(5). NOTE: these formats do not use ":" at the
117#	end of a pattern.
118#
119#	Each regular expression is applied to the entire search
120#	string. Thus, a search string \fIuser+foo\fR is not broken
121#	up into \fIuser\fR and \fIfoo\fR.
122#
123#	Regular expressions are applied in the order as specified
124#	in the table, until a regular expression is found that
125#	matches the search string.
126#
127#	Lookup results are the same as with indexed file lookups.
128#	For security reasons there is no support for \fB$1\fR,
129#	\fB$2\fR etc. substring interpolation.
130# SECURITY
131# .ad
132# .fi
133#	The \fBlocal\fR(8) delivery agent disallows regular expression
134#	substitution of $1 etc. in \fBalias_maps\fR, because that
135#	would open a security hole.
136#
137#	The \fBlocal\fR(8) delivery agent will silently ignore
138#	requests to use the \fBproxymap\fR(8) server within
139#	\fBalias_maps\fR. Instead it will open the table directly.
140#	Before Postfix version 2.2, the \fBlocal\fR(8) delivery
141#	agent will terminate with a fatal error.
142# CONFIGURATION PARAMETERS
143# .ad
144# .fi
145#	The following \fBmain.cf\fR parameters are especially relevant.
146#	The text below provides only a parameter summary. See
147#	\fBpostconf\fR(5) for more details including examples.
148# .IP "\fBalias_database (see 'postconf -d' output)\fR"
149#	The alias databases for \fBlocal\fR(8) delivery that are updated with
150#	"\fBnewaliases\fR" or with "\fBsendmail -bi\fR".
151# .IP "\fBalias_maps (see 'postconf -d' output)\fR"
152#	The alias databases that are used for \fBlocal\fR(8) delivery.
153# .IP "\fBallow_mail_to_commands (alias, forward)\fR"
154#	Restrict \fBlocal\fR(8) mail delivery to external commands.
155# .IP "\fBallow_mail_to_files (alias, forward)\fR"
156#	Restrict \fBlocal\fR(8) mail delivery to external files.
157# .IP "\fBexpand_owner_alias (no)\fR"
158#	When delivering to an alias "\fIaliasname\fR" that has an
159#	"owner-\fIaliasname\fR" companion alias, set the envelope sender
160#	address to the expansion of the "owner-\fIaliasname\fR" alias.
161# .IP "\fBpropagate_unmatched_extensions (canonical, virtual)\fR"
162#	What address lookup tables copy an address extension from the lookup
163#	key to the lookup result.
164# .IP "\fBowner_request_special (yes)\fR"
165#	Enable special treatment for owner-\fIlistname\fR entries in the
166#	\fBaliases\fR(5) file, and don't split owner-\fIlistname\fR and
167#	\fIlistname\fR-request address localparts when the recipient_delimiter
168#	is set to "-".
169# .IP "\fBrecipient_delimiter (empty)\fR"
170#	The set of characters that can separate an email address
171#	localpart, user name, or a .forward file name from its extension.
172# .PP
173#	Available in Postfix version 2.3 and later:
174# .IP "\fBfrozen_delivered_to (yes)\fR"
175#	Update the \fBlocal\fR(8) delivery agent's idea of the Delivered-To:
176#	address (see prepend_delivered_header) only once, at the start of
177#	a delivery attempt; do not update the Delivered-To: address while
178#	expanding aliases or .forward files.
179# STANDARDS
180#	RFC 822 (ARPA Internet Text Messages)
181# SEE ALSO
182#	local(8), local delivery agent
183#	newaliases(1), create/update alias database
184#	postalias(1), create/update alias database
185#	postconf(5), configuration parameters
186# README FILES
187# .ad
188# .fi
189#	Use "\fBpostconf readme_directory\fR" or
190#	"\fBpostconf html_directory\fR" to locate this information.
191# .na
192# .nf
193#	DATABASE_README, Postfix lookup table overview
194# LICENSE
195# .ad
196# .fi
197#	The Secure Mailer license must be distributed with this software.
198# AUTHOR(S)
199#	Wietse Venema
200#	IBM T.J. Watson Research
201#	P.O. Box 704
202#	Yorktown Heights, NY 10598, USA
203#
204#	Wietse Venema
205#	Google, Inc.
206#	111 8th Avenue
207#	New York, NY 10011, USA
208#--
209