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