transport.5.html revision 1.1.1.4 1 1.1 tron <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
2 1.1 tron "http://www.w3.org/TR/html4/loose.dtd">
3 1.1 tron <html> <head>
4 1.1 tron <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
5 1.1 tron <title> Postfix manual - transport(5) </title>
6 1.1 tron </head> <body> <pre>
7 1.1 tron TRANSPORT(5) TRANSPORT(5)
8 1.1 tron
9 1.1 tron <b>NAME</b>
10 1.1 tron transport - Postfix transport table format
11 1.1 tron
12 1.1 tron <b>SYNOPSIS</b>
13 1.1 tron <b>postmap /etc/postfix/transport</b>
14 1.1 tron
15 1.1 tron <b>postmap -q "</b><i>string</i><b>" /etc/postfix/transport</b>
16 1.1 tron
17 1.1 tron <b>postmap -q - /etc/postfix/transport</b> <<i>inputfile</i>
18 1.1 tron
19 1.1 tron <b>DESCRIPTION</b>
20 1.1.1.3 tron The optional <a href="transport.5.html"><b>transport</b>(5)</a> table specifies a mapping from email
21 1.1.1.3 tron addresses to message delivery transports and next-hop destinations.
22 1.1.1.3 tron Message delivery transports such as <b>local</b> or <b>smtp</b> are defined in the
23 1.1.1.3 tron <a href="master.5.html"><b>master.cf</b></a> file, and next-hop destinations are typically hosts or domain
24 1.1.1.3 tron names. The table is searched by the <a href="trivial-rewrite.8.html"><b>trivial-rewrite</b>(8)</a> daemon.
25 1.1 tron
26 1.1.1.3 tron This mapping overrides the default <i>transport</i>:<i>nexthop</i> selection that is
27 1.1.1.3 tron built into Postfix:
28 1.1 tron
29 1.1 tron <b><a href="postconf.5.html#local_transport">local_transport</a> (default: <a href="local.8.html">local</a>:$<a href="postconf.5.html#myhostname">myhostname</a>)</b>
30 1.1.1.3 tron This is the default for final delivery to domains listed with
31 1.1.1.3 tron <b><a href="postconf.5.html#mydestination">mydestination</a></b>, and for [<i>ipaddress</i>] destinations that match
32 1.1.1.3 tron <b>$<a href="postconf.5.html#inet_interfaces">inet_interfaces</a></b> or <b>$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a></b>. The default <i>nexthop</i> des-
33 1.1.1.3 tron tination is the MTA hostname.
34 1.1 tron
35 1.1 tron <b><a href="postconf.5.html#virtual_transport">virtual_transport</a> (default: <a href="virtual.8.html">virtual</a>:)</b>
36 1.1.1.3 tron This is the default for final delivery to domains listed with
37 1.1.1.3 tron <b><a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a></b>. The default <i>nexthop</i> destination is the
38 1.1.1.3 tron recipient domain.
39 1.1 tron
40 1.1 tron <b><a href="postconf.5.html#relay_transport">relay_transport</a> (default: relay:)</b>
41 1.1.1.3 tron This is the default for remote delivery to domains listed with
42 1.1.1.3 tron <b><a href="postconf.5.html#relay_domains">relay_domains</a></b>. In order of decreasing precedence, the <i>nexthop</i>
43 1.1.1.3 tron destination is taken from <b><a href="postconf.5.html#relay_transport">relay_transport</a></b>, <b><a href="postconf.5.html#sender_dependent_relayhost_maps">sender_depen</a>-</b>
44 1.1.1.3 tron <b><a href="postconf.5.html#sender_dependent_relayhost_maps">dent_relayhost_maps</a></b>, <b><a href="postconf.5.html#relayhost">relayhost</a></b>, or from the recipient domain.
45 1.1 tron
46 1.1 tron <b><a href="postconf.5.html#default_transport">default_transport</a> (default: <a href="smtp.8.html">smtp</a>:)</b>
47 1.1.1.3 tron This is the default for remote delivery to other destinations.
48 1.1.1.3 tron In order of decreasing precedence, the <i>nexthop</i> destination is
49 1.1.1.3 tron taken from <b><a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>,</b>
50 1.1.1.3 tron <b><a href="postconf.5.html#default_transport">default_transport</a></b>, <b><a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a></b>, <b><a href="postconf.5.html#relayhost">relayhost</a></b>,
51 1.1.1.3 tron or from the recipient domain.
52 1.1.1.3 tron
53 1.1.1.3 tron Normally, the <a href="transport.5.html"><b>transport</b>(5)</a> table is specified as a text file that
54 1.1.1.3 tron serves as input to the <a href="postmap.1.html"><b>postmap</b>(1)</a> command. The result, an indexed file
55 1.1.1.3 tron in <b>dbm</b> or <b>db</b> format, is used for fast searching by the mail system.
56 1.1.1.3 tron Execute the command "<b>postmap /etc/postfix/transport</b>" to rebuild an
57 1.1.1.3 tron indexed file after changing the corresponding transport table.
58 1.1.1.3 tron
59 1.1.1.3 tron When the table is provided via other means such as NIS, LDAP or SQL,
60 1.1.1.3 tron the same lookups are done as for ordinary indexed files.
61 1.1.1.3 tron
62 1.1.1.3 tron Alternatively, the table can be provided as a regular-expression map
63 1.1.1.3 tron where patterns are given as regular expressions, or lookups can be
64 1.1.1.3 tron directed to TCP-based server. In those case, the lookups are done in a
65 1.1.1.3 tron slightly different way as described below under "REGULAR EXPRESSION
66 1.1.1.3 tron TABLES" or "TCP-BASED TABLES".
67 1.1 tron
68 1.1 tron <b>CASE FOLDING</b>
69 1.1.1.3 tron The search string is folded to lowercase before database lookup. As of
70 1.1.1.3 tron Postfix 2.3, the search string is not case folded with database types
71 1.1.1.3 tron such as <a href="regexp_table.5.html">regexp</a>: or <a href="pcre_table.5.html">pcre</a>: whose lookup fields can match both upper and
72 1.1.1.3 tron lower case.
73 1.1 tron
74 1.1 tron <b>TABLE FORMAT</b>
75 1.1 tron The input format for the <a href="postmap.1.html"><b>postmap</b>(1)</a> command is as follows:
76 1.1 tron
77 1.1 tron <i>pattern result</i>
78 1.1.1.3 tron When <i>pattern</i> matches the recipient address or domain, use the
79 1.1.1.3 tron corresponding <i>result</i>.
80 1.1 tron
81 1.1 tron blank lines and comments
82 1.1.1.3 tron Empty lines and whitespace-only lines are ignored, as are lines
83 1.1.1.3 tron whose first non-whitespace character is a `#'.
84 1.1 tron
85 1.1 tron multi-line text
86 1.1.1.3 tron A logical line starts with non-whitespace text. A line that
87 1.1.1.3 tron starts with whitespace continues a logical line.
88 1.1.1.3 tron
89 1.1.1.3 tron The <i>pattern</i> specifies an email address, a domain name, or a domain name
90 1.1.1.3 tron hierarchy, as described in section "TABLE LOOKUP".
91 1.1.1.3 tron
92 1.1.1.3 tron The <i>result</i> is of the form <i>transport:nexthop</i> and specifies how or where
93 1.1.1.3 tron to deliver mail. This is described in section "RESULT FORMAT".
94 1.1 tron
95 1.1 tron <b>TABLE SEARCH ORDER</b>
96 1.1.1.3 tron With lookups from indexed files such as DB or DBM, or from networked
97 1.1.1.3 tron tables such as NIS, LDAP or SQL, patterns are tried in the order as
98 1.1.1.3 tron listed below:
99 1.1 tron
100 1.1 tron <i>user+extension@domain transport</i>:<i>nexthop</i>
101 1.1.1.3 tron Deliver mail for <i>user+extension@domain</i> through <i>transport</i> to <i>nex-</i>
102 1.1.1.3 tron <i>thop</i>.
103 1.1 tron
104 1.1 tron <i>user@domain transport</i>:<i>nexthop</i>
105 1.1.1.3 tron Deliver mail for <i>user@domain</i> through <i>transport</i> to <i>nexthop</i>.
106 1.1 tron
107 1.1 tron <i>domain transport</i>:<i>nexthop</i>
108 1.1.1.3 tron Deliver mail for <i>domain</i> through <i>transport</i> to <i>nexthop</i>.
109 1.1 tron
110 1.1 tron <i>.domain transport</i>:<i>nexthop</i>
111 1.1.1.3 tron Deliver mail for any subdomain of <i>domain</i> through <i>transport</i> to
112 1.1.1.3 tron <i>nexthop</i>. This applies only when the string <b><a href="postconf.5.html#transport_maps">transport_maps</a></b> is not
113 1.1.1.3 tron listed in the <b><a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a></b> configuration
114 1.1.1.3 tron setting. Otherwise, a domain name matches itself and its subdo-
115 1.1.1.3 tron mains.
116 1.1 tron
117 1.1 tron <b>*</b> <i>transport</i>:<i>nexthop</i>
118 1.1.1.3 tron The special pattern <b>*</b> represents any address (i.e. it functions
119 1.1.1.3 tron as the wild-card pattern, and is unique to Postfix transport
120 1.1.1.3 tron tables).
121 1.1.1.3 tron
122 1.1.1.3 tron Note 1: the null recipient address is looked up as
123 1.1.1.3 tron <b>$<a href="postconf.5.html#empty_address_recipient">empty_address_recipient</a></b>@<b>$<a href="postconf.5.html#myhostname">myhostname</a></b> (default: mailer-daemon@hostname).
124 1.1 tron
125 1.1.1.3 tron Note 2: <i>user@domain</i> or <i>user+extension@domain</i> lookup is available in
126 1.1.1.3 tron Postfix 2.0 and later.
127 1.1 tron
128 1.1 tron <b>RESULT FORMAT</b>
129 1.1.1.3 tron The lookup result is of the form <i>transport</i><b>:</b><i>nexthop</i>. The <i>transport</i>
130 1.1.1.3 tron field specifies a mail delivery transport such as <b>smtp</b> or <b>local</b>. The
131 1.1.1.3 tron <i>nexthop</i> field specifies where and how to deliver mail.
132 1.1.1.3 tron
133 1.1.1.3 tron The transport field specifies the name of a mail delivery transport
134 1.1.1.3 tron (the first name of a mail delivery service entry in the Postfix <a href="master.5.html"><b>mas-</b>
135 1.1.1.3 tron <b>ter.cf</b></a> file).
136 1.1.1.3 tron
137 1.1.1.3 tron The interpretation of the nexthop field is transport dependent. In the
138 1.1.1.3 tron case of SMTP, specify a service on a non-default port as <i>host</i>:<i>service</i>,
139 1.1.1.3 tron and disable MX (mail exchanger) DNS lookups with [<i>host</i>] or [<i>host</i>]:<i>port</i>.
140 1.1.1.3 tron The [] form is required when you specify an IP address instead of a
141 1.1.1.3 tron hostname.
142 1.1.1.3 tron
143 1.1.1.3 tron A null <i>transport</i> and null <i>nexthop</i> result means "do not change": use the
144 1.1.1.3 tron delivery transport and nexthop information that would be used when the
145 1.1.1.3 tron entire transport table did not exist.
146 1.1 tron
147 1.1.1.3 tron A non-null <i>transport</i> field with a null <i>nexthop</i> field resets the nexthop
148 1.1.1.3 tron information to the recipient domain.
149 1.1 tron
150 1.1.1.3 tron A null <i>transport</i> field with non-null <i>nexthop</i> field does not modify the
151 1.1.1.3 tron transport information.
152 1.1 tron
153 1.1 tron <b>EXAMPLES</b>
154 1.1.1.3 tron In order to deliver internal mail directly, while using a mail relay
155 1.1.1.3 tron for all other mail, specify a null entry for internal destinations (do
156 1.1.1.3 tron not change the delivery transport or the nexthop information) and spec-
157 1.1.1.3 tron ify a wildcard for all other destinations.
158 1.1 tron
159 1.1 tron <b>my.domain :</b>
160 1.1 tron <b>.my.domain :</b>
161 1.1 tron <b>* <a href="smtp.8.html">smtp</a>:outbound-relay.my.domain</b>
162 1.1 tron
163 1.1.1.3 tron In order to send mail for <b>example.com</b> and its subdomains via the <b>uucp</b>
164 1.1.1.3 tron transport to the UUCP host named <b>example</b>:
165 1.1 tron
166 1.1 tron <b>example.com uucp:example</b>
167 1.1 tron <b>.example.com uucp:example</b>
168 1.1 tron
169 1.1.1.3 tron When no nexthop host name is specified, the destination domain name is
170 1.1.1.3 tron used instead. For example, the following directs mail for <i>user</i>@<b>exam-</b>
171 1.1.1.3 tron <b>ple.com</b> via the <b>slow</b> transport to a mail exchanger for <b>example.com</b>.
172 1.1.1.3 tron The <b>slow</b> transport could be configured to run at most one delivery
173 1.1.1.3 tron process at a time:
174 1.1 tron
175 1.1 tron <b>example.com slow:</b>
176 1.1 tron
177 1.1.1.3 tron When no transport is specified, Postfix uses the transport that matches
178 1.1.1.3 tron the address domain class (see DESCRIPTION above). The following sends
179 1.1.1.3 tron all mail for <b>example.com</b> and its subdomains to host <b>gateway.exam-</b>
180 1.1.1.3 tron <b>ple.com</b>:
181 1.1 tron
182 1.1 tron <b>example.com :[gateway.example.com]</b>
183 1.1 tron <b>.example.com :[gateway.example.com]</b>
184 1.1 tron
185 1.1.1.3 tron In the above example, the [] suppress MX lookups. This prevents mail
186 1.1.1.3 tron routing loops when your machine is primary MX host for <b>example.com</b>.
187 1.1 tron
188 1.1.1.3 tron In the case of delivery via SMTP, one may specify <i>hostname</i>:<i>service</i>
189 1.1.1.3 tron instead of just a host:
190 1.1 tron
191 1.1 tron <b>example.com <a href="smtp.8.html">smtp</a>:bar.example:2025</b>
192 1.1 tron
193 1.1.1.3 tron This directs mail for <i>user</i>@<b>example.com</b> to host <b>bar.example</b> port <b>2025</b>.
194 1.1.1.3 tron Instead of a numerical port a symbolic name may be used. Specify []
195 1.1.1.3 tron around the hostname if MX lookups must be disabled.
196 1.1 tron
197 1.1 tron The error mailer can be used to bounce mail:
198 1.1 tron
199 1.1 tron <b>.example.com <a href="error.8.html">error</a>:mail for *.example.com is not deliverable</b>
200 1.1 tron
201 1.1.1.3 tron This causes all mail for <i>user</i>@<i>anything</i><b>.example.com</b> to be bounced.
202 1.1 tron
203 1.1 tron <b>REGULAR EXPRESSION TABLES</b>
204 1.1.1.3 tron This section describes how the table lookups change when the table is
205 1.1.1.3 tron given in the form of regular expressions. For a description of regular
206 1.1.1.3 tron expression lookup table syntax, see <a href="regexp_table.5.html"><b>regexp_table</b>(5)</a> or <a href="pcre_table.5.html"><b>pcre_table</b>(5)</a>.
207 1.1.1.3 tron
208 1.1.1.3 tron Each pattern is a regular expression that is applied to the entire
209 1.1.1.3 tron address being looked up. Thus, <i>some.domain.hierarchy</i> is not looked up
210 1.1.1.3 tron via its parent domains, nor is <i>user+foo@domain</i> looked up as
211 1.1.1.3 tron <i>user@domain</i>.
212 1.1.1.3 tron
213 1.1.1.3 tron Patterns are applied in the order as specified in the table, until a
214 1.1.1.3 tron pattern is found that matches the search string.
215 1.1.1.3 tron
216 1.1.1.3 tron The <a href="trivial-rewrite.8.html"><b>trivial-rewrite</b>(8)</a> server disallows regular expression substitution
217 1.1.1.3 tron of $1 etc. in regular expression lookup tables, because that could open
218 1.1.1.3 tron a security hole (Postfix version 2.3 and later).
219 1.1 tron
220 1.1 tron <b>TCP-BASED TABLES</b>
221 1.1.1.3 tron This section describes how the table lookups change when lookups are
222 1.1.1.3 tron directed to a TCP-based server. For a description of the TCP
223 1.1.1.3 tron client/server lookup protocol, see <a href="tcp_table.5.html"><b>tcp_table</b>(5)</a>. This feature is not
224 1.1.1.3 tron available up to and including Postfix version 2.4.
225 1.1.1.3 tron
226 1.1.1.3 tron Each lookup operation uses the entire recipient address once. Thus,
227 1.1.1.3 tron <i>some.domain.hierarchy</i> is not looked up via its parent domains, nor is
228 1.1.1.3 tron <i>user+foo@domain</i> looked up as <i>user@domain</i>.
229 1.1 tron
230 1.1 tron Results are the same as with indexed file lookups.
231 1.1 tron
232 1.1 tron <b>CONFIGURATION PARAMETERS</b>
233 1.1.1.3 tron The following <a href="postconf.5.html"><b>main.cf</b></a> parameters are especially relevant. The text
234 1.1.1.3 tron below provides only a parameter summary. See <a href="postconf.5.html"><b>postconf</b>(5)</a> for more
235 1.1.1.3 tron details including examples.
236 1.1 tron
237 1.1 tron <b><a href="postconf.5.html#empty_address_recipient">empty_address_recipient</a></b>
238 1.1.1.3 tron The address that is looked up instead of the null sender
239 1.1.1.3 tron address.
240 1.1 tron
241 1.1 tron <b><a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a></b>
242 1.1.1.3 tron List of Postfix features that use <i>domain.tld</i> patterns to match
243 1.1.1.3 tron <i>sub.domain.tld</i> (as opposed to requiring <i>.domain.tld</i> patterns).
244 1.1 tron
245 1.1 tron <b><a href="postconf.5.html#transport_maps">transport_maps</a></b>
246 1.1 tron List of transport lookup tables.
247 1.1 tron
248 1.1 tron <b>SEE ALSO</b>
249 1.1 tron <a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>, rewrite and resolve addresses
250 1.1 tron <a href="master.5.html">master(5)</a>, <a href="master.5.html">master.cf</a> file format
251 1.1 tron <a href="postconf.5.html">postconf(5)</a>, configuration parameters
252 1.1 tron <a href="postmap.1.html">postmap(1)</a>, Postfix lookup table manager
253 1.1 tron
254 1.1 tron <b>README FILES</b>
255 1.1 tron <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a>, address rewriting guide
256 1.1 tron <a href="DATABASE_README.html">DATABASE_README</a>, Postfix lookup table overview
257 1.1 tron <a href="FILTER_README.html">FILTER_README</a>, external content filter
258 1.1 tron
259 1.1 tron <b>LICENSE</b>
260 1.1.1.3 tron The Secure Mailer license must be distributed with this software.
261 1.1 tron
262 1.1 tron <b>AUTHOR(S)</b>
263 1.1 tron Wietse Venema
264 1.1 tron IBM T.J. Watson Research
265 1.1 tron P.O. Box 704
266 1.1 tron Yorktown Heights, NY 10598, USA
267 1.1 tron
268 1.1.1.4 christos Wietse Venema
269 1.1.1.4 christos Google, Inc.
270 1.1.1.4 christos 111 8th Avenue
271 1.1.1.4 christos New York, NY 10011, USA
272 1.1.1.4 christos
273 1.1 tron TRANSPORT(5)
274 1.1 tron </pre> </body> </html>
275