xref: /netbsd-src/external/ibm-public/postfix/dist/html/postconf.5.html (revision 27fd3f6531803adac12382d7643a9a492b576601)
1<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
2        "http://www.w3.org/TR/html4/loose.dtd">
3
4<html>
5
6<head>
7
8<title>Postfix Configuration Parameters </title>
9
10<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
11
12</head>
13
14<body>
15
16<h1><img src="postfix-logo.jpg" width="203" height="98" alt="">Postfix Configuration Parameters </h1>
17
18<hr>
19
20<h2> Postfix main.cf file format </h2>
21
22<p> The Postfix main.cf configuration file specifies a very small
23subset of all the parameters that control the operation of the
24Postfix mail system. Parameters not explicitly specified are left
25at their default values. </p>
26
27<p> The general format of the main.cf file is as follows: </p>
28
29<ul>
30
31<li> <p> Each logical line is in the form "parameter = value".
32Whitespace around the "=" is ignored, as is whitespace at the end
33of a logical line. </p>
34
35<li> <p> Empty lines and whitespace-only lines are ignored, as are
36lines whose first non-whitespace character is a `#'. </p>
37
38<li> <p> A logical line starts with non-whitespace text. A line
39that starts with whitespace continues a logical line. </p>
40
41<li> <p> A parameter value may refer to other parameters. </p>
42
43<ul>
44
45<li> <p> The expressions "$name", "${name}" or "$(name)" are
46recursively replaced by the value of the named parameter. </p>
47
48<li> <p> The expression "${name?value}" expands to "value" when
49"$name" is non-empty. This form is supported with Postfix version
502.2 and later. </p>
51
52<li> <p> The expression "${name:value}" expands to "value" when
53"$name" is empty. This form is supported with Postfix version 2.2
54and later.  </p>
55
56<li> <p> Specify "$$" to produce a single "$" character. </p>
57
58</ul>
59
60<li> <p> When the same parameter is defined multiple times, only
61the last instance is remembered. </p>
62
63<li> <p> Otherwise, the order of main.cf parameter definitions does
64not matter. </p>
65
66</ul>
67
68<p> The remainder of this document is a description of all Postfix
69configuration parameters. Default values are shown after the
70parameter name in parentheses, and can be looked up with the
71"<b>postconf -d</b>" command. </p>
72
73<p> Note: this is not an invitation to make changes to Postfix
74configuration parameters. Unnecessary changes are likely to impair
75the operation of the mail system.  </p>
76
77<dl>
78<DT><b><a name="2bounce_notice_recipient">2bounce_notice_recipient</a>
79(default: postmaster)</b></DT><DD>
80
81<p> The recipient of undeliverable mail that cannot be returned to
82the sender.  This feature is enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a>
83parameter.  </p>
84
85
86</DD>
87
88<DT><b><a name="access_map_defer_code">access_map_defer_code</a>
89(default: 450)</b></DT><DD>
90
91<p>
92The numerical Postfix SMTP server response code for
93an <a href="access.5.html">access(5)</a> map "defer" action, including "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>"
94or "<a href="postconf.5.html#defer_if_reject">defer_if_reject</a>". Prior to Postfix 2.6, the response
95is hard-coded as "450".
96</p>
97
98<p>
99Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
100</p>
101
102<p>
103This feature is available in Postfix 2.6 and later.
104</p>
105
106
107</DD>
108
109<DT><b><a name="access_map_reject_code">access_map_reject_code</a>
110(default: 554)</b></DT><DD>
111
112<p>
113The numerical Postfix SMTP server response code for
114an <a href="access.5.html">access(5)</a> map "reject" action.
115</p>
116
117<p>
118Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
119</p>
120
121
122</DD>
123
124<DT><b><a name="address_verify_default_transport">address_verify_default_transport</a>
125(default: $<a href="postconf.5.html#default_transport">default_transport</a>)</b></DT><DD>
126
127<p>
128Overrides the <a href="postconf.5.html#default_transport">default_transport</a> parameter setting for address
129verification probes.
130</p>
131
132<p>
133This feature is available in Postfix 2.1 and later.
134</p>
135
136
137</DD>
138
139<DT><b><a name="address_verify_local_transport">address_verify_local_transport</a>
140(default: $<a href="postconf.5.html#local_transport">local_transport</a>)</b></DT><DD>
141
142<p>
143Overrides the <a href="postconf.5.html#local_transport">local_transport</a> parameter setting for address
144verification probes.
145</p>
146
147<p>
148This feature is available in Postfix 2.1 and later.
149</p>
150
151
152</DD>
153
154<DT><b><a name="address_verify_map">address_verify_map</a>
155(default: empty)</b></DT><DD>
156
157<p>
158Optional lookup table for persistent address verification status
159storage.  The table is maintained by the <a href="verify.8.html">verify(8)</a> service, and
160is opened before the process releases privileges.
161</p>
162
163<p>
164By default, the information is kept in volatile memory, and is lost
165after "<b>postfix reload</b>" or "<b>postfix stop</b>".
166</p>
167
168<p>
169Specify a location in a file system that will not fill up. If the
170database becomes corrupted, the world comes to an end. To recover
171delete the file and do "<b>postfix reload</b>".
172</p>
173
174<p> As of version 2.5, Postfix no longer uses root privileges when
175opening this file. The file should now be stored under the Postfix-owned
176<a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file
177under a non-Postfix directory is redirected to the Postfix-owned
178<a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p>
179
180<p>
181Examples:
182</p>
183
184<pre>
185<a href="postconf.5.html#address_verify_map">address_verify_map</a> = hash:/var/db/postfix/verify
186<a href="postconf.5.html#address_verify_map">address_verify_map</a> = btree:/var/db/postfix/verify
187</pre>
188
189<p>
190This feature is available in Postfix 2.1 and later.
191</p>
192
193
194</DD>
195
196<DT><b><a name="address_verify_negative_cache">address_verify_negative_cache</a>
197(default: yes)</b></DT><DD>
198
199<p>
200Enable caching of failed address verification probe results.  When
201this feature is enabled, the cache may pollute quickly with garbage.
202When this feature is disabled, Postfix will generate an address
203probe for every lookup.
204</p>
205
206<p>
207This feature is available in Postfix 2.1 and later.
208</p>
209
210
211</DD>
212
213<DT><b><a name="address_verify_negative_expire_time">address_verify_negative_expire_time</a>
214(default: 3d)</b></DT><DD>
215
216<p>
217The time after which a failed probe expires from the address
218verification cache.
219</p>
220
221<p>
222Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
223</p>
224
225<p>
226This feature is available in Postfix 2.1 and later.
227</p>
228
229
230</DD>
231
232<DT><b><a name="address_verify_negative_refresh_time">address_verify_negative_refresh_time</a>
233(default: 3h)</b></DT><DD>
234
235<p>
236The time after which a failed address verification probe needs to
237be refreshed.
238</p>
239
240<p>
241Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
242</p>
243
244<p>
245This feature is available in Postfix 2.1 and later.
246</p>
247
248
249</DD>
250
251<DT><b><a name="address_verify_poll_count">address_verify_poll_count</a>
252(default: 3)</b></DT><DD>
253
254<p>
255How many times to query the <a href="verify.8.html">verify(8)</a> service for the completion
256of an address verification request in progress.
257</p>
258
259<p>
260The default poll count is 3.
261</p>
262
263<p>
264Specify 1 to implement a crude form of greylisting, that is, always
265defer the first delivery request for a never seen before address.
266</p>
267
268<p>
269Example:
270</p>
271
272<pre>
273<a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> = 1
274</pre>
275
276<p>
277This feature is available in Postfix 2.1 and later.
278</p>
279
280
281</DD>
282
283<DT><b><a name="address_verify_poll_delay">address_verify_poll_delay</a>
284(default: 3s)</b></DT><DD>
285
286<p>
287The delay between queries for the completion of an address
288verification request in progress.
289</p>
290
291<p>
292The default polling delay is 3 seconds.
293</p>
294
295<p>
296Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
297</p>
298
299<p>
300This feature is available in Postfix 2.1 and later.
301</p>
302
303
304</DD>
305
306<DT><b><a name="address_verify_positive_expire_time">address_verify_positive_expire_time</a>
307(default: 31d)</b></DT><DD>
308
309<p>
310The time after which a successful probe expires from the address
311verification cache.
312</p>
313
314<p>
315Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
316</p>
317
318<p>
319This feature is available in Postfix 2.1 and later.
320</p>
321
322
323</DD>
324
325<DT><b><a name="address_verify_positive_refresh_time">address_verify_positive_refresh_time</a>
326(default: 7d)</b></DT><DD>
327
328<p>
329The time after which a successful address verification probe needs
330to be refreshed.  The address verification status is not updated
331when the probe fails (optimistic caching).
332</p>
333
334<p>
335Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
336</p>
337
338<p>
339This feature is available in Postfix 2.1 and later.
340</p>
341
342
343</DD>
344
345<DT><b><a name="address_verify_relay_transport">address_verify_relay_transport</a>
346(default: $<a href="postconf.5.html#relay_transport">relay_transport</a>)</b></DT><DD>
347
348<p>
349Overrides the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter setting for address
350verification probes.
351</p>
352
353<p>
354This feature is available in Postfix 2.1 and later.
355</p>
356
357
358</DD>
359
360<DT><b><a name="address_verify_relayhost">address_verify_relayhost</a>
361(default: $<a href="postconf.5.html#relayhost">relayhost</a>)</b></DT><DD>
362
363<p>
364Overrides the <a href="postconf.5.html#relayhost">relayhost</a> parameter setting for address verification
365probes. This information can be overruled with the <a href="transport.5.html">transport(5)</a> table.
366</p>
367
368<p>
369This feature is available in Postfix 2.1 and later.
370</p>
371
372
373</DD>
374
375<DT><b><a name="address_verify_sender">address_verify_sender</a>
376(default: $<a href="postconf.5.html#double_bounce_sender">double_bounce_sender</a>)</b></DT><DD>
377
378<p> The sender address to use in address verification probes; prior
379to Postfix 2.5 the default was "postmaster". To
380avoid problems with address probes that are sent in response to
381address probes, the Postfix SMTP server excludes the probe sender
382address from all SMTPD access blocks. </p>
383
384<p>
385Specify an empty value (<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> =) or &lt;&gt; if you want
386to use the null sender address. Beware, some sites reject mail from
387&lt;&gt;, even though RFCs require that such addresses be accepted.
388</p>
389
390<p>
391Examples:
392</p>
393
394<pre>
395<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = &lt;&gt;
396<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = postmaster@my.domain
397</pre>
398
399<p>
400This feature is available in Postfix 2.1 and later.
401</p>
402
403
404</DD>
405
406<DT><b><a name="address_verify_sender_dependent_relayhost_maps">address_verify_sender_dependent_relayhost_maps</a>
407(default: $<a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>)</b></DT><DD>
408
409<p>
410Overrides the <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> parameter setting for address
411verification probes.
412</p>
413
414<p>
415This feature is available in Postfix 2.3 and later.
416</p>
417
418
419</DD>
420
421<DT><b><a name="address_verify_service_name">address_verify_service_name</a>
422(default: verify)</b></DT><DD>
423
424<p>
425The name of the <a href="verify.8.html">verify(8)</a> address verification service. This service
426maintains the status of sender and/or recipient address verification
427probes, and generates probes on request by other Postfix processes.
428</p>
429
430
431</DD>
432
433<DT><b><a name="address_verify_transport_maps">address_verify_transport_maps</a>
434(default: $<a href="postconf.5.html#transport_maps">transport_maps</a>)</b></DT><DD>
435
436<p>
437Overrides the <a href="postconf.5.html#transport_maps">transport_maps</a> parameter setting for address verification
438probes.
439</p>
440
441<p>
442This feature is available in Postfix 2.1 and later.
443</p>
444
445
446</DD>
447
448<DT><b><a name="address_verify_virtual_transport">address_verify_virtual_transport</a>
449(default: $<a href="postconf.5.html#virtual_transport">virtual_transport</a>)</b></DT><DD>
450
451<p>
452Overrides the <a href="postconf.5.html#virtual_transport">virtual_transport</a> parameter setting for address
453verification probes.
454</p>
455
456<p>
457This feature is available in Postfix 2.1 and later.
458</p>
459
460
461</DD>
462
463<DT><b><a name="alias_database">alias_database</a>
464(default: see "postconf -d" output)</b></DT><DD>
465
466<p>
467The alias databases for <a href="local.8.html">local(8)</a> delivery that are updated with
468"<b>newaliases</b>" or with "<b>sendmail -bi</b>".
469</p>
470
471<p>
472This is a separate configuration parameter because not all the
473tables specified with $<a href="postconf.5.html#alias_maps">alias_maps</a> have to be local files.
474</p>
475
476<p>
477Examples:
478</p>
479
480<pre>
481<a href="postconf.5.html#alias_database">alias_database</a> = hash:/etc/aliases
482<a href="postconf.5.html#alias_database">alias_database</a> = hash:/etc/mail/aliases
483</pre>
484
485
486</DD>
487
488<DT><b><a name="alias_maps">alias_maps</a>
489(default: see "postconf -d" output)</b></DT><DD>
490
491<p>
492The alias databases that are used for <a href="local.8.html">local(8)</a> delivery. See
493<a href="aliases.5.html">aliases(5)</a> for syntax details.
494</p>
495
496<p>
497The default list is system dependent.  On systems with NIS, the
498default is to search the local alias database, then the NIS alias
499database.
500</p>
501
502<p>
503If you change the alias database, run "<b>postalias /etc/aliases</b>"
504(or wherever your system stores the mail alias file), or simply
505run "<b>newaliases</b>" to build the necessary DBM or DB file.
506</p>
507
508<p>
509The <a href="local.8.html">local(8)</a> delivery agent disallows regular expression substitution
510of $1 etc. in <a href="postconf.5.html#alias_maps">alias_maps</a>, because that would open a security hole.
511</p>
512
513<p>
514The <a href="local.8.html">local(8)</a> delivery agent will silently ignore requests to use
515the <a href="proxymap.8.html">proxymap(8)</a> server within <a href="postconf.5.html#alias_maps">alias_maps</a>. Instead it will open the
516table directly. Before Postfix version 2.2, the <a href="local.8.html">local(8)</a> delivery
517agent will terminate with a fatal error.
518</p>
519
520<p>
521Examples:
522</p>
523
524<pre>
525<a href="postconf.5.html#alias_maps">alias_maps</a> = hash:/etc/aliases, nis:mail.aliases
526<a href="postconf.5.html#alias_maps">alias_maps</a> = hash:/etc/aliases
527</pre>
528
529
530</DD>
531
532<DT><b><a name="allow_mail_to_commands">allow_mail_to_commands</a>
533(default: alias, forward)</b></DT><DD>
534
535<p>
536Restrict <a href="local.8.html">local(8)</a> mail delivery to external commands.  The default
537is to disallow delivery to "|command" in :include:  files (see
538<a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology).
539</p>
540
541<p>
542Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>,
543in order to allow commands in <a href="aliases.5.html">aliases(5)</a>, .forward files or in
544:include:  files, respectively.
545</p>
546
547<p>
548Example:
549</p>
550
551<pre>
552<a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a> = alias,forward,include
553</pre>
554
555
556</DD>
557
558<DT><b><a name="allow_mail_to_files">allow_mail_to_files</a>
559(default: alias, forward)</b></DT><DD>
560
561<p>
562Restrict <a href="local.8.html">local(8)</a> mail delivery to external files. The default is
563to disallow "/file/name" destinations in :include:  files (see
564<a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology).
565</p>
566
567<p>
568Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>,
569in order to allow "/file/name" destinations in <a href="aliases.5.html">aliases(5)</a>, .forward
570files and in :include:  files, respectively.
571</p>
572
573<p>
574Example:
575</p>
576
577<pre>
578<a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a> = alias,forward,include
579</pre>
580
581
582</DD>
583
584<DT><b><a name="allow_min_user">allow_min_user</a>
585(default: no)</b></DT><DD>
586
587<p>
588Allow a sender or recipient address to have `-' as the first
589character.  By
590default, this is not allowed, to avoid accidents with software that
591passes email addresses via the command line. Such software
592would not be able to distinguish a malicious address from a
593bona fide command-line option. Although this can be prevented by
594inserting a "--" option terminator into the command line, this is
595difficult to enforce consistently and globally.  </p>
596
597<p> As of Postfix version 2.5, this feature is implemented by
598<a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>.  With earlier versions this feature was implemented
599by <a href="qmgr.8.html">qmgr(8)</a> and was limited to recipient addresses only. </p>
600
601
602</DD>
603
604<DT><b><a name="allow_percent_hack">allow_percent_hack</a>
605(default: yes)</b></DT><DD>
606
607<p>
608Enable the rewriting of the form "user%domain" to "user@domain".
609This is enabled by default.
610</p>
611
612<p> Note: with Postfix version 2.2, message header address rewriting
613happens only when one of the following conditions is true: </p>
614
615<ul>
616
617<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
618
619<li> The message is received from a network client that matches
620$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
621
622<li> The message is received from the network, and the
623<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
624
625</ul>
626
627<p> To get the behavior before Postfix version 2.2, specify
628"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
629
630<p>
631Example:
632</p>
633
634<pre>
635<a href="postconf.5.html#allow_percent_hack">allow_percent_hack</a> = no
636</pre>
637
638
639</DD>
640
641<DT><b><a name="allow_untrusted_routing">allow_untrusted_routing</a>
642(default: no)</b></DT><DD>
643
644<p>
645Forward mail with sender-specified routing (user[@%!]remote[@%!]site)
646from untrusted clients to destinations matching $<a href="postconf.5.html#relay_domains">relay_domains</a>.
647</p>
648
649<p>
650By default, this feature is turned off.  This closes a nasty open
651relay loophole where a backup MX host can be tricked into forwarding
652junk mail to a primary MX host which then spams it out to the world.
653</p>
654
655<p>
656This parameter also controls if non-local addresses with sender-specified
657routing can match Postfix access tables. By default, such addresses
658cannot match Postfix access tables, because the address is ambiguous.
659</p>
660
661
662</DD>
663
664<DT><b><a name="alternate_config_directories">alternate_config_directories</a>
665(default: empty)</b></DT><DD>
666
667<p>
668A list of non-default Postfix configuration directories that may
669be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line, or
670via the MAIL_CONFIG environment parameter.
671</p>
672
673<p>
674This list must be specified in the default Postfix configuration
675directory, and is used by set-gid Postfix commands such as <a href="postqueue.1.html">postqueue(1)</a>
676and <a href="postdrop.1.html">postdrop(1)</a>.
677</p>
678
679
680</DD>
681
682<DT><b><a name="always_add_missing_headers">always_add_missing_headers</a>
683(default: no)</b></DT><DD>
684
685<p> Always add (Resent-) From:, To:, Date: or Message-ID: headers
686when not present.  Postfix 2.6 and later add these headers only
687when clients match the <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter
688setting.  Earlier Postfix versions always add these headers; this
689may break DKIM signatures that cover non-existent headers. </p>
690
691
692</DD>
693
694<DT><b><a name="always_bcc">always_bcc</a>
695(default: empty)</b></DT><DD>
696
697<p>
698Optional address that receives a "blind carbon copy" of each message
699that is received by the Postfix mail system.
700</p>
701
702<p>
703Note: if mail to the BCC address bounces it will be returned to
704the sender.
705</p>
706
707<p> Note: automatic BCC recipients are produced only for new mail.
708To avoid mailer loops, automatic BCC recipients are not generated
709for mail that Postfix forwards internally, nor for mail that Postfix
710generates itself. </p>
711
712
713</DD>
714
715<DT><b><a name="anvil_rate_time_unit">anvil_rate_time_unit</a>
716(default: 60s)</b></DT><DD>
717
718<p>
719The time unit over which client connection rates and other rates
720are calculated.
721</p>
722
723<p>
724This feature is implemented by the <a href="anvil.8.html">anvil(8)</a> service which is available
725in Postfix version 2.2 and later.
726</p>
727
728<p>
729The default interval is relatively short. Because of the high
730frequency of updates, the <a href="anvil.8.html">anvil(8)</a> server uses volatile memory
731only. Thus, information is lost whenever the process terminates.
732</p>
733
734<p>
735Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
736The default time unit is s (seconds).
737</p>
738
739
740</DD>
741
742<DT><b><a name="anvil_status_update_time">anvil_status_update_time</a>
743(default: 600s)</b></DT><DD>
744
745<p>
746How frequently the <a href="anvil.8.html">anvil(8)</a> connection and rate limiting server
747logs peak usage information.
748</p>
749
750<p>
751This feature is available in Postfix 2.2 and later.
752</p>
753
754<p>
755Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
756The default time unit is s (seconds).
757</p>
758
759
760</DD>
761
762<DT><b><a name="append_at_myorigin">append_at_myorigin</a>
763(default: yes)</b></DT><DD>
764
765<p>
766With locally submitted mail, append the string "@$<a href="postconf.5.html#myorigin">myorigin</a>" to mail
767addresses without domain information. With remotely submitted mail,
768append the string "@$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>" instead.
769</p>
770
771<p>
772Note 1: this feature is enabled by default and must not be turned off.
773Postfix does not support domain-less addresses.
774</p>
775
776<p> Note 2: with Postfix version 2.2, message header address rewriting
777happens only when one of the following conditions is true: </p>
778
779<ul>
780
781<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
782
783<li> The message is received from a network client that matches
784$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
785
786<li> The message is received from the network, and the
787<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
788
789</ul>
790
791<p> To get the behavior before Postfix version 2.2, specify
792"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
793
794
795</DD>
796
797<DT><b><a name="append_dot_mydomain">append_dot_mydomain</a>
798(default: yes)</b></DT><DD>
799
800<p>
801With locally submitted mail, append the string ".$<a href="postconf.5.html#mydomain">mydomain</a>" to
802addresses that have no ".domain" information. With remotely submitted
803mail, append the string ".$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>"
804instead.
805</p>
806
807<p>
808Note 1: this feature is enabled by default. If disabled, users will not be
809able to send mail to "user@partialdomainname" but will have to
810specify full domain names instead.
811</p>
812
813<p> Note 2: with Postfix version 2.2, message header address rewriting
814happens only when one of the following conditions is true: </p>
815
816<ul>
817
818<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
819
820<li> The message is received from a network client that matches
821$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
822
823<li> The message is received from the network, and the
824<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
825
826</ul>
827
828<p> To get the behavior before Postfix version 2.2, specify
829"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
830
831
832</DD>
833
834<DT><b><a name="application_event_drain_time">application_event_drain_time</a>
835(default: 100s)</b></DT><DD>
836
837<p>
838How long the <a href="postkick.1.html">postkick(1)</a> command waits for a request to enter the
839server's input buffer before giving up.
840</p>
841
842<p>
843Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
844The default time unit is s (seconds).
845</p>
846
847<p>
848This feature is available in Postfix 2.1 and later.
849</p>
850
851
852</DD>
853
854<DT><b><a name="authorized_flush_users">authorized_flush_users</a>
855(default: static:anyone)</b></DT><DD>
856
857<p>
858List of users who are authorized to flush the queue.
859</p>
860
861<p>
862By default, all users are allowed to flush the queue.  Access is
863always granted if the invoking user is the super-user or the
864$<a href="postconf.5.html#mail_owner">mail_owner</a> user.  Otherwise, the real UID of the process is looked
865up in the system password file, and access is granted only if the
866corresponding login name is on the access list.  The username
867"unknown" is used for processes whose real UID is not found in the
868password file.  </p>
869
870<p>
871Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
872separated by commas and/or whitespace. The list is matched left to
873right, and the search stops on the first match. A "/file/name"
874pattern is replaced
875by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
876matches a lookup key (the lookup result is ignored).  Continue long
877lines by starting the next line with whitespace. Specify "!pattern"
878to exclude a name from the list. The form "!/file/name" is supported
879only in Postfix version 2.4 and later.  </p>
880
881<p>
882This feature is available in Postfix 2.2 and later.
883</p>
884
885
886</DD>
887
888<DT><b><a name="authorized_mailq_users">authorized_mailq_users</a>
889(default: static:anyone)</b></DT><DD>
890
891<p>
892List of users who are authorized to view the queue.
893</p>
894
895<p>
896By default, all users are allowed to view the queue.  Access is
897always granted if the invoking user is the super-user or the
898$<a href="postconf.5.html#mail_owner">mail_owner</a> user.  Otherwise, the real UID of the process is looked
899up in the system password file, and access is granted only if the
900corresponding login name is on the access list.  The username
901"unknown" is used for processes whose real UID is not found in the
902password file.  </p>
903
904<p>
905Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
906separated by commas and/or whitespace. The list is matched left to
907right, and the search stops on the first match. A "/file/name"
908pattern is replaced
909by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
910matches a lookup key (the lookup result is ignored).  Continue long
911lines by starting the next line with whitespace. Specify "!pattern"
912to exclude a user name from the list. The form "!/file/name" is
913supported only in Postfix version 2.4 and later.  </p>
914
915<p>
916This feature is available in Postfix 2.2 and later.
917</p>
918
919
920</DD>
921
922<DT><b><a name="authorized_submit_users">authorized_submit_users</a>
923(default: static:anyone)</b></DT><DD>
924
925<p>
926List of users who are authorized to submit mail with the <a href="sendmail.1.html">sendmail(1)</a>
927command (and with the privileged <a href="postdrop.1.html">postdrop(1)</a> helper command).
928</p>
929
930<p>
931By default, all users are allowed to submit mail.  Otherwise, the
932real UID of the process is looked up in the system password file,
933and access is granted only if the corresponding login name is on
934the access list.  The username "unknown" is used for processes
935whose real UID is not found in the password file. To deny mail
936submission access to all users specify an empty list.  </p>
937
938<p>
939Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
940separated by commas and/or whitespace. The list is matched left to right,
941and the search stops on the first match. A "/file/name" pattern is
942replaced by its contents;
943a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name matches a lookup key
944(the lookup result is ignored).  Continue long lines by starting the
945next line with whitespace. Specify "!pattern" to exclude a user
946name from the list. The form "!/file/name" is supported only in
947Postfix version 2.4 and later.  </p>
948
949<p>
950Example:
951</p>
952
953<pre>
954<a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> = !www, static:all
955</pre>
956
957<p>
958This feature is available in Postfix 2.2 and later.
959</p>
960
961
962</DD>
963
964<DT><b><a name="authorized_verp_clients">authorized_verp_clients</a>
965(default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD>
966
967<p> What SMTP clients are allowed to specify the XVERP command.
968This command requests that mail be delivered one recipient at a
969time with a per recipient return address.  </p>
970
971<p> By default, only trusted clients are allowed to specify XVERP.
972</p>
973
974<p> This parameter was introduced with Postfix version 1.1.  Postfix
975version 2.1 renamed this parameter to <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a>
976and changed the default to none. </p>
977
978<p> Specify a list of network/netmask patterns, separated by commas
979and/or whitespace. The mask specifies the number of bits in the
980network part of a host address. You can also specify hostnames or
981.domain names (the initial dot causes the domain to match any name
982below it),  "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns.  A "/file/name"
983pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
984is matched when a table entry matches a lookup string (the lookup
985result is ignored).  Continue long lines by starting the next line
986with whitespace. Specify "!pattern" to exclude an address or network
987block from the list. The form "!/file/name" is supported only in
988Postfix version 2.4 and later. </p>
989
990<p> Note: IP version 6 address information must be specified inside
991<tt>[]</tt> in the <a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a> value, and in files
992specified with "/file/name".  IP version 6 addresses contain the
993":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
994pattern.  </p>
995
996
997</DD>
998
999<DT><b><a name="backwards_bounce_logfile_compatibility">backwards_bounce_logfile_compatibility</a>
1000(default: yes)</b></DT><DD>
1001
1002<p>
1003Produce additional <a href="bounce.8.html">bounce(8)</a> logfile records that can be read by
1004Postfix versions before 2.0. The current and more extensible "name =
1005value" format is needed in order to implement more sophisticated
1006functionality.
1007</p>
1008
1009<p>
1010This feature is available in Postfix 2.1 and later.
1011</p>
1012
1013
1014</DD>
1015
1016<DT><b><a name="berkeley_db_create_buffer_size">berkeley_db_create_buffer_size</a>
1017(default: 16777216)</b></DT><DD>
1018
1019<p>
1020The per-table I/O buffer size for programs that create Berkeley DB
1021hash or btree tables.  Specify a byte count.
1022</p>
1023
1024<p>
1025This feature is available in Postfix 2.0 and later.
1026</p>
1027
1028
1029</DD>
1030
1031<DT><b><a name="berkeley_db_read_buffer_size">berkeley_db_read_buffer_size</a>
1032(default: 131072)</b></DT><DD>
1033
1034<p>
1035The per-table I/O buffer size for programs that read Berkeley DB
1036hash or btree tables.  Specify a byte count.
1037</p>
1038
1039<p>
1040This feature is available in Postfix 2.0 and later.
1041</p>
1042
1043
1044</DD>
1045
1046<DT><b><a name="best_mx_transport">best_mx_transport</a>
1047(default: empty)</b></DT><DD>
1048
1049<p>
1050Where the Postfix SMTP client should deliver mail when it detects
1051a "mail loops back to myself" error condition. This happens when
1052the local MTA is the best SMTP mail exchanger for a destination
1053not listed in $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>, $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>,
1054$<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, or $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.  By default,
1055the Postfix SMTP client returns such mail as undeliverable.
1056</p>
1057
1058<p>
1059Specify, for example, "<a href="postconf.5.html#best_mx_transport">best_mx_transport</a> = local" to pass the mail
1060from the Postfix SMTP client to the <a href="local.8.html">local(8)</a> delivery agent. You
1061can specify
1062any message delivery "transport" or "transport:nexthop" that is
1063defined in the <a href="master.5.html">master.cf</a> file. See the <a href="transport.5.html">transport(5)</a> manual page
1064for the syntax and meaning of "transport" or "transport:nexthop".
1065</p>
1066
1067<p>
1068However, this feature is expensive because it ties up a Postfix
1069SMTP client process while the <a href="local.8.html">local(8)</a> delivery agent is doing its
1070work. It is more efficient (for Postfix) to list all <a href="VIRTUAL_README.html#canonical">hosted domains</a>
1071in a table or database.
1072</p>
1073
1074
1075</DD>
1076
1077<DT><b><a name="biff">biff</a>
1078(default: yes)</b></DT><DD>
1079
1080<p>
1081Whether or not to use the local <a href="postconf.5.html#biff">biff</a> service.  This service sends
1082"new mail" notifications to users who have requested new mail
1083notification with the UNIX command "<a href="postconf.5.html#biff">biff</a> y".
1084</p>
1085
1086<p>
1087For compatibility reasons this feature is on by default.  On systems
1088with lots of interactive users, the <a href="postconf.5.html#biff">biff</a> service can be a performance
1089drain.  Specify "<a href="postconf.5.html#biff">biff</a> = no" in <a href="postconf.5.html">main.cf</a> to disable.
1090</p>
1091
1092
1093</DD>
1094
1095<DT><b><a name="body_checks">body_checks</a>
1096(default: empty)</b></DT><DD>
1097
1098<p> Optional lookup tables for content inspection as specified in
1099the <a href="header_checks.5.html">body_checks(5)</a> manual page.  </p>
1100
1101<p> Note: with Postfix versions before 2.0, these rules inspect
1102all content after the primary message headers. </p>
1103
1104
1105</DD>
1106
1107<DT><b><a name="body_checks_size_limit">body_checks_size_limit</a>
1108(default: 51200)</b></DT><DD>
1109
1110<p>
1111How much text in a message body segment (or attachment, if you
1112prefer to use that term) is subjected to <a href="postconf.5.html#body_checks">body_checks</a> inspection.
1113The amount of text is limited to avoid scanning huge attachments.
1114</p>
1115
1116<p>
1117This feature is available in Postfix 2.0 and later.
1118</p>
1119
1120
1121</DD>
1122
1123<DT><b><a name="bounce_notice_recipient">bounce_notice_recipient</a>
1124(default: postmaster)</b></DT><DD>
1125
1126<p>
1127The recipient of postmaster notifications with the message headers
1128of mail that Postfix did not deliver and of SMTP conversation
1129transcripts of mail that Postfix did not receive.  This feature is
1130enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a> parameter.  </p>
1131
1132
1133</DD>
1134
1135<DT><b><a name="bounce_queue_lifetime">bounce_queue_lifetime</a>
1136(default: 5d)</b></DT><DD>
1137
1138<p>
1139The maximal time a bounce message is queued before it is considered
1140undeliverable.  By default, this is the same as the queue life time
1141for regular mail.
1142</p>
1143
1144<p>
1145Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
1146The default time unit is d (days).
1147</p>
1148
1149<p>
1150Specify 0 when mail delivery should be tried only once.
1151</p>
1152
1153<p>
1154This feature is available in Postfix 2.1 and later.
1155</p>
1156
1157
1158</DD>
1159
1160<DT><b><a name="bounce_service_name">bounce_service_name</a>
1161(default: bounce)</b></DT><DD>
1162
1163<p>
1164The name of the <a href="bounce.8.html">bounce(8)</a> service. This service maintains a record
1165of failed delivery attempts and generates non-delivery notifications.
1166</p>
1167
1168<p>
1169This feature is available in Postfix 2.0 and later.
1170</p>
1171
1172
1173</DD>
1174
1175<DT><b><a name="bounce_size_limit">bounce_size_limit</a>
1176(default: 50000)</b></DT><DD>
1177
1178<p> The maximal amount of original message text that is sent in a
1179non-delivery notification. Specify a byte count. With Postfix 2.4
1180and later, a message is returned as either message/rfc822 (the
1181complete original) or as text/rfc822-headers (the headers only).
1182With earlier Postfix versions, a message is always returned as
1183message/rfc822 and is truncated when it exceeds the size limit.
1184</p>
1185
1186<p> Notes: </p>
1187
1188<ul>
1189
1190<li> <p> If you increase this limit, then you should increase the
1191<a href="postconf.5.html#mime_nesting_limit">mime_nesting_limit</a> value proportionally.  </p>
1192
1193<li> <p> Be careful when making changes.  Excessively large values
1194will result in the loss of non-delivery notifications, when a bounce
1195message size exceeds a local or remote MTA's message size limit.
1196</p>
1197
1198</ul>
1199
1200
1201</DD>
1202
1203<DT><b><a name="bounce_template_file">bounce_template_file</a>
1204(default: empty)</b></DT><DD>
1205
1206<p> Pathname of a configuration file with bounce message templates.
1207These override the built-in templates of delivery status notification
1208(DSN) messages for undeliverable mail, for delayed mail, successful
1209delivery, or delivery verification. The <a href="bounce.5.html">bounce(5)</a> manual page
1210describes how to edit and test template files.  </p>
1211
1212<p> Template message body text may contain $name references to
1213Postfix configuration parameters. The result of $name expansion can
1214be previewed with "<b>postconf -b <i>file_name</i></b>" before the file
1215is placed into the Postfix configuration directory.  </p>
1216
1217<p> This feature is available in Postfix 2.3 and later.  </p>
1218
1219
1220</DD>
1221
1222<DT><b><a name="broken_sasl_auth_clients">broken_sasl_auth_clients</a>
1223(default: no)</b></DT><DD>
1224
1225<p>
1226Enable inter-operability with SMTP clients that implement an obsolete
1227version of the AUTH command (<a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a>). Examples of such clients
1228are MicroSoft Outlook Express version 4 and MicroSoft Exchange
1229version 5.0.
1230</p>
1231
1232<p>
1233Specify "<a href="postconf.5.html#broken_sasl_auth_clients">broken_sasl_auth_clients</a> = yes" to have Postfix advertise
1234AUTH support in a non-standard way.
1235</p>
1236
1237
1238</DD>
1239
1240<DT><b><a name="canonical_classes">canonical_classes</a>
1241(default: envelope_sender, envelope_recipient, header_sender, header_recipient)</b></DT><DD>
1242
1243<p> What addresses are subject to <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping.
1244By default, <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping is applied to envelope
1245sender and recipient addresses, and to header sender and header
1246recipient addresses.  </p>
1247
1248<p> Specify one or more of: envelope_sender, envelope_recipient,
1249header_sender, header_recipient </p>
1250
1251<p> This feature is available in Postfix 2.2 and later. </p>
1252
1253
1254</DD>
1255
1256<DT><b><a name="canonical_maps">canonical_maps</a>
1257(default: empty)</b></DT><DD>
1258
1259<p>
1260Optional address mapping lookup tables for message headers and
1261envelopes. The mapping is applied to both sender and recipient
1262addresses, in both envelopes and in headers, as controlled
1263with the <a href="postconf.5.html#canonical_classes">canonical_classes</a> parameter. This is typically used
1264to clean up dirty addresses from legacy mail systems, or to replace
1265login names by Firstname.Lastname.  The table format and lookups
1266are documented in <a href="canonical.5.html">canonical(5)</a>. For an overview of Postfix address
1267manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document.
1268</p>
1269
1270<p>
1271If you use this feature, run "<b>postmap /etc/postfix/canonical</b>" to
1272build the necessary DBM or DB file after every change. The changes
1273will become visible after a minute or so.  Use "<b>postfix reload</b>"
1274to eliminate the delay.
1275</p>
1276
1277<p> Note: with Postfix version 2.2, message header address mapping
1278happens only when message header address rewriting is enabled: </p>
1279
1280<ul>
1281
1282<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
1283
1284<li> The message is received from a network client that matches
1285$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
1286
1287<li> The message is received from the network, and the
1288<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
1289
1290</ul>
1291
1292<p> To get the behavior before Postfix version 2.2, specify
1293"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
1294
1295<p>
1296Examples:
1297</p>
1298
1299<pre>
1300<a href="postconf.5.html#canonical_maps">canonical_maps</a> = dbm:/etc/postfix/canonical
1301<a href="postconf.5.html#canonical_maps">canonical_maps</a> = hash:/etc/postfix/canonical
1302</pre>
1303
1304
1305</DD>
1306
1307<DT><b><a name="cleanup_service_name">cleanup_service_name</a>
1308(default: cleanup)</b></DT><DD>
1309
1310<p>
1311The name of the <a href="cleanup.8.html">cleanup(8)</a> service. This service rewrites addresses
1312into the standard form, and performs <a href="canonical.5.html">canonical(5)</a> address mapping
1313and <a href="virtual.5.html">virtual(5)</a> aliasing.
1314</p>
1315
1316<p>
1317This feature is available in Postfix 2.0 and later.
1318</p>
1319
1320
1321</DD>
1322
1323<DT><b><a name="command_directory">command_directory</a>
1324(default: see "postconf -d" output)</b></DT><DD>
1325
1326<p>
1327The location of all postfix administrative commands.
1328</p>
1329
1330
1331</DD>
1332
1333<DT><b><a name="command_execution_directory">command_execution_directory</a>
1334(default: empty)</b></DT><DD>
1335
1336<p> The <a href="local.8.html">local(8)</a> delivery agent working directory for delivery to
1337external command.  Failure to change directory causes the delivery
1338to be deferred. </p>
1339
1340<p> The following $name expansions are done on <a href="postconf.5.html#command_execution_directory">command_execution_directory</a>
1341before the directory is changed. Expansion happens in the context
1342of the delivery request.  The result of $name expansion is filtered
1343with the character set that is specified with the
1344<a href="postconf.5.html#execution_directory_expansion_filter">execution_directory_expansion_filter</a> parameter.  </p>
1345
1346<dl>
1347
1348<dt><b>$user</b></dt>
1349
1350<dd>The recipient's username. </dd>
1351
1352<dt><b>$shell</b></dt>
1353
1354<dd>The recipient's login shell pathname. </dd>
1355
1356<dt><b>$home</b></dt>
1357
1358<dd>The recipient's home directory. </dd>
1359
1360<dt><b>$recipient</b></dt>
1361
1362<dd>The full recipient address. </dd>
1363
1364<dt><b>$extension</b></dt>
1365
1366<dd>The optional recipient address extension. </dd>
1367
1368<dt><b>$domain</b></dt>
1369
1370<dd>The recipient domain. </dd>
1371
1372<dt><b>$local</b></dt>
1373
1374<dd>The entire recipient localpart. </dd>
1375
1376<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
1377
1378<dd>The system-wide recipient address extension delimiter. </dd>
1379
1380<dt><b>${name?value}</b></dt>
1381
1382<dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd>
1383
1384<dt><b>${name:value}</b></dt>
1385
1386<dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd>
1387
1388</dl>
1389
1390<p>
1391Instead of $name you can also specify ${name} or $(name).
1392</p>
1393
1394<p> This feature is available in Postfix 2.2 and later. </p>
1395
1396
1397</DD>
1398
1399<DT><b><a name="command_expansion_filter">command_expansion_filter</a>
1400(default: see "postconf -d" output)</b></DT><DD>
1401
1402<p>
1403Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in
1404$name expansions of $<a href="postconf.5.html#mailbox_command">mailbox_command</a> and $<a href="postconf.5.html#command_execution_directory">command_execution_directory</a>.
1405Characters outside the
1406allowed set are replaced by underscores.
1407</p>
1408
1409
1410</DD>
1411
1412<DT><b><a name="command_time_limit">command_time_limit</a>
1413(default: 1000s)</b></DT><DD>
1414
1415<p>
1416Time limit for delivery to external commands. This limit is used
1417by the <a href="local.8.html">local(8)</a> delivery agent, and is the default time limit for
1418delivery by the <a href="pipe.8.html">pipe(8)</a> delivery agent.
1419</p>
1420
1421<p>
1422Note: if you set this time limit to a large value you must update the
1423global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter as well.
1424</p>
1425
1426
1427</DD>
1428
1429<DT><b><a name="config_directory">config_directory</a>
1430(default: see "postconf -d" output)</b></DT><DD>
1431
1432<p> The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a>
1433configuration files. This can be overruled via the following
1434mechanisms: </p>
1435
1436<ul>
1437
1438<li> <p> The MAIL_CONFIG environment variable (daemon processes
1439and commands). </p>
1440
1441<li> <p> The "-c" command-line option (commands only). </p>
1442
1443</ul>
1444
1445<p> With Postfix command that run with set-gid privileges, a
1446<a href="postconf.5.html#config_directory">config_directory</a> override requires either root privileges, or it
1447requires that the directory is listed with the <a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a>
1448parameter in the default <a href="postconf.5.html">main.cf</a> file.  </p>
1449
1450
1451</DD>
1452
1453<DT><b><a name="connection_cache_protocol_timeout">connection_cache_protocol_timeout</a>
1454(default: 5s)</b></DT><DD>
1455
1456<p> Time limit for connection cache connect, send or receive
1457operations.  The time limit is enforced in the client. </p>
1458
1459<p> This feature is available in Postfix 2.3 and later. </p>
1460
1461
1462</DD>
1463
1464<DT><b><a name="connection_cache_service_name">connection_cache_service_name</a>
1465(default: scache)</b></DT><DD>
1466
1467<p> The name of the <a href="scache.8.html">scache(8)</a> connection cache service.  This service
1468maintains a limited pool of cached sessions.  </p>
1469
1470<p> This feature is available in Postfix 2.2 and later. </p>
1471
1472
1473</DD>
1474
1475<DT><b><a name="connection_cache_status_update_time">connection_cache_status_update_time</a>
1476(default: 600s)</b></DT><DD>
1477
1478<p> How frequently the <a href="scache.8.html">scache(8)</a> server logs usage statistics with
1479connection cache hit and miss rates for logical destinations and for
1480physical endpoints. </p>
1481
1482
1483</DD>
1484
1485<DT><b><a name="connection_cache_ttl_limit">connection_cache_ttl_limit</a>
1486(default: 2s)</b></DT><DD>
1487
1488<p> The maximal time-to-live value that the <a href="scache.8.html">scache(8)</a> connection
1489cache server
1490allows. Requests that specify a larger TTL will be stored with the
1491maximum allowed TTL. The purpose of this additional control is to
1492protect the infrastructure against careless people. The cache TTL
1493is already bounded by $<a href="postconf.5.html#max_idle">max_idle</a>.  </p>
1494
1495
1496</DD>
1497
1498<DT><b><a name="content_filter">content_filter</a>
1499(default: empty)</b></DT><DD>
1500
1501<p>
1502The name of a mail delivery transport that filters mail after
1503it is queued.
1504</p>
1505
1506<p>
1507This parameter uses the same syntax as the right-hand side of a
1508Postfix <a href="transport.5.html">transport(5)</a> table. This setting has a lower precedence
1509than a content filter that is specified with an <a href="access.5.html">access(5)</a> table or
1510in a <a href="header_checks.5.html">header_checks(5)</a> or <a href="header_checks.5.html">body_checks(5)</a> table.
1511</p>
1512
1513
1514</DD>
1515
1516<DT><b><a name="cyrus_sasl_config_path">cyrus_sasl_config_path</a>
1517(default: empty)</b></DT><DD>
1518
1519<p> Search path for Cyrus SASL application configuration files,
1520currently used only to locate the $<a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>.conf file.
1521Specify zero or more directories separated by a colon character,
1522or an empty value to use Cyrus SASL's built-in search path.  </p>
1523
1524<p> This feature is available in Postfix 2.5 and later when compiled
1525with Cyrus SASL 2.1.22 or later. </p>
1526
1527
1528</DD>
1529
1530<DT><b><a name="daemon_directory">daemon_directory</a>
1531(default: see "postconf -d" output)</b></DT><DD>
1532
1533<p>
1534The directory with Postfix support programs and daemon programs.
1535These should not be invoked directly by humans. The directory must
1536be owned by root.
1537</p>
1538
1539
1540</DD>
1541
1542<DT><b><a name="daemon_timeout">daemon_timeout</a>
1543(default: 18000s)</b></DT><DD>
1544
1545<p> How much time a Postfix daemon process may take to handle a
1546request before it is terminated by a built-in watchdog timer.  </p>
1547
1548<p>
1549Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
1550The default time unit is s (seconds).
1551</p>
1552
1553
1554</DD>
1555
1556<DT><b><a name="data_directory">data_directory</a>
1557(default: see "postconf -d" output)</b></DT><DD>
1558
1559<p> The directory with Postfix-writable data files (for example:
1560caches, pseudo-random numbers).  This directory must be owned by
1561the <a href="postconf.5.html#mail_owner">mail_owner</a> account, and must not be shared with non-Postfix
1562software.  </p>
1563
1564<p> This feature is available in Postfix 2.5 and later. </p>
1565
1566
1567</DD>
1568
1569<DT><b><a name="debug_peer_level">debug_peer_level</a>
1570(default: 2)</b></DT><DD>
1571
1572<p> The increment in verbose logging level when a remote client or
1573server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter.  </p>
1574
1575
1576</DD>
1577
1578<DT><b><a name="debug_peer_list">debug_peer_list</a>
1579(default: empty)</b></DT><DD>
1580
1581<p> Optional list of remote client or server hostname or network
1582address patterns that cause the verbose logging level to increase
1583by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>.  </p>
1584
1585<p> Specify domain names, network/netmask patterns, "/file/name"
1586patterns or "<a href="DATABASE_README.html">type:table</a>" lookup tables. The right-hand side result
1587from "<a href="DATABASE_README.html">type:table</a>" lookups is ignored.  </p>
1588
1589<p> Pattern matching of domain names is controlled by the
1590<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter.  </p>
1591
1592<p>
1593Examples:
1594</p>
1595
1596<pre>
1597<a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = 127.0.0.1
1598<a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = example.com
1599</pre>
1600
1601
1602</DD>
1603
1604<DT><b><a name="debugger_command">debugger_command</a>
1605(default: empty)</b></DT><DD>
1606
1607<p>
1608The external command to execute when a Postfix daemon program is
1609invoked with the -D option.
1610</p>
1611
1612<p>
1613Use "command .. &amp; sleep 5" so that the debugger can attach before
1614the process marches on. If you use an X-based debugger, be sure to
1615set up your XAUTHORITY environment variable before starting Postfix.
1616</p>
1617
1618<p>
1619Example:
1620</p>
1621
1622<pre>
1623<a href="postconf.5.html#debugger_command">debugger_command</a> =
1624    PATH=/usr/bin:/usr/X11R6/bin
1625    ddd $<a href="postconf.5.html#daemon_directory">daemon_directory</a>/$<a href="postconf.5.html#process_name">process_name</a> $<a href="postconf.5.html#process_id">process_id</a> &amp; sleep 5
1626</pre>
1627
1628
1629</DD>
1630
1631<DT><b><a name="default_database_type">default_database_type</a>
1632(default: see "postconf -d" output)</b></DT><DD>
1633
1634<p>
1635The default database type for use in <a href="newaliases.1.html">newaliases(1)</a>, <a href="postalias.1.html">postalias(1)</a>
1636and <a href="postmap.1.html">postmap(1)</a> commands. On many UNIX systems the default type is
1637either <b>dbm</b> or <b>hash</b>. The default setting is frozen
1638when the Postfix system is built.
1639</p>
1640
1641<p>
1642Examples:
1643</p>
1644
1645<pre>
1646<a href="postconf.5.html#default_database_type">default_database_type</a> = hash
1647<a href="postconf.5.html#default_database_type">default_database_type</a> = dbm
1648</pre>
1649
1650
1651</DD>
1652
1653<DT><b><a name="default_delivery_slot_cost">default_delivery_slot_cost</a>
1654(default: 5)</b></DT><DD>
1655
1656<p>
1657How often the Postfix queue manager's scheduler is allowed to
1658preempt delivery of one message with another.
1659</p>
1660
1661<p>
1662Each transport maintains a so-called "available delivery slot counter"
1663for each message. One message can be preempted by another one when
1664the other message can be delivered using no more delivery slots
1665(i.e., invocations of delivery agents) than the current message
1666counter has accumulated (or will eventually accumulate - see about
1667slot loans below). This parameter controls how often is the counter
1668incremented - it happens after each <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>
1669recipients have been delivered.
1670</p>
1671
1672<p>
1673The cost of 0 is used to disable the preempting scheduling completely.
1674The minimum value the scheduling algorithm can use is 2 - use it
1675if you want to maximize the message throughput rate. Although there
1676is no maximum, it doesn't make much sense to use values above say
167750.
1678</p>
1679
1680<p>
1681The only reason why the value of 2 is not the default is the way
1682this parameter affects the delivery of mailing-list mail. In the
1683worst case, their delivery can take somewhere between (cost+1/cost)
1684and (cost/cost-1) times more than if the preemptive scheduler was
1685disabled. The default value of 5 turns out to provide reasonable
1686message response times while making sure the mailing-list deliveries
1687are not extended by more than 20-25 percent even in the worst case.
1688</p>
1689
1690<p> Use <a href="postconf.5.html#transport_delivery_slot_cost"><i>transport</i>_delivery_slot_cost</a> to specify a
1691transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1692name of the message delivery transport.
1693</p>
1694
1695<p>
1696Examples:
1697</p>
1698
1699<pre>
1700<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 0
1701<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 2
1702</pre>
1703
1704
1705</DD>
1706
1707<DT><b><a name="default_delivery_slot_discount">default_delivery_slot_discount</a>
1708(default: 50)</b></DT><DD>
1709
1710<p>
1711The default value for transport-specific _delivery_slot_discount
1712settings.
1713</p>
1714
1715<p>
1716This parameter speeds up the moment when a message preemption can
1717happen. Instead of waiting until the full amount of delivery slots
1718required is available, the preemption can happen when
1719transport_delivery_slot_discount percent of the required amount
1720plus transport_delivery_slot_loan still remains to be accumulated.
1721Note that the full amount will still have to be accumulated before
1722another preemption can take place later.
1723</p>
1724
1725<p> Use <a href="postconf.5.html#transport_delivery_slot_discount"><i>transport</i>_delivery_slot_discount</a> to specify a
1726transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1727name of the message delivery transport.
1728</p>
1729
1730
1731</DD>
1732
1733<DT><b><a name="default_delivery_slot_loan">default_delivery_slot_loan</a>
1734(default: 3)</b></DT><DD>
1735
1736<p>
1737The default value for transport-specific _delivery_slot_loan
1738settings.
1739</p>
1740
1741<p>
1742This parameter speeds up the moment when a message preemption can
1743happen. Instead of waiting until the full amount of delivery slots
1744required is available, the preemption can happen when
1745transport_delivery_slot_discount percent of the required amount
1746plus transport_delivery_slot_loan still remains to be accumulated.
1747Note that the full amount will still have to be accumulated before
1748another preemption can take place later.
1749</p>
1750
1751<p> Use <a href="postconf.5.html#transport_delivery_slot_loan"><i>transport</i>_delivery_slot_loan</a> to specify a
1752transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1753name of the message delivery transport.
1754</p>
1755
1756
1757</DD>
1758
1759<DT><b><a name="default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>
1760(default: 1)</b></DT><DD>
1761
1762<p> How many pseudo-cohorts must suffer connection or handshake
1763failure before a specific destination is considered unavailable
1764(and further delivery is suspended). Specify zero to disable this
1765feature. A destination's pseudo-cohort failure count is reset each
1766time a delivery completes without connection or handshake failure
1767for that specific destination. </p>
1768
1769<p> A pseudo-cohort is the number of deliveries equal to a destination's
1770delivery concurrency. </p>
1771
1772<p> Use <a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> to specify
1773a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1774name of the message delivery transport. </p>
1775
1776<p> This feature is available in Postfix 2.5. The default setting
1777is compatible with earlier Postfix versions. </p>
1778
1779
1780</DD>
1781
1782<DT><b><a name="default_destination_concurrency_limit">default_destination_concurrency_limit</a>
1783(default: 20)</b></DT><DD>
1784
1785<p>
1786The default maximal number of parallel deliveries to the same
1787destination.  This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>,
1788<a href="pipe.8.html">pipe(8)</a>, <a href="smtp.8.html">smtp(8)</a> and <a href="virtual.8.html">virtual(8)</a> delivery agents.
1789With per-destination recipient limit &gt; 1, a destination is a domain,
1790otherwise it is a recipient.
1791</p>
1792
1793<p> Use <a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> to specify a
1794transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1795name of the message delivery transport.
1796</p>
1797
1798
1799</DD>
1800
1801<DT><b><a name="default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a>
1802(default: 1)</b></DT><DD>
1803
1804<p> The per-destination amount of delivery concurrency negative
1805feedback, after a delivery completes with a connection or handshake
1806failure. Feedback values are in the range 0..1 inclusive. With
1807negative feedback, concurrency is decremented at the beginning of
1808a sequence of length 1/feedback. This is unlike positive feedback,
1809where concurrency is incremented at the end of a sequence of length
18101/feedback. </p>
1811
1812<p> As of Postfix version 2.5, negative feedback cannot reduce
1813delivery concurrency to zero.  Instead, a destination is marked
1814dead (further delivery suspended) after the failed pseudo-cohort
1815count reaches $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>
1816(or $<a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a>).
1817To make the scheduler completely immune to connection or handshake
1818failures, specify a zero feedback value and a zero failed pseudo-cohort
1819limit.  </p>
1820
1821<p> Specify one of the following forms: </p>
1822
1823<dl>
1824
1825<dt> <b><i>number</i> </b> </dt>
1826
1827<dt> <b><i>number</i> / <i>number</i> </b> </dt>
1828
1829<dd> Constant feedback. The value must be in the range 0..1 inclusive.
1830The default setting of "1" is compatible with Postfix versions
1831before 2.5, where a destination's delivery concurrency is throttled
1832down to zero (and further delivery suspended) after a single failed
1833pseudo-cohort. </dd>
1834
1835<dt> <b><i>number</i> / concurrency </b> </dt>
1836
1837<dd> Variable feedback of "<i>number</i> / (delivery concurrency)".
1838The <i>number</i> must be in the range 0..1 inclusive. With
1839<i>number</i> equal to "1", a destination's delivery concurrency
1840is decremented by 1 after each failed pseudo-cohort.  </dd>
1841
1842</dl>
1843
1844<p> A pseudo-cohort is the number of deliveries equal to a destination's
1845delivery concurrency. </p>
1846
1847<p> Use <a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a>
1848to specify a transport-specific override, where <i>transport</i>
1849is the <a href="master.5.html">master.cf</a>
1850name of the message delivery transport. </p>
1851
1852<p> This feature is available in Postfix 2.5. The default setting
1853is compatible with earlier Postfix versions. </p>
1854
1855
1856</DD>
1857
1858<DT><b><a name="default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a>
1859(default: 1)</b></DT><DD>
1860
1861<p> The per-destination amount of delivery concurrency positive
1862feedback, after a delivery completes without connection or handshake
1863failure. Feedback values are in the range 0..1 inclusive.  The
1864concurrency increases until it reaches the per-destination maximal
1865concurrency limit. With positive feedback, concurrency is incremented
1866at the end of a sequence with length 1/feedback. This is unlike
1867negative feedback, where concurrency is decremented at the start
1868of a sequence of length 1/feedback. </p>
1869
1870<p> Specify one of the following forms:  </p>
1871
1872<dl>
1873
1874<dt> <b><i>number</i> </b> </dt>
1875
1876<dt> <b><i>number</i> / <i>number</i> </b> </dt>
1877
1878<dd> Constant feedback.  The value must be in the range 0..1
1879inclusive. The default setting of "1" is compatible with Postfix
1880versions before 2.5, where a destination's delivery concurrency
1881doubles after each successful pseudo-cohort.  </dd>
1882
1883<dt> <b><i>number</i> / concurrency </b> </dt>
1884
1885<dd> Variable feedback of "<i>number</i> / (delivery concurrency)".
1886The <i>number</i> must be in the range 0..1 inclusive. With
1887<i>number</i> equal to "1", a destination's delivery concurrency
1888is incremented by 1 after each successful pseudo-cohort.  </dd>
1889
1890</dl>
1891
1892<p> A pseudo-cohort is the number of deliveries equal to a destination's
1893delivery concurrency. </p>
1894
1895<p> Use <a href="postconf.5.html#transport_destination_concurrency_positive_feedback"><i>transport</i>_destination_concurrency_positive_feedback</a>
1896to specify a transport-specific override, where <i>transport</i>
1897is the <a href="master.5.html">master.cf</a> name of the message delivery transport. </p>
1898
1899<p> This feature is available in Postfix 2.5 and later.  </p>
1900
1901
1902</DD>
1903
1904<DT><b><a name="default_destination_rate_delay">default_destination_rate_delay</a>
1905(default: 0s)</b></DT><DD>
1906
1907<p> The default amount of delay that is inserted between individual
1908deliveries to the same destination; with per-destination recipient
1909limit &gt; 1, a destination is a domain, otherwise it is a recipient.
1910</p>
1911
1912<p> To enable the delay, specify a non-zero time value (an integral
1913value plus an optional one-letter suffix that specifies the time
1914unit). </p>
1915
1916<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
1917(weeks). The default time unit is s (seconds). </p>
1918
1919<p> NOTE: the delay is enforced by the queue manager. The delay
1920timer state does not survive "postfix reload" or "postfix stop".
1921</p>
1922
1923<p> Use <a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a> to specify a
1924transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1925name of the message delivery transport.
1926</p>
1927
1928<p> This feature is available in Postfix 2.5 and later. </p>
1929
1930
1931</DD>
1932
1933<DT><b><a name="default_destination_recipient_limit">default_destination_recipient_limit</a>
1934(default: 50)</b></DT><DD>
1935
1936<p>
1937The default maximal number of recipients per message delivery.
1938This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>, <a href="pipe.8.html">pipe(8)</a>,
1939<a href="smtp.8.html">smtp(8)</a> and <a href="virtual.8.html">virtual(8)</a> delivery agents.
1940</p>
1941
1942<p> Setting this parameter to a value of 1 changes the meaning of
1943the corresponding per-destination concurrency limit from concurrency
1944per domain into concurrency per recipient.  </p>
1945
1946<p> Use <a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a> to specify a
1947transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1948name of the message delivery transport.
1949</p>
1950
1951
1952</DD>
1953
1954<DT><b><a name="default_extra_recipient_limit">default_extra_recipient_limit</a>
1955(default: 1000)</b></DT><DD>
1956
1957<p>
1958The default value for the extra per-transport limit imposed on the
1959number of in-memory recipients.  This extra recipient space is
1960reserved for the cases when the Postfix queue manager's scheduler
1961preempts one message with another and suddenly needs some extra
1962recipients slots for the chosen message in order to avoid performance
1963degradation.
1964</p>
1965
1966<p> Use <a href="postconf.5.html#transport_extra_recipient_limit"><i>transport</i>_extra_recipient_limit</a> to specify a
1967transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1968name of the message delivery transport.
1969</p>
1970
1971
1972</DD>
1973
1974<DT><b><a name="default_minimum_delivery_slots">default_minimum_delivery_slots</a>
1975(default: 3)</b></DT><DD>
1976
1977<p>
1978How many recipients a message must have in order to invoke the
1979Postfix queue manager's scheduling algorithm at all.  Messages
1980which would never accumulate at least this many delivery slots
1981(subject to slot cost parameter as well) are never preempted.
1982</p>
1983
1984<p> Use <a href="postconf.5.html#transport_minimum_delivery_slots"><i>transport</i>_minimum_delivery_slots</a> to specify a
1985transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1986name of the message delivery transport.
1987</p>
1988
1989
1990</DD>
1991
1992<DT><b><a name="default_privs">default_privs</a>
1993(default: nobody)</b></DT><DD>
1994
1995<p>
1996The default rights used by the <a href="local.8.html">local(8)</a> delivery agent for delivery
1997to external file or command.  These rights are used when delivery
1998is requested from an <a href="aliases.5.html">aliases(5)</a> file that is owned by <b>root</b>, or
1999when delivery is done on behalf of <b>root</b>. <b>DO NOT SPECIFY A
2000PRIVILEGED USER OR THE POSTFIX OWNER</b>.
2001</p>
2002
2003
2004</DD>
2005
2006<DT><b><a name="default_process_limit">default_process_limit</a>
2007(default: 100)</b></DT><DD>
2008
2009<p>
2010The default maximal number of Postfix child processes that provide
2011a given service. This limit can be overruled for specific services
2012in the <a href="master.5.html">master.cf</a> file.
2013</p>
2014
2015
2016</DD>
2017
2018<DT><b><a name="default_rbl_reply">default_rbl_reply</a>
2019(default: see "postconf -d" output)</b></DT><DD>
2020
2021<p>
2022The default SMTP server response template for a request that is
2023rejected by an RBL-based restriction. This template can be overruled
2024by specific entries in the optional <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> lookup table.
2025</p>
2026
2027<p>
2028This feature is available in Postfix 2.0 and later.
2029</p>
2030
2031<p>
2032The template is subject to exactly one level of $name substitution:
2033</p>
2034
2035<dl>
2036
2037<dt><b>$client</b></dt>
2038
2039<dd>The client hostname and IP address, formatted as name[address]. </dd>
2040
2041<dt><b>$client_address</b></dt>
2042
2043<dd>The client IP address. </dd>
2044
2045<dt><b>$client_name</b></dt>
2046
2047<dd>The client hostname or "unknown". See <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a>
2048for more details. </dd>
2049
2050<dt><b>$reverse_client_name</b></dt>
2051
2052<dd>The client hostname from address-&gt;name lookup, or "unknown".
2053See <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a> for more details. </dd>
2054
2055<dt><b>$helo_name</b></dt>
2056
2057<dd>The hostname given in HELO or EHLO command or empty string. </dd>
2058
2059<dt><b>$rbl_class</b></dt>
2060
2061<dd>The blacklisted entity type: Client host, Helo command, Sender
2062address, or Recipient address. </dd>
2063
2064<dt><b>$rbl_code</b></dt>
2065
2066<dd>The numerical SMTP response code, as specified with the
2067<a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> configuration parameter. Note: The numerical
2068SMTP response code is required, and must appear at the start of the
2069reply. With Postfix version 2.3 and later this information may be followed
2070by an <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> enhanced status code. </dd>
2071
2072<dt><b>$rbl_domain</b></dt>
2073
2074<dd>The RBL domain where $rbl_what is blacklisted. </dd>
2075
2076<dt><b>$rbl_reason</b></dt>
2077
2078<dd>The reason why $rbl_what is blacklisted, or an empty string. </dd>
2079
2080<dt><b>$rbl_what</b></dt>
2081
2082<dd>The entity that is blacklisted (an IP address, a hostname, a domain
2083name, or an email address whose domain was blacklisted). </dd>
2084
2085<dt><b>$recipient</b></dt>
2086
2087<dd>The recipient address or &lt;&gt; in case of the null address. </dd>
2088
2089<dt><b>$recipient_domain</b></dt>
2090
2091<dd>The recipient domain or empty string. </dd>
2092
2093<dt><b>$recipient_name</b></dt>
2094
2095<dd>The recipient address localpart or &lt;&gt; in case of null address. </dd>
2096
2097<dt><b>$sender</b></dt>
2098
2099<dd>The sender address or &lt;&gt; in case of the null address. </dd>
2100
2101<dt><b>$sender_domain</b></dt>
2102
2103<dd>The sender domain or empty string. </dd>
2104
2105<dt><b>$sender_name</b></dt>
2106
2107<dd>The sender address localpart or &lt;&gt; in case of the null address. </dd>
2108
2109<dt><b>${name?text}</b></dt>
2110
2111<dd>Expands to `text' if $name is not empty. </dd>
2112
2113<dt><b>${name:text}</b></dt>
2114
2115<dd>Expands to `text' if $name is empty. </dd>
2116
2117</dl>
2118
2119<p>
2120Instead of $name you can also specify ${name} or $(name).
2121</p>
2122
2123<p> Note: when an enhanced status code is specified in an RBL reply
2124template, it is subject to modification.  The following transformations
2125are needed when the same RBL reply template is used for client,
2126helo, sender, or recipient access restrictions.  </p>
2127
2128<ul>
2129
2130<li> <p> When rejecting a sender address, the Postfix SMTP server
2131will transform a recipient DSN status (e.g., 4.1.1-4.1.6) into the
2132corresponding sender DSN status, and vice versa. </p>
2133
2134<li> <p> When rejecting non-address information (such as the HELO
2135command argument or the client hostname/address), the Postfix SMTP
2136server will transform a sender or recipient DSN status into a generic
2137non-address DSN status (e.g., 4.0.0).  </p>
2138
2139</ul>
2140
2141
2142</DD>
2143
2144<DT><b><a name="default_recipient_limit">default_recipient_limit</a>
2145(default: 20000)</b></DT><DD>
2146
2147<p>
2148The default per-transport upper limit on the number of in-memory
2149recipients.  These limits take priority over the global
2150<a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> after the message has been assigned
2151to the respective transports.  See also <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>
2152and <a href="postconf.5.html#qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a>.
2153</p>
2154
2155<p> Use <a href="postconf.5.html#transport_recipient_limit"><i>transport</i>_recipient_limit</a> to specify a
2156transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2157name of the message delivery transport.
2158</p>
2159
2160
2161</DD>
2162
2163<DT><b><a name="default_recipient_refill_delay">default_recipient_refill_delay</a>
2164(default: 5s)</b></DT><DD>
2165
2166<p>
2167The default per-transport maximum delay between recipients refills.
2168When not all message recipients fit into the memory at once, keep loading
2169more of them at least once every this many seconds.  This is used to
2170make sure the recipients are refilled in timely manner even when
2171$<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> is too high for too slow deliveries.
2172</p>
2173
2174<p> Use <a href="postconf.5.html#transport_recipient_refill_delay"><i>transport</i>_recipient_refill_delay</a> to specify a
2175transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2176name of the message delivery transport.
2177</p>
2178
2179<p> This feature is available in Postfix 2.4 and later. </p>
2180
2181
2182</DD>
2183
2184<DT><b><a name="default_recipient_refill_limit">default_recipient_refill_limit</a>
2185(default: 100)</b></DT><DD>
2186
2187<p>
2188The default per-transport limit on the number of recipients refilled at
2189once.  When not all message recipients fit into the memory at once, keep
2190loading more of them in batches of at least this many at a time.  See also
2191$<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>, which may result in recipient batches
2192lower than this when this limit is too high for too slow deliveries.
2193</p>
2194
2195<p> Use <a href="postconf.5.html#transport_recipient_refill_limit"><i>transport</i>_recipient_refill_limit</a> to specify a
2196transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2197name of the message delivery transport.
2198</p>
2199
2200<p> This feature is available in Postfix 2.4 and later. </p>
2201
2202
2203</DD>
2204
2205<DT><b><a name="default_transport">default_transport</a>
2206(default: smtp)</b></DT><DD>
2207
2208<p>
2209The default mail delivery transport and next-hop destination for
2210destinations that do not match $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>,
2211$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>,
2212or $<a href="postconf.5.html#relay_domains">relay_domains</a>.  In order of decreasing precedence, the nexthop
2213destination is taken from $<a href="postconf.5.html#default_transport">default_transport</a>,
2214$<a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>, $<a href="postconf.5.html#relayhost">relayhost</a>, or from the recipient
2215domain. This information can be overruled with the <a href="transport.5.html">transport(5)</a>
2216table.
2217</p>
2218
2219<p>
2220Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
2221is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
2222The <i>:nexthop</i> part is optional.  For more details see the
2223<a href="transport.5.html">transport(5)</a> manual page.
2224</p>
2225
2226<p>
2227Example:
2228</p>
2229
2230<pre>
2231<a href="postconf.5.html#default_transport">default_transport</a> = uucp:relayhostname
2232</pre>
2233
2234
2235</DD>
2236
2237<DT><b><a name="default_verp_delimiters">default_verp_delimiters</a>
2238(default: +=)</b></DT><DD>
2239
2240<p> The two default VERP delimiter characters. These are used when
2241no explicit delimiters are specified with the SMTP XVERP command
2242or with the "<b>sendmail -V</b>" command-line option. Specify
2243characters that are allowed by the <a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> setting.
2244</p>
2245
2246<p>
2247This feature is available in Postfix 1.1 and later.
2248</p>
2249
2250
2251</DD>
2252
2253<DT><b><a name="defer_code">defer_code</a>
2254(default: 450)</b></DT><DD>
2255
2256<p>
2257The numerical Postfix SMTP server response code when a remote SMTP
2258client request is rejected by the "defer" restriction.
2259</p>
2260
2261<p>
2262Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
2263</p>
2264
2265
2266</DD>
2267
2268<DT><b><a name="defer_service_name">defer_service_name</a>
2269(default: defer)</b></DT><DD>
2270
2271<p>
2272The name of the defer service. This service is implemented by the
2273<a href="bounce.8.html">bounce(8)</a> daemon and maintains a record
2274of failed delivery attempts and generates non-delivery notifications.
2275</p>
2276
2277<p>
2278This feature is available in Postfix 2.0 and later.
2279</p>
2280
2281
2282</DD>
2283
2284<DT><b><a name="defer_transports">defer_transports</a>
2285(default: empty)</b></DT><DD>
2286
2287<p>
2288The names of message delivery transports that should not deliver mail
2289unless someone issues "<b>sendmail -q</b>" or equivalent. Specify zero
2290or more names of mail delivery transports names that appear in the
2291first field of <a href="master.5.html">master.cf</a>.
2292</p>
2293
2294<p>
2295Example:
2296</p>
2297
2298<pre>
2299<a href="postconf.5.html#defer_transports">defer_transports</a> = smtp
2300</pre>
2301
2302
2303</DD>
2304
2305<DT><b><a name="delay_logging_resolution_limit">delay_logging_resolution_limit</a>
2306(default: 2)</b></DT><DD>
2307
2308<p> The maximal number of digits after the decimal point when logging
2309sub-second delay values.  Specify a number in the range 0..6.  </p>
2310
2311<p> Large delay values are rounded off to an integral number seconds;
2312delay values below the <a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> are logged
2313as "0", and small delay values are logged with at most two-digit
2314precision.  </p>
2315
2316<p> The format of the "delays=a/b/c/d" logging is as follows: </p>
2317
2318<ul>
2319
2320<li> a = time from message arrival to last <a href="QSHAPE_README.html#active_queue">active queue</a> entry
2321
2322<li> b = time from last <a href="QSHAPE_README.html#active_queue">active queue</a> entry to connection setup
2323
2324<li> c = time in connection setup, including DNS, EHLO and TLS
2325
2326<li> d = time in message transmission
2327
2328</ul>
2329
2330<p> This feature is available in Postfix 2.3 and later.  </p>
2331
2332
2333</DD>
2334
2335<DT><b><a name="delay_notice_recipient">delay_notice_recipient</a>
2336(default: postmaster)</b></DT><DD>
2337
2338<p>
2339The recipient of postmaster notifications with the message headers
2340of mail that cannot be delivered within $<a href="postconf.5.html#delay_warning_time">delay_warning_time</a> time
2341units.  </p>
2342
2343<p>
2344This feature is enabled with the <a href="postconf.5.html#delay_warning_time">delay_warning_time</a> parameter.
2345</p>
2346
2347
2348</DD>
2349
2350<DT><b><a name="delay_warning_time">delay_warning_time</a>
2351(default: 0h)</b></DT><DD>
2352
2353<p>
2354The time after which the sender receives the message headers of
2355mail that is still queued.
2356</p>
2357
2358<p>
2359To enable this feature, specify a non-zero time value (an integral
2360value plus an optional one-letter suffix that specifies the time
2361unit).
2362</p>
2363
2364<p>
2365Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
2366The default time unit is h (hours).
2367</p>
2368
2369
2370</DD>
2371
2372<DT><b><a name="deliver_lock_attempts">deliver_lock_attempts</a>
2373(default: 20)</b></DT><DD>
2374
2375<p>
2376The maximal number of attempts to acquire an exclusive lock on a
2377mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
2378</p>
2379
2380
2381</DD>
2382
2383<DT><b><a name="deliver_lock_delay">deliver_lock_delay</a>
2384(default: 1s)</b></DT><DD>
2385
2386<p>
2387The time between attempts to acquire an exclusive lock on a mailbox
2388file or <a href="bounce.8.html">bounce(8)</a> logfile.
2389</p>
2390
2391<p>
2392Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
2393The default time unit is s (seconds).
2394</p>
2395
2396
2397</DD>
2398
2399<DT><b><a name="destination_concurrency_feedback_debug">destination_concurrency_feedback_debug</a>
2400(default: no)</b></DT><DD>
2401
2402<p> Make the queue manager's feedback algorithm verbose for performance
2403analysis purposes. </p>
2404
2405<p> This feature is available in Postfix 2.5 and later. </p>
2406
2407
2408</DD>
2409
2410<DT><b><a name="detect_8bit_encoding_header">detect_8bit_encoding_header</a>
2411(default: yes)</b></DT><DD>
2412
2413<p> Automatically detect 8BITMIME body content by looking at
2414Content-Transfer-Encoding: message headers; historically, this
2415behavior was hard-coded to be "always on".  </p>
2416
2417<p> This feature is available in Postfix 2.5 and later. </p>
2418
2419
2420</DD>
2421
2422<DT><b><a name="disable_dns_lookups">disable_dns_lookups</a>
2423(default: no)</b></DT><DD>
2424
2425<p>
2426Disable DNS lookups in the Postfix SMTP and LMTP clients. When
2427disabled, hosts are looked up with the getaddrinfo() system
2428library routine which normally also looks in /etc/hosts.
2429</p>
2430
2431<p>
2432DNS lookups are enabled by default.
2433</p>
2434
2435
2436</DD>
2437
2438<DT><b><a name="disable_mime_input_processing">disable_mime_input_processing</a>
2439(default: no)</b></DT><DD>
2440
2441<p>
2442Turn off MIME processing while receiving mail. This means that no
2443special treatment is given to Content-Type: message headers, and
2444that all text after the initial message headers is considered to
2445be part of the message body.
2446</p>
2447
2448<p>
2449This feature is available in Postfix 2.0 and later.
2450</p>
2451
2452<p>
2453Mime input processing is enabled by default, and is needed in order
2454to recognize MIME headers in message content.
2455</p>
2456
2457
2458</DD>
2459
2460<DT><b><a name="disable_mime_output_conversion">disable_mime_output_conversion</a>
2461(default: no)</b></DT><DD>
2462
2463<p>
2464Disable the conversion of 8BITMIME format to 7BIT format.  Mime
2465output conversion is needed when the destination does not advertise
24668BITMIME support.
2467</p>
2468
2469<p>
2470This feature is available in Postfix 2.0 and later.
2471</p>
2472
2473
2474</DD>
2475
2476<DT><b><a name="disable_verp_bounces">disable_verp_bounces</a>
2477(default: no)</b></DT><DD>
2478
2479<p>
2480Disable sending one bounce report per recipient.
2481</p>
2482
2483<p>
2484The default, one per recipient, is what ezmlm needs.
2485</p>
2486
2487<p>
2488This feature is available in Postfix 1.1 and later.
2489</p>
2490
2491
2492</DD>
2493
2494<DT><b><a name="disable_vrfy_command">disable_vrfy_command</a>
2495(default: no)</b></DT><DD>
2496
2497<p>
2498Disable the SMTP VRFY command. This stops some techniques used to
2499harvest email addresses.
2500</p>
2501
2502<p>
2503Example:
2504</p>
2505
2506<pre>
2507<a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a> = no
2508</pre>
2509
2510
2511</DD>
2512
2513<DT><b><a name="dont_remove">dont_remove</a>
2514(default: 0)</b></DT><DD>
2515
2516<p>
2517Don't remove queue files and save them to the "saved" mail queue.
2518This is a debugging aid.  To inspect the envelope information and
2519content of a Postfix queue file, use the <a href="postcat.1.html">postcat(1)</a> command.
2520</p>
2521
2522
2523</DD>
2524
2525<DT><b><a name="double_bounce_sender">double_bounce_sender</a>
2526(default: double-bounce)</b></DT><DD>
2527
2528<p> The sender address of postmaster notifications that are generated
2529by the mail system. All mail to this address is silently discarded,
2530in order to terminate mail bounce loops.  </p>
2531
2532
2533</DD>
2534
2535<DT><b><a name="duplicate_filter_limit">duplicate_filter_limit</a>
2536(default: 1000)</b></DT><DD>
2537
2538<p> The maximal number of addresses remembered by the address
2539duplicate filter for <a href="aliases.5.html">aliases(5)</a> or <a href="virtual.5.html">virtual(5)</a> alias expansion, or
2540for <a href="showq.8.html">showq(8)</a> queue displays.  </p>
2541
2542
2543</DD>
2544
2545<DT><b><a name="empty_address_recipient">empty_address_recipient</a>
2546(default: MAILER-DAEMON)</b></DT><DD>
2547
2548<p>
2549The recipient of mail addressed to the null address.  Postfix does
2550not accept such addresses in SMTP commands, but they may still be
2551created locally as the result of configuration or software error.
2552</p>
2553
2554
2555</DD>
2556
2557<DT><b><a name="empty_address_relayhost_maps_lookup_key">empty_address_relayhost_maps_lookup_key</a>
2558(default: &lt;&gt;)</b></DT><DD>
2559
2560<p> The <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> search string that will be
2561used instead of the null sender address. </p>
2562
2563<p> This feature is available in Postfix 2.5 and later. With
2564earlier versions, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> lookups were
2565skipped for the null sender address.  </p>
2566
2567
2568</DD>
2569
2570<DT><b><a name="enable_errors_to">enable_errors_to</a>
2571(default: no)</b></DT><DD>
2572
2573<p> Report mail delivery errors to the address specified with the
2574non-standard Errors-To: message header, instead of the envelope
2575sender address (this feature is removed with Postfix version 2.2, is
2576turned off by default with Postfix version 2.1, and is always turned on
2577with older Postfix versions).  </p>
2578
2579
2580</DD>
2581
2582<DT><b><a name="enable_original_recipient">enable_original_recipient</a>
2583(default: yes)</b></DT><DD>
2584
2585<p> Enable support for the X-Original-To message header. This header
2586is needed for multi-recipient mailboxes.  </p>
2587
2588<p> When this parameter is set to yes, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs
2589duplicate elimination on distinct pairs of (original recipient,
2590rewritten recipient), and generates non-empty original recipient
2591queue file records.  </p>
2592
2593<p> When this parameter is set to no, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs
2594duplicate elimination on the rewritten recipient address only, and
2595generates empty original recipient queue file records.  </p>
2596
2597<p> This feature is available in Postfix 2.1 and later. With Postfix
2598version 2.0, support for the X-Original-To message header is always turned
2599on. Postfix versions before 2.0 have no support for the X-Original-To
2600message header.  </p>
2601
2602
2603</DD>
2604
2605<DT><b><a name="error_notice_recipient">error_notice_recipient</a>
2606(default: postmaster)</b></DT><DD>
2607
2608<p> The recipient of postmaster notifications about mail delivery
2609problems that are caused by policy, resource, software or protocol
2610errors.  These notifications are enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a>
2611parameter.  </p>
2612
2613
2614</DD>
2615
2616<DT><b><a name="error_service_name">error_service_name</a>
2617(default: error)</b></DT><DD>
2618
2619<p>
2620The name of the <a href="error.8.html">error(8)</a> pseudo delivery agent. This service always
2621returns mail as undeliverable.
2622</p>
2623
2624<p>
2625This feature is available in Postfix 2.0 and later.
2626</p>
2627
2628
2629</DD>
2630
2631<DT><b><a name="execution_directory_expansion_filter">execution_directory_expansion_filter</a>
2632(default: see "postconf -d" output)</b></DT><DD>
2633
2634<p> Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows
2635in $name expansions of $<a href="postconf.5.html#command_execution_directory">command_execution_directory</a>.  Characters
2636outside the allowed set are replaced by underscores.  </p>
2637
2638<p> This feature is available in Postfix 2.2 and later. </p>
2639
2640
2641</DD>
2642
2643<DT><b><a name="expand_owner_alias">expand_owner_alias</a>
2644(default: no)</b></DT><DD>
2645
2646<p>
2647When delivering to an alias "aliasname" that has an "owner-aliasname"
2648companion alias, set the envelope sender address to the expansion
2649of the "owner-aliasname" alias. Normally, Postfix sets the envelope
2650sender address to the name of the "owner-aliasname" alias.
2651</p>
2652
2653
2654</DD>
2655
2656<DT><b><a name="export_environment">export_environment</a>
2657(default: see "postconf -d" output)</b></DT><DD>
2658
2659<p>
2660The list of environment variables that a Postfix process will export
2661to non-Postfix processes. The TZ variable is needed for sane
2662time keeping on System-V-ish systems.
2663</p>
2664
2665<p>
2666Specify a list of names and/or name=value pairs, separated by
2667whitespace or comma. The name=value form is supported with
2668Postfix version 2.1 and later.
2669</p>
2670
2671<p>
2672Example:
2673</p>
2674
2675<pre>
2676<a href="postconf.5.html#export_environment">export_environment</a> = TZ PATH=/bin:/usr/bin
2677</pre>
2678
2679
2680</DD>
2681
2682<DT><b><a name="extract_recipient_limit">extract_recipient_limit</a>
2683(default: 10240)</b></DT><DD>
2684
2685<p>
2686The maximal number of recipient addresses that Postfix will extract
2687from message headers when mail is submitted with "<b>sendmail -t</b>".
2688</p>
2689
2690<p>
2691This feature was removed in Postfix version 2.1.
2692</p>
2693
2694
2695</DD>
2696
2697<DT><b><a name="fallback_relay">fallback_relay</a>
2698(default: empty)</b></DT><DD>
2699
2700<p>
2701Optional list of relay hosts for SMTP destinations that can't be
2702found or that are unreachable. With Postfix 2.3 this parameter
2703is renamed to <a href="postconf.5.html#smtp_fallback_relay">smtp_fallback_relay</a>. </p>
2704
2705<p>
2706By default, mail is returned to the sender when a destination is
2707not found, and delivery is deferred when a destination is unreachable.
2708</p>
2709
2710<p> The fallback relays must be SMTP destinations. Specify a domain,
2711host, host:port, [host]:port, [address] or [address]:port; the form
2712[host] turns off MX lookups.  If you specify multiple SMTP
2713destinations, Postfix will try them in the specified order.  </p>
2714
2715<p> Note: before Postfix 2.2, do not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature
2716when relaying mail
2717for a backup or primary MX domain. Mail would loop between the
2718Postfix MX host and the <a href="postconf.5.html#fallback_relay">fallback_relay</a> host when the final destination
2719is unavailable. </p>
2720
2721<ul>
2722
2723<li> In <a href="postconf.5.html">main.cf</a> specify "<a href="postconf.5.html#relay_transport">relay_transport</a> = relay",
2724
2725<li> In <a href="master.5.html">master.cf</a> specify "-o <a href="postconf.5.html#fallback_relay">fallback_relay</a> =" (i.e., empty) at
2726the end of the <tt>relay</tt> entry.
2727
2728<li> In transport maps, specify "relay:<i>nexthop...</i>"
2729as the right-hand side for backup or primary MX domain entries.
2730
2731</ul>
2732
2733<p> Postfix version 2.2 and later will not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature
2734for destinations that it is MX host for.
2735</p>
2736
2737
2738</DD>
2739
2740<DT><b><a name="fallback_transport">fallback_transport</a>
2741(default: empty)</b></DT><DD>
2742
2743<p>
2744Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery
2745agent should use for names that are not found in the <a href="aliases.5.html">aliases(5)</a>
2746or UNIX password database.
2747</p>
2748
2749<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
2750is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
2751<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
2752<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
2753
2754
2755</DD>
2756
2757<DT><b><a name="fallback_transport_maps">fallback_transport_maps</a>
2758(default: empty)</b></DT><DD>
2759
2760<p> Optional lookup tables with per-recipient message delivery
2761transports for recipients that the <a href="local.8.html">local(8)</a> delivery agent could
2762not find in the <a href="aliases.5.html">aliases(5)</a> or UNIX password database. </p>
2763
2764<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
2765is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
2766<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
2767<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
2768
2769<p> For safety reasons, this feature does not allow $number
2770substitutions in regular expression maps. </p>
2771
2772<p> This feature is available in Postfix 2.3 and later. </p>
2773
2774
2775</DD>
2776
2777<DT><b><a name="fast_flush_domains">fast_flush_domains</a>
2778(default: $<a href="postconf.5.html#relay_domains">relay_domains</a>)</b></DT><DD>
2779
2780<p>
2781Optional list of destinations that are eligible for per-destination
2782logfiles with mail that is queued to those destinations.
2783</p>
2784
2785<p>
2786By default, Postfix maintains "fast flush" logfiles only for
2787destinations that the Postfix SMTP server is willing to relay to
2788(i.e. the default is: "<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> = $<a href="postconf.5.html#relay_domains">relay_domains</a>"; see
2789the <a href="postconf.5.html#relay_domains">relay_domains</a> parameter in the <a href="postconf.5.html">postconf(5)</a> manual).
2790</p>
2791
2792<p> Specify a list of hosts or domains, "/file/name" patterns or
2793"<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace.
2794Continue long lines by starting the next line with whitespace. A
2795"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
2796lookup table is matched when the domain or its parent domain appears
2797as lookup key.  </p>
2798
2799<p>
2800Specify "<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> =" (i.e., empty) to disable the feature
2801altogether.
2802</p>
2803
2804
2805</DD>
2806
2807<DT><b><a name="fast_flush_purge_time">fast_flush_purge_time</a>
2808(default: 7d)</b></DT><DD>
2809
2810<p>
2811The time after which an empty per-destination "fast flush" logfile
2812is deleted.
2813</p>
2814
2815<p>
2816You can specify the time as a number, or as a number followed by
2817a letter that indicates the time unit: s=seconds, m=minutes, h=hours,
2818d=days, w=weeks.  The default time unit is days.
2819</p>
2820
2821
2822</DD>
2823
2824<DT><b><a name="fast_flush_refresh_time">fast_flush_refresh_time</a>
2825(default: 12h)</b></DT><DD>
2826
2827<p>
2828The time after which a non-empty but unread per-destination "fast
2829flush" logfile needs to be refreshed.  The contents of a logfile
2830are refreshed by requesting delivery of all messages listed in the
2831logfile.
2832</p>
2833
2834<p>
2835You can specify the time as a number, or as a number followed by
2836a letter that indicates the time unit: s=seconds, m=minutes, h=hours,
2837d=days, w=weeks.  The default time unit is hours.
2838</p>
2839
2840
2841</DD>
2842
2843<DT><b><a name="fault_injection_code">fault_injection_code</a>
2844(default: 0)</b></DT><DD>
2845
2846<p>
2847Force specific internal tests to fail, to test the handling of
2848errors that are difficult to reproduce otherwise.
2849</p>
2850
2851
2852</DD>
2853
2854<DT><b><a name="flush_service_name">flush_service_name</a>
2855(default: flush)</b></DT><DD>
2856
2857<p>
2858The name of the <a href="flush.8.html">flush(8)</a> service. This service maintains per-destination
2859logfiles with the queue file names of mail that is queued for those
2860destinations.
2861</p>
2862
2863<p>
2864This feature is available in Postfix 2.0 and later.
2865</p>
2866
2867
2868</DD>
2869
2870<DT><b><a name="fork_attempts">fork_attempts</a>
2871(default: 5)</b></DT><DD>
2872
2873<p> The maximal number of attempts to fork() a child process.  </p>
2874
2875
2876</DD>
2877
2878<DT><b><a name="fork_delay">fork_delay</a>
2879(default: 1s)</b></DT><DD>
2880
2881<p> The delay between attempts to fork() a child process.  </p>
2882
2883<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
2884(weeks).  The default time unit is s (seconds).  </p>
2885
2886
2887</DD>
2888
2889<DT><b><a name="forward_expansion_filter">forward_expansion_filter</a>
2890(default: see "postconf -d" output)</b></DT><DD>
2891
2892<p>
2893Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in
2894$name expansions of $<a href="postconf.5.html#forward_path">forward_path</a>.  Characters outside the
2895allowed set are replaced by underscores.
2896</p>
2897
2898
2899</DD>
2900
2901<DT><b><a name="forward_path">forward_path</a>
2902(default: see "postconf -d" output)</b></DT><DD>
2903
2904<p> The <a href="local.8.html">local(8)</a> delivery agent search list for finding a .forward
2905file with user-specified delivery methods. The first file that is
2906found is used.  </p>
2907
2908<p> The following $name expansions are done on <a href="postconf.5.html#forward_path">forward_path</a> before
2909the search actually happens. The result of $name expansion is
2910filtered with the character set that is specified with the
2911<a href="postconf.5.html#forward_expansion_filter">forward_expansion_filter</a> parameter.  </p>
2912
2913<dl>
2914
2915<dt><b>$user</b></dt>
2916
2917<dd>The recipient's username. </dd>
2918
2919<dt><b>$shell</b></dt>
2920
2921<dd>The recipient's login shell pathname. </dd>
2922
2923<dt><b>$home</b></dt>
2924
2925<dd>The recipient's home directory. </dd>
2926
2927<dt><b>$recipient</b></dt>
2928
2929<dd>The full recipient address. </dd>
2930
2931<dt><b>$extension</b></dt>
2932
2933<dd>The optional recipient address extension. </dd>
2934
2935<dt><b>$domain</b></dt>
2936
2937<dd>The recipient domain. </dd>
2938
2939<dt><b>$local</b></dt>
2940
2941<dd>The entire recipient localpart. </dd>
2942
2943<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
2944
2945<dd>The system-wide recipient address extension delimiter. </dd>
2946
2947<dt><b>${name?value}</b></dt>
2948
2949<dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd>
2950
2951<dt><b>${name:value}</b></dt>
2952
2953<dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd>
2954
2955</dl>
2956
2957<p>
2958Instead of $name you can also specify ${name} or $(name).
2959</p>
2960
2961<p>
2962Examples:
2963</p>
2964
2965<pre>
2966<a href="postconf.5.html#forward_path">forward_path</a> = /var/forward/$user
2967<a href="postconf.5.html#forward_path">forward_path</a> =
2968    /var/forward/$user/.forward$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>$extension,
2969    /var/forward/$user/.forward
2970</pre>
2971
2972
2973</DD>
2974
2975<DT><b><a name="frozen_delivered_to">frozen_delivered_to</a>
2976(default: yes)</b></DT><DD>
2977
2978<p> Update the <a href="local.8.html">local(8)</a> delivery agent's idea of the Delivered-To:
2979address (see <a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a>) only once, at the start of
2980a delivery attempt; do not update the Delivered-To: address while
2981expanding aliases or .forward files. </p>
2982
2983<p> This feature is available in Postfix 2.3 and later. With older
2984Postfix releases, the behavior is as if this parameter is set to
2985"no". The old setting can be expensive with deeply nested aliases
2986or .forward files. When an alias or .forward file changes the
2987Delivered-To: address, it ties up one queue file and one cleanup
2988process instance while mail is being forwarded.  </p>
2989
2990
2991</DD>
2992
2993<DT><b><a name="hash_queue_depth">hash_queue_depth</a>
2994(default: 1)</b></DT><DD>
2995
2996<p>
2997The number of subdirectory levels for queue directories listed with
2998the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> parameter.
2999</p>
3000
3001<p>
3002After changing the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> or <a href="postconf.5.html#hash_queue_depth">hash_queue_depth</a> parameter,
3003execute the command "<b>postfix reload</b>".
3004</p>
3005
3006
3007</DD>
3008
3009<DT><b><a name="hash_queue_names">hash_queue_names</a>
3010(default: deferred, defer)</b></DT><DD>
3011
3012<p>
3013The names of queue directories that are split across multiple
3014subdirectory levels.
3015</p>
3016
3017<p> Before Postfix version 2.2, the default list of hashed queues
3018was significantly larger. Claims about improvements in file system
3019technology suggest that hashing of the <a href="QSHAPE_README.html#incoming_queue">incoming</a> and <a href="QSHAPE_README.html#active_queue">active queues</a>
3020is no longer needed. Fewer hashed directories speed up the time
3021needed to restart Postfix. </p>
3022
3023<p>
3024After changing the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> or <a href="postconf.5.html#hash_queue_depth">hash_queue_depth</a> parameter,
3025execute the command "<b>postfix reload</b>".
3026</p>
3027
3028
3029</DD>
3030
3031<DT><b><a name="header_address_token_limit">header_address_token_limit</a>
3032(default: 10240)</b></DT><DD>
3033
3034<p>
3035The maximal number of address tokens are allowed in an address
3036message header. Information that exceeds the limit is discarded.
3037The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a> server.
3038</p>
3039
3040
3041</DD>
3042
3043<DT><b><a name="header_checks">header_checks</a>
3044(default: empty)</b></DT><DD>
3045
3046<p>
3047Optional lookup tables for content inspection of primary non-MIME
3048message headers, as specified in the <a href="header_checks.5.html">header_checks(5)</a> manual page.
3049</p>
3050
3051
3052</DD>
3053
3054<DT><b><a name="header_size_limit">header_size_limit</a>
3055(default: 102400)</b></DT><DD>
3056
3057<p>
3058The maximal amount of memory in bytes for storing a message header.
3059If a header is larger, the excess is discarded.  The limit is
3060enforced by the <a href="cleanup.8.html">cleanup(8)</a> server.
3061</p>
3062
3063
3064</DD>
3065
3066<DT><b><a name="helpful_warnings">helpful_warnings</a>
3067(default: yes)</b></DT><DD>
3068
3069<p>
3070Log warnings about problematic configuration settings, and provide
3071helpful suggestions.
3072</p>
3073
3074<p>
3075This feature is available in Postfix 2.0 and later.
3076</p>
3077
3078
3079</DD>
3080
3081<DT><b><a name="home_mailbox">home_mailbox</a>
3082(default: empty)</b></DT><DD>
3083
3084<p>
3085Optional pathname of a mailbox file relative to a <a href="local.8.html">local(8)</a> user's
3086home directory.
3087</p>
3088
3089<p>
3090Specify a pathname ending in "/" for qmail-style delivery.
3091</p>
3092
3093<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
3094is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
3095<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
3096<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
3097
3098<p>
3099Examples:
3100</p>
3101
3102<pre>
3103<a href="postconf.5.html#home_mailbox">home_mailbox</a> = Mailbox
3104<a href="postconf.5.html#home_mailbox">home_mailbox</a> = Maildir/
3105</pre>
3106
3107
3108</DD>
3109
3110<DT><b><a name="hopcount_limit">hopcount_limit</a>
3111(default: 50)</b></DT><DD>
3112
3113<p>
3114The maximal number of Received:  message headers that is allowed
3115in the primary message headers. A message that exceeds the limit
3116is bounced, in order to stop a mailer loop.
3117</p>
3118
3119
3120</DD>
3121
3122<DT><b><a name="html_directory">html_directory</a>
3123(default: see "postconf -d" output)</b></DT><DD>
3124
3125<p>
3126The location of Postfix HTML files that describe how to build,
3127configure or operate a specific Postfix subsystem or feature.
3128</p>
3129
3130
3131</DD>
3132
3133<DT><b><a name="ignore_mx_lookup_error">ignore_mx_lookup_error</a>
3134(default: no)</b></DT><DD>
3135
3136<p> Ignore DNS MX lookups that produce no response.  By default,
3137the Postfix SMTP client defers delivery and tries again after some
3138delay.  This behavior is required by the SMTP standard.  </p>
3139
3140<p>
3141Specify "<a href="postconf.5.html#ignore_mx_lookup_error">ignore_mx_lookup_error</a> = yes" to force a DNS A record
3142lookup instead. This violates the SMTP standard and can result in
3143mis-delivery of mail.
3144</p>
3145
3146
3147</DD>
3148
3149<DT><b><a name="import_environment">import_environment</a>
3150(default: see "postconf -d" output)</b></DT><DD>
3151
3152<p>
3153The list of environment parameters that a Postfix process will
3154import from a non-Postfix parent process. Examples of relevant
3155parameters:
3156</p>
3157
3158<dl>
3159
3160<dt><b>TZ</b></dt>
3161
3162<dd>Needed for sane time keeping on most System-V-ish systems. </dd>
3163
3164<dt><b>DISPLAY</b></dt>
3165
3166<dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd>
3167
3168<dt><b>XAUTHORITY</b></dt>
3169
3170<dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd>
3171
3172<dt><b>MAIL_CONFIG</b></dt>
3173
3174<dd>Needed to make "<b>postfix -c</b>" work. </dd>
3175
3176</dl>
3177
3178<p> Specify a list of names and/or name=value pairs, separated by
3179whitespace or comma. The name=value form is supported with
3180Postfix version 2.1 and later.  </p>
3181
3182
3183</DD>
3184
3185<DT><b><a name="in_flow_delay">in_flow_delay</a>
3186(default: 1s)</b></DT><DD>
3187
3188<p> Time to pause before accepting a new message, when the message
3189arrival rate exceeds the message delivery rate. This feature is
3190turned on by default (it's disabled on SCO UNIX due to an SCO bug).
3191</p>
3192
3193<p>
3194With the default 100 SMTP server process limit, "<a href="postconf.5.html#in_flow_delay">in_flow_delay</a>
3195= 1s" limits the mail inflow to 100 messages per second above the
3196number of messages delivered per second.
3197</p>
3198
3199<p>
3200Specify 0 to disable the feature. Valid delays are 0..10.
3201</p>
3202
3203
3204</DD>
3205
3206<DT><b><a name="inet_interfaces">inet_interfaces</a>
3207(default: all)</b></DT><DD>
3208
3209<p> The network interface addresses that this mail system receives
3210mail on. Specify "all" to receive mail on all network
3211interfaces (default), and "loopback-only" to receive mail
3212on loopback network interfaces only (Postfix version 2.2 and later).  The
3213parameter also controls delivery of mail to <tt>user@[ip.address]</tt>.
3214</p>
3215
3216<p>
3217Note 1: you need to stop and start Postfix when this parameter changes.
3218</p>
3219
3220<p> Note 2: address information may be enclosed inside <tt>[]</tt>,
3221but this form is not required here. </p>
3222
3223<p> When <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies just one IPv4 and/or IPv6 address
3224that is not a loopback address, the Postfix SMTP client will use
3225this address as the IP source address for outbound mail. Support
3226for IPv6 is available in Postfix version 2.2 and later. </p>
3227
3228<p>
3229On a multi-homed firewall with separate Postfix instances listening on the
3230"inside" and "outside" interfaces, this can prevent each instance from
3231being able to reach servers on the "other side" of the firewall. Setting
3232<a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> to 0.0.0.0 avoids the potential problem for
3233IPv4, and setting <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> to :: solves the problem
3234for IPv6. </p>
3235
3236<p>
3237A better solution for multi-homed firewalls is to leave <a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
3238at the default value and instead use explicit IP addresses in
3239the <a href="master.5.html">master.cf</a> SMTP server definitions.  This preserves the Postfix
3240SMTP client's
3241loop detection, by ensuring that each side of the firewall knows that the
3242other IP address is still the same host. Setting $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> to a
3243single IPv4 and/or IPV6 address is primarily useful with virtual
3244hosting of domains on
3245secondary IP addresses, when each IP address serves a different domain
3246(and has a different $<a href="postconf.5.html#myhostname">myhostname</a> setting). </p>
3247
3248<p>
3249See also the <a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> parameter, for network addresses that
3250are forwarded to Postfix by way of a proxy or address translator.
3251</p>
3252
3253<p>
3254Examples:
3255</p>
3256
3257<pre>
3258<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = all (DEFAULT)
3259<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback-only (Postfix version 2.2 and later)
3260<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1
3261<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1, [::1] (Postfix version 2.2 and later)
3262<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 192.168.1.2, 127.0.0.1
3263</pre>
3264
3265
3266</DD>
3267
3268<DT><b><a name="inet_protocols">inet_protocols</a>
3269(default: ipv4)</b></DT><DD>
3270
3271<p> The Internet protocols Postfix will attempt to use when making
3272or accepting connections. Specify one or more of "ipv4"
3273or "ipv6", separated by whitespace or commas. The form
3274"all" is equivalent to "ipv4, ipv6" or "ipv4", depending
3275on whether the operating system implements IPv6. </p>
3276
3277<p> This feature is available in Postfix 2.2 and later. </p>
3278
3279<p> Note: you MUST stop and start Postfix after changing this
3280parameter. </p>
3281
3282<p> On systems that pre-date IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>), an
3283IPv6 server will also accept IPv4 connections, even when IPv4 is
3284turned off with the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter.  On systems with
3285IPV6_V6ONLY support, Postfix will use separate server sockets for
3286IPv6 and IPv4, and each will accept only connections for the
3287corresponding protocol.  </p>
3288
3289<p> When IPv4 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter,
3290Postfix will to DNS type A record lookups, and will convert
3291IPv4-in-IPv6 client IP addresses (::ffff:1.2.3.4) to their original
3292IPv4 form (1.2.3.4).  The latter is needed on hosts that pre-date
3293IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>). </p>
3294
3295<p> When IPv6 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter,
3296Postfix will do DNS type AAAA record lookups. </p>
3297
3298<p> When both IPv4 and IPv6 support are enabled, the Postfix SMTP
3299client will attempt to connect via IPv6 before attempting to use
3300IPv4.  </p>
3301
3302<p>
3303Examples:
3304</p>
3305
3306<pre>
3307<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4 (DEFAULT)
3308<a href="postconf.5.html#inet_protocols">inet_protocols</a> = all
3309<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv6
3310<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4, ipv6
3311</pre>
3312
3313
3314</DD>
3315
3316<DT><b><a name="initial_destination_concurrency">initial_destination_concurrency</a>
3317(default: 5)</b></DT><DD>
3318
3319<p>
3320The initial per-destination concurrency level for parallel delivery
3321to the same destination.
3322With per-destination recipient limit &gt; 1, a destination is a domain,
3323otherwise it is a recipient.
3324</p>
3325
3326<p> Use <a href="postconf.5.html#transport_initial_destination_concurrency"><i>transport</i>_initial_destination_concurrency</a> to specify
3327a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
3328name of the message delivery transport (Postfix 2.5 and later). </p>
3329
3330<p>
3331Warning: with concurrency of 1, one bad message can be enough to
3332block all mail to a site.
3333</p>
3334
3335
3336</DD>
3337
3338<DT><b><a name="internal_mail_filter_classes">internal_mail_filter_classes</a>
3339(default: empty)</b></DT><DD>
3340
3341<p> What categories of Postfix-generated mail are subject to
3342before-queue content inspection by <a href="postconf.5.html#non_smtpd_milters">non_smtpd_milters</a>, <a href="postconf.5.html#header_checks">header_checks</a>
3343and <a href="postconf.5.html#body_checks">body_checks</a>.  Specify zero or more of the following, separated
3344by whitespace or comma.  </p>
3345
3346<dl>
3347
3348<dt><b>bounce</b></dt> <dd> Inspect the content of delivery
3349status notifications. </dd>
3350
3351<dt><b>notify</b></dt> <dd> Inspect the content of postmaster
3352notifications by the <a href="smtp.8.html">smtp(8)</a> and <a href="smtpd.8.html">smtpd(8)</a> processes. </dd>
3353
3354</dl>
3355
3356<p> NOTE: It's generally not safe to enable content inspection of
3357Postfix-generated email messages. The user is warned. </p>
3358
3359<p> This feature is available in Postfix 2.3 and later. </p>
3360
3361
3362</DD>
3363
3364<DT><b><a name="invalid_hostname_reject_code">invalid_hostname_reject_code</a>
3365(default: 501)</b></DT><DD>
3366
3367<p>
3368The numerical Postfix SMTP server response code when the client
3369HELO or EHLO command parameter is rejected by the <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a>
3370restriction.
3371</p>
3372
3373<p>
3374Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
3375</p>
3376
3377
3378</DD>
3379
3380<DT><b><a name="ipc_idle">ipc_idle</a>
3381(default: version dependent)</b></DT><DD>
3382
3383<p>
3384The time after which a client closes an idle internal communication
3385channel.  The purpose is to allow servers to terminate voluntarily
3386after they become idle. This is used, for example, by the address
3387resolving and rewriting clients.
3388</p>
3389
3390<p> With Postfix 2.4 the default value was reduced from 100s to 5s. </p>
3391
3392<p>
3393Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3394The default time unit is s (seconds).
3395</p>
3396
3397
3398</DD>
3399
3400<DT><b><a name="ipc_timeout">ipc_timeout</a>
3401(default: 3600s)</b></DT><DD>
3402
3403<p>
3404The time limit for sending or receiving information over an internal
3405communication channel.  The purpose is to break out of deadlock
3406situations. If the time limit is exceeded the software aborts with a
3407fatal error.
3408</p>
3409
3410<p>
3411Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3412The default time unit is s (seconds).
3413</p>
3414
3415
3416</DD>
3417
3418<DT><b><a name="ipc_ttl">ipc_ttl</a>
3419(default: 1000s)</b></DT><DD>
3420
3421<p>
3422The time after which a client closes an active internal communication
3423channel.  The purpose is to allow servers to terminate voluntarily
3424after reaching their client limit.  This is used, for example, by
3425the address resolving and rewriting clients.
3426</p>
3427
3428<p>
3429Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3430The default time unit is s (seconds).
3431</p>
3432
3433<p>
3434This feature is available in Postfix 2.1 and later.
3435</p>
3436
3437
3438</DD>
3439
3440<DT><b><a name="line_length_limit">line_length_limit</a>
3441(default: 2048)</b></DT><DD>
3442
3443<p> Upon input, long lines are chopped up into pieces of at most
3444this length; upon delivery, long lines are reconstructed.  </p>
3445
3446
3447</DD>
3448
3449<DT><b><a name="lmtp_assume_final">lmtp_assume_final</a>
3450(default: no)</b></DT><DD>
3451
3452<p> When an LMTP server announces no DSN support, assume that the
3453server performs final delivery, and send "delivered" delivery status
3454notifications instead of "relayed". The default setting is backwards
3455compatible to avoid the infinetisimal possibility of breaking
3456existing LMTP-based content filters. </p>
3457
3458
3459</DD>
3460
3461<DT><b><a name="lmtp_bind_address">lmtp_bind_address</a>
3462(default: empty)</b></DT><DD>
3463
3464<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> configuration
3465parameter.  See there for details. </p>
3466
3467<p> This feature is available in Postfix 2.3 and later. </p>
3468
3469
3470</DD>
3471
3472<DT><b><a name="lmtp_bind_address6">lmtp_bind_address6</a>
3473(default: empty)</b></DT><DD>
3474
3475<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> configuration
3476parameter.  See there for details. </p>
3477
3478<p> This feature is available in Postfix 2.3 and later. </p>
3479
3480
3481</DD>
3482
3483<DT><b><a name="lmtp_cache_connection">lmtp_cache_connection</a>
3484(default: yes)</b></DT><DD>
3485
3486<p>
3487Keep Postfix LMTP client connections open for up to $<a href="postconf.5.html#max_idle">max_idle</a>
3488seconds. When the LMTP client receives a request for the same
3489connection the connection is reused.
3490</p>
3491
3492<p> This parameter is available in Postfix version 2.2 and earlier.
3493With Postfix version 2.3 and later, see <a href="postconf.5.html#lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a>,
3494<a href="postconf.5.html#lmtp_connection_cache_destinations">lmtp_connection_cache_destinations</a>, or <a href="postconf.5.html#lmtp_connection_reuse_time_limit">lmtp_connection_reuse_time_limit</a>.
3495</p>
3496
3497<p>
3498The effectiveness of cached connections will be determined by the
3499number of LMTP servers in use, and the concurrency limit specified
3500for the LMTP client. Cached connections are closed under any of
3501the following conditions:
3502</p>
3503
3504<ul>
3505
3506<li> The LMTP client idle time limit is reached.  This limit is
3507specified with the Postfix <a href="postconf.5.html#max_idle">max_idle</a> configuration parameter.
3508
3509<li> A delivery request specifies a different destination than the
3510one currently cached.
3511
3512<li> The per-process limit on the number of delivery requests is
3513reached.  This limit is specified with the Postfix <a href="postconf.5.html#max_use">max_use</a>
3514configuration parameter.
3515
3516<li> Upon the onset of another delivery request, the LMTP server
3517associated with the current session does not respond to the RSET
3518command.
3519
3520</ul>
3521
3522<p>
3523Most of these limitations will be removed after Postfix implements
3524a connection cache that is shared among multiple LMTP client
3525programs.
3526</p>
3527
3528
3529</DD>
3530
3531<DT><b><a name="lmtp_cname_overrides_servername">lmtp_cname_overrides_servername</a>
3532(default: yes)</b></DT><DD>
3533
3534<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_cname_overrides_servername">smtp_cname_overrides_servername</a>
3535configuration parameter.  See there for details. </p>
3536
3537<p> This feature is available in Postfix 2.3 and later. </p>
3538
3539
3540</DD>
3541
3542<DT><b><a name="lmtp_connect_timeout">lmtp_connect_timeout</a>
3543(default: 0s)</b></DT><DD>
3544
3545<p> The LMTP client time limit for completing a TCP connection, or
3546zero (use the operating system built-in time limit).  When no
3547connection can be made within the deadline, the LMTP client tries
3548the next address on the mail exchanger list.  </p>
3549
3550<p>
3551Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3552The default time unit is s (seconds).
3553</p>
3554
3555<p>
3556Example:
3557</p>
3558
3559<pre>
3560<a href="postconf.5.html#lmtp_connect_timeout">lmtp_connect_timeout</a> = 30s
3561</pre>
3562
3563
3564</DD>
3565
3566<DT><b><a name="lmtp_connection_cache_destinations">lmtp_connection_cache_destinations</a>
3567(default: empty)</b></DT><DD>
3568
3569<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_destinations">smtp_connection_cache_destinations</a>
3570configuration parameter.  See there for details. </p>
3571
3572<p> This feature is available in Postfix 2.3 and later. </p>
3573
3574
3575</DD>
3576
3577<DT><b><a name="lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a>
3578(default: yes)</b></DT><DD>
3579
3580<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a>
3581configuration parameter.  See there for details. </p>
3582
3583<p> This feature is available in Postfix 2.3 and later. </p>
3584
3585
3586</DD>
3587
3588<DT><b><a name="lmtp_connection_cache_time_limit">lmtp_connection_cache_time_limit</a>
3589(default: 2s)</b></DT><DD>
3590
3591<p> The LMTP-specific version of the
3592<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> configuration parameter.
3593See there for details. </p>
3594
3595<p> This feature is available in Postfix 2.3 and later. </p>
3596
3597
3598</DD>
3599
3600<DT><b><a name="lmtp_connection_reuse_time_limit">lmtp_connection_reuse_time_limit</a>
3601(default: 300s)</b></DT><DD>
3602
3603<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>
3604configuration parameter.  See there for details. </p>
3605
3606<p> This feature is available in Postfix 2.3 and later. </p>
3607
3608
3609</DD>
3610
3611<DT><b><a name="lmtp_data_done_timeout">lmtp_data_done_timeout</a>
3612(default: 600s)</b></DT><DD>
3613
3614<p> The LMTP client time limit for sending the LMTP ".", and for
3615receiving the server response.  When no response is received within
3616the deadline, a warning is logged that the mail may be delivered
3617multiple times.  </p>
3618
3619<p>
3620Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3621The default time unit is s (seconds).
3622</p>
3623
3624
3625</DD>
3626
3627<DT><b><a name="lmtp_data_init_timeout">lmtp_data_init_timeout</a>
3628(default: 120s)</b></DT><DD>
3629
3630<p>
3631The LMTP client time limit for sending the LMTP DATA command, and
3632for receiving the server response.
3633</p>
3634
3635<p>
3636Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3637The default time unit is s (seconds).
3638</p>
3639
3640
3641</DD>
3642
3643<DT><b><a name="lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a>
3644(default: 180s)</b></DT><DD>
3645
3646<p>
3647The LMTP client time limit for sending the LMTP message content.
3648When the connection stalls for more than $<a href="postconf.5.html#lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a>
3649the LMTP client terminates the transfer.
3650</p>
3651
3652<p>
3653Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3654The default time unit is s (seconds).
3655</p>
3656
3657
3658</DD>
3659
3660<DT><b><a name="lmtp_defer_if_no_mx_address_found">lmtp_defer_if_no_mx_address_found</a>
3661(default: no)</b></DT><DD>
3662
3663<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_defer_if_no_mx_address_found">smtp_defer_if_no_mx_address_found</a>
3664configuration parameter.  See there for details. </p>
3665
3666<p> This feature is available in Postfix 2.3 and later. </p>
3667
3668
3669</DD>
3670
3671<DT><b><a name="lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a>
3672(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
3673
3674<p> The maximal number of parallel deliveries to the same destination
3675via the lmtp message delivery transport. This limit is enforced by
3676the queue manager. The message delivery transport name is the first
3677field in the entry in the <a href="master.5.html">master.cf</a> file.  </p>
3678
3679
3680</DD>
3681
3682<DT><b><a name="lmtp_destination_recipient_limit">lmtp_destination_recipient_limit</a>
3683(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
3684
3685<p> The maximal number of recipients per message for the lmtp
3686message delivery transport. This limit is enforced by the queue
3687manager. The message delivery transport name is the first field in
3688the entry in the <a href="master.5.html">master.cf</a> file.  </p>
3689
3690<p> Setting this parameter to a value of 1 changes the meaning of
3691<a href="postconf.5.html#lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a> from concurrency per domain into
3692concurrency per recipient.  </p>
3693
3694
3695</DD>
3696
3697<DT><b><a name="lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a>
3698(default: empty)</b></DT><DD>
3699
3700<p> Lookup tables, indexed by the remote LMTP server address, with
3701case insensitive lists of LHLO keywords (pipelining, starttls,
3702auth, etc.) that the LMTP client will ignore in the LHLO response
3703from a remote LMTP server. See <a href="postconf.5.html#lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a> for
3704details. The table is not indexed by hostname for consistency with
3705<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p>
3706
3707<p> This feature is available in Postfix 2.3 and later. </p>
3708
3709
3710</DD>
3711
3712<DT><b><a name="lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a>
3713(default: empty)</b></DT><DD>
3714
3715<p> A case insensitive list of LHLO keywords (pipelining, starttls,
3716auth, etc.) that the LMTP client will ignore in the LHLO response
3717from a remote LMTP server. </p>
3718
3719<p> This feature is available in Postfix 2.3 and later. </p>
3720
3721<p> Notes: </p>
3722
3723<ul>
3724
3725<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
3726this action from being logged. </p>
3727
3728<li> <p> Use the <a href="postconf.5.html#lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a> feature to
3729discard LHLO keywords selectively. </p>
3730
3731</ul>
3732
3733
3734</DD>
3735
3736<DT><b><a name="lmtp_enforce_tls">lmtp_enforce_tls</a>
3737(default: no)</b></DT><DD>
3738
3739<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> configuration
3740parameter.  See there for details. </p>
3741
3742<p> This feature is available in Postfix 2.3 and later. </p>
3743
3744
3745</DD>
3746
3747<DT><b><a name="lmtp_generic_maps">lmtp_generic_maps</a>
3748(default: empty)</b></DT><DD>
3749
3750<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_generic_maps">smtp_generic_maps</a> configuration
3751parameter.  See there for details. </p>
3752
3753<p> This feature is available in Postfix 2.3 and later. </p>
3754
3755
3756</DD>
3757
3758<DT><b><a name="lmtp_host_lookup">lmtp_host_lookup</a>
3759(default: dns)</b></DT><DD>
3760
3761<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a> configuration
3762parameter.  See there for details. </p>
3763
3764<p> This feature is available in Postfix 2.3 and later. </p>
3765
3766
3767</DD>
3768
3769<DT><b><a name="lmtp_lhlo_name">lmtp_lhlo_name</a>
3770(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
3771
3772<p>
3773The hostname to send in the LMTP LHLO command.
3774</p>
3775
3776<p>
3777The default value is the machine hostname.  Specify a hostname or
3778[ip.add.re.ss].
3779</p>
3780
3781<p>
3782This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all LMTP
3783clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific
3784client, for example:
3785</p>
3786
3787<blockquote>
3788<pre>
3789/etc/postfix/<a href="master.5.html">master.cf</a>:
3790    mylmtp ... lmtp -o <a href="postconf.5.html#lmtp_lhlo_name">lmtp_lhlo_name</a>=foo.bar.com
3791</pre>
3792</blockquote>
3793
3794<p>
3795This feature is available in Postfix 2.3 and later.
3796</p>
3797
3798
3799</DD>
3800
3801<DT><b><a name="lmtp_lhlo_timeout">lmtp_lhlo_timeout</a>
3802(default: 300s)</b></DT><DD>
3803
3804<p> The LMTP client time limit for sending the LHLO command, and
3805for receiving the initial server response. </p>
3806
3807<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
3808(weeks).  The default time unit is s (seconds).  </p>
3809
3810
3811</DD>
3812
3813<DT><b><a name="lmtp_line_length_limit">lmtp_line_length_limit</a>
3814(default: 990)</b></DT><DD>
3815
3816<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_line_length_limit">smtp_line_length_limit</a>
3817configuration parameter.  See there for details. </p>
3818
3819<p> This feature is available in Postfix 2.3 and later. </p>
3820
3821
3822</DD>
3823
3824<DT><b><a name="lmtp_mail_timeout">lmtp_mail_timeout</a>
3825(default: 300s)</b></DT><DD>
3826
3827<p>
3828The LMTP client time limit for sending the MAIL FROM command, and
3829for receiving the server response.
3830</p>
3831
3832<p>
3833Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3834The default time unit is s (seconds).
3835</p>
3836
3837
3838</DD>
3839
3840<DT><b><a name="lmtp_mx_address_limit">lmtp_mx_address_limit</a>
3841(default: 5)</b></DT><DD>
3842
3843<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_address_limit">smtp_mx_address_limit</a> configuration
3844parameter.  See there for details. </p>
3845
3846<p> This feature is available in Postfix 2.3 and later. </p>
3847
3848
3849</DD>
3850
3851<DT><b><a name="lmtp_mx_session_limit">lmtp_mx_session_limit</a>
3852(default: 2)</b></DT><DD>
3853
3854<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_session_limit">smtp_mx_session_limit</a> configuration
3855parameter.  See there for details. </p>
3856
3857<p> This feature is available in Postfix 2.3 and later. </p>
3858
3859
3860</DD>
3861
3862<DT><b><a name="lmtp_pix_workaround_delay_time">lmtp_pix_workaround_delay_time</a>
3863(default: 10s)</b></DT><DD>
3864
3865<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a>
3866configuration parameter.  See there for details. </p>
3867
3868<p> This feature is available in Postfix 2.3 and later. </p>
3869
3870
3871</DD>
3872
3873<DT><b><a name="lmtp_pix_workaround_maps">lmtp_pix_workaround_maps</a>
3874(default: empty)</b></DT><DD>
3875
3876<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a>
3877configuration parameter.  See there for details. </p>
3878
3879<p> This feature is available in Postfix 2.4 and later. </p>
3880
3881
3882</DD>
3883
3884<DT><b><a name="lmtp_pix_workaround_threshold_time">lmtp_pix_workaround_threshold_time</a>
3885(default: 500s)</b></DT><DD>
3886
3887<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a>
3888configuration parameter.  See there for details. </p>
3889
3890<p> This feature is available in Postfix 2.3 and later. </p>
3891
3892
3893</DD>
3894
3895<DT><b><a name="lmtp_pix_workarounds">lmtp_pix_workarounds</a>
3896(default: empty)</b></DT><DD>
3897
3898<p> The LMTP-specific version of the smtp_pix_workaround
3899configuration parameter.  See there for details. </p>
3900
3901<p> This feature is available in Postfix 2.4 and later. </p>
3902
3903
3904</DD>
3905
3906<DT><b><a name="lmtp_quit_timeout">lmtp_quit_timeout</a>
3907(default: 300s)</b></DT><DD>
3908
3909<p>
3910The LMTP client time limit for sending the QUIT command, and for
3911receiving the server response.
3912</p>
3913
3914<p>
3915Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3916The default time unit is s (seconds).
3917</p>
3918
3919
3920</DD>
3921
3922<DT><b><a name="lmtp_quote_rfc821_envelope">lmtp_quote_rfc821_envelope</a>
3923(default: yes)</b></DT><DD>
3924
3925<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>
3926configuration parameter.  See there for details. </p>
3927
3928<p> This feature is available in Postfix 2.3 and later. </p>
3929
3930
3931</DD>
3932
3933<DT><b><a name="lmtp_randomize_addresses">lmtp_randomize_addresses</a>
3934(default: yes)</b></DT><DD>
3935
3936<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_randomize_addresses">smtp_randomize_addresses</a>
3937configuration parameter.  See there for details. </p>
3938
3939<p> This feature is available in Postfix 2.3 and later. </p>
3940
3941
3942</DD>
3943
3944<DT><b><a name="lmtp_rcpt_timeout">lmtp_rcpt_timeout</a>
3945(default: 300s)</b></DT><DD>
3946
3947<p>
3948The LMTP client time limit for sending the RCPT TO command, and
3949for receiving the server response.
3950</p>
3951
3952<p>
3953Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3954The default time unit is s (seconds).
3955</p>
3956
3957
3958</DD>
3959
3960<DT><b><a name="lmtp_rset_timeout">lmtp_rset_timeout</a>
3961(default: 20s)</b></DT><DD>
3962
3963<p> The LMTP client time limit for sending the RSET command, and
3964for receiving the server response. The LMTP client sends RSET in
3965order to finish a recipient address probe, or to verify that a
3966cached connection is still alive.  </p>
3967
3968<p>
3969Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3970The default time unit is s (seconds).
3971</p>
3972
3973
3974</DD>
3975
3976<DT><b><a name="lmtp_sasl_auth_cache_name">lmtp_sasl_auth_cache_name</a>
3977(default: empty)</b></DT><DD>
3978
3979<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
3980configuration parameter.  See there for details. </p>
3981
3982<p> This feature is available in Postfix 2.5 and later. </p>
3983
3984
3985</DD>
3986
3987<DT><b><a name="lmtp_sasl_auth_cache_time">lmtp_sasl_auth_cache_time</a>
3988(default: 90d)</b></DT><DD>
3989
3990<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>
3991configuration parameter.  See there for details. </p>
3992
3993<p> This feature is available in Postfix 2.5 and later. </p>
3994
3995
3996</DD>
3997
3998<DT><b><a name="lmtp_sasl_auth_enable">lmtp_sasl_auth_enable</a>
3999(default: no)</b></DT><DD>
4000
4001<p>
4002Enable SASL authentication in the Postfix LMTP client.
4003</p>
4004
4005
4006</DD>
4007
4008<DT><b><a name="lmtp_sasl_auth_soft_bounce">lmtp_sasl_auth_soft_bounce</a>
4009(default: yes)</b></DT><DD>
4010
4011<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a>
4012configuration parameter.  See there for details. </p>
4013
4014<p> This feature is available in Postfix 2.5 and later. </p>
4015
4016
4017</DD>
4018
4019<DT><b><a name="lmtp_sasl_mechanism_filter">lmtp_sasl_mechanism_filter</a>
4020(default: empty)</b></DT><DD>
4021
4022<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a>
4023configuration parameter.  See there for details. </p>
4024
4025<p> This feature is available in Postfix 2.3 and later. </p>
4026
4027
4028</DD>
4029
4030<DT><b><a name="lmtp_sasl_password_maps">lmtp_sasl_password_maps</a>
4031(default: empty)</b></DT><DD>
4032
4033<p>
4034Optional LMTP client lookup tables with one username:password entry
4035per host or domain.  If a remote host or domain has no username:password
4036entry, then the Postfix LMTP client will not attempt to authenticate
4037to the remote host.
4038</p>
4039
4040
4041</DD>
4042
4043<DT><b><a name="lmtp_sasl_path">lmtp_sasl_path</a>
4044(default: empty)</b></DT><DD>
4045
4046<p> Implementation-specific information that is passed through to
4047the SASL plug-in implementation that is selected with
4048<b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>.  Typically this specifies the name of a
4049configuration file or rendezvous point. </p>
4050
4051<p> This feature is available in Postfix 2.3 and later. </p>
4052
4053
4054</DD>
4055
4056<DT><b><a name="lmtp_sasl_security_options">lmtp_sasl_security_options</a>
4057(default: noplaintext, noanonymous)</b></DT><DD>
4058
4059<p> SASL security options; as of Postfix 2.3 the list of available
4060features depends on the SASL client implementation that is selected
4061with <b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>.  </p>
4062
4063<p> The following security features are defined for the <b>cyrus</b>
4064client SASL implementation: </p>
4065
4066<dl>
4067
4068<dt><b>noplaintext</b></dt>
4069
4070<dd>Disallow authentication methods that use plaintext passwords. </dd>
4071
4072<dt><b>noactive</b></dt>
4073
4074<dd>Disallow authentication methods that are vulnerable to non-dictionary
4075active attacks. </dd>
4076
4077<dt><b>nodictionary</b></dt>
4078
4079<dd>Disallow authentication methods that are vulnerable to passive
4080dictionary attack. </dd>
4081
4082<dt><b>noanonymous</b></dt>
4083
4084<dd>Disallow anonymous logins. </dd>
4085
4086</dl>
4087
4088<p>
4089Example:
4090</p>
4091
4092<pre>
4093<a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a> = noplaintext
4094</pre>
4095
4096
4097</DD>
4098
4099<DT><b><a name="lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a>
4100(default: $<a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a>)</b></DT><DD>
4101
4102<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>
4103configuration parameter.  See there for details. </p>
4104
4105<p> This feature is available in Postfix 2.3 and later. </p>
4106
4107
4108</DD>
4109
4110<DT><b><a name="lmtp_sasl_tls_verified_security_options">lmtp_sasl_tls_verified_security_options</a>
4111(default: $<a href="postconf.5.html#lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a>)</b></DT><DD>
4112
4113<p> The LMTP-specific version of the
4114<a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> configuration parameter.
4115See there for details. </p>
4116
4117<p> This feature is available in Postfix 2.3 and later. </p>
4118
4119
4120</DD>
4121
4122<DT><b><a name="lmtp_sasl_type">lmtp_sasl_type</a>
4123(default: cyrus)</b></DT><DD>
4124
4125<p> The SASL plug-in type that the Postfix LMTP client should use
4126for authentication.  The available types are listed with the
4127"<b>postconf -A</b>" command. </p>
4128
4129<p> This feature is available in Postfix 2.3 and later. </p>
4130
4131
4132</DD>
4133
4134<DT><b><a name="lmtp_send_xforward_command">lmtp_send_xforward_command</a>
4135(default: no)</b></DT><DD>
4136
4137<p>
4138Send an XFORWARD command to the LMTP server when the LMTP LHLO
4139server response announces XFORWARD support.  This allows an <a href="lmtp.8.html">lmtp(8)</a>
4140delivery agent, used for content filter message injection, to
4141forward the name, address, protocol and HELO name of the original
4142client to the content filter and downstream queuing LMTP server.
4143Before you change the value to yes, it is best to make sure that
4144your content filter supports this command.
4145</p>
4146
4147<p>
4148This feature is available in Postfix 2.1 and later.
4149</p>
4150
4151
4152</DD>
4153
4154<DT><b><a name="lmtp_sender_dependent_authentication">lmtp_sender_dependent_authentication</a>
4155(default: no)</b></DT><DD>
4156
4157<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a>
4158configuration parameter.  See there for details. </p>
4159
4160<p> This feature is available in Postfix 2.3 and later. </p>
4161
4162
4163</DD>
4164
4165<DT><b><a name="lmtp_skip_5xx_greeting">lmtp_skip_5xx_greeting</a>
4166(default: yes)</b></DT><DD>
4167
4168<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a>
4169configuration parameter.  See there for details. </p>
4170
4171<p> This feature is available in Postfix 2.3 and later. </p>
4172
4173
4174</DD>
4175
4176<DT><b><a name="lmtp_skip_quit_response">lmtp_skip_quit_response</a>
4177(default: no)</b></DT><DD>
4178
4179<p>
4180Wait for the response to the LMTP QUIT command.
4181</p>
4182
4183
4184</DD>
4185
4186<DT><b><a name="lmtp_starttls_timeout">lmtp_starttls_timeout</a>
4187(default: 300s)</b></DT><DD>
4188
4189<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_starttls_timeout">smtp_starttls_timeout</a> configuration
4190parameter.  See there for details. </p>
4191
4192<p> This feature is available in Postfix 2.3 and later. </p>
4193
4194
4195</DD>
4196
4197<DT><b><a name="lmtp_tcp_port">lmtp_tcp_port</a>
4198(default: 24)</b></DT><DD>
4199
4200<p>
4201The default TCP port that the Postfix LMTP client connects to.
4202</p>
4203
4204
4205</DD>
4206
4207<DT><b><a name="lmtp_tls_CAfile">lmtp_tls_CAfile</a>
4208(default: empty)</b></DT><DD>
4209
4210<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>
4211configuration parameter.  See there for details. </p>
4212
4213<p> This feature is available in Postfix 2.3 and later. </p>
4214
4215
4216</DD>
4217
4218<DT><b><a name="lmtp_tls_CApath">lmtp_tls_CApath</a>
4219(default: empty)</b></DT><DD>
4220
4221<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a>
4222configuration parameter.  See there for details. </p>
4223
4224<p> This feature is available in Postfix 2.3 and later. </p>
4225
4226
4227</DD>
4228
4229<DT><b><a name="lmtp_tls_cert_file">lmtp_tls_cert_file</a>
4230(default: empty)</b></DT><DD>
4231
4232<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>
4233configuration parameter.  See there for details. </p>
4234
4235<p> This feature is available in Postfix 2.3 and later. </p>
4236
4237
4238</DD>
4239
4240<DT><b><a name="lmtp_tls_ciphers">lmtp_tls_ciphers</a>
4241(default: export)</b></DT><DD>
4242
4243<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> configuration
4244parameter. See there for details. </p>
4245
4246<p> This feature is available in Postfix 2.6 and later. </p>
4247
4248
4249</DD>
4250
4251<DT><b><a name="lmtp_tls_dcert_file">lmtp_tls_dcert_file</a>
4252(default: empty)</b></DT><DD>
4253
4254<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>
4255configuration parameter.  See there for details. </p>
4256
4257<p> This feature is available in Postfix 2.3 and later. </p>
4258
4259
4260</DD>
4261
4262<DT><b><a name="lmtp_tls_dkey_file">lmtp_tls_dkey_file</a>
4263(default: $<a href="postconf.5.html#lmtp_tls_dcert_file">lmtp_tls_dcert_file</a>)</b></DT><DD>
4264
4265<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a>
4266configuration parameter.  See there for details. </p>
4267
4268<p> This feature is available in Postfix 2.3 and later. </p>
4269
4270
4271</DD>
4272
4273<DT><b><a name="lmtp_tls_eccert_file">lmtp_tls_eccert_file</a>
4274(default: empty)</b></DT><DD>
4275
4276<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> configuration
4277parameter.  See there for details. </p>
4278
4279<p> This feature is available in Postfix 2.6 and later, when Postfix is
4280compiled and linked with OpenSSL 0.9.9 or later. </p>
4281
4282
4283</DD>
4284
4285<DT><b><a name="lmtp_tls_eckey_file">lmtp_tls_eckey_file</a>
4286(default: empty)</b></DT><DD>
4287
4288<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> configuration
4289parameter.  See there for details. </p>
4290
4291<p> This feature is available in Postfix 2.6 and later, when Postfix is
4292compiled and linked with OpenSSL 0.9.9 or later. </p>
4293
4294
4295</DD>
4296
4297<DT><b><a name="lmtp_tls_enforce_peername">lmtp_tls_enforce_peername</a>
4298(default: yes)</b></DT><DD>
4299
4300<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
4301configuration parameter.  See there for details. </p>
4302
4303<p> This feature is available in Postfix 2.3 and later. </p>
4304
4305
4306</DD>
4307
4308<DT><b><a name="lmtp_tls_exclude_ciphers">lmtp_tls_exclude_ciphers</a>
4309(default: empty)</b></DT><DD>
4310
4311<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
4312configuration parameter.  See there for details. </p>
4313
4314<p> This feature is available in Postfix 2.3 and later. </p>
4315
4316
4317</DD>
4318
4319<DT><b><a name="lmtp_tls_fingerprint_cert_match">lmtp_tls_fingerprint_cert_match</a>
4320(default: empty)</b></DT><DD>
4321
4322<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a>
4323configuration parameter.  See there for details. </p>
4324
4325<p> This feature is available in Postfix 2.5 and later. </p>
4326
4327
4328</DD>
4329
4330<DT><b><a name="lmtp_tls_fingerprint_digest">lmtp_tls_fingerprint_digest</a>
4331(default: md5)</b></DT><DD>
4332
4333<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a>
4334configuration parameter.  See there for details. </p>
4335
4336<p> This feature is available in Postfix 2.5 and later. </p>
4337
4338
4339</DD>
4340
4341<DT><b><a name="lmtp_tls_key_file">lmtp_tls_key_file</a>
4342(default: $<a href="postconf.5.html#lmtp_tls_cert_file">lmtp_tls_cert_file</a>)</b></DT><DD>
4343
4344<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a>
4345configuration parameter.  See there for details. </p>
4346
4347<p> This feature is available in Postfix 2.3 and later. </p>
4348
4349
4350</DD>
4351
4352<DT><b><a name="lmtp_tls_loglevel">lmtp_tls_loglevel</a>
4353(default: 0)</b></DT><DD>
4354
4355<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a>
4356configuration parameter.  See there for details. </p>
4357
4358<p> This feature is available in Postfix 2.3 and later. </p>
4359
4360
4361</DD>
4362
4363<DT><b><a name="lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>
4364(default: empty)</b></DT><DD>
4365
4366<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>
4367configuration parameter.  See there for details. </p>
4368
4369<p> This feature is available in Postfix 2.3 and later. </p>
4370
4371
4372</DD>
4373
4374<DT><b><a name="lmtp_tls_mandatory_exclude_ciphers">lmtp_tls_mandatory_exclude_ciphers</a>
4375(default: empty)</b></DT><DD>
4376
4377<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a>
4378configuration parameter.  See there for details. </p>
4379
4380<p> This feature is available in Postfix 2.3 and later. </p>
4381
4382
4383</DD>
4384
4385<DT><b><a name="lmtp_tls_mandatory_protocols">lmtp_tls_mandatory_protocols</a>
4386(default: SSLv3, TLSv1)</b></DT><DD>
4387
4388<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a>
4389configuration parameter. See there for details. </p>
4390
4391<p> This feature is available in Postfix 2.3 and later. </p>
4392
4393
4394</DD>
4395
4396<DT><b><a name="lmtp_tls_note_starttls_offer">lmtp_tls_note_starttls_offer</a>
4397(default: no)</b></DT><DD>
4398
4399<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a>
4400configuration parameter.  See there for details. </p>
4401
4402<p> This feature is available in Postfix 2.3 and later. </p>
4403
4404
4405</DD>
4406
4407<DT><b><a name="lmtp_tls_per_site">lmtp_tls_per_site</a>
4408(default: empty)</b></DT><DD>
4409
4410<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> configuration
4411parameter.  See there for details. </p>
4412
4413<p> This feature is available in Postfix 2.3 and later. </p>
4414
4415
4416</DD>
4417
4418<DT><b><a name="lmtp_tls_policy_maps">lmtp_tls_policy_maps</a>
4419(default: empty)</b></DT><DD>
4420
4421<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>
4422configuration parameter. See there for details. </p>
4423
4424<p> This feature is available in Postfix 2.3 and later. </p>
4425
4426
4427</DD>
4428
4429<DT><b><a name="lmtp_tls_protocols">lmtp_tls_protocols</a>
4430(default: empty)</b></DT><DD>
4431
4432<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> configuration
4433parameter. See there for details. </p>
4434
4435<p> This feature is available in Postfix 2.6 and later. </p>
4436
4437
4438</DD>
4439
4440<DT><b><a name="lmtp_tls_scert_verifydepth">lmtp_tls_scert_verifydepth</a>
4441(default: 9)</b></DT><DD>
4442
4443<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a>
4444configuration parameter.  See there for details. </p>
4445
4446<p> This feature is available in Postfix 2.3 and later. </p>
4447
4448
4449</DD>
4450
4451<DT><b><a name="lmtp_tls_secure_cert_match">lmtp_tls_secure_cert_match</a>
4452(default: nexthop)</b></DT><DD>
4453
4454<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a>
4455configuration parameter. See there for details. </p>
4456
4457<p> This feature is available in Postfix 2.3 and later. </p>
4458
4459
4460</DD>
4461
4462<DT><b><a name="lmtp_tls_security_level">lmtp_tls_security_level</a>
4463(default: empty)</b></DT><DD>
4464
4465<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> configuration
4466parameter.  See there for details. </p>
4467
4468<p> This feature is available in Postfix 2.3 and later. </p>
4469
4470
4471</DD>
4472
4473<DT><b><a name="lmtp_tls_session_cache_database">lmtp_tls_session_cache_database</a>
4474(default: empty)</b></DT><DD>
4475
4476<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
4477configuration parameter. See there for details. </p>
4478
4479<p> This feature is available in Postfix 2.3 and later. </p>
4480
4481
4482</DD>
4483
4484<DT><b><a name="lmtp_tls_session_cache_timeout">lmtp_tls_session_cache_timeout</a>
4485(default: 3600s)</b></DT><DD>
4486
4487<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a>
4488configuration parameter.  See there for details. </p>
4489
4490<p> This feature is available in Postfix 2.3 and later. </p>
4491
4492
4493</DD>
4494
4495<DT><b><a name="lmtp_tls_verify_cert_match">lmtp_tls_verify_cert_match</a>
4496(default: hostname)</b></DT><DD>
4497
4498<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
4499configuration parameter. See there for details. </p>
4500
4501<p> This feature is available in Postfix 2.3 and later. </p>
4502
4503
4504</DD>
4505
4506<DT><b><a name="lmtp_use_tls">lmtp_use_tls</a>
4507(default: no)</b></DT><DD>
4508
4509<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a> configuration
4510parameter.  See there for details. </p>
4511
4512<p> This feature is available in Postfix 2.3 and later. </p>
4513
4514
4515</DD>
4516
4517<DT><b><a name="lmtp_xforward_timeout">lmtp_xforward_timeout</a>
4518(default: 300s)</b></DT><DD>
4519
4520<p>
4521The LMTP client time limit for sending the XFORWARD command, and
4522for receiving the server response.
4523</p>
4524
4525<p>
4526In case of problems the client does NOT try the next address on
4527the mail exchanger list.
4528</p>
4529
4530<p>
4531Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
4532The default time unit is s (seconds).
4533</p>
4534
4535<p>
4536This feature is available in Postfix 2.1 and later.
4537</p>
4538
4539
4540</DD>
4541
4542<DT><b><a name="local_command_shell">local_command_shell</a>
4543(default: empty)</b></DT><DD>
4544
4545<p>
4546Optional shell program for <a href="local.8.html">local(8)</a> delivery to non-Postfix command.
4547By default, non-Postfix commands are executed directly; commands
4548are given to given to /bin/sh only when they contain shell meta
4549characters or shell built-in commands.  </p>
4550
4551<p> "sendmail's restricted shell" (smrsh) is what most people will
4552use in order to restrict what programs can be run from e.g. .forward
4553files (smrsh is part of the Sendmail distribution).  </p>
4554
4555<p> Note: when a shell program is specified, it is invoked even
4556when the command contains no shell built-in commands or meta
4557characters.  </p>
4558
4559<p>
4560Example:
4561</p>
4562
4563<pre>
4564<a href="postconf.5.html#local_command_shell">local_command_shell</a> = /some/where/smrsh -c
4565</pre>
4566
4567
4568</DD>
4569
4570<DT><b><a name="local_destination_concurrency_limit">local_destination_concurrency_limit</a>
4571(default: 2)</b></DT><DD>
4572
4573<p> The maximal number of parallel deliveries via the local mail
4574delivery transport to the same recipient (when
4575"<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> = 1") or the maximal number of
4576parallel deliveries to the same <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> (when
4577"<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> &gt; 1"). This limit is enforced by
4578the queue manager. The message delivery transport name is the first
4579field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
4580
4581<p> A low limit of 2 is recommended, just in case someone has an
4582expensive shell command in a .forward file or in an alias (e.g.,
4583a mailing list manager).  You don't want to run lots of those at
4584the same time.  </p>
4585
4586
4587</DD>
4588
4589<DT><b><a name="local_destination_recipient_limit">local_destination_recipient_limit</a>
4590(default: 1)</b></DT><DD>
4591
4592<p> The maximal number of recipients per message delivery via the
4593local mail delivery transport. This limit is enforced by the queue
4594manager. The message delivery transport name is the first field in
4595the entry in the <a href="master.5.html">master.cf</a> file. </p>
4596
4597<p> Setting this parameter to a value &gt; 1 changes the meaning of
4598<a href="postconf.5.html#local_destination_concurrency_limit">local_destination_concurrency_limit</a> from concurrency per recipient
4599into concurrency per domain.  </p>
4600
4601
4602</DD>
4603
4604<DT><b><a name="local_header_rewrite_clients">local_header_rewrite_clients</a>
4605(default: <a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a>)</b></DT><DD>
4606
4607<p> Rewrite message header addresses in mail from these clients and
4608update incomplete addresses with the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or
4609$<a href="postconf.5.html#mydomain">mydomain</a>; either don't rewrite message headers from other clients
4610at all, or rewrite message headers and update incomplete addresses
4611with the domain specified in the <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>
4612parameter.  </p>
4613
4614<p> See the <a href="postconf.5.html#append_at_myorigin">append_at_myorigin</a> and <a href="postconf.5.html#append_dot_mydomain">append_dot_mydomain</a> parameters
4615for details of how domain names are appended to incomplete addresses.
4616</p>
4617
4618<p> Specify a list of zero or more of the following:  </p>
4619
4620<dl>
4621
4622<dt><b><a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a></b></dt>
4623
4624<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4625client IP address matches $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. This is enabled by
4626default. </dd>
4627
4628<dt><b><a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a></b></dt>
4629
4630<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4631client IP address matches any network or network address listed in
4632$<a href="postconf.5.html#mynetworks">mynetworks</a>. This setting will not prevent remote mail header
4633address rewriting when mail from a remote client is forwarded by
4634a neighboring system.  </dd>
4635
4636<dt><b><a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> </b></dt>
4637
4638<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4639client is successfully authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH)
4640protocol. </dd>
4641
4642<dt><b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> </b></dt>
4643
4644<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4645client TLS certificate fingerprint is listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>.
4646The fingerprint digest algorithm is configurable via the
4647<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
4648Postfix version 2.5).  </dd>
4649
4650<dt><b><a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a> </b></dt>
4651
4652<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4653client TLS certificate is successfully verified, regardless of
4654whether it is listed on the server, and regardless of the certifying
4655authority. </dd>
4656
4657<dt><b><a name="check_address_map">check_address_map</a> <i><a href="DATABASE_README.html">type:table</a></i> </b></dt>
4658
4659<dt><b><i><a href="DATABASE_README.html">type:table</a></i> </b></dt>
4660
4661<dd> Append the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> when the
4662client IP address matches the specified lookup table.
4663The lookup result is ignored, and no subnet lookup is done. This
4664is suitable for, e.g., pop-before-smtp lookup tables. </dd>
4665
4666</dl>
4667
4668<p> Examples:  </p>
4669
4670<p> The Postfix &lt; 2.2 backwards compatible setting: always rewrite
4671message headers, and always append my own domain to incomplete
4672header addresses.  </p>
4673
4674<blockquote>
4675<pre>
4676<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all
4677</pre>
4678</blockquote>
4679
4680<p> The purist (and default) setting: rewrite headers only in mail
4681from Postfix sendmail and in SMTP mail from this machine. </p>
4682
4683<blockquote>
4684<pre>
4685<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a>
4686</pre>
4687</blockquote>
4688
4689<p> The intermediate setting: rewrite header addresses and append
4690$<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> information only with mail from Postfix
4691sendmail, from local clients, or from authorized SMTP clients. </p>
4692
4693<p> Note: this setting will not prevent remote mail header address
4694rewriting when mail from a remote client is forwarded by a neighboring
4695system.  </p>
4696
4697<blockquote>
4698<pre>
4699<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>,
4700    <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a>
4701    <a href="postconf.5.html#check_address_map">check_address_map</a> hash:/etc/postfix/pop-before-smtp
4702</pre>
4703</blockquote>
4704
4705
4706</DD>
4707
4708<DT><b><a name="local_recipient_maps">local_recipient_maps</a>
4709(default: <a href="proxymap.8.html">proxy</a>:unix:passwd.byname $<a href="postconf.5.html#alias_maps">alias_maps</a>)</b></DT><DD>
4710
4711<p> Lookup tables with all names or addresses of local recipients:
4712a recipient address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>,
4713$<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.  Specify @domain as a
4714wild-card for domains that do not have a valid recipient list.
4715Technically, tables listed with $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> are used as
4716lists: Postfix needs to know only if a lookup string is found or
4717not, but it does not use the result from table lookup.  </p>
4718
4719<p>
4720If this parameter is non-empty (the default), then the Postfix SMTP
4721server will reject mail for unknown local users.
4722</p>
4723
4724<p>
4725To turn off local recipient checking in the Postfix SMTP server,
4726specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty).
4727</p>
4728
4729<p>
4730The default setting assumes that you use the default Postfix local
4731delivery agent for local delivery. You need to update the
4732<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> setting if:
4733</p>
4734
4735<ul>
4736
4737<li>You redefine the local delivery agent in <a href="master.5.html">master.cf</a>.
4738
4739<li>You redefine the "<a href="postconf.5.html#local_transport">local_transport</a>" setting in <a href="postconf.5.html">main.cf</a>.
4740
4741<li>You use the "<a href="postconf.5.html#luser_relay">luser_relay</a>", "<a href="postconf.5.html#mailbox_transport">mailbox_transport</a>", or "<a href="postconf.5.html#fallback_transport">fallback_transport</a>"
4742feature of the Postfix <a href="local.8.html">local(8)</a> delivery agent.
4743
4744</ul>
4745
4746<p>
4747Details are described in the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> file.
4748</p>
4749
4750<p>
4751Beware: if the Postfix SMTP server runs chrooted, you need to access
4752the passwd file via the <a href="proxymap.8.html">proxymap(8)</a> service, in order to overcome
4753chroot access restrictions. The alternative, maintaining a copy of
4754the system password file in the chroot jail is not practical.
4755</p>
4756
4757<p>
4758Examples:
4759</p>
4760
4761<pre>
4762<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =
4763</pre>
4764
4765
4766</DD>
4767
4768<DT><b><a name="local_transport">local_transport</a>
4769(default: <a href="local.8.html">local</a>:$<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
4770
4771<p> The default mail delivery transport and next-hop destination
4772for final delivery to domains listed with <a href="postconf.5.html#mydestination">mydestination</a>, and for
4773[ipaddress] destinations that match $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
4774This information can be overruled with the <a href="transport.5.html">transport(5)</a> table. </p>
4775
4776<p>
4777By default, local mail is delivered to the transport called "local",
4778which is just the name of a service that is defined the <a href="master.5.html">master.cf</a> file.
4779</p>
4780
4781<p>
4782Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
4783is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
4784The <i>:nexthop</i> part is optional.  For more details see the
4785<a href="transport.5.html">transport(5)</a> manual page.
4786</p>
4787
4788<p>
4789Beware: if you override the default local delivery agent then you
4790need to review the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> document, otherwise the
4791SMTP server may reject mail for local recipients.
4792</p>
4793
4794
4795</DD>
4796
4797<DT><b><a name="luser_relay">luser_relay</a>
4798(default: empty)</b></DT><DD>
4799
4800<p>
4801Optional catch-all destination for unknown <a href="local.8.html">local(8)</a> recipients.
4802By default, mail for unknown recipients in domains that match
4803$<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> is returned
4804as undeliverable.
4805</p>
4806
4807<p>
4808The following $name expansions are done on <a href="postconf.5.html#luser_relay">luser_relay</a>:
4809</p>
4810
4811<dl>
4812
4813<dt><b>$domain</b></dt>
4814
4815<dd>The recipient domain. </dd>
4816
4817<dt><b>$extension</b></dt>
4818
4819<dd>The recipient address extension. </dd>
4820
4821<dt><b>$home</b></dt>
4822
4823<dd>The recipient's home directory. </dd>
4824
4825<dt><b>$local</b></dt>
4826
4827<dd>The entire recipient address localpart. </dd>
4828
4829<dt><b>$recipient</b></dt>
4830
4831<dd>The full recipient address. </dd>
4832
4833<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
4834
4835<dd>The system-wide recipient address extension delimiter. </dd>
4836
4837<dt><b>$shell</b></dt>
4838
4839<dd>The recipient's login shell. </dd>
4840
4841<dt><b>$user</b></dt>
4842
4843<dd>The recipient username. </dd>
4844
4845<dt><b>${name?value}</b></dt>
4846
4847<dd>Expands to <i>value</i> when <i>$name</i> has a non-empty value. </dd>
4848
4849<dt><b>${name:value}</b></dt>
4850
4851<dd>Expands to <i>value</i> when <i>$name</i> has an empty value. </dd>
4852
4853</dl>
4854
4855<p>
4856Instead of $name you can also specify ${name} or $(name).
4857</p>
4858
4859<p>
4860Note: <a href="postconf.5.html#luser_relay">luser_relay</a> works only for the Postfix <a href="local.8.html">local(8)</a> delivery agent.
4861</p>
4862
4863<p>
4864Note: if you use this feature for accounts not in the UNIX password
4865file, then you must specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty)
4866in the <a href="postconf.5.html">main.cf</a> file, otherwise the Postfix SMTP server will reject mail
4867for non-UNIX accounts with "User unknown in local recipient table".
4868</p>
4869
4870<p>
4871Examples:
4872</p>
4873
4874<pre>
4875<a href="postconf.5.html#luser_relay">luser_relay</a> = $user@other.host
4876<a href="postconf.5.html#luser_relay">luser_relay</a> = $local@other.host
4877<a href="postconf.5.html#luser_relay">luser_relay</a> = admin+$local
4878</pre>
4879
4880
4881</DD>
4882
4883<DT><b><a name="mail_name">mail_name</a>
4884(default: Postfix)</b></DT><DD>
4885
4886<p>
4887The mail system name that is displayed in Received: headers, in
4888the SMTP greeting banner, and in bounced mail.
4889</p>
4890
4891
4892</DD>
4893
4894<DT><b><a name="mail_owner">mail_owner</a>
4895(default: postfix)</b></DT><DD>
4896
4897<p>
4898The UNIX system account that owns the Postfix queue and most Postfix
4899daemon processes.  Specify the name of a user account that does
4900not share a group with other accounts and that owns no other files
4901or processes on the system.  In particular, don't specify nobody
4902or daemon.  PLEASE USE A DEDICATED USER ID AND GROUP ID.
4903</p>
4904
4905<p>
4906When this parameter value is changed you need to re-run "<b>postfix
4907set-permissions</b>" (with Postfix version 2.0 and earlier:
4908"<b>/etc/postfix/post-install set-permissions</b>".
4909</p>
4910
4911
4912</DD>
4913
4914<DT><b><a name="mail_release_date">mail_release_date</a>
4915(default: see "postconf -d" output)</b></DT><DD>
4916
4917<p>
4918The Postfix release date, in "YYYYMMDD" format.
4919</p>
4920
4921
4922</DD>
4923
4924<DT><b><a name="mail_spool_directory">mail_spool_directory</a>
4925(default: see "postconf -d" output)</b></DT><DD>
4926
4927<p>
4928The directory where <a href="local.8.html">local(8)</a> UNIX-style mailboxes are kept. The
4929default setting depends on the system type. Specify a name ending
4930in / for maildir-style delivery.
4931</p>
4932
4933<p>
4934Note: maildir delivery is done with the privileges of the recipient.
4935If you use the <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> setting for maildir style
4936delivery, then you must create the top-level maildir directory in
4937advance. Postfix will not create it.
4938</p>
4939
4940<p>
4941Examples:
4942</p>
4943
4944<pre>
4945<a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/mail
4946<a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/spool/mail
4947</pre>
4948
4949
4950</DD>
4951
4952<DT><b><a name="mail_version">mail_version</a>
4953(default: see "postconf -d" output)</b></DT><DD>
4954
4955<p>
4956The version of the mail system. Stable releases are named
4957<i>major</i>.<i>minor</i>.<i>patchlevel</i>. Experimental releases
4958also include the release date. The version string can be used in,
4959for example, the SMTP greeting banner.
4960</p>
4961
4962
4963</DD>
4964
4965<DT><b><a name="mailbox_command">mailbox_command</a>
4966(default: empty)</b></DT><DD>
4967
4968<p>
4969Optional external command that the <a href="local.8.html">local(8)</a> delivery agent should
4970use for mailbox delivery.  The command is run with the user ID and
4971the primary group ID privileges of the recipient.  Exception:
4972command delivery for root executes with $<a href="postconf.5.html#default_privs">default_privs</a> privileges.
4973This is not a problem, because 1) mail for root should always be
4974aliased to a real user and 2) don't log in as root, use "su" instead.
4975</p>
4976
4977<p>
4978The following environment variables are exported to the command:
4979</p>
4980
4981<dl>
4982
4983<dt><b>CLIENT_ADDRESS</b></dt>
4984
4985<dd>Remote client network address. Available in Postfix version 2.2 and
4986later. </dd>
4987
4988<dt><b>CLIENT_HELO</b></dt>
4989
4990<dd>Remote client EHLO command parameter. Available in Postfix version 2.2
4991and later.</dd>
4992
4993<dt><b>CLIENT_HOSTNAME</b></dt>
4994
4995<dd>Remote client hostname. Available in Postfix version 2.2 and later.
4996</dd>
4997
4998<dt><b>CLIENT_PROTOCOL</b></dt>
4999
5000<dd>Remote client protocol. Available in Postfix version 2.2 and later.
5001</dd>
5002
5003<dt><b>DOMAIN</b></dt>
5004
5005<dd>The domain part of the recipient address. </dd>
5006
5007<dt><b>EXTENSION</b></dt>
5008
5009<dd>The optional address extension. </dd>
5010
5011<dt><b>HOME</b></dt>
5012
5013<dd>The recipient home directory. </dd>
5014
5015<dt><b>LOCAL</b></dt>
5016
5017<dd>The recipient address localpart. </dd>
5018
5019<dt><b>LOGNAME</b></dt>
5020
5021<dd>The recipient's username. </dd>
5022
5023<dt><b>ORIGINAL_RECIPIENT</b></dt>
5024
5025<dd>The entire recipient address, before any address rewriting or
5026aliasing.  </dd>
5027
5028<dt><b>RECIPIENT</b></dt>
5029
5030<dd>The full recipient address. </dd>
5031
5032<dt><b>SASL_METHOD</b></dt>
5033
5034<dd>SASL authentication method specified in the remote client AUTH
5035command. Available in Postfix version 2.2 and later. </dd>
5036
5037<dt><b>SASL_SENDER</b></dt>
5038
5039<dd>SASL sender address specified in the remote client MAIL FROM
5040command. Available in Postfix version 2.2 and later. </dd>
5041
5042<dt><b>SASL_USER</b></dt>
5043
5044<dd>SASL username specified in the remote client AUTH command.
5045Available in Postfix version 2.2 and later.  </dd>
5046
5047<dt><b>SENDER</b></dt>
5048
5049<dd>The full sender address. </dd>
5050
5051<dt><b>SHELL</b></dt>
5052
5053<dd>The recipient's login shell. </dd>
5054
5055<dt><b>USER</b></dt>
5056
5057<dd>The recipient username. </dd>
5058
5059</dl>
5060
5061<p>
5062Unlike other Postfix configuration parameters, the <a href="postconf.5.html#mailbox_command">mailbox_command</a>
5063parameter is not subjected to $name substitutions. This is to make
5064it easier to specify shell syntax (see example below).
5065</p>
5066
5067<p>
5068If you can, avoid shell meta characters because they will force
5069Postfix to run an expensive shell process. If you're delivering
5070via Procmail then running a shell won't make a noticeable difference
5071in the total cost.
5072</p>
5073
5074<p>
5075Note: if you use the <a href="postconf.5.html#mailbox_command">mailbox_command</a> feature to deliver mail
5076system-wide, you must set up an alias that forwards mail for root
5077to a real user.
5078</p>
5079
5080<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5081is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
5082<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
5083<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
5084
5085<p>
5086Examples:
5087</p>
5088
5089<pre>
5090<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail
5091<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail -a "$EXTENSION"
5092<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/maildrop -d "$USER"
5093        -f "$SENDER" "$EXTENSION"
5094</pre>
5095
5096
5097</DD>
5098
5099<DT><b><a name="mailbox_command_maps">mailbox_command_maps</a>
5100(default: empty)</b></DT><DD>
5101
5102<p>
5103Optional lookup tables with per-recipient external commands to use
5104for <a href="local.8.html">local(8)</a> mailbox delivery.  Behavior is as with <a href="postconf.5.html#mailbox_command">mailbox_command</a>.
5105</p>
5106
5107<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5108is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
5109<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
5110<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
5111
5112
5113</DD>
5114
5115<DT><b><a name="mailbox_delivery_lock">mailbox_delivery_lock</a>
5116(default: see "postconf -d" output)</b></DT><DD>
5117
5118<p>
5119How to lock a UNIX-style <a href="local.8.html">local(8)</a> mailbox before attempting delivery.
5120For a list of available file locking methods, use the "<b>postconf
5121-l</b>" command.
5122</p>
5123
5124<p>
5125This setting is ignored with <b>maildir</b> style delivery,
5126because such deliveries are safe without explicit locks.
5127</p>
5128
5129<p>
5130Note: The <b>dotlock</b> method requires that the recipient UID or
5131GID has write access to the parent directory of the mailbox file.
5132</p>
5133
5134<p>
5135Note: the default setting of this parameter is system dependent.
5136</p>
5137
5138
5139</DD>
5140
5141<DT><b><a name="mailbox_size_limit">mailbox_size_limit</a>
5142(default: 51200000)</b></DT><DD>
5143
5144<p> The maximal size of any <a href="local.8.html">local(8)</a> individual mailbox or maildir
5145file, or zero (no limit).  In fact, this limits the size of any
5146file that is written to upon local delivery, including files written
5147by external commands that are executed by the <a href="local.8.html">local(8)</a> delivery
5148agent.  </p>
5149
5150<p>
5151This limit must not be smaller than the message size limit.
5152</p>
5153
5154
5155</DD>
5156
5157<DT><b><a name="mailbox_transport">mailbox_transport</a>
5158(default: empty)</b></DT><DD>
5159
5160<p>
5161Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery
5162agent should use for mailbox delivery to all local recipients,
5163whether or not they are found in the UNIX passwd database.
5164</p>
5165
5166<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5167is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
5168<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
5169<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
5170
5171
5172</DD>
5173
5174<DT><b><a name="mailbox_transport_maps">mailbox_transport_maps</a>
5175(default: empty)</b></DT><DD>
5176
5177<p> Optional lookup tables with per-recipient message delivery
5178transports to use for <a href="local.8.html">local(8)</a> mailbox delivery, whether or not the
5179recipients are found in the UNIX passwd database. </p>
5180
5181<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5182is: aliases, .forward files, <a href="postconf.5.html#mailbox_transport_maps">mailbox_transport_maps</a>, <a href="postconf.5.html#mailbox_transport">mailbox_transport</a>,
5183<a href="postconf.5.html#mailbox_command_maps">mailbox_command_maps</a>, <a href="postconf.5.html#mailbox_command">mailbox_command</a>, <a href="postconf.5.html#home_mailbox">home_mailbox</a>, <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a>,
5184<a href="postconf.5.html#fallback_transport_maps">fallback_transport_maps</a>, <a href="postconf.5.html#fallback_transport">fallback_transport</a> and <a href="postconf.5.html#luser_relay">luser_relay</a>.  </p>
5185
5186<p> For safety reasons, this feature does not allow $number
5187substitutions in regular expression maps. </p>
5188
5189<p> This feature is available in Postfix 2.3 and later. </p>
5190
5191
5192</DD>
5193
5194<DT><b><a name="mailq_path">mailq_path</a>
5195(default: see "postconf -d" output)</b></DT><DD>
5196
5197<p>
5198Sendmail compatibility feature that specifies where the Postfix
5199<a href="mailq.1.html">mailq(1)</a> command is installed. This command can be used to
5200list the Postfix mail queue.
5201</p>
5202
5203
5204</DD>
5205
5206<DT><b><a name="manpage_directory">manpage_directory</a>
5207(default: see "postconf -d" output)</b></DT><DD>
5208
5209<p>
5210Where the Postfix manual pages are installed.
5211</p>
5212
5213
5214</DD>
5215
5216<DT><b><a name="maps_rbl_domains">maps_rbl_domains</a>
5217(default: empty)</b></DT><DD>
5218
5219<p>
5220Obsolete feature: use the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> feature instead.
5221</p>
5222
5223
5224</DD>
5225
5226<DT><b><a name="maps_rbl_reject_code">maps_rbl_reject_code</a>
5227(default: 554)</b></DT><DD>
5228
5229<p>
5230The numerical Postfix SMTP server response code when a remote SMTP
5231client request is blocked by the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a>, <a href="postconf.5.html#reject_rhsbl_client">reject_rhsbl_client</a>,
5232<a href="postconf.5.html#reject_rhsbl_sender">reject_rhsbl_sender</a> or <a href="postconf.5.html#reject_rhsbl_recipient">reject_rhsbl_recipient</a> restriction.
5233</p>
5234
5235<p>
5236Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
5237</p>
5238
5239
5240</DD>
5241
5242<DT><b><a name="masquerade_classes">masquerade_classes</a>
5243(default: envelope_sender, header_sender, header_recipient)</b></DT><DD>
5244
5245<p>
5246What addresses are subject to address masquerading.
5247</p>
5248
5249<p>
5250By default, address masquerading is limited to envelope sender
5251addresses, and to header sender and header recipient addresses.
5252This allows you to use address masquerading on a mail gateway while
5253still being able to forward mail to users on individual machines.
5254</p>
5255
5256<p>
5257Specify zero or more of: envelope_sender, envelope_recipient,
5258header_sender, header_recipient
5259</p>
5260
5261
5262</DD>
5263
5264<DT><b><a name="masquerade_domains">masquerade_domains</a>
5265(default: empty)</b></DT><DD>
5266
5267<p>
5268Optional list of domains whose subdomain structure will be stripped
5269off in email addresses.
5270</p>
5271
5272<p>
5273The list is processed left to right, and processing stops at the
5274first match.  Thus,
5275</p>
5276
5277<blockquote>
5278<pre>
5279<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = foo.example.com example.com
5280</pre>
5281</blockquote>
5282
5283<p>
5284strips "user@any.thing.foo.example.com" to "user@foo.example.com",
5285but strips "user@any.thing.else.example.com" to "user@example.com".
5286</p>
5287
5288<p>
5289A domain name prefixed with ! means do not masquerade this domain
5290or its subdomains. Thus,
5291</p>
5292
5293<blockquote>
5294<pre>
5295<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = !foo.example.com example.com
5296</pre>
5297</blockquote>
5298
5299<p>
5300does not change "user@any.thing.foo.example.com" or "user@foo.example.com",
5301but strips "user@any.thing.else.example.com" to "user@example.com".
5302</p>
5303
5304<p> Note: with Postfix version 2.2, message header address masquerading
5305happens only when message header address rewriting is enabled: </p>
5306
5307<ul>
5308
5309<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
5310
5311<li> The message is received from a network client that matches
5312$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
5313
5314<li> The message is received from the network, and the
5315<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
5316
5317</ul>
5318
5319<p> To get the behavior before Postfix version 2.2, specify
5320"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
5321
5322<p>
5323Example:
5324</p>
5325
5326<pre>
5327<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
5328</pre>
5329
5330
5331</DD>
5332
5333<DT><b><a name="masquerade_exceptions">masquerade_exceptions</a>
5334(default: empty)</b></DT><DD>
5335
5336<p>
5337Optional list of user names that are not subjected to address
5338masquerading, even when their address matches $<a href="postconf.5.html#masquerade_domains">masquerade_domains</a>.
5339</p>
5340
5341<p>
5342By default, address masquerading makes no exceptions.
5343</p>
5344
5345<p>
5346Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
5347separated by commas and/or whitespace. The list is matched left to
5348right, and the search stops on the first match. A "/file/name"
5349pattern is replaced
5350by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
5351matches a lookup key (the lookup result is ignored).  Continue long
5352lines by starting the next line with whitespace. Specify "!pattern"
5353to exclude a name from the list. The form "!/file/name" is supported
5354only in Postfix version 2.4 and later.  </p>
5355
5356<p>
5357Examples:
5358</p>
5359
5360<pre>
5361<a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root, mailer-daemon
5362<a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root
5363</pre>
5364
5365
5366</DD>
5367
5368<DT><b><a name="master_service_disable">master_service_disable</a>
5369(default: empty)</b></DT><DD>
5370
5371<p> Selectively disable <a href="master.8.html">master(8)</a> listener ports by service type
5372or by service name and type.  Specify a list of service types
5373("inet", "unix", "fifo", or "pass") or "name.type" tuples, where
5374"name" is the first field of a <a href="master.5.html">master.cf</a> entry and "type" is a
5375service type. As with other Postfix matchlists, a search stops at
5376the first match.  Specify "!pattern" to exclude a service from the
5377list. By default, all <a href="master.8.html">master(8)</a> listener ports are enabled.  </p>
5378
5379<p> Note: this feature does not support "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
5380patterns, nor does it support wildcards such as "*" or "all". This
5381is intentional. </p>
5382
5383<p> Examples: </p>
5384
5385<pre>
5386# Turn on all <a href="master.8.html">master(8)</a> listener ports (the default).
5387<a href="postconf.5.html#master_service_disable">master_service_disable</a> =
5388# Turn off only the main SMTP listener port.
5389<a href="postconf.5.html#master_service_disable">master_service_disable</a> = smtp.inet
5390# Turn off all TCP/IP listener ports.
5391<a href="postconf.5.html#master_service_disable">master_service_disable</a> = inet
5392# Turn off all TCP/IP listener ports except "foo".
5393<a href="postconf.5.html#master_service_disable">master_service_disable</a> = !foo.inet, inet
5394</pre>
5395
5396<p> This feature is available in Postfix 2.6 and later. </p>
5397
5398
5399</DD>
5400
5401<DT><b><a name="max_idle">max_idle</a>
5402(default: 100s)</b></DT><DD>
5403
5404<p>
5405The maximum amount of time that an idle Postfix daemon process waits
5406for an incoming connection before terminating voluntarily.  This
5407parameter
5408is ignored by the Postfix queue manager and by other long-lived
5409Postfix daemon processes.
5410</p>
5411
5412<p>
5413Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5414The default time unit is s (seconds).
5415</p>
5416
5417
5418</DD>
5419
5420<DT><b><a name="max_use">max_use</a>
5421(default: 100)</b></DT><DD>
5422
5423<p>
5424The maximal number of incoming connections that a Postfix daemon
5425process will service before terminating voluntarily.  This parameter
5426is ignored by the Postfix queue
5427manager and by other long-lived Postfix daemon processes.
5428</p>
5429
5430
5431</DD>
5432
5433<DT><b><a name="maximal_backoff_time">maximal_backoff_time</a>
5434(default: 4000s)</b></DT><DD>
5435
5436<p>
5437The maximal time between attempts to deliver a deferred message.
5438</p>
5439
5440<p> This parameter should be set to a value greater than or equal
5441to $<a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a>. See also $<a href="postconf.5.html#queue_run_delay">queue_run_delay</a>.  </p>
5442
5443<p>
5444Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5445The default time unit is s (seconds).
5446</p>
5447
5448
5449</DD>
5450
5451<DT><b><a name="maximal_queue_lifetime">maximal_queue_lifetime</a>
5452(default: 5d)</b></DT><DD>
5453
5454<p>
5455The maximal time a message is queued before it is sent back as
5456undeliverable.
5457</p>
5458
5459<p>
5460Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5461The default time unit is d (days).
5462</p>
5463
5464<p>
5465Specify 0 when mail delivery should be tried only once.
5466</p>
5467
5468
5469</DD>
5470
5471<DT><b><a name="message_reject_characters">message_reject_characters</a>
5472(default: empty)</b></DT><DD>
5473
5474<p> The set of characters that Postfix will reject in message
5475content.  The usual C-like escape sequences are recognized: <tt>\a
5476\b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and
5477<tt>\\</tt>. </p>
5478
5479<p> Example: </p>
5480
5481<pre>
5482<a href="postconf.5.html#message_reject_characters">message_reject_characters</a> = \0
5483</pre>
5484
5485<p> This feature is available in Postfix 2.3 and later.  </p>
5486
5487
5488</DD>
5489
5490<DT><b><a name="message_size_limit">message_size_limit</a>
5491(default: 10240000)</b></DT><DD>
5492
5493<p>
5494The maximal size in bytes of a message, including envelope information.
5495</p>
5496
5497<p> Note: be careful when making changes.  Excessively small values
5498will result in the loss of non-delivery notifications, when a bounce
5499message size exceeds the local or remote MTA's message size limit.
5500</p>
5501
5502
5503</DD>
5504
5505<DT><b><a name="message_strip_characters">message_strip_characters</a>
5506(default: empty)</b></DT><DD>
5507
5508<p> The set of characters that Postfix will remove from message
5509content.  The usual C-like escape sequences are recognized: <tt>\a
5510\b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and
5511<tt>\\</tt>. </p>
5512
5513<p> Example: </p>
5514
5515<pre>
5516<a href="postconf.5.html#message_strip_characters">message_strip_characters</a> = \0
5517</pre>
5518
5519<p> This feature is available in Postfix 2.3 and later.  </p>
5520
5521
5522</DD>
5523
5524<DT><b><a name="milter_command_timeout">milter_command_timeout</a>
5525(default: 30s)</b></DT><DD>
5526
5527<p> The time limit for sending an SMTP command to a Milter (mail
5528filter) application, and for receiving the response.  </p>
5529
5530<p> Specify a non-zero time value (an integral value plus an optional
5531one-letter suffix that specifies the time unit). </p>
5532
5533<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5534(weeks). The default time unit is s (seconds). </p>
5535
5536<p> This feature is available in Postfix 2.3 and later. </p>
5537
5538
5539</DD>
5540
5541<DT><b><a name="milter_connect_macros">milter_connect_macros</a>
5542(default: see "postconf -d" output)</b></DT><DD>
5543
5544<p> The macros that are sent to Milter (mail filter) applications
5545after completion of an SMTP connection. See <a href="MILTER_README.html">MILTER_README</a>
5546for a list of available macro names and their meanings. </p>
5547
5548<p> This feature is available in Postfix 2.3 and later. </p>
5549
5550
5551</DD>
5552
5553<DT><b><a name="milter_connect_timeout">milter_connect_timeout</a>
5554(default: 30s)</b></DT><DD>
5555
5556<p> The time limit for connecting to a Milter (mail filter)
5557application, and for negotiating protocol options. </p>
5558
5559<p> Specify a non-zero time value (an integral value plus an optional
5560one-letter suffix that specifies the time unit). </p>
5561
5562<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5563(weeks). The default time unit is s (seconds). </p>
5564
5565<p> This feature is available in Postfix 2.3 and later. </p>
5566
5567
5568</DD>
5569
5570<DT><b><a name="milter_content_timeout">milter_content_timeout</a>
5571(default: 300s)</b></DT><DD>
5572
5573<p> The time limit for sending message content to a Milter (mail
5574filter) application, and for receiving the response.  </p>
5575
5576<p> Specify a non-zero time value (an integral value plus an optional
5577one-letter suffix that specifies the time unit). </p>
5578
5579<p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5580(weeks). The default time unit is s (seconds). </p>
5581
5582<p> This feature is available in Postfix 2.3 and later. </p>
5583
5584
5585</DD>
5586
5587<DT><b><a name="milter_data_macros">milter_data_macros</a>
5588(default: see "postconf -d" output)</b></DT><DD>
5589
5590<p> The macros that are sent to version 4 or higher Milter (mail
5591filter) applications after the SMTP DATA command. See <a href="MILTER_README.html">MILTER_README</a>
5592for a list of available macro names and their meanings.  </p>
5593
5594<p> This feature is available in Postfix 2.3 and later. </p>
5595
5596
5597</DD>
5598
5599<DT><b><a name="milter_default_action">milter_default_action</a>
5600(default: tempfail)</b></DT><DD>
5601
5602<p> The default action when a Milter (mail filter) application is
5603unavailable or mis-configured. Specify one of the following: </p>
5604
5605<dl compact>
5606
5607<dt>accept</dt> <dd>Proceed as if the mail filter was not present.
5608</dd>
5609
5610<dt>reject</dt> <dd>Reject all further commands in this session
5611with a permanent status code.</dd>
5612
5613<dt>tempfail</dt> <dd>Reject all further commands in this session
5614with a temporary status code. </dd>
5615
5616<dt>quarantine</dt> <dd>Like "accept", but freeze the message in
5617the "<a href="QSHAPE_README.html#hold_queue">hold" queue</a>. Available with Postfix 2.6 and later. </dd>
5618
5619</dl>
5620
5621<p> This feature is available in Postfix 2.3 and later. </p>
5622
5623
5624</DD>
5625
5626<DT><b><a name="milter_end_of_data_macros">milter_end_of_data_macros</a>
5627(default: see "postconf -d" output)</b></DT><DD>
5628
5629<p> The macros that are sent to Milter (mail filter) applications
5630after the message end-of-data. See <a href="MILTER_README.html">MILTER_README</a> for a list of
5631available macro names and their meanings.  </p>
5632
5633<p> This feature is available in Postfix 2.3 and later. </p>
5634
5635
5636</DD>
5637
5638<DT><b><a name="milter_end_of_header_macros">milter_end_of_header_macros</a>
5639(default: see "postconf -d" output)</b></DT><DD>
5640
5641<p> The macros that are sent to Milter (mail filter) applications
5642after the end of the message header. See <a href="MILTER_README.html">MILTER_README</a> for a list
5643of available macro names and their meanings.  </p>
5644
5645<p> This feature is available in Postfix 2.5 and later. </p>
5646
5647
5648</DD>
5649
5650<DT><b><a name="milter_helo_macros">milter_helo_macros</a>
5651(default: see "postconf -d" output)</b></DT><DD>
5652
5653<p> The macros that are sent to Milter (mail filter) applications
5654after the SMTP HELO or EHLO command. See
5655<a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their meanings.
5656</p>
5657
5658<p> This feature is available in Postfix 2.3 and later. </p>
5659
5660
5661</DD>
5662
5663<DT><b><a name="milter_macro_daemon_name">milter_macro_daemon_name</a>
5664(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
5665
5666<p> The {daemon_name} macro value for Milter (mail filter) applications.
5667See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their
5668meanings.  </p>
5669
5670<p> This feature is available in Postfix 2.3 and later. </p>
5671
5672
5673</DD>
5674
5675<DT><b><a name="milter_macro_v">milter_macro_v</a>
5676(default: $<a href="postconf.5.html#mail_name">mail_name</a> $<a href="postconf.5.html#mail_version">mail_version</a>)</b></DT><DD>
5677
5678<p> The {v} macro value for Milter (mail filter) applications.
5679See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their
5680meanings.  </p>
5681
5682<p> This feature is available in Postfix 2.3 and later. </p>
5683
5684
5685</DD>
5686
5687<DT><b><a name="milter_mail_macros">milter_mail_macros</a>
5688(default: see "postconf -d" output)</b></DT><DD>
5689
5690<p> The macros that are sent to Milter (mail filter) applications
5691after the SMTP MAIL FROM command. See <a href="MILTER_README.html">MILTER_README</a>
5692for a list of available macro names and their meanings. </p>
5693
5694<p> This feature is available in Postfix 2.3 and later. </p>
5695
5696
5697</DD>
5698
5699<DT><b><a name="milter_protocol">milter_protocol</a>
5700(default: 6)</b></DT><DD>
5701
5702<p> The mail filter protocol version and optional protocol extensions
5703for communication with a Milter application; prior to Postfix 2.6
5704the default protocol is 2. Postfix
5705sends this version number during the initial protocol handshake.
5706It should match the version number that is expected by the mail
5707filter application (or by its Milter library).  </p>
5708
5709<p>Protocol versions: </p>
5710
5711<dl compact>
5712
5713<dt>2</dt> <dd>Use Sendmail 8 mail filter protocol version 2 (default
5714with Sendmail version 8.11 .. 8.13 and Postfix version 2.3 ..
57152.5).</dd>
5716
5717<dt>3</dt> <dd>Use Sendmail 8 mail filter protocol version 3.</dd>
5718
5719<dt>4</dt> <dd>Use Sendmail 8 mail filter protocol version 4.</dd>
5720
5721<dt>6</dt> <dd>Use Sendmail 8 mail filter protocol version 6 (default
5722with Sendmail version 8.14 and Postfix version 2.6).</dd>
5723
5724</dl>
5725
5726<p>Protocol extensions: </p>
5727
5728<dl compact>
5729
5730<dt>no_header_reply</dt> <dd> Specify this when the Milter application
5731will not reply for each individual message header.</dd>
5732
5733</dl>
5734
5735<p> This feature is available in Postfix 2.3 and later. </p>
5736
5737
5738</DD>
5739
5740<DT><b><a name="milter_rcpt_macros">milter_rcpt_macros</a>
5741(default: see "postconf -d" output)</b></DT><DD>
5742
5743<p> The macros that are sent to Milter (mail filter) applications
5744after the SMTP RCPT TO command. See <a href="MILTER_README.html">MILTER_README</a>
5745for a list of available macro names and their meanings. </p>
5746
5747<p> This feature is available in Postfix 2.3 and later. </p>
5748
5749
5750</DD>
5751
5752<DT><b><a name="milter_unknown_command_macros">milter_unknown_command_macros</a>
5753(default: see "postconf -d" output)</b></DT><DD>
5754
5755<p> The macros that are sent to version 3 or higher Milter (mail
5756filter) applications after an unknown SMTP command.  See <a href="MILTER_README.html">MILTER_README</a>
5757for a list of available macro names and their meanings.  </p>
5758
5759<p> This feature is available in Postfix 2.3 and later. </p>
5760
5761
5762</DD>
5763
5764<DT><b><a name="mime_boundary_length_limit">mime_boundary_length_limit</a>
5765(default: 2048)</b></DT><DD>
5766
5767<p>
5768The maximal length of MIME multipart boundary strings. The MIME
5769processor is unable to distinguish between boundary strings that
5770do not differ in the first $<a href="postconf.5.html#mime_boundary_length_limit">mime_boundary_length_limit</a> characters.
5771</p>
5772
5773<p>
5774This feature is available in Postfix 2.0 and later.
5775</p>
5776
5777
5778</DD>
5779
5780<DT><b><a name="mime_header_checks">mime_header_checks</a>
5781(default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD>
5782
5783<p>
5784Optional lookup tables for content inspection of MIME related
5785message headers, as described in the <a href="header_checks.5.html">header_checks(5)</a> manual page.
5786</p>
5787
5788<p>
5789This feature is available in Postfix 2.0 and later.
5790</p>
5791
5792
5793</DD>
5794
5795<DT><b><a name="mime_nesting_limit">mime_nesting_limit</a>
5796(default: 100)</b></DT><DD>
5797
5798<p>
5799The maximal recursion level that the MIME processor will handle.
5800Postfix refuses mail that is nested deeper than the specified limit.
5801</p>
5802
5803<p>
5804This feature is available in Postfix 2.0 and later.
5805</p>
5806
5807
5808</DD>
5809
5810<DT><b><a name="minimal_backoff_time">minimal_backoff_time</a>
5811(default: 300s)</b></DT><DD>
5812
5813<p>
5814The minimal time between attempts to deliver a deferred message;
5815prior to Postfix 2.4 the default value was 1000s.
5816</p>
5817
5818<p>
5819This parameter also limits the time an unreachable destination is
5820kept in the short-term, in-memory, destination status cache.
5821</p>
5822
5823<p> This parameter should be set greater than or equal to
5824$<a href="postconf.5.html#queue_run_delay">queue_run_delay</a>. See also $<a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a>.  </p>
5825
5826<p>
5827Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5828The default time unit is s (seconds).
5829</p>
5830
5831
5832</DD>
5833
5834<DT><b><a name="multi_instance_directories">multi_instance_directories</a>
5835(default: empty)</b></DT><DD>
5836
5837<p> An optional list of non-default Postfix configuration directories;
5838these directories belong to additional Postfix instances that share
5839the Postfix executable files and documentation with the default
5840Postfix instance, and that are started, stopped, etc., together
5841with the default Postfix instance.  Specify a list of pathnames
5842separated by comma or whitespace.  </p>
5843
5844<p> When $<a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> is empty, the <a href="postfix.1.html">postfix(1)</a> command
5845runs in single-instance mode and operates on a single Postfix
5846instance only. Otherwise, the <a href="postfix.1.html">postfix(1)</a> command runs in multi-instance
5847mode and invokes the multi-instance manager specified with the
5848<a href="postconf.5.html#multi_instance_wrapper">multi_instance_wrapper</a> parameter. The multi-instance manager in
5849turn executes <a href="postfix.1.html">postfix(1)</a> commands for the default instance and for
5850all Postfix instances in $<a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>.  </p>
5851
5852<p> Currently, this parameter setting is ignored except for the
5853default <a href="postconf.5.html">main.cf</a> file. </p>
5854
5855<p> This feature is available in Postfix 2.6 and later. </p>
5856
5857
5858</DD>
5859
5860<DT><b><a name="multi_instance_enable">multi_instance_enable</a>
5861(default: no)</b></DT><DD>
5862
5863<p> Allow this Postfix instance to be started, stopped, etc., by a
5864multi-instance manager.  By default, new instances are created in
5865a safe state that prevents them from being started inadvertently.
5866This parameter is reserved for the multi-instance manager.  </p>
5867
5868<p> This feature is available in Postfix 2.6 and later. </p>
5869
5870
5871</DD>
5872
5873<DT><b><a name="multi_instance_group">multi_instance_group</a>
5874(default: empty)</b></DT><DD>
5875
5876<p> The optional instance group name of this Postfix instance. A
5877group identifies closely-related Postfix instances that the
5878multi-instance manager can start, stop, etc., as a unit.  This
5879parameter is reserved for the multi-instance manager. </p>
5880
5881<p> This feature is available in Postfix 2.6 and later. </p>
5882
5883
5884</DD>
5885
5886<DT><b><a name="multi_instance_name">multi_instance_name</a>
5887(default: empty)</b></DT><DD>
5888
5889<p> The optional instance name of this Postfix instance. This name
5890becomes also the default value for the <a href="postconf.5.html#syslog_name">syslog_name</a> parameter. </p>
5891
5892<p> This feature is available in Postfix 2.6 and later. </p>
5893
5894
5895</DD>
5896
5897<DT><b><a name="multi_instance_wrapper">multi_instance_wrapper</a>
5898(default: empty)</b></DT><DD>
5899
5900<p> The pathname of a multi-instance manager command that the
5901<a href="postfix.1.html">postfix(1)</a> command invokes when the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>
5902parameter value is non-empty. The pathname may be followed by
5903initial command arguments separated by whitespace; shell
5904metacharacters such as quotes are not supported in this context.
5905</p>
5906
5907<p> The <a href="postfix.1.html">postfix(1)</a> command invokes the manager command with the
5908<a href="postfix.1.html">postfix(1)</a> non-option command arguments on the manager command line,
5909and with all installation configuration parameters exported into
5910the manager command process environment. The manager command in
5911turn invokes the <a href="postfix.1.html">postfix(1)</a> command for individual Postfix instances
5912as "postfix -c <i><a href="postconf.5.html#config_directory">config_directory</a></i> <i>command</i>".  </p>
5913
5914<p> This feature is available in Postfix 2.6 and later. </p>
5915
5916
5917</DD>
5918
5919<DT><b><a name="multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a>
5920(default: 550)</b></DT><DD>
5921
5922<p>
5923The numerical Postfix SMTP server response code when a remote SMTP
5924client request is blocked by the <a href="postconf.5.html#reject_multi_recipient_bounce">reject_multi_recipient_bounce</a>
5925restriction.
5926</p>
5927
5928<p>
5929Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
5930</p>
5931
5932<p>
5933This feature is available in Postfix 2.1 and later.
5934</p>
5935
5936
5937</DD>
5938
5939<DT><b><a name="mydestination">mydestination</a>
5940(default: $<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a>, localhost)</b></DT><DD>
5941
5942<p> The list of domains that are delivered via the $<a href="postconf.5.html#local_transport">local_transport</a>
5943mail delivery transport. By default this is the Postfix <a href="local.8.html">local(8)</a>
5944delivery agent which looks up all recipients in /etc/passwd and
5945/etc/aliases. The SMTP server validates recipient addresses with
5946$<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> and rejects non-existent recipients. See also
5947the <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file.
5948</p>
5949
5950<p>
5951The default <a href="postconf.5.html#mydestination">mydestination</a> value specifies names for the local
5952machine only.  On a mail domain gateway, you should also include
5953$<a href="postconf.5.html#mydomain">mydomain</a>.
5954</p>
5955
5956<p>
5957The $<a href="postconf.5.html#local_transport">local_transport</a> delivery method is also selected for mail
5958addressed to user@[the.net.work.address] of the mail system (the
5959IP addresses specified with the <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> and <a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>
5960parameters).
5961</p>
5962
5963<p>
5964Warnings:
5965</p>
5966
5967<ul>
5968
5969<li><p>Do not specify the names of virtual domains - those domains
5970are specified elsewhere. See <a href="VIRTUAL_README.html">VIRTUAL_README</a> for more information. </p>
5971
5972<li><p>Do not specify the names of domains that this machine is
5973backup MX host for. See <a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> for how to
5974set up backup MX hosts. </p>
5975
5976<li><p>By default, the Postfix SMTP server rejects mail for recipients
5977not listed with the <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> parameter.  See the
5978<a href="postconf.5.html">postconf(5)</a> manual for a description of the <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a>
5979and <a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> parameters. </p>
5980
5981</ul>
5982
5983<p>
5984Specify a list of host or domain names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
5985patterns, separated by commas and/or whitespace. A "/file/name"
5986pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
5987is matched when a name matches a lookup key (the lookup result is
5988ignored).  Continue long lines by starting the next line with
5989whitespace.  </p>
5990
5991<p>
5992Examples:
5993</p>
5994
5995<pre>
5996<a href="postconf.5.html#mydestination">mydestination</a> = $<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a> $<a href="postconf.5.html#mydomain">mydomain</a>
5997<a href="postconf.5.html#mydestination">mydestination</a> = $<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a> www.$<a href="postconf.5.html#mydomain">mydomain</a>, ftp.$<a href="postconf.5.html#mydomain">mydomain</a>
5998</pre>
5999
6000
6001</DD>
6002
6003<DT><b><a name="mydomain">mydomain</a>
6004(default: see "postconf -d" output)</b></DT><DD>
6005
6006<p>
6007The internet domain name of this mail system.  The default is to
6008use $<a href="postconf.5.html#myhostname">myhostname</a> minus the first component.  $<a href="postconf.5.html#mydomain">mydomain</a> is used as
6009a default value for many other configuration parameters.
6010</p>
6011
6012<p>
6013Example:
6014</p>
6015
6016<pre>
6017<a href="postconf.5.html#mydomain">mydomain</a> = domain.tld
6018</pre>
6019
6020
6021</DD>
6022
6023<DT><b><a name="myhostname">myhostname</a>
6024(default: see "postconf -d" output)</b></DT><DD>
6025
6026<p>
6027The internet hostname of this mail system. The default is to use
6028the fully-qualified domain name from gethostname(). $<a href="postconf.5.html#myhostname">myhostname</a> is
6029used as a default value for many other configuration parameters.
6030</p>
6031
6032<p>
6033Example:
6034</p>
6035
6036<pre>
6037<a href="postconf.5.html#myhostname">myhostname</a> = host.example.com
6038</pre>
6039
6040
6041</DD>
6042
6043<DT><b><a name="mynetworks">mynetworks</a>
6044(default: see "postconf -d" output)</b></DT><DD>
6045
6046<p>
6047The list of "trusted" SMTP clients that have more privileges than
6048"strangers".
6049</p>
6050
6051<p>
6052In particular, "trusted" SMTP clients are allowed to relay mail
6053through Postfix.  See the <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameter
6054description in the <a href="postconf.5.html">postconf(5)</a> manual.
6055</p>
6056
6057<p>
6058You can specify the list of "trusted" network addresses by hand
6059or you can let Postfix do it for you (which is the default).
6060See the description of the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> parameter for more
6061information.
6062</p>
6063
6064<p>
6065If you specify the <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand,
6066Postfix ignores the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> setting.
6067</p>
6068
6069<p> Specify a list of network addresses or network/netmask patterns,
6070separated by commas and/or whitespace. Continue long lines by
6071starting the next line with whitespace. </p>
6072
6073<p> The netmask specifies the number of bits in the network part
6074of a host address.  You can also specify "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
6075patterns.  A "/file/name" pattern is replaced by its contents; a
6076"<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry matches a
6077lookup string (the lookup result is ignored). </p>
6078
6079<p> The list is matched left to right, and the search stops on the
6080first match.  Specify "!pattern" to exclude an address or network
6081block from the list. The form "!/file/name" is supported only
6082in Postfix version 2.4 and later. </p>
6083
6084<p> Note: IP version 6 address information must be specified inside
6085<tt>[]</tt> in the <a href="postconf.5.html#mynetworks">mynetworks</a> value, and in files specified with
6086"/file/name".  IP version 6 addresses contain the ":" character,
6087and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" pattern.  </p>
6088
6089<p> Examples:  </p>
6090
6091<pre>
6092<a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28
6093<a href="postconf.5.html#mynetworks">mynetworks</a> = !192.168.0.1, 192.168.0.0/28
6094<a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28 [::1]/128 [2001:240:587::]/64
6095<a href="postconf.5.html#mynetworks">mynetworks</a> = $<a href="postconf.5.html#config_directory">config_directory</a>/mynetworks
6096<a href="postconf.5.html#mynetworks">mynetworks</a> = hash:/etc/postfix/network_table
6097</pre>
6098
6099
6100</DD>
6101
6102<DT><b><a name="mynetworks_style">mynetworks_style</a>
6103(default: subnet)</b></DT><DD>
6104
6105<p>
6106The method to generate the default value for the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter.
6107This is the list of trusted networks for relay access control etc.
6108</p>
6109
6110<ul>
6111
6112<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = host" when Postfix should
6113"trust" only the local machine. </p>
6114
6115<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = subnet" when Postfix
6116should "trust" SMTP clients in the same IP subnetworks as the local
6117machine.  On Linux, this works correctly only with interfaces
6118specified with the "ifconfig" command. </p>
6119
6120<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = class" when Postfix should
6121"trust" SMTP clients in the same IP class A/B/C networks as the
6122local machine.  Don't do this with a dialup site - it would cause
6123Postfix to "trust" your entire provider's network.  Instead, specify
6124an explicit <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand, as described with the <a href="postconf.5.html#mynetworks">mynetworks</a>
6125configuration parameter. </p>
6126
6127</ul>
6128
6129
6130</DD>
6131
6132<DT><b><a name="myorigin">myorigin</a>
6133(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
6134
6135<p>
6136The domain name that locally-posted mail appears to come
6137from, and that locally posted mail is delivered to. The default,
6138$<a href="postconf.5.html#myhostname">myhostname</a>, is adequate for small sites.  If you run a domain with
6139multiple machines, you should (1) change this to $<a href="postconf.5.html#mydomain">mydomain</a> and (2)
6140set up a domain-wide alias database that aliases each user to
6141user@that.users.mailhost.
6142</p>
6143
6144<p>
6145Example:
6146</p>
6147
6148<pre>
6149<a href="postconf.5.html#myorigin">myorigin</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
6150</pre>
6151
6152
6153</DD>
6154
6155<DT><b><a name="nested_header_checks">nested_header_checks</a>
6156(default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD>
6157
6158<p>
6159Optional lookup tables for content inspection of non-MIME message
6160headers in attached messages, as described in the <a href="header_checks.5.html">header_checks(5)</a>
6161manual page.
6162</p>
6163
6164<p>
6165This feature is available in Postfix 2.0 and later.
6166</p>
6167
6168
6169</DD>
6170
6171<DT><b><a name="newaliases_path">newaliases_path</a>
6172(default: see "postconf -d" output)</b></DT><DD>
6173
6174<p>
6175Sendmail compatibility feature that specifies the location of the
6176<a href="newaliases.1.html">newaliases(1)</a> command. This command can be used to rebuild the
6177<a href="local.8.html">local(8)</a> <a href="aliases.5.html">aliases(5)</a> database.
6178</p>
6179
6180
6181</DD>
6182
6183<DT><b><a name="non_fqdn_reject_code">non_fqdn_reject_code</a>
6184(default: 504)</b></DT><DD>
6185
6186<p>
6187The numerical Postfix SMTP server reply code when a client request
6188is rejected by the <a href="postconf.5.html#reject_non_fqdn_helo_hostname">reject_non_fqdn_helo_hostname</a>, <a href="postconf.5.html#reject_non_fqdn_sender">reject_non_fqdn_sender</a>
6189or <a href="postconf.5.html#reject_non_fqdn_recipient">reject_non_fqdn_recipient</a> restriction.
6190</p>
6191
6192
6193</DD>
6194
6195<DT><b><a name="non_smtpd_milters">non_smtpd_milters</a>
6196(default: empty)</b></DT><DD>
6197
6198<p> A list of Milter (mail filter) applications for new mail that
6199does not arrive via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server. This includes local
6200submission via the <a href="sendmail.1.html">sendmail(1)</a> command line, new mail that arrives
6201via the Postfix <a href="qmqpd.8.html">qmqpd(8)</a> server, and old mail that is re-injected
6202into the queue with "postsuper -r".  See the <a href="MILTER_README.html">MILTER_README</a> document
6203for details.  </p>
6204
6205<p> This feature is available in Postfix 2.3 and later. </p>
6206
6207
6208</DD>
6209
6210<DT><b><a name="notify_classes">notify_classes</a>
6211(default: resource, software)</b></DT><DD>
6212
6213<p>
6214The list of error classes that are reported to the postmaster. The
6215default is to report only the most serious problems. The paranoid
6216may wish to turn on the policy (UCE and mail relaying) and protocol
6217error (broken mail software) reports.
6218</p>
6219
6220<p> NOTE: postmaster notifications may contain confidential information
6221such as SASL passwords or message content.  It is the system
6222administrator's responsibility to treat such information with care.
6223</p>
6224
6225<p>
6226The error classes are:
6227</p>
6228
6229<dl>
6230
6231<dt><b>bounce</b> (also implies <b>2bounce</b>)</dt>
6232
6233<dd>Send the postmaster copies of the headers of bounced mail, and
6234send transcripts of SMTP sessions when Postfix rejects mail. The
6235notification is sent to the address specified with the
6236<a href="postconf.5.html#bounce_notice_recipient">bounce_notice_recipient</a> configuration parameter (default: postmaster).
6237</dd>
6238
6239<dt><b>2bounce</b></dt>
6240
6241<dd>Send undeliverable bounced mail to the postmaster. The notification
6242is sent to the address specified with the <a href="postconf.5.html#2bounce_notice_recipient">2bounce_notice_recipient</a>
6243configuration parameter (default: postmaster). </dd>
6244
6245<dt><b>delay</b></dt>
6246
6247<dd>Send the postmaster copies of the headers of delayed mail. The
6248notification is sent to the address specified with the
6249<a href="postconf.5.html#delay_notice_recipient">delay_notice_recipient</a> configuration parameter (default: postmaster).
6250</dd>
6251
6252<dt><b>policy</b></dt>
6253
6254<dd>Send the postmaster a transcript of the SMTP session when a
6255client request was rejected because of (UCE) policy. The notification
6256is sent to the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a>
6257configuration parameter (default: postmaster).  </dd>
6258
6259<dt><b>protocol</b></dt>
6260
6261<dd>Send the postmaster a transcript of the SMTP session in case
6262of client or server protocol errors. The notification is sent to
6263the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration
6264parameter (default: postmaster). </dd>
6265
6266<dt><b>resource</b></dt>
6267
6268<dd>Inform the postmaster of mail not delivered due to resource
6269problems.  The notification is sent to the address specified with
6270the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default:
6271postmaster). </dd>
6272
6273<dt><b>software</b></dt>
6274
6275<dd>Inform the postmaster of mail not delivered due to software
6276problems.  The notification is sent to the address specified with
6277the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default:
6278postmaster). </dd>
6279
6280</dl>
6281
6282<p>
6283Examples:
6284</p>
6285
6286<pre>
6287<a href="postconf.5.html#notify_classes">notify_classes</a> = bounce, delay, policy, protocol, resource, software
6288<a href="postconf.5.html#notify_classes">notify_classes</a> = 2bounce, resource, software
6289</pre>
6290
6291
6292</DD>
6293
6294<DT><b><a name="owner_request_special">owner_request_special</a>
6295(default: yes)</b></DT><DD>
6296
6297<p>
6298Give special treatment to owner-listname and listname-request
6299address localparts: don't split such addresses when the
6300<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is set to "-".  This feature is useful for
6301mailing lists.
6302</p>
6303
6304
6305</DD>
6306
6307<DT><b><a name="parent_domain_matches_subdomains">parent_domain_matches_subdomains</a>
6308(default: see "postconf -d" output)</b></DT><DD>
6309
6310<p>
6311What Postfix features match subdomains of "domain.tld" automatically,
6312instead of requiring an explicit ".domain.tld" pattern.  This is
6313planned backwards compatibility:  eventually, all Postfix features
6314are expected to require explicit ".domain.tld" style patterns when
6315you really want to match subdomains.
6316</p>
6317
6318
6319</DD>
6320
6321<DT><b><a name="permit_mx_backup_networks">permit_mx_backup_networks</a>
6322(default: empty)</b></DT><DD>
6323
6324<p>
6325Restrict the use of the <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> SMTP access feature to
6326only domains whose primary MX hosts match the listed networks.
6327The parameter value syntax is the same as with the <a href="postconf.5.html#mynetworks">mynetworks</a>
6328parameter; note, however, that the default value is empty.  </p>
6329
6330
6331</DD>
6332
6333<DT><b><a name="pickup_service_name">pickup_service_name</a>
6334(default: pickup)</b></DT><DD>
6335
6336<p>
6337The name of the <a href="pickup.8.html">pickup(8)</a> service. This service picks up local mail
6338submissions from the Postfix <a href="QSHAPE_README.html#maildrop_queue">maildrop queue</a>.
6339</p>
6340
6341<p>
6342This feature is available in Postfix 2.0 and later.
6343</p>
6344
6345
6346</DD>
6347
6348<DT><b><a name="plaintext_reject_code">plaintext_reject_code</a>
6349(default: 450)</b></DT><DD>
6350
6351<p>
6352The numerical Postfix SMTP server response code when a request
6353is rejected by the <b><a href="postconf.5.html#reject_plaintext_session">reject_plaintext_session</a></b> restriction.
6354</p>
6355
6356<p> This feature is available in Postfix 2.3 and later. </p>
6357
6358
6359</DD>
6360
6361<DT><b><a name="postmulti_control_commands">postmulti_control_commands</a>
6362(default: reload flush)</b></DT><DD>
6363
6364<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager
6365treats as "control" commands, that operate on running instances. For
6366these commands, disabled instances are skipped. </p>
6367
6368<p> This feature is available in Postfix 2.6 and later. </p>
6369
6370
6371</DD>
6372
6373<DT><b><a name="postmulti_start_commands">postmulti_start_commands</a>
6374(default: start)</b></DT><DD>
6375
6376<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats
6377as "start" commands. For these commands, disabled instances are "checked"
6378rather than "started", and failure to "start" a member instance of an
6379instance group will abort the start-up of later instances. </p>
6380
6381<p> This feature is available in Postfix 2.6 and later. </p>
6382
6383
6384</DD>
6385
6386<DT><b><a name="postmulti_stop_commands">postmulti_stop_commands</a>
6387(default: see "postconf -d" output)</b></DT><DD>
6388
6389<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats
6390as "stop" commands. For these commands, disabled instances are skipped,
6391and enabled instances are processed in reverse order. </p>
6392
6393<p> This feature is available in Postfix 2.6 and later. </p>
6394
6395
6396</DD>
6397
6398<DT><b><a name="prepend_delivered_header">prepend_delivered_header</a>
6399(default: command, file, forward)</b></DT><DD>
6400
6401<p> The message delivery contexts where the Postfix <a href="local.8.html">local(8)</a> delivery
6402agent prepends a Delivered-To:  message header with the address
6403that the mail was delivered to. This information is used for mail
6404delivery loop detection.  </p>
6405
6406<p>
6407By default, the Postfix local delivery agent prepends a Delivered-To:
6408header when forwarding mail and when delivering to file (mailbox)
6409and command. Turning off the Delivered-To: header when forwarding
6410mail is not recommended.
6411</p>
6412
6413<p>
6414Specify zero or more of <b>forward</b>, <b>file</b>, or <b>command</b>.
6415</p>
6416
6417<p>
6418Example:
6419</p>
6420
6421<pre>
6422<a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a> = forward
6423</pre>
6424
6425
6426</DD>
6427
6428<DT><b><a name="process_id">process_id</a>
6429(read-only)</b></DT><DD>
6430
6431<p>
6432The process ID of a Postfix command or daemon process.
6433</p>
6434
6435
6436</DD>
6437
6438<DT><b><a name="process_id_directory">process_id_directory</a>
6439(default: pid)</b></DT><DD>
6440
6441<p>
6442The location of Postfix PID files relative to $<a href="postconf.5.html#queue_directory">queue_directory</a>.
6443This is a read-only parameter.
6444</p>
6445
6446
6447</DD>
6448
6449<DT><b><a name="process_name">process_name</a>
6450(read-only)</b></DT><DD>
6451
6452<p>
6453The process name of a Postfix command or daemon process.
6454</p>
6455
6456
6457</DD>
6458
6459<DT><b><a name="propagate_unmatched_extensions">propagate_unmatched_extensions</a>
6460(default: canonical, virtual)</b></DT><DD>
6461
6462<p>
6463What address lookup tables copy an address extension from the lookup
6464key to the lookup result.
6465</p>
6466
6467<p>
6468For example, with a <a href="virtual.5.html">virtual(5)</a> mapping of "<i>joe@example.com =&gt;
6469joe.user@example.net</i>", the address "<i>joe+foo@example.com</i>"
6470would rewrite to "<i>joe.user+foo@example.net</i>".
6471</p>
6472
6473<p>
6474Specify zero or more of <b>canonical</b>, <b>virtual</b>, <b>alias</b>,
6475<b>forward</b>, <b>include</b> or <b>generic</b>. These cause
6476address extension
6477propagation with <a href="canonical.5.html">canonical(5)</a>, <a href="virtual.5.html">virtual(5)</a>, and <a href="aliases.5.html">aliases(5)</a> maps,
6478with <a href="local.8.html">local(8)</a> .forward and :include: file lookups, and with <a href="smtp.8.html">smtp(8)</a>
6479generic maps, respectively.  </p>
6480
6481<p>
6482Note: enabling this feature for types other than <b>canonical</b>
6483and <b>virtual</b> is likely to cause problems when mail is forwarded
6484to other sites, especially with mail that is sent to a mailing list
6485exploder address.
6486</p>
6487
6488<p>
6489Examples:
6490</p>
6491
6492<pre>
6493<a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual, alias,
6494        forward, include
6495<a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual
6496</pre>
6497
6498
6499</DD>
6500
6501<DT><b><a name="proxy_interfaces">proxy_interfaces</a>
6502(default: empty)</b></DT><DD>
6503
6504<p>
6505The network interface addresses that this mail system receives mail
6506on by way of a proxy or network address translation unit.
6507</p>
6508
6509<p>
6510This feature is available in Postfix 2.0 and later.
6511</p>
6512
6513<p> You must specify your "outside" proxy/NAT addresses when your
6514system is a backup MX host for other domains, otherwise mail delivery
6515loops will happen when the primary MX host is down.  </p>
6516
6517<p>
6518Example:
6519</p>
6520
6521<pre>
6522<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> = 1.2.3.4
6523</pre>
6524
6525
6526</DD>
6527
6528<DT><b><a name="proxy_read_maps">proxy_read_maps</a>
6529(default: see "postconf -d" output)</b></DT><DD>
6530
6531<p>
6532The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to
6533access for the read-only service.
6534Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored.
6535</p>
6536
6537<p>
6538This feature is available in Postfix 2.0 and later.
6539</p>
6540
6541
6542</DD>
6543
6544<DT><b><a name="proxy_write_maps">proxy_write_maps</a>
6545(default: see "postconf -d" output)</b></DT><DD>
6546
6547<p> The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to
6548access for the read-write service. Postfix-owned local database
6549files should be stored under the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>.
6550Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored.  </p>
6551
6552<p>
6553This feature is available in Postfix 2.5 and later.
6554</p>
6555
6556
6557</DD>
6558
6559<DT><b><a name="proxymap_service_name">proxymap_service_name</a>
6560(default: proxymap)</b></DT><DD>
6561
6562<p> The name of the proxymap read-only table lookup service.  This
6563service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon. </p>
6564
6565<p> This feature is available in Postfix 2.6 and later. </p>
6566
6567
6568</DD>
6569
6570<DT><b><a name="proxywrite_service_name">proxywrite_service_name</a>
6571(default: proxywrite)</b></DT><DD>
6572
6573<p> The name of the proxywrite read-write table lookup service.
6574This service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon.
6575</p>
6576
6577<p> This feature is available in Postfix 2.6 and later. </p>
6578
6579
6580</DD>
6581
6582<DT><b><a name="qmgr_clog_warn_time">qmgr_clog_warn_time</a>
6583(default: 300s)</b></DT><DD>
6584
6585<p>
6586The minimal delay between warnings that a specific destination is
6587clogging up the Postfix <a href="QSHAPE_README.html#active_queue">active queue</a>. Specify 0 to disable.
6588</p>
6589
6590<p>
6591This feature is enabled with the <a href="postconf.5.html#helpful_warnings">helpful_warnings</a> parameter.
6592</p>
6593
6594<p>
6595This feature is available in Postfix 2.0 and later.
6596</p>
6597
6598
6599</DD>
6600
6601<DT><b><a name="qmgr_fudge_factor">qmgr_fudge_factor</a>
6602(default: 100)</b></DT><DD>
6603
6604<p>
6605Obsolete feature: the percentage of delivery resources that a busy
6606mail system will use up for delivery of a large mailing  list
6607message.
6608</p>
6609
6610<p>
6611This feature exists only in the <a href="qmgr.8.html">oqmgr(8)</a> old queue manager. The
6612current queue manager solves the problem in a better way.
6613</p>
6614
6615
6616</DD>
6617
6618<DT><b><a name="qmgr_message_active_limit">qmgr_message_active_limit</a>
6619(default: 20000)</b></DT><DD>
6620
6621<p>
6622The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
6623</p>
6624
6625
6626</DD>
6627
6628<DT><b><a name="qmgr_message_recipient_limit">qmgr_message_recipient_limit</a>
6629(default: 20000)</b></DT><DD>
6630
6631<p> The maximal number of recipients held in memory by the Postfix
6632queue manager, and the maximal size of the size of the short-term,
6633in-memory "dead" destination status cache.  </p>
6634
6635
6636</DD>
6637
6638<DT><b><a name="qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a>
6639(default: 10)</b></DT><DD>
6640
6641<p>
6642The minimal number of in-memory recipients for any message. This
6643takes priority over any other in-memory recipient limits (i.e.,
6644the global <a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> and the per transport
6645_recipient_limit) if necessary. The minimum value allowed for this
6646parameter is 1.
6647</p>
6648
6649
6650</DD>
6651
6652<DT><b><a name="qmqpd_authorized_clients">qmqpd_authorized_clients</a>
6653(default: empty)</b></DT><DD>
6654
6655<p>
6656What clients are allowed to connect to the QMQP server port.
6657</p>
6658
6659<p>
6660By default, no client is allowed to use the service. This is
6661because the QMQP server will relay mail to any destination.
6662</p>
6663
6664<p>
6665Specify a list of client patterns. A list pattern specifies a host
6666name, a domain name, an internet address, or a network/mask pattern,
6667where the mask specifies the number of bits in the network part.
6668When a pattern specifies a file name, its contents are substituted
6669for the file name; when a pattern is a "<a href="DATABASE_README.html">type:table</a>" table specification,
6670table lookup is used instead.  </p>
6671
6672<p>
6673Patterns are separated by whitespace and/or commas. In order to
6674reverse the result, precede a pattern with an
6675exclamation point (!). The form "!/file/name" is supported only
6676in Postfix version 2.4 and later.
6677</p>
6678
6679<p>
6680Example:
6681</p>
6682
6683<pre>
6684<a href="postconf.5.html#qmqpd_authorized_clients">qmqpd_authorized_clients</a> = !192.168.0.1, 192.168.0.0/24
6685</pre>
6686
6687
6688</DD>
6689
6690<DT><b><a name="qmqpd_client_port_logging">qmqpd_client_port_logging</a>
6691(default: no)</b></DT><DD>
6692
6693<p> Enable logging of the remote QMQP client port in addition to
6694the hostname and IP address. The logging format is "host[address]:port".
6695</p>
6696
6697<p> This feature is available in Postfix 2.5 and later. </p>
6698
6699
6700</DD>
6701
6702<DT><b><a name="qmqpd_error_delay">qmqpd_error_delay</a>
6703(default: 1s)</b></DT><DD>
6704
6705<p>
6706How long the QMQP server will pause before sending a negative reply
6707to the client. The purpose is to slow down confused or malicious
6708clients.
6709</p>
6710
6711<p>
6712Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
6713The default time unit is s (seconds).
6714</p>
6715
6716
6717</DD>
6718
6719<DT><b><a name="qmqpd_timeout">qmqpd_timeout</a>
6720(default: 300s)</b></DT><DD>
6721
6722<p>
6723The time limit for sending or receiving information over the network.
6724If a read or write operation blocks for more than $<a href="postconf.5.html#qmqpd_timeout">qmqpd_timeout</a>
6725seconds the QMQP server gives up and disconnects.
6726</p>
6727
6728<p>
6729Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
6730The default time unit is s (seconds).
6731</p>
6732
6733
6734</DD>
6735
6736<DT><b><a name="queue_directory">queue_directory</a>
6737(default: see "postconf -d" output)</b></DT><DD>
6738
6739<p>
6740The location of the Postfix top-level queue directory. This is the
6741root directory of Postfix daemon processes that run chrooted.
6742</p>
6743
6744
6745</DD>
6746
6747<DT><b><a name="queue_file_attribute_count_limit">queue_file_attribute_count_limit</a>
6748(default: 100)</b></DT><DD>
6749
6750<p>
6751The maximal number of (name=value) attributes that may be stored
6752in a Postfix queue file. The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a>
6753server.
6754</p>
6755
6756<p>
6757This feature is available in Postfix 2.0 and later.
6758</p>
6759
6760
6761</DD>
6762
6763<DT><b><a name="queue_minfree">queue_minfree</a>
6764(default: 0)</b></DT><DD>
6765
6766<p>
6767The minimal amount of free space in bytes in the queue file system
6768that is needed to receive mail.  This is currently used by the SMTP
6769server to decide if it will accept any mail at all.
6770</p>
6771
6772<p>
6773By default, the Postfix version 2.1 SMTP server rejects MAIL FROM commands
6774when the amount of free space is less than 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a>.
6775To specify a higher minimum free space limit, specify a <a href="postconf.5.html#queue_minfree">queue_minfree</a>
6776value that is at least 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a>.
6777</p>
6778
6779<p>
6780With Postfix versions 2.0 and earlier, a <a href="postconf.5.html#queue_minfree">queue_minfree</a> value of
6781zero means there is no minimum required amount of free space.
6782</p>
6783
6784
6785</DD>
6786
6787<DT><b><a name="queue_run_delay">queue_run_delay</a>
6788(default: 300s)</b></DT><DD>
6789
6790<p>
6791The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue manager;
6792prior to Postfix 2.4 the default value was 1000s.
6793</p>
6794
6795<p> This parameter should be set less than or equal to
6796$<a href="postconf.5.html#minimal_backoff_time">minimal_backoff_time</a>. See also $<a href="postconf.5.html#maximal_backoff_time">maximal_backoff_time</a>.  </p>
6797
6798<p>
6799Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
6800The default time unit is s (seconds).
6801</p>
6802
6803
6804</DD>
6805
6806<DT><b><a name="queue_service_name">queue_service_name</a>
6807(default: qmgr)</b></DT><DD>
6808
6809<p>
6810The name of the <a href="qmgr.8.html">qmgr(8)</a> service. This service manages the Postfix
6811queue and schedules delivery requests.
6812</p>
6813
6814<p>
6815This feature is available in Postfix 2.0 and later.
6816</p>
6817
6818
6819</DD>
6820
6821<DT><b><a name="rbl_reply_maps">rbl_reply_maps</a>
6822(default: empty)</b></DT><DD>
6823
6824<p>
6825Optional lookup tables with RBL response templates. The tables are
6826indexed by the RBL domain name. By default, Postfix uses the default
6827template as specified with the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> configuration
6828parameter. See there for a discussion of the syntax of RBL reply
6829templates.
6830</p>
6831
6832<p>
6833This feature is available in Postfix 2.0 and later.
6834</p>
6835
6836
6837</DD>
6838
6839<DT><b><a name="readme_directory">readme_directory</a>
6840(default: see "postconf -d" output)</b></DT><DD>
6841
6842<p>
6843The location of Postfix README files that describe how to build,
6844configure or operate a specific Postfix subsystem or feature.
6845</p>
6846
6847
6848</DD>
6849
6850<DT><b><a name="receive_override_options">receive_override_options</a>
6851(default: empty)</b></DT><DD>
6852
6853<p> Enable or disable recipient validation, built-in content
6854filtering, or address mapping. Typically, these are specified in
6855<a href="master.5.html">master.cf</a> as command-line arguments for the <a href="smtpd.8.html">smtpd(8)</a>, <a href="qmqpd.8.html">qmqpd(8)</a> or
6856<a href="pickup.8.html">pickup(8)</a> daemons. </p>
6857
6858<p> Specify zero or more of the following options.  The options
6859override <a href="postconf.5.html">main.cf</a> settings and are either implemented by <a href="smtpd.8.html">smtpd(8)</a>,
6860<a href="qmqpd.8.html">qmqpd(8)</a>, or <a href="pickup.8.html">pickup(8)</a> themselves, or they are forwarded to the
6861cleanup server.  </p>
6862
6863<dl>
6864
6865<dt><b><a name="no_unknown_recipient_checks">no_unknown_recipient_checks</a></b></dt>
6866
6867<dd>Do not try to reject unknown recipients (SMTP server only).
6868This is typically specified AFTER an external content filter.
6869</dd>
6870
6871<dt><b><a name="no_address_mappings">no_address_mappings</a></b></dt>
6872
6873<dd>Disable canonical address mapping, virtual alias map expansion,
6874address masquerading, and automatic BCC (blind carbon-copy)
6875recipients. This is typically specified BEFORE an external content
6876filter. </dd>
6877
6878<dt><b><a name="no_header_body_checks">no_header_body_checks</a></b></dt>
6879
6880<dd>Disable header/body_checks. This is typically specified AFTER
6881an external content filter. </dd>
6882
6883<dt><b><a name="no_milters">no_milters</a></b></dt>
6884
6885<dd>Disable Milter (mail filter) applications. This is typically
6886specified AFTER an external content filter. </dd>
6887
6888</dl>
6889
6890<p>
6891Note: when the "BEFORE content filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a>
6892setting is specified in the <a href="postconf.5.html">main.cf</a> file, specify the "AFTER content
6893filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a> setting in <a href="master.5.html">master.cf</a> (and vice
6894versa).
6895</p>
6896
6897<p>
6898Examples:
6899</p>
6900
6901<pre>
6902<a href="postconf.5.html#receive_override_options">receive_override_options</a> =
6903    <a href="postconf.5.html#no_unknown_recipient_checks">no_unknown_recipient_checks</a>, <a href="postconf.5.html#no_header_body_checks">no_header_body_checks</a>
6904<a href="postconf.5.html#receive_override_options">receive_override_options</a> = <a href="postconf.5.html#no_address_mappings">no_address_mappings</a>
6905</pre>
6906
6907<p>
6908This feature is available in Postfix 2.1 and later.
6909</p>
6910
6911
6912</DD>
6913
6914<DT><b><a name="recipient_bcc_maps">recipient_bcc_maps</a>
6915(default: empty)</b></DT><DD>
6916
6917<p>
6918Optional BCC (blind carbon-copy) address lookup tables, indexed by
6919recipient address.  The BCC address (multiple results are not
6920supported) is added when mail enters from outside of Postfix.
6921</p>
6922
6923<p>
6924This feature is available in Postfix 2.1 and later.
6925</p>
6926
6927<p>
6928The table search order is as follows:
6929</p>
6930
6931<ul>
6932
6933<li> Look up the "user+extension@domain.tld" address including the
6934optional address extension.
6935
6936<li> Look up the "user@domain.tld" address without the optional
6937address extension.
6938
6939<li> Look up the "user+extension" address local part when the
6940recipient domain equals $<a href="postconf.5.html#myorigin">myorigin</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
6941or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
6942
6943<li> Look up the "user" address local part when the recipient domain
6944equals $<a href="postconf.5.html#myorigin">myorigin</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
6945
6946<li> Look up the "@domain.tld" part.
6947
6948</ul>
6949
6950<p>
6951Specify the types and names of databases to use.  After change,
6952run "<b>postmap /etc/postfix/recipient_bcc</b>".
6953</p>
6954
6955<p>
6956Note: if mail to the BCC address bounces it will be returned to
6957the sender.
6958</p>
6959
6960<p> Note: automatic BCC recipients are produced only for new mail.
6961To avoid mailer loops, automatic BCC recipients are not generated
6962for mail that Postfix forwards internally, nor for mail that Postfix
6963generates itself. </p>
6964
6965<p>
6966Example:
6967</p>
6968
6969<pre>
6970<a href="postconf.5.html#recipient_bcc_maps">recipient_bcc_maps</a> = hash:/etc/postfix/recipient_bcc
6971</pre>
6972
6973
6974</DD>
6975
6976<DT><b><a name="recipient_canonical_classes">recipient_canonical_classes</a>
6977(default: envelope_recipient, header_recipient)</b></DT><DD>
6978
6979<p> What addresses are subject to <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address
6980mapping.  By default, <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address mapping is
6981applied to envelope recipient addresses, and to header recipient
6982addresses.  </p>
6983
6984<p> Specify one or more of: envelope_recipient, header_recipient
6985</p>
6986
6987<p> This feature is available in Postfix 2.2 and later. </p>
6988
6989
6990</DD>
6991
6992<DT><b><a name="recipient_canonical_maps">recipient_canonical_maps</a>
6993(default: empty)</b></DT><DD>
6994
6995<p>
6996Optional address mapping lookup tables for envelope and header
6997recipient addresses.
6998The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>.
6999</p>
7000
7001<p>
7002Note: $<a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> is processed before $<a href="postconf.5.html#canonical_maps">canonical_maps</a>.
7003</p>
7004
7005<p>
7006Example:
7007</p>
7008
7009<pre>
7010<a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> = hash:/etc/postfix/recipient_canonical
7011</pre>
7012
7013
7014</DD>
7015
7016<DT><b><a name="recipient_delimiter">recipient_delimiter</a>
7017(default: empty)</b></DT><DD>
7018
7019<p>
7020The separator between user names and address extensions (user+foo).
7021See <a href="canonical.5.html">canonical(5)</a>, <a href="local.8.html">local(8)</a>, <a href="relocated.5.html">relocated(5)</a> and <a href="virtual.5.html">virtual(5)</a> for the
7022effects this has on aliases, canonical, virtual, relocated and
7023on .forward file lookups.  Basically, the software tries user+foo
7024and .forward+foo before trying user and .forward.
7025</p>
7026
7027<p>
7028Example:
7029</p>
7030
7031<pre>
7032<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> = +
7033</pre>
7034
7035
7036</DD>
7037
7038<DT><b><a name="reject_code">reject_code</a>
7039(default: 554)</b></DT><DD>
7040
7041<p>
7042The numerical Postfix SMTP server response code when a remote SMTP
7043client request is rejected by the "reject" restriction.
7044</p>
7045
7046<p>
7047Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
7048</p>
7049
7050
7051</DD>
7052
7053<DT><b><a name="reject_tempfail_action">reject_tempfail_action</a>
7054(default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>)</b></DT><DD>
7055
7056<p> The Postfix SMTP server's action when a reject-type restriction
7057fails due to a temporary error condition. Specify "defer" to defer
7058the remote SMTP client request immediately. With the default
7059"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
7060for opportunities to reject mail, and defers the client request
7061only if it would otherwise be accepted. </p>
7062
7063<p> For finer control, see: <a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a>,
7064<a href="postconf.5.html#unverified_sender_tempfail_action">unverified_sender_tempfail_action</a>, <a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a>,
7065and <a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a>.  </p>
7066
7067<p> This feature is available in Postfix 2.6 and later. </p>
7068
7069
7070</DD>
7071
7072<DT><b><a name="relay_clientcerts">relay_clientcerts</a>
7073(default: empty)</b></DT><DD>
7074
7075<p> List of tables with remote SMTP client-certificate fingerprints
7076for which the Postfix SMTP server will allow access with the
7077<a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> feature.
7078The fingerprint digest algorithm is configurable via the
7079<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
7080Postfix version 2.5).  </p>
7081
7082<p> Postfix lookup tables are in the form of (key, value) pairs.
7083Since we only need the key, the value can be chosen freely, e.g.
7084the name of the user or host:
7085D7:04:2F:A7:0B:8C:A5:21:FA:31:77:E1:41:8A:EE:80 lutzpc.at.home </p>
7086
7087<p> Example: </p>
7088
7089<pre>
7090<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a> = hash:/etc/postfix/relay_clientcerts
7091</pre>
7092
7093<p>For more fine-grained control, use <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> to select
7094an appropriate <a href="access.5.html">access(5)</a> policy for each client.
7095See <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a>.</p>
7096
7097<p>This feature is available with Postfix version 2.2.</p>
7098
7099
7100</DD>
7101
7102<DT><b><a name="relay_destination_concurrency_limit">relay_destination_concurrency_limit</a>
7103(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
7104
7105<p> The maximal number of parallel deliveries to the same destination
7106via the relay message delivery transport. This limit is enforced
7107by the queue manager. The message delivery transport name is the
7108first field in the entry in the <a href="master.5.html">master.cf</a> file.  </p>
7109
7110<p> This feature is available in Postfix 2.0 and later. </p>
7111
7112
7113</DD>
7114
7115<DT><b><a name="relay_destination_recipient_limit">relay_destination_recipient_limit</a>
7116(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
7117
7118<p> The maximal number of recipients per message for the relay
7119message delivery transport. This limit is enforced by the queue
7120manager. The message delivery transport name is the first field in
7121the entry in the <a href="master.5.html">master.cf</a> file.  </p>
7122
7123<p> Setting this parameter to a value of 1 changes the meaning of
7124<a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> from concurrency per domain
7125into concurrency per recipient.  </p>
7126
7127<p> This feature is available in Postfix 2.0 and later. </p>
7128
7129
7130</DD>
7131
7132<DT><b><a name="relay_domains">relay_domains</a>
7133(default: $<a href="postconf.5.html#mydestination">mydestination</a>)</b></DT><DD>
7134
7135<p> What destination domains (and subdomains thereof) this system
7136will relay mail to. Subdomain matching is controlled with the
7137<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter. For details about how
7138the <a href="postconf.5.html#relay_domains">relay_domains</a> value is used, see the description of the
7139<a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> and <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> SMTP recipient
7140restrictions.  </p>
7141
7142<p> Domains that match $<a href="postconf.5.html#relay_domains">relay_domains</a> are delivered with the
7143$<a href="postconf.5.html#relay_transport">relay_transport</a> mail delivery transport. The SMTP server validates
7144recipient addresses with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> and rejects non-existent
7145recipients. See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the
7146<a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file.  </p>
7147
7148<p> Note: Postfix will not automatically forward mail for domains
7149that list this system as their primary or backup MX host. See the
7150<a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> restriction in the <a href="postconf.5.html">postconf(5)</a> manual page.  </p>
7151
7152<p> Specify a list of host or domain names, "/file/name" patterns
7153or "<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace.
7154Continue long lines by starting the next line with whitespace. A
7155"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
7156lookup table is matched when a (parent) domain appears as lookup
7157key. Specify "!pattern" to exclude a domain from the list. The form
7158"!/file/name" is supported only in Postfix version 2.4 and later.
7159</p>
7160
7161
7162</DD>
7163
7164<DT><b><a name="relay_domains_reject_code">relay_domains_reject_code</a>
7165(default: 554)</b></DT><DD>
7166
7167<p>
7168The numerical Postfix SMTP server response code when a client
7169request is rejected by the <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> recipient
7170restriction.
7171</p>
7172
7173<p>
7174Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
7175</p>
7176
7177
7178</DD>
7179
7180<DT><b><a name="relay_recipient_maps">relay_recipient_maps</a>
7181(default: empty)</b></DT><DD>
7182
7183<p> Optional lookup tables with all valid addresses in the domains
7184that match $<a href="postconf.5.html#relay_domains">relay_domains</a>. Specify @domain as a wild-card for
7185domains that have no valid recipient list, and become a source of
7186backscatter mail: Postfix accepts spam for non-existent recipients
7187and then floods innocent people with undeliverable mail.  Technically,
7188tables
7189listed with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> are used as lists: Postfix needs
7190to know only if a lookup string is found or not, but it does not
7191use the result from table lookup.  </p>
7192
7193<p>
7194If this parameter is non-empty, then the Postfix SMTP server will reject
7195mail to unknown relay users. This feature is off by default.
7196</p>
7197
7198<p>
7199See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a>
7200file.
7201</p>
7202
7203<p>
7204Example:
7205</p>
7206
7207<pre>
7208<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> = hash:/etc/postfix/relay_recipients
7209</pre>
7210
7211<p>
7212This feature is available in Postfix 2.0 and later.
7213</p>
7214
7215
7216</DD>
7217
7218<DT><b><a name="relay_transport">relay_transport</a>
7219(default: relay)</b></DT><DD>
7220
7221<p>
7222The default mail delivery transport and next-hop destination for
7223remote delivery to domains listed with $<a href="postconf.5.html#relay_domains">relay_domains</a>. In order of
7224decreasing precedence, the nexthop destination is taken from
7225$<a href="postconf.5.html#relay_transport">relay_transport</a>, $<a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>, $<a href="postconf.5.html#relayhost">relayhost</a>, or
7226from the recipient domain. This information can be overruled with
7227the <a href="transport.5.html">transport(5)</a> table.
7228</p>
7229
7230<p>
7231Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
7232is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
7233The <i>:nexthop</i> part is optional.  For more details see the
7234<a href="transport.5.html">transport(5)</a> manual page.
7235</p>
7236
7237<p>
7238See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a>
7239file.
7240</p>
7241
7242<p>
7243This feature is available in Postfix 2.0 and later.
7244</p>
7245
7246
7247</DD>
7248
7249<DT><b><a name="relayhost">relayhost</a>
7250(default: empty)</b></DT><DD>
7251
7252<p>
7253The next-hop destination of non-local mail; overrides non-local
7254domains in recipient addresses. This information is overruled with
7255<a href="postconf.5.html#relay_transport">relay_transport</a>, <a href="postconf.5.html#default_transport">default_transport</a>, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
7256and with the <a href="transport.5.html">transport(5)</a> table.
7257</p>
7258
7259<p>
7260On an intranet, specify the organizational domain name. If your
7261internal DNS uses no MX records, specify the name of the intranet
7262gateway host instead.
7263</p>
7264
7265<p>
7266In the case of SMTP, specify a domain name, hostname, hostname:port,
7267[hostname]:port, [hostaddress] or [hostaddress]:port. The form
7268[hostname] turns off MX lookups.
7269</p>
7270
7271<p>
7272If you're connected via UUCP, see the <a href="UUCP_README.html">UUCP_README</a> file for useful
7273information.
7274</p>
7275
7276<p>
7277Examples:
7278</p>
7279
7280<pre>
7281<a href="postconf.5.html#relayhost">relayhost</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
7282<a href="postconf.5.html#relayhost">relayhost</a> = [gateway.example.com]
7283<a href="postconf.5.html#relayhost">relayhost</a> = uucphost
7284<a href="postconf.5.html#relayhost">relayhost</a> = [an.ip.add.ress]
7285</pre>
7286
7287
7288</DD>
7289
7290<DT><b><a name="relocated_maps">relocated_maps</a>
7291(default: empty)</b></DT><DD>
7292
7293<p>
7294Optional lookup tables with new contact information for users or
7295domains that no longer exist.  The table format and lookups are
7296documented in <a href="relocated.5.html">relocated(5)</a>.
7297</p>
7298
7299<p>
7300If you use this feature, run "<b>postmap /etc/postfix/relocated</b>" to
7301build the necessary DBM or DB file after change, then "<b>postfix
7302reload</b>" to make the changes visible.
7303</p>
7304
7305<p>
7306Examples:
7307</p>
7308
7309<pre>
7310<a href="postconf.5.html#relocated_maps">relocated_maps</a> = dbm:/etc/postfix/relocated
7311<a href="postconf.5.html#relocated_maps">relocated_maps</a> = hash:/etc/postfix/relocated
7312</pre>
7313
7314
7315</DD>
7316
7317<DT><b><a name="remote_header_rewrite_domain">remote_header_rewrite_domain</a>
7318(default: empty)</b></DT><DD>
7319
7320<p> Don't rewrite message headers from remote clients at all when
7321this parameter is empty; otherwise, rewrite message headers and
7322append the specified domain name to incomplete addresses.  The
7323<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter controls what clients Postfix
7324considers local. </p>
7325
7326<p> Examples:  </p>
7327
7328<p> The safe setting: append "domain.invalid" to incomplete header
7329addresses from remote SMTP clients, so that those addresses cannot
7330be confused with local addresses. </p>
7331
7332<blockquote>
7333<pre>
7334<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> = domain.invalid
7335</pre>
7336</blockquote>
7337
7338<p> The default, purist, setting: don't rewrite headers from remote
7339clients at all. </p>
7340
7341<blockquote>
7342<pre>
7343<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> =
7344</pre>
7345</blockquote>
7346
7347
7348</DD>
7349
7350<DT><b><a name="require_home_directory">require_home_directory</a>
7351(default: no)</b></DT><DD>
7352
7353<p>
7354Whether or not a <a href="local.8.html">local(8)</a> recipient's home directory must exist
7355before mail delivery is attempted. By default this test is disabled.
7356It can be useful for environments that import home directories to
7357the mail server (NOT RECOMMENDED).
7358</p>
7359
7360
7361</DD>
7362
7363<DT><b><a name="resolve_dequoted_address">resolve_dequoted_address</a>
7364(default: yes)</b></DT><DD>
7365
7366<p> Resolve a recipient address safely instead of correctly, by
7367looking inside quotes.  </p>
7368
7369<p> By default, the Postfix address resolver does not quote the
7370address localpart as per <a href="http://tools.ietf.org/html/rfc822">RFC 822</a>, so that additional @ or % or !
7371operators remain visible. This behavior is safe but it is also
7372technically incorrect.  </p>
7373
7374<p> If you specify "<a href="postconf.5.html#resolve_dequoted_address">resolve_dequoted_address</a> = no", then
7375the Postfix
7376resolver will not know about additional @ etc. operators in the
7377address localpart. This opens opportunities for obscure mail relay
7378attacks with user@domain@domain addresses when Postfix provides
7379backup MX service for Sendmail systems.  </p>
7380
7381
7382</DD>
7383
7384<DT><b><a name="resolve_null_domain">resolve_null_domain</a>
7385(default: no)</b></DT><DD>
7386
7387<p> Resolve an address that ends in the "@" null domain as if the
7388local hostname were specified, instead of rejecting the address as
7389invalid.  </p>
7390
7391<p> This feature is available in Postfix 2.1 and later.
7392Earlier versions always resolve the null domain as the local
7393hostname.  </p>
7394
7395<p> The Postfix SMTP server uses this feature to reject mail from
7396or to addresses that end in the "@" null domain, and from addresses
7397that rewrite into a form that ends in the "@" null domain.  </p>
7398
7399
7400</DD>
7401
7402<DT><b><a name="resolve_numeric_domain">resolve_numeric_domain</a>
7403(default: no)</b></DT><DD>
7404
7405<p> Resolve "user@ipaddress" as "user@[ipaddress]", instead of
7406rejecting the address as invalid.  </p>
7407
7408<p> This feature is available in Postfix 2.3 and later.
7409
7410
7411</DD>
7412
7413<DT><b><a name="rewrite_service_name">rewrite_service_name</a>
7414(default: rewrite)</b></DT><DD>
7415
7416<p>
7417The name of the address rewriting service. This service rewrites
7418addresses to standard form and resolves them to a (delivery method,
7419next-hop host, recipient) triple.
7420</p>
7421
7422<p>
7423This feature is available in Postfix 2.0 and later.
7424</p>
7425
7426
7427</DD>
7428
7429<DT><b><a name="sample_directory">sample_directory</a>
7430(default: /etc/postfix)</b></DT><DD>
7431
7432<p>
7433The name of the directory with example Postfix configuration files.
7434</p>
7435
7436
7437</DD>
7438
7439<DT><b><a name="send_cyrus_sasl_authzid">send_cyrus_sasl_authzid</a>
7440(default: no)</b></DT><DD>
7441
7442<p> When authenticating to a remote SMTP or LMTP server with the
7443default setting "no", send no SASL authoriZation ID (authzid); send
7444only the SASL authentiCation ID (authcid) plus the authcid's password.
7445</p>
7446
7447<p> The non-default setting "yes" enables the behavior of older
7448Postfix versions.  These always send a SASL authzid that is equal
7449to the SASL authcid, but this causes inter-operability problems
7450with some SMTP servers. </p>
7451
7452<p> This feature is available in Postfix 2.4.4 and later. </p>
7453
7454
7455</DD>
7456
7457<DT><b><a name="sender_based_routing">sender_based_routing</a>
7458(default: no)</b></DT><DD>
7459
7460<p>
7461This parameter should not be used. It was replaced by <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
7462in Postfix version 2.3.
7463</p>
7464
7465
7466</DD>
7467
7468<DT><b><a name="sender_bcc_maps">sender_bcc_maps</a>
7469(default: empty)</b></DT><DD>
7470
7471<p> Optional BCC (blind carbon-copy) address lookup tables, indexed
7472by sender address.  The BCC address (multiple results are not
7473supported) is added when mail enters from outside of Postfix.  </p>
7474
7475<p>
7476This feature is available in Postfix 2.1 and later.
7477</p>
7478
7479<p>
7480The table search order is as follows:
7481</p>
7482
7483<ul>
7484
7485<li> Look up the "user+extension@domain.tld" address including the
7486optional address extension.
7487
7488<li> Look up the "user@domain.tld" address without the optional
7489address extension.
7490
7491<li> Look up the "user+extension" address local part when the
7492sender domain equals $<a href="postconf.5.html#myorigin">myorigin</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
7493or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
7494
7495<li> Look up the "user" address local part when the sender domain
7496equals $<a href="postconf.5.html#myorigin">myorigin</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
7497
7498<li> Look up the "@domain.tld" part.
7499
7500</ul>
7501
7502<p>
7503Specify the types and names of databases to use.  After change,
7504run "<b>postmap /etc/postfix/sender_bcc</b>".
7505</p>
7506
7507<p>
7508Note: if mail to the BCC address bounces it will be returned to
7509the sender.
7510</p>
7511
7512<p> Note: automatic BCC recipients are produced only for new mail.
7513To avoid mailer loops, automatic BCC recipients are not generated
7514for mail that Postfix forwards internally, nor for mail that Postfix
7515generates itself. </p>
7516
7517<p>
7518Example:
7519</p>
7520
7521<pre>
7522<a href="postconf.5.html#sender_bcc_maps">sender_bcc_maps</a> = hash:/etc/postfix/sender_bcc
7523</pre>
7524
7525
7526</DD>
7527
7528<DT><b><a name="sender_canonical_classes">sender_canonical_classes</a>
7529(default: envelope_sender, header_sender)</b></DT><DD>
7530
7531<p> What addresses are subject to <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address
7532mapping.  By default, <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address mapping is
7533applied to envelope sender addresses, and to header sender addresses.
7534</p>
7535
7536<p> Specify one or more of: envelope_sender, header_sender </p>
7537
7538<p> This feature is available in Postfix 2.2 and later. </p>
7539
7540
7541</DD>
7542
7543<DT><b><a name="sender_canonical_maps">sender_canonical_maps</a>
7544(default: empty)</b></DT><DD>
7545
7546<p>
7547Optional address mapping lookup tables for envelope and header
7548sender addresses.
7549The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>.
7550</p>
7551
7552<p>
7553Example: you want to rewrite the SENDER address "user@ugly.domain"
7554to "user@pretty.domain", while still being able to send mail to
7555the RECIPIENT address "user@ugly.domain".
7556</p>
7557
7558<p>
7559Note: $<a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> is processed before $<a href="postconf.5.html#canonical_maps">canonical_maps</a>.
7560</p>
7561
7562<p>
7563Example:
7564</p>
7565
7566<pre>
7567<a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> = hash:/etc/postfix/sender_canonical
7568</pre>
7569
7570
7571</DD>
7572
7573<DT><b><a name="sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
7574(default: empty)</b></DT><DD>
7575
7576<p> A sender-dependent override for the global <a href="postconf.5.html#relayhost">relayhost</a> parameter
7577setting. The tables are searched by the envelope sender address and
7578@domain. A lookup result of DUNNO terminates the search without
7579overriding the global <a href="postconf.5.html#relayhost">relayhost</a> parameter setting (Postfix 2.6 and
7580later). This information is overruled with <a href="postconf.5.html#relay_transport">relay_transport</a>,
7581<a href="postconf.5.html#default_transport">default_transport</a> and with the <a href="transport.5.html">transport(5)</a> table. </p>
7582
7583<p> For safety reasons, this feature does not allow $number
7584substitutions in regular expression maps. </p>
7585
7586<p>
7587This feature is available in Postfix 2.3 and later.
7588</p>
7589
7590
7591</DD>
7592
7593<DT><b><a name="sendmail_path">sendmail_path</a>
7594(default: see "postconf -d" output)</b></DT><DD>
7595
7596<p>
7597A Sendmail compatibility feature that specifies the location of
7598the Postfix <a href="sendmail.1.html">sendmail(1)</a> command. This command can be used to
7599submit mail into the Postfix queue.
7600</p>
7601
7602
7603</DD>
7604
7605<DT><b><a name="service_throttle_time">service_throttle_time</a>
7606(default: 60s)</b></DT><DD>
7607
7608<p>
7609How long the Postfix <a href="master.8.html">master(8)</a> waits before forking a server that
7610appears to be malfunctioning.
7611</p>
7612
7613<p>
7614Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7615The default time unit is s (seconds).
7616</p>
7617
7618
7619</DD>
7620
7621<DT><b><a name="setgid_group">setgid_group</a>
7622(default: postdrop)</b></DT><DD>
7623
7624<p>
7625The group ownership of set-gid Postfix commands and of group-writable
7626Postfix directories. When this parameter value is changed you need
7627to re-run "<b>postfix set-permissions</b>" (with Postfix version 2.0 and
7628earlier: "<b>/etc/postfix/post-install set-permissions</b>".
7629</p>
7630
7631
7632</DD>
7633
7634<DT><b><a name="show_user_unknown_table_name">show_user_unknown_table_name</a>
7635(default: yes)</b></DT><DD>
7636
7637<p>
7638Display the name of the recipient table in the "User unknown"
7639responses.  The extra detail makes trouble shooting easier but also
7640reveals information that is nobody elses business.
7641</p>
7642
7643<p>
7644This feature is available in Postfix 2.0 and later.
7645</p>
7646
7647
7648</DD>
7649
7650<DT><b><a name="showq_service_name">showq_service_name</a>
7651(default: showq)</b></DT><DD>
7652
7653<p>
7654The name of the <a href="showq.8.html">showq(8)</a> service. This service produces mail queue
7655status reports.
7656</p>
7657
7658<p>
7659This feature is available in Postfix 2.0 and later.
7660</p>
7661
7662
7663</DD>
7664
7665<DT><b><a name="smtp_always_send_ehlo">smtp_always_send_ehlo</a>
7666(default: yes)</b></DT><DD>
7667
7668<p>
7669Always send EHLO at the start of an SMTP session.
7670</p>
7671
7672<p>
7673With "<a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> = no", Postfix sends EHLO only when
7674the word "ESMTP" appears in the server greeting banner (example:
7675220 spike.porcupine.org ESMTP Postfix).
7676</p>
7677
7678
7679</DD>
7680
7681<DT><b><a name="smtp_bind_address">smtp_bind_address</a>
7682(default: empty)</b></DT><DD>
7683
7684<p>
7685An optional numerical network address that the Postfix SMTP client
7686should bind to when making an IPv4 connection.
7687</p>
7688
7689<p>
7690This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or
7691it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client,
7692for example:
7693</p>
7694
7695<blockquote>
7696<pre>
7697/etc/postfix/<a href="master.5.html">master.cf</a>:
7698    smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>=11.22.33.44
7699</pre>
7700</blockquote>
7701
7702<p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv4
7703address, and that address is a non-loopback address, it is
7704automatically used as the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>.  This supports virtual
7705IP hosting, but can be a problem on multi-homed firewalls. See the
7706<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p>
7707
7708<p> Note 2: address information may be enclosed inside <tt>[]</tt>,
7709but this form is not required here. </p>
7710
7711
7712</DD>
7713
7714<DT><b><a name="smtp_bind_address6">smtp_bind_address6</a>
7715(default: empty)</b></DT><DD>
7716
7717<p>
7718An optional numerical network address that the Postfix SMTP client
7719should bind to when making an IPv6 connection.
7720</p>
7721
7722<p> This feature is available in Postfix 2.2 and later. </p>
7723
7724<p>
7725This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or
7726it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client,
7727for example:
7728</p>
7729
7730<blockquote>
7731<pre>
7732/etc/postfix/<a href="master.5.html">master.cf</a>:
7733    smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>=1:2:3:4:5:6:7:8
7734</pre>
7735</blockquote>
7736
7737<p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv6
7738address, and that address is a non-loopback address, it is
7739automatically used as the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>.  This supports virtual
7740IP hosting, but can be a problem on multi-homed firewalls. See the
7741<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p>
7742
7743<p> Note 2: address information may be enclosed inside <tt>[]</tt>,
7744but this form is not recommended here. </p>
7745
7746
7747</DD>
7748
7749<DT><b><a name="smtp_body_checks">smtp_body_checks</a>
7750(default: empty)</b></DT><DD>
7751
7752<p> Restricted <a href="header_checks.5.html">body_checks(5)</a> tables for the Postfix SMTP client.
7753These tables are searched while mail is being delivered.  Actions
7754that change the delivery time or destination are not available.
7755</p>
7756
7757<p> This feature is available in Postfix 2.5 and later. </p>
7758
7759
7760</DD>
7761
7762<DT><b><a name="smtp_cname_overrides_servername">smtp_cname_overrides_servername</a>
7763(default: version dependent)</b></DT><DD>
7764
7765<p> Allow DNS CNAME records to override the servername that the
7766Postfix SMTP client uses for logging, SASL password lookup, TLS
7767policy decisions, or TLS certificate verification. The value "no"
7768hardens Postfix <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> hostname-based policies against
7769false hostname information in DNS CNAME records, and makes SASL
7770password file lookups more predictable. This is the default setting
7771as of Postfix 2.3. </p>
7772
7773<p> This feature is available in Postfix 2.2.9 and later. </p>
7774
7775
7776</DD>
7777
7778<DT><b><a name="smtp_connect_timeout">smtp_connect_timeout</a>
7779(default: 30s)</b></DT><DD>
7780
7781<p>
7782The SMTP client time limit for completing a TCP connection, or
7783zero (use the operating system built-in time limit).
7784</p>
7785
7786<p>
7787When no connection can be made within the deadline, the Postfix
7788SMTP client
7789tries the next address on the mail exchanger list. Specify 0 to
7790disable the time limit (i.e. use whatever timeout is implemented by
7791the operating system).
7792</p>
7793
7794<p>
7795Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7796The default time unit is s (seconds).
7797</p>
7798
7799
7800</DD>
7801
7802<DT><b><a name="smtp_connection_cache_destinations">smtp_connection_cache_destinations</a>
7803(default: empty)</b></DT><DD>
7804
7805<p> Permanently enable SMTP connection caching for the specified
7806destinations.  With SMTP connection caching, a connection is not
7807closed immediately after completion of a mail transaction.  Instead,
7808the connection is kept open for up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a>
7809seconds.  This allows connections to be reused for other deliveries,
7810and can improve mail delivery performance. </p>
7811
7812<p> Specify a comma or white space separated list of destinations
7813or pseudo-destinations: </p>
7814
7815<ul>
7816
7817<li> if mail is sent without a <a href="postconf.5.html#relayhost">relay host</a>: a domain name (the
7818right-hand side of an email address, without the [] around a numeric
7819IP address),
7820
7821<li> if mail is sent via a <a href="postconf.5.html#relayhost">relay host</a>: a <a href="postconf.5.html#relayhost">relay host</a> name (without
7822[] or non-default TCP port), as specified in <a href="postconf.5.html">main.cf</a> or in the
7823transport map,
7824
7825<li> if mail is sent via a UNIX-domain socket: a pathname (without
7826the unix: prefix),
7827
7828<li> a /file/name with domain names and/or <a href="postconf.5.html#relayhost">relay host</a> names as
7829defined above,
7830
7831<li> a "<a href="DATABASE_README.html">type:table</a>" with domain names and/or <a href="postconf.5.html#relayhost">relay host</a> names on
7832the left-hand side.  The right-hand side result from "<a href="DATABASE_README.html">type:table</a>"
7833lookups is ignored.
7834
7835</ul>
7836
7837<p> This feature is available in Postfix 2.2 and later. </p>
7838
7839
7840</DD>
7841
7842<DT><b><a name="smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a>
7843(default: yes)</b></DT><DD>
7844
7845<p> Temporarily enable SMTP connection caching while a destination
7846has a high volume of mail in the <a href="QSHAPE_README.html#active_queue">active queue</a>.  With SMTP connection
7847caching, a connection is not closed immediately after completion
7848of a mail transaction.  Instead, the connection is kept open for
7849up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> seconds.  This allows
7850connections to be reused for other deliveries, and can improve mail
7851delivery performance. </p>
7852
7853<p> This feature is available in Postfix 2.2 and later. </p>
7854
7855
7856</DD>
7857
7858<DT><b><a name="smtp_connection_cache_reuse_limit">smtp_connection_cache_reuse_limit</a>
7859(default: 10)</b></DT><DD>
7860
7861<p> When SMTP connection caching is enabled, the number of times that
7862an SMTP session may be reused before it is closed.
7863</p>
7864
7865<p> This feature is available in Postfix 2.2. In Postfix 2.3 it is
7866replaced by $<a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>.</p>
7867
7868
7869</DD>
7870
7871<DT><b><a name="smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a>
7872(default: 2s)</b></DT><DD>
7873
7874<p> When SMTP connection caching is enabled, the amount of time that
7875an unused SMTP client socket is kept open before it is closed.  Do
7876not specify larger values without permission from the remote sites.
7877</p>
7878
7879<p> This feature is available in Postfix 2.2 and later. </p>
7880
7881
7882</DD>
7883
7884<DT><b><a name="smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>
7885(default: 300s)</b></DT><DD>
7886
7887<p> The amount of time during which Postfix will use an SMTP
7888connection repeatedly.  The timer starts when the connection is
7889initiated (i.e. it includes the connect, greeting and helo latency,
7890in addition to the latencies of subsequent mail delivery transactions).
7891</p>
7892
7893<p> This feature addresses a performance stability problem with
7894remote SMTP servers. This problem is not specific to Postfix: it
7895can happen when any MTA sends large amounts of SMTP email to a site
7896that has multiple MX hosts. </p>
7897
7898<p> The problem starts when one of a set of MX hosts becomes slower
7899than the rest.  Even though SMTP clients connect to fast and slow
7900MX hosts with equal probability, the slow MX host ends up with more
7901simultaneous inbound connections than the faster MX hosts, because
7902the slow MX host needs more time to serve each client request. </p>
7903
7904<p> The slow MX host becomes a connection attractor.  If one MX
7905host becomes N times slower than the rest, it dominates mail delivery
7906latency unless there are more than N fast MX hosts to counter the
7907effect. And if the number of MX hosts is smaller than N, the mail
7908delivery latency becomes effectively that of the slowest MX host
7909divided by the total number of MX hosts. </p>
7910
7911<p> The solution uses connection caching in a way that differs from
7912Postfix version 2.2.  By limiting the amount of time during which a connection
7913can be used repeatedly (instead of limiting the number of deliveries
7914over that connection), Postfix not only restores fairness in the
7915distribution of simultaneous connections across a set of MX hosts,
7916it also favors deliveries over connections that perform well, which
7917is exactly what we want.  </p>
7918
7919<p> The default reuse time limit, 300s, is comparable to the various
7920smtp transaction timeouts which are fair estimates of maximum excess
7921latency for a slow delivery.  Note that hosts may accept thousands
7922of messages over a single connection within the default connection
7923reuse time limit. This number is much larger than the default Postfix
7924version 2.2 limit of 10 messages per cached connection. It may prove necessary
7925to lower the limit to avoid interoperability issues with MTAs that
7926exhibit bugs when many messages are delivered via a single connection.
7927A lower reuse time limit risks losing the benefit of connection
7928reuse when the average connection and mail delivery latency exceeds
7929the reuse time limit.  </p>
7930
7931<p> This feature is available in Postfix 2.3 and later. </p>
7932
7933
7934</DD>
7935
7936<DT><b><a name="smtp_data_done_timeout">smtp_data_done_timeout</a>
7937(default: 600s)</b></DT><DD>
7938
7939<p>
7940The SMTP client time limit for sending the SMTP ".", and for receiving
7941the server response.
7942</p>
7943
7944<p>
7945When no response is received within the deadline, a warning is
7946logged that the mail may be delivered multiple times.
7947</p>
7948
7949<p>
7950Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7951The default time unit is s (seconds).
7952</p>
7953
7954
7955</DD>
7956
7957<DT><b><a name="smtp_data_init_timeout">smtp_data_init_timeout</a>
7958(default: 120s)</b></DT><DD>
7959
7960<p>
7961The SMTP client time limit for sending the SMTP DATA command, and for
7962receiving the server response.
7963</p>
7964
7965<p>
7966Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7967The default time unit is s (seconds).
7968</p>
7969
7970
7971</DD>
7972
7973<DT><b><a name="smtp_data_xfer_timeout">smtp_data_xfer_timeout</a>
7974(default: 180s)</b></DT><DD>
7975
7976<p>
7977The SMTP client time limit for sending the SMTP message content.
7978When the connection makes no progress for more than $<a href="postconf.5.html#smtp_data_xfer_timeout">smtp_data_xfer_timeout</a>
7979seconds the Postfix SMTP client terminates the transfer.
7980</p>
7981
7982<p>
7983Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7984The default time unit is s (seconds).
7985</p>
7986
7987
7988</DD>
7989
7990<DT><b><a name="smtp_defer_if_no_mx_address_found">smtp_defer_if_no_mx_address_found</a>
7991(default: no)</b></DT><DD>
7992
7993<p>
7994Defer mail delivery when no MX record resolves to an IP address.
7995</p>
7996
7997<p>
7998The default (no) is to return the mail as undeliverable. With older
7999Postfix versions the default was to keep trying to deliver the mail
8000until someone fixed the MX record or until the mail was too old.
8001</p>
8002
8003<p>
8004Note: Postfix always ignores MX records with equal or worse preference
8005than the local MTA itself.
8006</p>
8007
8008<p>
8009This feature is available in Postfix 2.1 and later.
8010</p>
8011
8012
8013</DD>
8014
8015<DT><b><a name="smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a>
8016(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
8017
8018<p> The maximal number of parallel deliveries to the same destination
8019via the smtp message delivery transport. This limit is enforced by
8020the queue manager. The message delivery transport name is the first
8021field in the entry in the <a href="master.5.html">master.cf</a> file.  </p>
8022
8023
8024</DD>
8025
8026<DT><b><a name="smtp_destination_recipient_limit">smtp_destination_recipient_limit</a>
8027(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
8028
8029<p> The maximal number of recipients per message for the smtp
8030message delivery transport. This limit is enforced by the queue
8031manager. The message delivery transport name is the first field in
8032the entry in the <a href="master.5.html">master.cf</a> file.  </p>
8033
8034<p> Setting this parameter to a value of 1 changes the meaning of
8035<a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> from concurrency per domain
8036into concurrency per recipient.  </p>
8037
8038
8039</DD>
8040
8041<DT><b><a name="smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>
8042(default: empty)</b></DT><DD>
8043
8044<p> Lookup tables, indexed by the remote SMTP server address, with
8045case insensitive lists of EHLO keywords (pipelining, starttls, auth,
8046etc.) that the Postfix SMTP client will ignore in the EHLO response from a
8047remote SMTP server. See <a href="postconf.5.html#smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a> for details. The
8048table is not indexed by hostname for consistency with
8049<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p>
8050
8051<p> This feature is available in Postfix 2.2 and later. </p>
8052
8053
8054</DD>
8055
8056<DT><b><a name="smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a>
8057(default: empty)</b></DT><DD>
8058
8059<p> A case insensitive list of EHLO keywords (pipelining, starttls,
8060auth, etc.) that the Postfix SMTP client will ignore in the EHLO
8061response from a remote SMTP server. </p>
8062
8063<p> This feature is available in Postfix 2.2 and later. </p>
8064
8065<p> Notes: </p>
8066
8067<ul>
8068
8069<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
8070this action from being logged. </p>
8071
8072<li> <p> Use the <a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a> feature to
8073discard EHLO keywords selectively. </p>
8074
8075</ul>
8076
8077
8078</DD>
8079
8080<DT><b><a name="smtp_enforce_tls">smtp_enforce_tls</a>
8081(default: no)</b></DT><DD>
8082
8083<p> Enforcement mode: require that remote SMTP servers use TLS
8084encryption, and never send mail in the clear.  This also requires
8085that the remote SMTP server hostname matches the information in
8086the remote server certificate, and that the remote SMTP server
8087certificate was issued by a CA that is trusted by the Postfix SMTP
8088client. If the certificate doesn't verify or the hostname doesn't
8089match, delivery is deferred and mail stays in the queue.  </p>
8090
8091<p> The server hostname is matched against all names provided as
8092dNSNames in the SubjectAlternativeName.  If no dNSNames are specified,
8093the CommonName is checked.  The behavior may be changed with the
8094<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> option.  </p>
8095
8096<p> This option is useful only if you are definitely sure that you
8097will only connect to servers that support <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> _and_ that
8098provide valid server certificates.  Typical use is for clients that
8099send all their email to a dedicated mailhub.  </p>
8100
8101<p> This feature is available in Postfix 2.2 and later. With
8102Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
8103
8104
8105</DD>
8106
8107<DT><b><a name="smtp_fallback_relay">smtp_fallback_relay</a>
8108(default: $<a href="postconf.5.html#fallback_relay">fallback_relay</a>)</b></DT><DD>
8109
8110<p>
8111Optional list of relay hosts for SMTP destinations that can't be
8112found or that are unreachable. With Postfix 2.2 and earlier this
8113parameter is called <a href="postconf.5.html#fallback_relay">fallback_relay</a>.  </p>
8114
8115<p>
8116By default, mail is returned to the sender when a destination is
8117not found, and delivery is deferred when a destination is unreachable.
8118</p>
8119
8120<p> The fallback relays must be SMTP destinations. Specify a domain,
8121host, host:port, [host]:port, [address] or [address]:port; the form
8122[host] turns off MX lookups.  If you specify multiple SMTP
8123destinations, Postfix will try them in the specified order.  </p>
8124
8125<p> To prevent mailer loops between MX hosts and fall-back hosts,
8126Postfix version 2.2 and later will not use the fallback relays for
8127destinations that it is MX host for (assuming DNS lookup is turned on).
8128</p>
8129
8130
8131</DD>
8132
8133<DT><b><a name="smtp_generic_maps">smtp_generic_maps</a>
8134(default: empty)</b></DT><DD>
8135
8136<p> Optional lookup tables that perform address rewriting in the
8137SMTP client, typically to transform a locally valid address into
8138a globally valid address when sending mail across the Internet.
8139This is needed when the local machine does not have its own Internet
8140domain name, but uses something like <i>localdomain.local</i>
8141instead.  </p>
8142
8143<p> The table format and lookups are documented in <a href="generic.5.html">generic(5)</a>;
8144examples are shown in the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> and
8145<a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> documents. </p>
8146
8147<p> This feature is available in Postfix 2.2 and later.  </p>
8148
8149
8150</DD>
8151
8152<DT><b><a name="smtp_header_checks">smtp_header_checks</a>
8153(default: empty)</b></DT><DD>
8154
8155<p> Restricted <a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP client.
8156These tables are searched while mail is being delivered.  Actions
8157that change the delivery time or destination are not available.
8158</p>
8159
8160<p> This feature is available in Postfix 2.5 and later. </p>
8161
8162
8163</DD>
8164
8165<DT><b><a name="smtp_helo_name">smtp_helo_name</a>
8166(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
8167
8168<p>
8169The hostname to send in the SMTP EHLO or HELO command.
8170</p>
8171
8172<p>
8173The default value is the machine hostname.  Specify a hostname or
8174[ip.add.re.ss].
8175</p>
8176
8177<p>
8178This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP
8179clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific
8180client, for example:
8181</p>
8182
8183<blockquote>
8184<pre>
8185/etc/postfix/<a href="master.5.html">master.cf</a>:
8186    mysmtp ... smtp -o <a href="postconf.5.html#smtp_helo_name">smtp_helo_name</a>=foo.bar.com
8187</pre>
8188</blockquote>
8189
8190<p>
8191This feature is available in Postfix 2.0 and later.
8192</p>
8193
8194
8195</DD>
8196
8197<DT><b><a name="smtp_helo_timeout">smtp_helo_timeout</a>
8198(default: 300s)</b></DT><DD>
8199
8200<p>
8201The SMTP client time limit for sending the HELO or EHLO command,
8202and for receiving the initial server response.
8203</p>
8204
8205<p>
8206Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
8207The default time unit is s (seconds).
8208</p>
8209
8210
8211</DD>
8212
8213<DT><b><a name="smtp_host_lookup">smtp_host_lookup</a>
8214(default: dns)</b></DT><DD>
8215
8216<p>
8217What mechanisms when the Postfix SMTP client uses to look up a host's IP
8218address.  This parameter is ignored when DNS lookups are disabled.
8219</p>
8220
8221<p>
8222Specify one of the following:
8223</p>
8224
8225<dl>
8226
8227<dt><b>dns</b></dt>
8228
8229<dd>Hosts can be found in the DNS (preferred).  </dd>
8230
8231<dt><b>native</b></dt>
8232
8233<dd>Use the native naming service only (nsswitch.conf, or equivalent
8234mechanism).  </dd>
8235
8236<dt><b>dns, native</b></dt>
8237
8238<dd>Use the native service for hosts not found in the DNS.  </dd>
8239
8240</dl>
8241
8242<p>
8243This feature is available in Postfix 2.1 and later.
8244</p>
8245
8246
8247</DD>
8248
8249<DT><b><a name="smtp_line_length_limit">smtp_line_length_limit</a>
8250(default: 990)</b></DT><DD>
8251
8252<p>
8253The maximal length of message header and body lines that Postfix
8254will send via SMTP.  Longer lines are broken by inserting
8255"&lt;CR&gt;&lt;LF&gt;&lt;SPACE&gt;". This minimizes the damage to
8256MIME formatted mail.
8257</p>
8258
8259<p>
8260By default, the line length is limited to 990 characters, because
8261some server implementations cannot receive mail with long lines.
8262</p>
8263
8264
8265</DD>
8266
8267<DT><b><a name="smtp_mail_timeout">smtp_mail_timeout</a>
8268(default: 300s)</b></DT><DD>
8269
8270<p>
8271The SMTP client time limit for sending the MAIL FROM command, and
8272for receiving the server response.
8273</p>
8274
8275<p>
8276Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
8277The default time unit is s (seconds).
8278</p>
8279
8280
8281</DD>
8282
8283<DT><b><a name="smtp_mime_header_checks">smtp_mime_header_checks</a>
8284(default: empty)</b></DT><DD>
8285
8286<p> Restricted mime_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP
8287client. These tables are searched while mail is being delivered.
8288Actions that change the delivery time or destination are not
8289available.  </p>
8290
8291<p> This feature is available in Postfix 2.5 and later. </p>
8292
8293
8294</DD>
8295
8296<DT><b><a name="smtp_mx_address_limit">smtp_mx_address_limit</a>
8297(default: 5)</b></DT><DD>
8298
8299<p>
8300The maximal number of MX (mail exchanger) IP addresses that can
8301result from mail exchanger lookups, or zero (no limit). Prior to
8302Postfix version 2.3, this limit was disabled by default.
8303</p>
8304
8305<p>
8306This feature is available in Postfix 2.1 and later.
8307</p>
8308
8309
8310</DD>
8311
8312<DT><b><a name="smtp_mx_session_limit">smtp_mx_session_limit</a>
8313(default: 2)</b></DT><DD>
8314
8315<p> The maximal number of SMTP sessions per delivery request before
8316giving up or delivering to a fall-back <a href="postconf.5.html#relayhost">relay host</a>, or zero (no
8317limit). This restriction ignores sessions that fail to complete the
8318SMTP initial handshake (Postfix version 2.2 and earlier) or that fail to
8319complete the EHLO and TLS handshake (Postfix version 2.3 and later).  </p>
8320
8321<p> This feature is available in Postfix 2.1 and later.  </p>
8322
8323
8324</DD>
8325
8326<DT><b><a name="smtp_nested_header_checks">smtp_nested_header_checks</a>
8327(default: empty)</b></DT><DD>
8328
8329<p> Restricted nested_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP
8330client. These tables are searched while mail is being delivered.
8331Actions that change the delivery time or destination are not
8332available.  </p>
8333
8334<p> This feature is available in Postfix 2.5 and later. </p>
8335
8336
8337</DD>
8338
8339<DT><b><a name="smtp_never_send_ehlo">smtp_never_send_ehlo</a>
8340(default: no)</b></DT><DD>
8341
8342<p> Never send EHLO at the start of an SMTP session. See also the
8343<a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> parameter.  </p>
8344
8345
8346</DD>
8347
8348<DT><b><a name="smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a>
8349(default: 10s)</b></DT><DD>
8350
8351<p>
8352How long the Postfix SMTP client pauses before sending
8353".&lt;CR&gt;&lt;LF&gt;" in order to work around the PIX firewall
8354"&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;" bug.
8355</p>
8356
8357<p>
8358Choosing a too short time makes this workaround ineffective when
8359sending large messages over slow network connections.
8360</p>
8361
8362
8363</DD>
8364
8365<DT><b><a name="smtp_pix_workaround_maps">smtp_pix_workaround_maps</a>
8366(default: empty)</b></DT><DD>
8367
8368<p> Lookup tables, indexed by the remote SMTP server address, with
8369per-destination workarounds for CISCO PIX firewall bugs.  The table
8370is not indexed by hostname for consistency with
8371<a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>. </p>
8372
8373<p> This feature is available in Postfix 2.4 and later. </p>
8374
8375
8376</DD>
8377
8378<DT><b><a name="smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a>
8379(default: 500s)</b></DT><DD>
8380
8381<p> How long a message must be queued before the Postfix SMTP client
8382turns on the PIX firewall "&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;"
8383bug workaround for delivery through firewalls with "smtp fixup"
8384mode turned on.  </p>
8385
8386<p>
8387By default, the workaround is turned off for mail that is queued
8388for less than 500 seconds. In other words, the workaround is normally
8389turned off for the first delivery attempt.
8390</p>
8391
8392<p>
8393Specify 0 to enable the PIX firewall
8394"&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;" bug workaround upon the
8395first delivery attempt.
8396</p>
8397
8398
8399</DD>
8400
8401<DT><b><a name="smtp_pix_workarounds">smtp_pix_workarounds</a>
8402(default: disable_esmtp, delay_dotcrlf)</b></DT><DD>
8403
8404<p> A list that specifies zero or more workarounds for CISCO PIX
8405firewall bugs. These workarounds are implemented by the Postfix
8406SMTP client. Workaround names are separated by comma or space, and
8407are case insensitive.  This parameter setting can be overruled with
8408per-destination <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a> settings. </p>
8409
8410<dl>
8411
8412<dt><b>delay_dotcrlf</b><dd> Insert a delay before sending
8413".&lt;CR&gt;&lt;LF&gt;" after the end of the message content.  The
8414delay is subject to the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a> and
8415<a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a> parameter settings. </dd>
8416
8417<dt><b>disable_esmtp</b><dd> Disable all extended SMTP commands:
8418send HELO instead of EHLO. </dd>
8419
8420</dl>
8421
8422<p> This feature is available in Postfix 2.4 and later. The default
8423settings are backwards compatible with earlier Postfix versions.
8424</p>
8425
8426
8427</DD>
8428
8429<DT><b><a name="smtp_quit_timeout">smtp_quit_timeout</a>
8430(default: 300s)</b></DT><DD>
8431
8432<p>
8433The SMTP client time limit for sending the QUIT command, and for
8434receiving the server response.
8435</p>
8436
8437<p>
8438Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
8439The default time unit is s (seconds).
8440</p>
8441
8442
8443</DD>
8444
8445<DT><b><a name="smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>
8446(default: yes)</b></DT><DD>
8447
8448<p>
8449Quote addresses in SMTP MAIL FROM and RCPT TO commands as required
8450by <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>. This includes putting quotes around an address localpart
8451that ends in ".".
8452</p>
8453
8454<p>
8455The default is to comply with <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>. If you have to send mail to
8456a broken SMTP server, configure a special SMTP client in <a href="master.5.html">master.cf</a>:
8457</p>
8458
8459<blockquote>
8460<pre>
8461/etc/postfix/<a href="master.5.html">master.cf</a>:
8462    broken-smtp . . . smtp -o <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>=no
8463</pre>
8464</blockquote>
8465
8466<p>
8467and route mail for the destination in question to the "broken-smtp"
8468message delivery with a <a href="transport.5.html">transport(5)</a> table.
8469</p>
8470
8471<p>
8472This feature is available in Postfix 2.1 and later.
8473</p>
8474
8475
8476</DD>
8477
8478<DT><b><a name="smtp_randomize_addresses">smtp_randomize_addresses</a>
8479(default: yes)</b></DT><DD>
8480
8481<p>
8482Randomize the order of equal-preference MX host addresses.  This
8483is a performance feature of the Postfix SMTP client.
8484</p>
8485
8486
8487</DD>
8488
8489<DT><b><a name="smtp_rcpt_timeout">smtp_rcpt_timeout</a>
8490(default: 300s)</b></DT><DD>
8491
8492<p>
8493The SMTP client time limit for sending the SMTP RCPT TO command, and
8494for receiving the server response.
8495</p>
8496
8497<p>
8498Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
8499The default time unit is s (seconds).
8500</p>
8501
8502
8503</DD>
8504
8505<DT><b><a name="smtp_rset_timeout">smtp_rset_timeout</a>
8506(default: 20s)</b></DT><DD>
8507
8508<p> The SMTP client time limit for sending the RSET command, and
8509for receiving the server response. The SMTP client sends RSET in
8510order to finish a recipient address probe, or to verify that a
8511cached session is still usable.  </p>
8512
8513<p> This feature is available in Postfix 2.1 and later.  </p>
8514
8515
8516</DD>
8517
8518<DT><b><a name="smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
8519(default: empty)</b></DT><DD>
8520
8521<p> An optional table to prevent repeated SASL authentication
8522failures with the same remote SMTP server hostname, username and
8523password. Each table (key, value) pair contains a server name, a
8524username and password, and the full server response. This information
8525is stored when a remote SMTP server rejects an authentication attempt
8526with a 535 reply code.  As long as the <a href="postconf.5.html#smtp_sasl_password_maps">smtp_sasl_password_maps</a>
8527information does no change, and as long as the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
8528information does not expire (see <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>) the
8529Postfix SMTP client avoids SASL authentication attempts with the
8530same server, username and password, and instead bounces or defers
8531mail as controlled with the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> configuration
8532parameter.  </p>
8533
8534<p> Use a per-destination delivery concurrency of 1 (for example,
8535"<a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> = 1",
8536"<a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> = 1", etc.), otherwise multiple
8537delivery agents may experience a login failure at the same time.
8538</p>
8539
8540<p> The table must be accessed via the proxywrite service, i.e. the
8541map name must start with "<a href="proxymap.8.html">proxy</a>:". The table should be stored under
8542the directory specified with the <a href="postconf.5.html#data_directory">data_directory</a> parameter. </p>
8543
8544<p> This feature uses cryptographic hashing to protect plain-text
8545passwords, and requires that Postfix is compiled with TLS support.
8546</p>
8547
8548<p> Example: </p>
8549
8550<pre>
8551<a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> = <a href="proxymap.8.html">proxy</a>:btree:/var/db/postfix/sasl_auth_cache
8552</pre>
8553
8554<p> This feature is available in Postfix 2.5 and later. </p>
8555
8556
8557</DD>
8558
8559<DT><b><a name="smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>
8560(default: 90d)</b></DT><DD>
8561
8562<p> The maximal age of an <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> entry before it
8563is removed. </p>
8564
8565<p> This feature is available in Postfix 2.5 and later. </p>
8566
8567
8568</DD>
8569
8570<DT><b><a name="smtp_sasl_auth_enable">smtp_sasl_auth_enable</a>
8571(default: no)</b></DT><DD>
8572
8573<p>
8574Enable SASL authentication in the Postfix SMTP client.  By default,
8575the Postfix SMTP client uses no authentication.
8576</p>
8577
8578<p>
8579Example:
8580</p>
8581
8582<pre>
8583<a href="postconf.5.html#smtp_sasl_auth_enable">smtp_sasl_auth_enable</a> = yes
8584</pre>
8585
8586
8587</DD>
8588
8589<DT><b><a name="smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a>
8590(default: yes)</b></DT><DD>
8591
8592<p> When a remote SMTP server rejects a SASL authentication request
8593with a 535 reply code, defer mail delivery instead of returning
8594mail as undeliverable. The latter behavior was hard-coded prior to
8595Postfix version 2.5. </p>
8596
8597<p> Note: the setting "yes" overrides the global <a href="postconf.5.html#soft_bounce">soft_bounce</a>
8598parameter, but the setting "no" does not. </p>
8599
8600<p> Example: </p>
8601
8602<pre>
8603# Default as of Postfix 2.5
8604<a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = yes
8605# The old hard-coded default
8606<a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = no
8607</pre>
8608
8609<p> This feature is available in Postfix 2.5 and later. </p>
8610
8611
8612</DD>
8613
8614<DT><b><a name="smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a>
8615(default: empty)</b></DT><DD>
8616
8617<p>
8618If non-empty, a Postfix SMTP client filter for the remote SMTP
8619server's list of offered SASL mechanisms.  Different client and
8620server implementations may support different mechanism lists. By
8621default, the Postfix SMTP client will use the intersection of the
8622two. <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> further restricts what server
8623mechanisms the client will take into consideration.  </p>
8624
8625<p> Specify mechanism names, "/file/name" patterns or "<a href="DATABASE_README.html">type:table</a>"
8626lookup tables. The right-hand side result from "<a href="DATABASE_README.html">type:table</a>" lookups
8627is ignored. Specify "!pattern" to exclude a mechanism name from the
8628list. The form "!/file/name" is supported only in Postfix version
86292.4 and later. </p>
8630
8631<p> This feature is available in Postfix 2.2 and later. </p>
8632
8633<p>
8634Examples:
8635</p>
8636
8637<pre>
8638<a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = plain, login
8639<a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = /etc/postfix/smtp_mechs
8640<a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = !gssapi, !login, static:rest
8641</pre>
8642
8643
8644</DD>
8645
8646<DT><b><a name="smtp_sasl_password_maps">smtp_sasl_password_maps</a>
8647(default: empty)</b></DT><DD>
8648
8649<p>
8650Optional SMTP client lookup tables with one username:password entry
8651per remote hostname or domain, or sender address when sender-dependent
8652authentication is enabled.  If no username:password entry is found,
8653then the Postfix SMTP client will not
8654attempt to authenticate to the remote host.
8655</p>
8656
8657<p>
8658The Postfix SMTP client opens the lookup table before going to
8659chroot jail, so you can leave the password file in /etc/postfix.
8660</p>
8661
8662
8663</DD>
8664
8665<DT><b><a name="smtp_sasl_path">smtp_sasl_path</a>
8666(default: empty)</b></DT><DD>
8667
8668<p> Implementation-specific information that the Postfix SMTP client
8669passes through to
8670the SASL plug-in implementation that is selected with
8671<b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>.  Typically this specifies the name of a
8672configuration file or rendezvous point. </p>
8673
8674<p> This feature is available in Postfix 2.3 and later. </p>
8675
8676
8677</DD>
8678
8679<DT><b><a name="smtp_sasl_security_options">smtp_sasl_security_options</a>
8680(default: noplaintext, noanonymous)</b></DT><DD>
8681
8682<p> Postfix SMTP client SASL security options; as of Postfix 2.3
8683the list of available
8684features depends on the SASL client implementation that is selected
8685with <b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>.  </p>
8686
8687<p> The following security features are defined for the <b>cyrus</b>
8688client SASL implementation: </p>
8689
8690<p>
8691Specify zero or more of the following:
8692</p>
8693
8694<dl>
8695
8696<dt><b>noplaintext</b></dt>
8697
8698<dd>Disallow methods that use plaintext passwords. </dd>
8699
8700<dt><b>noactive</b></dt>
8701
8702<dd>Disallow methods subject to active (non-dictionary) attack.
8703</dd>
8704
8705<dt><b>nodictionary</b></dt>
8706
8707<dd>Disallow methods subject to passive (dictionary) attack. </dd>
8708
8709<dt><b>noanonymous</b></dt>
8710
8711<dd>Disallow methods that allow anonymous authentication. </dd>
8712
8713<dt><b>mutual_auth</b></dt>
8714
8715<dd>Only allow methods that provide mutual authentication (not
8716available with SASL version 1). </dd>
8717
8718</dl>
8719
8720<p>
8721Example:
8722</p>
8723
8724<pre>
8725<a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a> = noplaintext
8726</pre>
8727
8728
8729</DD>
8730
8731<DT><b><a name="smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>
8732(default: $<a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a>)</b></DT><DD>
8733
8734<p> The SASL authentication security options that the Postfix SMTP
8735client uses for TLS encrypted SMTP sessions. </p>
8736
8737<p> This feature is available in Postfix 2.2 and later.  </p>
8738
8739
8740</DD>
8741
8742<DT><b><a name="smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a>
8743(default: $<a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>)</b></DT><DD>
8744
8745<p> The SASL authentication security options that the Postfix SMTP
8746client uses for TLS encrypted SMTP sessions with a verified server
8747certificate. </p>
8748
8749<p> When mail is sent to the public MX host for the recipient's
8750domain, server certificates are by default optional, and delivery
8751proceeds even if certificate verification fails. For delivery via
8752a submission service that requires SASL authentication, it may be
8753appropriate to send plaintext passwords only when the connection
8754to the server is strongly encrypted <b>and</b> the server identity
8755is verified. </p>
8756
8757<p> The <a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> parameter makes it
8758possible to only enable plaintext mechanisms when a secure connection
8759to the server is available. Submission servers subject to this
8760policy must either have verifiable certificates or offer suitable
8761non-plaintext SASL mechanisms. </p>
8762
8763<p> This feature is available in Postfix 2.6 and later. </p>
8764
8765
8766</DD>
8767
8768<DT><b><a name="smtp_sasl_type">smtp_sasl_type</a>
8769(default: cyrus)</b></DT><DD>
8770
8771<p> The SASL plug-in type that the Postfix SMTP client should use
8772for authentication.  The available types are listed with the
8773"<b>postconf -A</b>" command. </p>
8774
8775<p> This feature is available in Postfix 2.3 and later. </p>
8776
8777
8778</DD>
8779
8780<DT><b><a name="smtp_send_xforward_command">smtp_send_xforward_command</a>
8781(default: no)</b></DT><DD>
8782
8783<p>
8784Send the non-standard XFORWARD command when the Postfix SMTP server
8785EHLO response announces XFORWARD support.
8786</p>
8787
8788<p>
8789This allows an "smtp" delivery agent, used for injecting mail into
8790a content filter, to forward the name, address, protocol and HELO
8791name of the original client to the content filter and downstream
8792queuing SMTP server. This can produce more useful logging than
8793localhost[127.0.0.1] etc.
8794</p>
8795
8796<p>
8797This feature is available in Postfix 2.1 and later.
8798</p>
8799
8800
8801</DD>
8802
8803<DT><b><a name="smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a>
8804(default: no)</b></DT><DD>
8805
8806<p>
8807Enable sender-dependent authentication in the Postfix SMTP client; this is
8808available only with SASL authentication, and disables SMTP connection
8809caching to ensure that mail from different senders will use the
8810appropriate credentials.  </p>
8811
8812<p>
8813This feature is available in Postfix 2.3 and later.
8814</p>
8815
8816
8817</DD>
8818
8819<DT><b><a name="smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a>
8820(default: yes)</b></DT><DD>
8821
8822<p>
8823Skip SMTP servers that greet with a 4XX status code (go away, try
8824again later).
8825</p>
8826
8827<p>
8828By default, Postfix moves on the next mail exchanger. Specify
8829"<a href="postconf.5.html#smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a> = no" if Postfix should defer delivery
8830immediately.
8831</p>
8832
8833<p> This feature is available in Postfix 2.0 and earlier.
8834Later Postfix versions always skip SMTP servers that greet with a
88354XX status code. </p>
8836
8837
8838</DD>
8839
8840<DT><b><a name="smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a>
8841(default: yes)</b></DT><DD>
8842
8843<p>
8844Skip SMTP servers that greet with a 5XX status code (go away, do
8845not try again later).
8846</p>
8847
8848<p> By default, the Postfix SMTP client moves on the next mail
8849exchanger. Specify "<a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a> = no" if Postfix should
8850bounce the mail immediately. The default setting is incorrect, but
8851it is what a lot of people expect to happen.  </p>
8852
8853
8854</DD>
8855
8856<DT><b><a name="smtp_skip_quit_response">smtp_skip_quit_response</a>
8857(default: yes)</b></DT><DD>
8858
8859<p>
8860Do not wait for the response to the SMTP QUIT command.
8861</p>
8862
8863
8864</DD>
8865
8866<DT><b><a name="smtp_starttls_timeout">smtp_starttls_timeout</a>
8867(default: 300s)</b></DT><DD>
8868
8869<p> Time limit for Postfix SMTP client write and read operations
8870during TLS startup and shutdown handshake procedures. </p>
8871
8872<p> This feature is available in Postfix 2.2 and later.  </p>
8873
8874
8875</DD>
8876
8877<DT><b><a name="smtp_tls_CAfile">smtp_tls_CAfile</a>
8878(default: empty)</b></DT><DD>
8879
8880<p> A file containing CA certificates of root CAs trusted to sign
8881either remote SMTP server certificates or intermediate CA certificates.
8882These are loaded into memory before the <a href="smtp.8.html">smtp(8)</a> client enters the
8883chroot jail. If the number of trusted roots is large, consider using
8884<a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> instead, but note that the latter directory must be
8885present in the chroot jail if the <a href="smtp.8.html">smtp(8)</a> client is chrooted. This
8886file may also be used to augment the client certificate trust chain,
8887but it is best to include all the required certificates directly in
8888$<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p>
8889
8890<p> Example: </p>
8891
8892<pre>
8893<a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a> = /etc/postfix/CAcert.pem
8894</pre>
8895
8896<p> This feature is available in Postfix 2.2 and later.  </p>
8897
8898
8899</DD>
8900
8901<DT><b><a name="smtp_tls_CApath">smtp_tls_CApath</a>
8902(default: empty)</b></DT><DD>
8903
8904<p> Directory with PEM format certificate authority certificates
8905that the Postfix SMTP client uses to verify a remote SMTP server
8906certificate.  Don't forget to create the necessary "hash" links
8907with, for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs".
8908</p>
8909
8910<p> To use this option in chroot mode, this directory (or a copy)
8911must be inside the chroot jail. </p>
8912
8913<p> Example: </p>
8914
8915<pre>
8916<a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> = /etc/postfix/certs
8917</pre>
8918
8919<p> This feature is available in Postfix 2.2 and later.  </p>
8920
8921
8922</DD>
8923
8924<DT><b><a name="smtp_tls_cert_file">smtp_tls_cert_file</a>
8925(default: empty)</b></DT><DD>
8926
8927<p> File with the Postfix SMTP client RSA certificate in PEM format.
8928This file may also contain the Postfix SMTP client private RSA key,
8929and these may be the same as the Postfix SMTP server RSA certificate and key
8930file. </p>
8931
8932<p> Do not configure client certificates unless you <b>must</b> present
8933client TLS certificates to one or more servers. Client certificates are
8934not usually needed, and can cause problems in configurations that work
8935well without them. The recommended setting is to let the defaults stand: </p>
8936
8937<blockquote>
8938<pre>
8939<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> =
8940<a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a> =
8941<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> =
8942<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> =
8943<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> =
8944<a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> =
8945</pre>
8946</blockquote>
8947
8948<p> The best way to use the default settings is to comment out the above
8949parameters in <a href="postconf.5.html">main.cf</a> if present. </p>
8950
8951<p> To enable remote SMTP servers to verify the Postfix SMTP client
8952certificate, the issuing CA certificates must be made available to the
8953server. You should include the required certificates in the client
8954certificate file, the client certificate first, then the issuing
8955CA(s) (bottom-up order). </p>
8956
8957<p> Example: the certificate for "client.example.com" was issued by
8958"intermediate CA" which itself has a certificate issued by "root CA".
8959Create the client.pem file with "cat client_cert.pem intermediate_CA.pem
8960root_CA.pem &gt; client.pem". </p>
8961
8962<p> If you also want to verify remote SMTP server certificates issued by
8963these CAs, you can add the CA certificates to the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>, in
8964which case it is not necessary to have them in the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>,
8965<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> or <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>. </p>
8966
8967<p> A certificate supplied here must be usable as an SSL client certificate
8968and hence pass the "openssl verify -purpose sslclient ..." test. </p>
8969
8970<p> Example: </p>
8971
8972<pre>
8973<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> = /etc/postfix/client.pem
8974</pre>
8975
8976<p> This feature is available in Postfix 2.2 and later.  </p>
8977
8978
8979</DD>
8980
8981<DT><b><a name="smtp_tls_cipherlist">smtp_tls_cipherlist</a>
8982(default: empty)</b></DT><DD>
8983
8984<p> Obsolete Postfix &lt; 2.3 control for the Postfix SMTP client TLS
8985cipher list. As this feature applies to all TLS security levels, it is easy
8986to create inter-operability problems by choosing a non-default cipher
8987list. Do not use a non-default TLS cipher list on hosts that deliver email
8988to the public Internet: you will be unable to send email to servers that
8989only support the ciphers you exclude. Using a restricted cipher list
8990may be more appropriate for an internal MTA, where one can exert some
8991control over the TLS software and settings of the peer servers. </p>
8992
8993<p> <b>Note:</b> do not use "" quotes around the parameter value. </p>
8994
8995<p> This feature is available in Postfix version 2.2. It is not used with
8996Postfix 2.3 and later; use <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> instead. </p>
8997
8998
8999</DD>
9000
9001<DT><b><a name="smtp_tls_ciphers">smtp_tls_ciphers</a>
9002(default: export)</b></DT><DD>
9003
9004<p> The minimum TLS cipher grade that the Postfix SMTP client
9005will use with opportunistic TLS encryption. Cipher types listed in
9006<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> are excluded from the base definition of
9007the selected cipher grade. The default value "export" ensures maximum
9008inter-operability. Because encryption is optional, stronger controls
9009are not appropriate, and this setting SHOULD NOT be changed unless the
9010change is essential. </p>
9011
9012<p> When TLS is mandatory the cipher grade is chosen via the
9013<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> configuration parameter, see there for syntax
9014details. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure
9015ciphers on a per-destination basis. </p>
9016
9017<p> Example: </p>
9018<pre>
9019<a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> = export
9020</pre>
9021
9022<p> This feature is available in Postfix 2.6 and later. With earlier Postfix
9023releases only the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> parameter is implemented,
9024and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p>
9025
9026
9027</DD>
9028
9029<DT><b><a name="smtp_tls_dcert_file">smtp_tls_dcert_file</a>
9030(default: empty)</b></DT><DD>
9031
9032<p> File with the Postfix SMTP client DSA certificate in PEM format.
9033This file may also contain the Postfix SMTP client private DSA key. </p>
9034
9035<p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details.
9036</p>
9037
9038<p> Example: </p>
9039
9040<pre>
9041<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
9042</pre>
9043
9044<p> This feature is available in Postfix 2.2 and later.  </p>
9045
9046
9047</DD>
9048
9049<DT><b><a name="smtp_tls_dkey_file">smtp_tls_dkey_file</a>
9050(default: $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>)</b></DT><DD>
9051
9052<p> File with the Postfix SMTP client DSA private key in PEM format.
9053This file may be combined with the Postfix SMTP client DSA certificate
9054file specified with $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>. </p>
9055
9056<p> The private key must be accessible without a pass-phrase, i.e. it
9057must not be encrypted. File permissions should grant read-only
9058access to the system superuser account ("root"), and no access
9059to anyone else. </p>
9060
9061<p> This feature is available in Postfix 2.2 and later.  </p>
9062
9063
9064</DD>
9065
9066<DT><b><a name="smtp_tls_eccert_file">smtp_tls_eccert_file</a>
9067(default: empty)</b></DT><DD>
9068
9069<p> File with the Postfix SMTP client ECDSA certificate in PEM format.
9070This file may also contain the Postfix SMTP client ECDSA private key. </p>
9071
9072<p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details.
9073</p>
9074
9075<p> Example: </p>
9076
9077<pre>
9078<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> = /etc/postfix/ecdsa-ccert.pem
9079</pre>
9080
9081<p> This feature is available in Postfix 2.6 and later, when Postfix is
9082compiled and linked with OpenSSL 0.9.9 or later. </p>
9083
9084
9085</DD>
9086
9087<DT><b><a name="smtp_tls_eckey_file">smtp_tls_eckey_file</a>
9088(default: $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>)</b></DT><DD>
9089
9090<p> File with the Postfix SMTP client ECDSA private key in PEM format.
9091This file may be combined with the Postfix SMTP client ECDSA
9092certificate file specified with $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>. </p>
9093
9094<p> The private key must be accessible without a pass-phrase, i.e. it
9095must not be encrypted. File permissions should grant read-only
9096access to the system superuser account ("root"), and no access
9097to anyone else. </p>
9098
9099<p> This feature is available in Postfix 2.6 and later, when Postfix is
9100compiled and linked with OpenSSL 0.9.9 or later. </p>
9101
9102
9103</DD>
9104
9105<DT><b><a name="smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
9106(default: yes)</b></DT><DD>
9107
9108<p> With mandatory TLS encryption, require that the remote SMTP
9109server hostname matches the information in the remote SMTP server
9110certificate.  As of <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> the requirements for hostname checking
9111for MTA clients are not specified. </p>
9112
9113<p> This option can be set to "no" to disable strict peer name
9114checking. This setting has no effect on sessions that are controlled
9115via the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table.  </p>
9116
9117<p> Disabling the hostname verification can make sense in closed
9118environment where special CAs are created.  If not used carefully,
9119this option opens the danger of a "man-in-the-middle" attack (the
9120CommonName of this attacker will be logged). </p>
9121
9122<p> This feature is available in Postfix 2.2 and later. With
9123Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
9124
9125
9126</DD>
9127
9128<DT><b><a name="smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
9129(default: empty)</b></DT><DD>
9130
9131<p> List of ciphers or cipher types to exclude from the Postfix
9132SMTP client cipher
9133list at all TLS security levels. This is not an OpenSSL cipherlist, it is
9134a simple list separated by whitespace and/or commas. The elements are a
9135single cipher, or one or more "+" separated cipher properties, in which
9136case only ciphers matching <b>all</b> the properties are excluded. </p>
9137
9138<p> Examples (some of these will cause problems): </p>
9139
9140<blockquote>
9141<pre>
9142<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = aNULL
9143<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = MD5, DES
9144<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = DES+MD5
9145<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5
9146<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = kEDH+aRSA
9147</pre>
9148</blockquote>
9149
9150<p> The first setting, disables anonymous ciphers. The next setting
9151disables ciphers that use the MD5 digest algorithm or the (single) DES
9152encryption algorithm. The next setting disables ciphers that use MD5 and
9153DES together.  The next setting disables the two ciphers "AES256-SHA"
9154and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH"
9155key exchange with RSA authentication. </p>
9156
9157<p> This feature is available in Postfix 2.3 and later. </p>
9158
9159
9160</DD>
9161
9162<DT><b><a name="smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a>
9163(default: empty)</b></DT><DD>
9164
9165<p> List of acceptable remote SMTP server certificate fingerprints
9166for the "fingerprint" TLS security level (<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> =
9167fingerprint). At this security level, certificate authorities are
9168not used, and certificate expiration times are ignored. Instead,
9169server certificates are verified directly via their "fingerprint". The
9170fingerprint is a message digest of the server certificate. The digest
9171algorithm is selected via the <b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b>
9172parameter. </p>
9173
9174<p> When an <b><a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a></b> table entry specifies the
9175"fingerprint" security level, any "match" attributes in that entry specify
9176the list of valid fingerprints for the corresponding destination. Multiple
9177fingerprints can be combined with a "|" delimiter in a single match
9178attribute, or multiple match attributes can be employed. </p>
9179
9180<p> Example: Certificate fingerprint verification with internal mailhub.
9181Two matching fingerprints are listed. The <a href="postconf.5.html#relayhost">relayhost</a> may be multiple
9182physical hosts behind a load-balancer, each with its own private/public
9183key and self-signed certificate. Alternatively, a single <a href="postconf.5.html#relayhost">relayhost</a> may
9184be in the process of switching from one set of private/public keys to
9185another, and both keys are trusted just prior to the transition. </p>
9186
9187<blockquote>
9188<pre>
9189<a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com]
9190<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint
9191<a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
9192<a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> =
9193    3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
9194    EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
9195</pre>
9196</blockquote>
9197
9198<p> Example: Certificate fingerprint verification with selected destinations.
9199As in the example above, we show two matching fingerprints: </p>
9200
9201<blockquote>
9202<pre>
9203/etc/postfix/<a href="postconf.5.html">main.cf</a>:
9204    <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = hash:/etc/postfix/tls_policy
9205    <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
9206</pre>
9207</blockquote>
9208
9209<blockquote>
9210<pre>
9211/etc/postfix/tls_policy:
9212    example.com	fingerprint
9213        match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
9214        match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
9215</pre>
9216</blockquote>
9217
9218<p> This feature is available in Postfix 2.5 and later. </p>
9219
9220
9221</DD>
9222
9223<DT><b><a name="smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a>
9224(default: md5)</b></DT><DD>
9225
9226<p> The message digest algorithm used to construct remote SMTP server
9227certificate fingerprints. At the "fingerprint" TLS security level
9228(<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> = fingerprint), the server certificate is
9229verified by directly matching its <i>fingerprint</i>. The fingerprint
9230is the message digest of the server certificate using the selected
9231algorithm. With a digest algorithm resistant to "second pre-image"
9232attacks, it is not feasible to create a new public key and a matching
9233certificate that has the same fingerprint. </p>
9234
9235<p> The default algorithm is <b>md5</b>; this is consistent with
9236the backwards compatible setting of the digest used to verify client
9237certificates in the SMTP server. </p>
9238
9239<p> The best practice algorithm is now <b>sha1</b>. Recent advances in hash
9240function cryptanalysis have led to md5 being deprecated in favor of sha1.
9241However, as long as there are no known "second pre-image" attacks
9242against md5, its use in this context can still be considered safe.
9243</p>
9244
9245<p> While additional digest algorithms are often available with OpenSSL's
9246libcrypto, only those used by libssl in SSL cipher suites are available to
9247Postfix. For now this means just md5 or sha1. </p>
9248
9249<p> To find the fingerprint of a specific certificate file, with a
9250specific digest algorithm, run:
9251</p>
9252
9253<blockquote>
9254<pre>
9255$ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem
9256</pre>
9257</blockquote>
9258
9259<p> The text to the right of "=" sign is the desired fingerprint.
9260For example: </p>
9261
9262<blockquote>
9263<pre>
9264$ openssl x509 -noout -fingerprint -sha1 -in cert.pem
9265SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A
9266</pre>
9267</blockquote>
9268
9269<p> This feature is available in Postfix 2.5 and later. </p>
9270
9271
9272</DD>
9273
9274<DT><b><a name="smtp_tls_key_file">smtp_tls_key_file</a>
9275(default: $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>)</b></DT><DD>
9276
9277<p> File with the Postfix SMTP client RSA private key in PEM format.
9278This file may be combined with the Postfix SMTP client RSA certificate
9279file specified with $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p>
9280
9281<p> The private key must be accessible without a pass-phrase, i.e. it
9282must not be encrypted. File permissions should grant read-only
9283access to the system superuser account ("root"), and no access
9284to anyone else. </p>
9285
9286<p> Example: </p>
9287
9288<pre>
9289<a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a> = $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>
9290</pre>
9291
9292<p> This feature is available in Postfix 2.2 and later.  </p>
9293
9294
9295</DD>
9296
9297<DT><b><a name="smtp_tls_loglevel">smtp_tls_loglevel</a>
9298(default: 0)</b></DT><DD>
9299
9300<p> Enable additional Postfix SMTP client logging of TLS activity.
9301Each logging level also includes the information that is logged at
9302a lower logging level.  </p>
9303
9304<dl compact>
9305
9306<dt> </dt> <dd> 0 Disable logging of TLS activity. </dd>
9307
9308<dt> </dt> <dd> 1 Log TLS handshake and certificate information. </dd>
9309
9310<dt> </dt> <dd> 2 Log levels during TLS negotiation. </dd>
9311
9312<dt> </dt> <dd> 3 Log hexadecimal and ASCII dump of TLS negotiation
9313process.  </dd>
9314
9315<dt> </dt> <dd> 4 Log hexadecimal and ASCII dump of complete
9316transmission after STARTTLS. </dd>
9317
9318</dl>
9319
9320<p> Use "<a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a> = 3" only in case of problems. Use of
9321loglevel 4 is strongly discouraged. </p>
9322
9323<p> This feature is available in Postfix 2.2 and later.  </p>
9324
9325
9326</DD>
9327
9328<DT><b><a name="smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>
9329(default: medium)</b></DT><DD>
9330
9331<p> The minimum TLS cipher grade that the Postfix SMTP client will
9332use with
9333mandatory TLS encryption.  The default value "medium" is suitable
9334for most destinations with which you may want to enforce TLS, and
9335is beyond the reach of today's crypt-analytic methods. See
9336<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure ciphers
9337on a per-destination basis. </p>
9338
9339<p> The following cipher grades are supported: </p>
9340
9341<dl>
9342<dt><b>export</b></dt>
9343<dd> Enable the mainstream "EXPORT" grade or better OpenSSL
9344ciphers.  This is always used for opportunistic encryption. It is
9345not recommended for mandatory encryption unless you must enforce TLS
9346with "crippled" peers. The underlying cipherlist is specified via the
9347<a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> configuration parameter, which you are strongly
9348encouraged to not change. The default value of <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a>
9349includes anonymous ciphers, but these are automatically filtered out if
9350the client is configured to verify server certificates. If you must
9351exclude anonymous ciphers also at the "encrypt" security level, set
9352"<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
9353
9354<dt><b>low</b></dt>
9355<dd> Enable the mainstream "LOW" grade or better OpenSSL ciphers.  This
9356setting is only appropriate for internal mail servers.  The underlying
9357cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> configuration
9358parameter, which you are strongly encouraged to not change. The default
9359value of <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> includes anonymous ciphers, but these are
9360automatically filtered out if the client is configured to verify server
9361certificates. If you must exclude anonymous ciphers also at the "encrypt"
9362security level, set "<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
9363
9364<dt><b>medium</b></dt>
9365<dd> Enable the mainstream "MEDIUM" grade or better OpenSSL ciphers.
9366The underlying cipherlist is specified via the <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a>
9367configuration parameter, which you are strongly encouraged to not change.
9368The default value of <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a> includes anonymous ciphers,
9369but these are automatically filtered out if the client is configured to
9370verify server certificates. If you must exclude anonymous ciphers also
9371at the "encrypt" security level, set "<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a>
9372= aNULL". </dd>
9373
9374<dt><b>high</b></dt>
9375<dd> Enable only the mainstream "HIGH" grade OpenSSL ciphers.  This
9376setting is appropriate when all mandatory TLS destinations support
9377some of "HIGH" grade ciphers, this is not uncommon. The underlying
9378cipherlist is specified via the <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> configuration
9379parameter, which you are strongly encouraged to not change. The default
9380value of <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> includes anonymous ciphers, but these are
9381automatically filtered out if the client is configured to verify server
9382certificates. If you must exclude anonymous ciphers also at the "encrypt"
9383security level, set "<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
9384
9385<dt><b>null</b></dt>
9386<dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication
9387without encryption.  This setting is only appropriate in the rare case
9388that all servers are prepared to use NULL ciphers (not normally enabled
9389in TLS servers). A plausible use-case is an LMTP server listening on a
9390UNIX-domain socket that is configured to support "NULL" ciphers. The
9391underlying cipherlist is specified via the <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a>
9392configuration parameter, which you are strongly encouraged to not
9393change. The default value of <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a> excludes anonymous
9394ciphers (OpenSSL 0.9.8 has NULL ciphers that offer data integrity without
9395encryption or authentication). </dd>
9396
9397</dl>
9398
9399<p> This feature is available in Postfix 2.3 and later. </p>
9400
9401
9402</DD>
9403
9404<DT><b><a name="smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a>
9405(default: empty)</b></DT><DD>
9406
9407<p> Additional list of ciphers or cipher types to exclude from the
9408SMTP client cipher list at mandatory TLS security levels. This list
9409works in addition to the exclusions listed with <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
9410(see there for syntax details).  </p>
9411
9412<p> Starting with Postfix 2.6, the mandatory cipher exclusions can be
9413specified on a per-destination basis via the TLS policy "exclude"
9414attribute. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for notes and examples. </p>
9415
9416<p> This feature is available in Postfix 2.3 and later. </p>
9417
9418
9419</DD>
9420
9421<DT><b><a name="smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a>
9422(default: SSLv3, TLSv1)</b></DT><DD>
9423
9424<p> List of SSL/TLS protocols that the Postfix SMTP client will use with
9425mandatory TLS encryption.  In <a href="postconf.5.html">main.cf</a> the values are separated by
9426whitespace, commas or colons. In the policy table "protocols" attribute
9427(see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid separator is colon. An
9428empty value means allow all protocols. The valid protocol names, (see
9429<b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" and "TLSv1". </p>
9430
9431<p> With Postfix &ge; 2.5 the parameter syntax is expanded to support
9432protocol exclusions. One can now explicitly exclude SSLv2 by setting
9433"<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2". To exclude both SSLv2 and
9434SSLv3 set "<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing
9435the protocols to include, rather than protocols to exclude, is still
9436supported; use the form you find more intuitive. </p>
9437
9438<p> Since SSL version 2 has known protocol weaknesses and is now
9439deprecated, the default setting excludes "SSLv2".  This means that by
9440default, SSL version 2 will not be used at the "encrypt" security level
9441and higher. </p>
9442
9443<p> See the documentation of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> parameter and
9444<a href="TLS_README.html">TLS_README</a> for more information about security levels. </p>
9445
9446<p> Example: </p>
9447
9448<pre>
9449<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1
9450# Alternative form with Postfix &ge; 2.5:
9451<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
9452</pre>
9453
9454<p> This feature is available in Postfix 2.3 and later. </p>
9455
9456
9457</DD>
9458
9459<DT><b><a name="smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a>
9460(default: no)</b></DT><DD>
9461
9462<p> Log the hostname of a remote SMTP server that offers STARTTLS,
9463when TLS is not already enabled for that server. </p>
9464
9465<p> The logfile record looks like:  </p>
9466
9467<pre>
9468postfix/smtp[pid]:  Host offered STARTTLS: [name.of.host]
9469</pre>
9470
9471<p> This feature is available in Postfix 2.2 and later.  </p>
9472
9473
9474</DD>
9475
9476<DT><b><a name="smtp_tls_per_site">smtp_tls_per_site</a>
9477(default: empty)</b></DT><DD>
9478
9479<p> Optional lookup tables with the Postfix SMTP client TLS usage
9480policy by next-hop destination and by remote SMTP server hostname.
9481When both lookups succeed, the more specific per-site policy (NONE,
9482MUST, etc) overrides the less specific one (MAY), and the more secure
9483per-site policy (MUST, etc) overrides the less secure one (NONE).
9484With Postfix 2.3 and later <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> is strongly discouraged:
9485use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p>
9486
9487<p> Use of the bare hostname as the per-site table lookup key is
9488discouraged. Always use the full destination nexthop (enclosed in
9489[] with a possible ":port" suffix). A recipient domain or MX-enabled
9490transport next-hop with no port suffix may look like a bare hostname,
9491but is still a suitable <i>destination</i>. </p>
9492
9493<p> Specify a next-hop destination or server hostname on the left-hand
9494side; no wildcards are allowed. The next-hop destination is either
9495the recipient domain, or the destination specified with a <a href="transport.5.html">transport(5)</a>
9496table, the <a href="postconf.5.html#relayhost">relayhost</a> parameter, or the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter.
9497On the right hand side specify one of the following keywords:  </p>
9498
9499<dl>
9500
9501<dt> NONE </dt> <dd> Don't use TLS at all. This overrides a less
9502specific <b>MAY</b> lookup result from the alternate host or next-hop
9503lookup key, and overrides the global <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>, <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a>,
9504and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> settings. </dd>
9505
9506<dt> MAY </dt> <dd> Try to use TLS if the server announces support,
9507otherwise use the unencrypted connection. This has less precedence
9508than a more specific result (including <b>NONE</b>) from the alternate
9509host or next-hop lookup key, and has less precedence than the more
9510specific global "<a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> = yes" or "<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
9511= yes".  </dd>
9512
9513<dt> MUST_NOPEERMATCH </dt> <dd> Require TLS encryption, but do not
9514require that the remote SMTP server hostname matches the information
9515in the remote SMTP server certificate, or that the server certificate
9516was issued by a trusted CA. This overrides a less secure <b>NONE</b>
9517or a less specific <b>MAY</b> lookup result from the alternate host
9518or next-hop lookup key, and overrides the global <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>,
9519<a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> settings.  </dd>
9520
9521<dt> MUST </dt> <dd> Require TLS encryption, require that the remote
9522SMTP server hostname matches the information in the remote SMTP
9523server certificate, and require that the remote SMTP server certificate
9524was issued by a trusted CA. This overrides a less secure <b>NONE</b>
9525and <b>MUST_NOPEERMATCH</b> or a less specific <b>MAY</b> lookup
9526result from the alternate host or next-hop lookup key, and overrides
9527the global <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>, <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
9528settings.  </dd>
9529
9530</dl>
9531
9532<p> The above keywords correspond to the "none", "may", "encrypt" and
9533"verify" security levels for the new <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> parameter
9534introduced in Postfix 2.3. Starting with Postfix 2.3, and independently
9535of how the policy is specified, the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and
9536<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameters apply when TLS encryption
9537is mandatory. Connections for which encryption is optional typically
9538enable all "export" grade and better ciphers (see <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>
9539and <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>). </p>
9540
9541<p> As long as no secure DNS lookup mechanism is available, false
9542hostnames in MX or CNAME responses can change the server hostname
9543that Postfix uses for TLS policy lookup and server certificate
9544verification. Even with a perfect match between the server hostname and
9545the server certificate, there is no guarantee that Postfix is connected
9546to the right server.  See <a href="TLS_README.html">TLS_README</a> (Closing a DNS loophole with obsolete
9547per-site TLS policies) for a possible work-around. </p>
9548
9549<p> This feature is available in Postfix 2.2 and later. With
9550Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p>
9551
9552
9553</DD>
9554
9555<DT><b><a name="smtp_tls_policy_maps">smtp_tls_policy_maps</a>
9556(default: empty)</b></DT><DD>
9557
9558<p> Optional lookup tables with the Postfix SMTP client TLS security
9559policy by next-hop destination; when a non-empty value is specified,
9560this overrides the obsolete <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> parameter.  See
9561<a href="TLS_README.html">TLS_README</a> for a more detailed discussion of TLS security levels.
9562</p>
9563
9564<p> The TLS policy table is indexed by the full next-hop destination,
9565which is either the recipient domain, or the verbatim next-hop
9566specified in the transport table, $<a href="postconf.5.html#local_transport">local_transport</a>, $<a href="postconf.5.html#virtual_transport">virtual_transport</a>,
9567$<a href="postconf.5.html#relay_transport">relay_transport</a> or $<a href="postconf.5.html#default_transport">default_transport</a>. This includes any enclosing
9568square brackets and any non-default destination server port suffix. The
9569LMTP socket type prefix (inet: or unix:) is not included in the lookup
9570key. </p>
9571
9572<p> Only the next-hop domain, or $<a href="postconf.5.html#myhostname">myhostname</a> with LMTP over UNIX-domain
9573sockets, is used as the nexthop name for certificate verification. The
9574port and any enclosing square brackets are used in the table lookup key,
9575but are not used for server name verification. </p>
9576
9577<p> When the lookup key is a domain name without enclosing square brackets
9578or any <i>:port</i> suffix (typically the recipient domain), and the full
9579domain is not found in the table, just as with the <a href="transport.5.html">transport(5)</a> table,
9580the parent domain starting with a leading "." is matched recursively. This
9581allows one to specify a security policy for a recipient domain and all
9582its sub-domains. </p>
9583
9584<p> The lookup result is a security level, followed by an optional list
9585of whitespace and/or comma separated name=value attributes that override
9586related <a href="postconf.5.html">main.cf</a> settings. The TLS security levels in order of increasing
9587security are: </p>
9588
9589<dl>
9590
9591<dt><b>none</b></dt>
9592<dd>No TLS. No additional attributes are supported at this level. </dd>
9593
9594<dt><b>may</b></dt>
9595<dd>Opportunistic TLS. Since sending in the clear is acceptable,
9596demanding stronger than default TLS security merely reduces
9597inter-operability. The optional "ciphers", "exclude" and "protocols"
9598attributes (available for opportunistic TLS with Postfix &ge; 2.6)
9599override the "<a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>", "<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>" and
9600"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>" configuration parameters. When opportunistic TLS
9601handshakes fail, Postfix retries the connection with TLS disabled.
9602This allows mail delivery to sites with non-interoperable TLS
9603implementations.</dd>
9604
9605<dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption. At this level
9606and higher, the optional "protocols" attribute overrides the <a href="postconf.5.html">main.cf</a>
9607<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameter, the optional "ciphers" attribute
9608overrides the <a href="postconf.5.html">main.cf</a> <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> parameter, and the
9609optional "exclude" attribute (Postfix &ge; 2.6) overrides the <a href="postconf.5.html">main.cf</a>
9610<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> parameter. In the policy table,
9611multiple protocols or excluded ciphers must be separated by colons,
9612as attribute values may not contain whitespace or commas. </dd>
9613
9614<dt><b>fingerprint</b></dt> <dd>Certificate fingerprint
9615verification. Available with Postfix 2.5 and later. At this security
9616level, there are no trusted certificate authorities. The certificate
9617trust chain, expiration date, ... are not checked. Instead,
9618the optional <b>match</b> attribute, or else the <a href="postconf.5.html">main.cf</a>
9619<b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> parameter, lists the
9620valid "fingerprints" of the server certificate. The digest
9621algorithm used to calculate the fingerprint is selected by the
9622<b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. Multiple fingerprints can
9623be combined with a "|" delimiter in a single match attribute, or multiple
9624match attributes can be employed. The ":" character is not used as a
9625delimiter as it occurs between each pair of fingerprint (hexadecimal)
9626digits. </dd>
9627
9628<dt><b>verify</b></dt> <dd>Mandatory TLS verification.  At this security
9629level, DNS MX lookups are trusted to be secure enough, and the name
9630verified in the server certificate is usually obtained indirectly via
9631unauthenticated DNS MX lookups.  The optional "match" attribute overrides
9632the <a href="postconf.5.html">main.cf</a> <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> parameter. In the policy table,
9633multiple match patterns and strategies must be separated by colons.
9634In practice explicit control over matching is more common with the
9635"secure" policy, described below. </dd>
9636
9637<dt><b>secure</b></dt> <dd>Secure-channel TLS. At this security level, DNS
9638MX lookups, though potentially used to determine the candidate next-hop
9639gateway IP addresses, are <b>not</b> trusted to be secure enough for TLS
9640peername verification. Instead, the default name verified in the server
9641certificate is obtained directly from the next-hop, or is explicitly
9642specified via the optional <b>match</b> attribute which overrides the
9643<a href="postconf.5.html">main.cf</a> <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> parameter. In the policy table,
9644multiple match patterns and strategies must be separated by colons.
9645The match attribute is most useful when multiple domains are supported by
9646common server, the policy entries for additional domains specify matching
9647rules for the primary domain certificate. While transport table overrides
9648routing the secondary domains to the primary nexthop also allow secure
9649verification, they risk delivery to the wrong destination when domains
9650change hands or are re-assigned to new gateways. With the "match"
9651attribute approach, routing is not perturbed, and mail is deferred if
9652verification of a new MX host fails. </dd>
9653
9654</dl>
9655
9656<p>
9657Example:
9658</p>
9659
9660<pre>
9661/etc/postfix/<a href="postconf.5.html">main.cf</a>:
9662    <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = hash:/etc/postfix/tls_policy
9663    # Postfix 2.5 and later
9664    <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
9665</pre>
9666
9667<pre>
9668/etc/postfix/tls_policy:
9669    example.edu                 none
9670    example.mil                 may
9671    example.gov                 encrypt protocols=TLSv1
9672    example.com                 verify ciphers=high
9673    example.net                 secure
9674    .example.net                secure match=.example.net:example.net
9675    [mail.example.org]:587      secure match=nexthop
9676    # Postfix 2.5 and later
9677    [thumb.example.org]          fingerprint
9678    	match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
9679	match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
9680</pre>
9681
9682<p> <b>Note:</b> The <b>hostname</b> strategy if listed in a non-default
9683setting of <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> or in the <b>match</b> attribute
9684in the policy table can render the <b>secure</b> level vulnerable to
9685DNS forgery. Do not use the <b>hostname</b> strategy for secure-channel
9686configurations in environments where DNS security is not assured. </p>
9687
9688<p> This feature is available in Postfix 2.3 and later. </p>
9689
9690
9691</DD>
9692
9693<DT><b><a name="smtp_tls_protocols">smtp_tls_protocols</a>
9694(default: !SSLv2)</b></DT><DD>
9695
9696<p> List of TLS protocols that the Postfix SMTP client will exclude or
9697include with opportunistic TLS encryption. Starting with Postfix 2.6,
9698the Postfix SMTP client will by default not use the obsolete SSLv2
9699protocol. </p>
9700
9701<p> In <a href="postconf.5.html">main.cf</a> the values are separated by whitespace, commas or
9702colons. In the policy table (see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid
9703separator is colon. An empty value means allow all protocols. The valid
9704protocol names, (see <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3"
9705and "TLSv1". </p>
9706
9707<p> To include a protocol list its name, to exclude it, prefix the name
9708with a "!" character. To exclude SSLv2 even for opportunistic TLS set
9709"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set
9710"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to
9711include, is supported, but not recommended. OpenSSL provides no mechanisms
9712for excluding protocols not known at compile-time. If Postfix is linked
9713against an OpenSSL library that supports additional protocol versions,
9714they cannot be excluded using either syntax. </p>
9715
9716<p> Example: </p>
9717<pre>
9718# TLSv1 only!
9719<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3
9720</pre>
9721
9722<p> This feature is available in Postfix 2.6 and later. </p>
9723
9724
9725</DD>
9726
9727<DT><b><a name="smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a>
9728(default: 9)</b></DT><DD>
9729
9730<p> The verification depth for remote SMTP server certificates. A depth
9731of 1 is sufficient if the issuing CA is listed in a local CA file. </p>
9732
9733<p> The default verification depth is 9 (the OpenSSL default) for
9734compatibility with earlier Postfix behavior. Prior to Postfix 2.5,
9735the default value was 5, but the limit was not actually enforced. If
9736you have set this to a lower non-default value, certificates with longer
9737trust chains may now fail to verify. Certificate chains with 1 or 2
9738CAs are common, deeper chains are more rare and any number between 5
9739and 9 should suffice in practice. You can choose a lower number if,
9740for example, you trust certificates directly signed by an issuing CA
9741but not any CAs it delegates to. </p>
9742
9743<p> This feature is available in Postfix 2.2 and later.  </p>
9744
9745
9746</DD>
9747
9748<DT><b><a name="smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a>
9749(default: nexthop, dot-nexthop)</b></DT><DD>
9750
9751<p> The server certificate peername verification method for the
9752"secure" TLS security level. In a "secure" TLS policy table
9753($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute
9754overrides this <a href="postconf.5.html">main.cf</a> setting. </p>
9755
9756<p> This parameter specifies one or more patterns or strategies separated
9757by commas, whitespace or colons.  In the policy table the only valid
9758separator is the colon character. </p>
9759
9760<p> For a description of the pattern and strategy syntax see the
9761<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> parameter. The "hostname" strategy should
9762be avoided in this context, as in the absence of a secure global DNS, using
9763the results of MX lookups in certificate verification is not immune to active
9764(man-in-the-middle) attacks on DNS. </p>
9765
9766<p>
9767Sample <a href="postconf.5.html">main.cf</a> setting:
9768</p>
9769
9770<blockquote>
9771<pre>
9772<a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop
9773</pre>
9774</blockquote>
9775
9776<p>
9777Sample policy table override:
9778</p>
9779
9780<blockquote>
9781<pre>
9782example.net     secure match=example.com:.example.com
9783.example.net    secure match=example.com:.example.com
9784</pre>
9785</blockquote>
9786
9787<p> This feature is available in Postfix 2.3 and later. </p>
9788
9789
9790</DD>
9791
9792<DT><b><a name="smtp_tls_security_level">smtp_tls_security_level</a>
9793(default: empty)</b></DT><DD>
9794
9795<p> The default SMTP TLS security level for the Postfix SMTP client;
9796when a non-empty value is specified, this overrides the obsolete
9797parameters <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>, <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a>, and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>.
9798</p>
9799
9800<p> Specify one of the following security levels: </p>
9801
9802<dl>
9803
9804<dt><b>none</b></dt> <dd> TLS will not be used unless enabled for specific
9805destinations via <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>. </dd>
9806
9807<dt><b>may</b></dt>
9808<dd> Opportunistic TLS. Use TLS if this is supported by the remote
9809SMTP server, otherwise use plaintext. Since
9810sending in the clear is acceptable, demanding stronger than default TLS
9811security merely reduces inter-operability.
9812The "<a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>" and "<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>" (Postfix &ge; 2.6)
9813configuration parameters provide control over the protocols and
9814cipher grade used with opportunistic TLS.  With earlier releases the
9815opportunistic TLS cipher grade is always "export" and no protocols
9816are disabled.
9817When TLS handshakes fail, the connection is retried with TLS disabled.
9818This allows mail delivery to sites with non-interoperable TLS
9819implementations. </dd>
9820
9821<dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption. Since a minimum
9822level of security is intended, it is reasonable to be specific about
9823sufficiently secure protocol versions and ciphers. At this security level
9824and higher, the <a href="postconf.5.html">main.cf</a> parameters <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> and
9825<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> specify the TLS protocols and minimum
9826cipher grade which the administrator considers secure enough for
9827mandatory encrypted sessions. This security level is not an appropriate
9828default for systems delivering mail to the Internet. </dd>
9829
9830<dt><b>fingerprint</b></dt> <dd>Certificate fingerprint
9831verification. Available with Postfix 2.5 and later. At this security
9832level, there are no trusted certificate authorities. The certificate
9833trust chain, expiration date, ... are not checked. Instead,
9834the <b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> parameter lists
9835the valid "fingerprints" of the server certificate. The digest
9836algorithm used to calculate the fingerprint is selected by the
9837<b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. </dd>
9838
9839<dt><b>verify</b></dt> <dd>Mandatory TLS verification. At this security
9840level, DNS MX lookups are trusted to be secure enough, and the name
9841verified in the server certificate is usually obtained indirectly
9842via unauthenticated DNS MX lookups. The <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
9843parameter controls how the server name is verified. In practice explicit
9844control over matching is more common at the "secure" level, described
9845below. This security level is not an appropriate default for systems
9846delivering mail to the Internet. </dd>
9847
9848<dt><b>secure</b></dt> <dd>Secure-channel TLS.  At this security level,
9849DNS MX lookups, though potentially used to determine the candidate
9850next-hop gateway IP addresses, are <b>not</b> trusted to be secure enough
9851for TLS peername verification. Instead, the default name verified in
9852the server certificate is obtained from the next-hop domain as specified
9853in the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> configuration parameter. The default
9854matching rule is that a server certificate matches when its name is equal
9855to or is a sub-domain of the nexthop domain. This security level is not
9856an appropriate default for systems delivering mail to the Internet. </dd>
9857
9858</dl>
9859
9860<p>
9861Examples:
9862</p>
9863
9864<pre>
9865# No TLS. Formerly: <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>=no and <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a>=no.
9866<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = none
9867</pre>
9868
9869<pre>
9870# Opportunistic TLS.
9871<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = may
9872# Postfix &ge; 2.6:
9873# Do not tweak opportunistic ciphers unless it is essential
9874# to do so (if a security vulnerability is found in the SSL library that
9875# can be mitigated by disabling a particular protocol or raising the
9876# cipher grade from "export" to "low" or "medium").
9877<a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> = export
9878<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2
9879</pre>
9880
9881<pre>
9882# Mandatory (high-grade) TLS encryption.
9883<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = encrypt
9884<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
9885</pre>
9886
9887<pre>
9888# Mandatory TLS verification of hostname or nexthop domain.
9889<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = verify
9890<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
9891<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop
9892</pre>
9893
9894<pre>
9895# Secure channel TLS with exact nexthop name match.
9896<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = secure
9897<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1
9898<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
9899<a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop
9900</pre>
9901
9902<pre>
9903# Certificate fingerprint verification (Postfix &ge; 2.5).
9904# The CA-less "fingerprint" security level only scales to a limited
9905# number of destinations. As a global default rather than a per-site
9906# setting, this is practical when mail for all recipients is sent
9907# to a central mail hub.
9908<a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com]
9909<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint
9910<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
9911<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
9912<a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> =
9913    3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
9914    EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
9915</pre>
9916
9917<p> This feature is available in Postfix 2.3 and later. </p>
9918
9919
9920</DD>
9921
9922<DT><b><a name="smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
9923(default: empty)</b></DT><DD>
9924
9925<p> Name of the file containing the optional Postfix SMTP client
9926TLS session cache. Specify a database type that supports enumeration,
9927such as <b>btree</b> or <b>sdbm</b>; there is no need to support
9928concurrent access.  The file is created if it does not exist. The <a href="smtp.8.html">smtp(8)</a>
9929daemon does not use this parameter directly, rather the cache is
9930implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that
9931per-smtp-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not effective.
9932Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon:
9933$<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>, $<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
9934(and with Postfix 2.3 and later $<a href="postconf.5.html#lmtp_tls_session_cache_database">lmtp_tls_session_cache_database</a>), needs to
9935be stored separately. It is not at this time possible to store multiple
9936caches in a single database. </p>
9937
9938<p> Note: <b>dbm</b> databases are not suitable. TLS
9939session objects are too large. </p>
9940
9941<p> As of version 2.5, Postfix no longer uses root privileges when
9942opening this file. The file should now be stored under the Postfix-owned
9943<a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file
9944under a non-Postfix directory is redirected to the Postfix-owned
9945<a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p>
9946
9947<p> Example: </p>
9948
9949<pre>
9950<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a> = btree:/var/db/postfix/smtp_scache
9951</pre>
9952
9953<p> This feature is available in Postfix 2.2 and later.  </p>
9954
9955
9956</DD>
9957
9958<DT><b><a name="smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a>
9959(default: 3600s)</b></DT><DD>
9960
9961<p> The expiration time of Postfix SMTP client TLS session cache
9962information.  A cache cleanup is performed periodically
9963every $<a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a> seconds. As with
9964$<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>, this parameter is implemented in the
9965<a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtp-instance <a href="master.5.html">master.cf</a> overrides
9966are not possible. </p>
9967
9968<p> This feature is available in Postfix 2.2 and later.  </p>
9969
9970
9971</DD>
9972
9973<DT><b><a name="smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
9974(default: hostname)</b></DT><DD>
9975
9976<p> The server certificate peername verification method for the
9977"verify" TLS security level. In a "verify" TLS policy table
9978($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute
9979overrides this <a href="postconf.5.html">main.cf</a> setting. </p>
9980
9981<p> This parameter specifies one or more patterns or strategies separated
9982by commas, whitespace or colons.  In the policy table the only valid
9983separator is the colon character. </p>
9984
9985<p> Patterns specify domain names, or domain name suffixes: </p>
9986
9987<dl>
9988
9989<dt><i>example.com</i></dt> <dd> Match the <i>example.com</i> domain,
9990i.e. one of the names the server certificate must be <i>example.com</i>,
9991upper and lower case distinctions are ignored. </dd>
9992
9993<dt><i>.example.com</i></dt>
9994<dd> Match subdomains of the <i>example.com</i> domain, i.e. match
9995a name in the server certificate that consists of a non-zero number of
9996labels followed by a <i>.example.com</i> suffix. Case distinctions are
9997ignored.</dd>
9998
9999</dl>
10000
10001<p> Strategies specify a transformation from the next-hop domain
10002to the expected name in the server certificate: </p>
10003
10004<dl>
10005
10006<dt>nexthop</dt>
10007<dd> Match against the next-hop domain, which is either the recipient
10008domain, or the transport next-hop configured for the domain stripped of
10009any optional socket type prefix, enclosing square brackets and trailing
10010port. When MX lookups are not suppressed, this is the original nexthop
10011domain prior to the MX lookup, not the result of the MX lookup. For
10012LMTP delivery via UNIX-domain sockets, the verified next-hop name is
10013$<a href="postconf.5.html#myhostname">myhostname</a>.  This strategy is suitable for use with the "secure"
10014policy. Case is ignored.</dd>
10015
10016<dt>dot-nexthop</dt>
10017<dd> As above, but match server certificate names that are subdomains
10018of the next-hop domain. Case is ignored.</dd>
10019
10020<dt>hostname</dt> <dd> Match against the hostname of the server, often
10021obtained via an unauthenticated DNS MX lookup. For LMTP delivery via
10022UNIX-domain sockets, the verified name is $<a href="postconf.5.html#myhostname">myhostname</a>. This matches
10023the verification strategy of the "MUST" keyword in the obsolete
10024<a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table, and is suitable for use with the "verify"
10025security level. When the next-hop name is enclosed in square brackets
10026to suppress MX lookups, the "hostname" strategy is the same as the
10027"nexthop" strategy. Case is ignored.</dd>
10028
10029</dl>
10030
10031<p>
10032Sample <a href="postconf.5.html">main.cf</a> setting:
10033</p>
10034
10035<pre>
10036<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop
10037</pre>
10038
10039<p>
10040Sample policy table override:
10041</p>
10042
10043<pre>
10044example.com     verify  match=hostname:nexthop
10045.example.com    verify  match=example.com:.example.com:hostname
10046</pre>
10047
10048<p> This feature is available in Postfix 2.3 and later. </p>
10049
10050
10051</DD>
10052
10053<DT><b><a name="smtp_use_tls">smtp_use_tls</a>
10054(default: no)</b></DT><DD>
10055
10056<p> Opportunistic mode: use TLS when a remote SMTP server announces
10057STARTTLS support, otherwise send the mail in the clear. Beware:
10058some SMTP servers offer STARTTLS even if it is not configured.  With
10059Postfix &lt; 2.3, if the TLS handshake fails, and no other server is
10060available, delivery is deferred and mail stays in the queue. If this
10061is a concern for you, use the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> feature instead.  </p>
10062
10063<p> This feature is available in Postfix 2.2 and later. With
10064Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
10065
10066
10067</DD>
10068
10069<DT><b><a name="smtp_xforward_timeout">smtp_xforward_timeout</a>
10070(default: 300s)</b></DT><DD>
10071
10072<p>
10073The SMTP client time limit for sending the XFORWARD command, and
10074for receiving the server response.
10075</p>
10076
10077<p>
10078Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
10079The default time unit is s (seconds).
10080</p>
10081
10082<p>
10083This feature is available in Postfix 2.1 and later.
10084</p>
10085
10086
10087</DD>
10088
10089<DT><b><a name="smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a>
10090(default: $<a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a>)</b></DT><DD>
10091
10092<p> What SMTP clients are allowed to specify the XVERP command.
10093This command requests that mail be delivered one recipient at a
10094time with a per recipient return address.  </p>
10095
10096<p> By default, no clients are allowed to specify XVERP.  </p>
10097
10098<p> This parameter was renamed with Postfix version 2.1. The default value
10099is backwards compatible with Postfix version 2.0.  </p>
10100
10101<p> Specify a list of network/netmask patterns, separated by commas
10102and/or whitespace. The mask specifies the number of bits in the
10103network part of a host address. You can also specify hostnames or
10104.domain names (the initial dot causes the domain to match any name
10105below it),  "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns.  A "/file/name"
10106pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
10107is matched when a table entry matches a lookup string (the lookup
10108result is ignored).  Continue long lines by starting the next line
10109with whitespace. Specify "!pattern" to exclude an address or network
10110block from the list. The form "!/file/name" is supported only in
10111Postfix version 2.4 and later.  </p>
10112
10113<p> Note: IP version 6 address information must be specified inside
10114<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a> value, and in
10115files specified with "/file/name".  IP version 6 addresses contain
10116the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
10117pattern.  </p>
10118
10119
10120</DD>
10121
10122<DT><b><a name="smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a>
10123(default: empty)</b></DT><DD>
10124
10125<p>
10126What SMTP clients are allowed to use the XCLIENT feature.  This
10127command overrides SMTP client information that is used for access
10128control. Typical use is for SMTP-based content filters, fetchmail-like
10129programs, or SMTP server access rule testing. See the <a href="XCLIENT_README.html">XCLIENT_README</a>
10130document for details.
10131</p>
10132
10133<p>
10134This feature is available in Postfix 2.1 and later.
10135</p>
10136
10137<p>
10138By default, no clients are allowed to specify XCLIENT.
10139</p>
10140
10141<p>
10142Specify a list of network/netmask patterns, separated by commas
10143and/or whitespace. The mask specifies the number of bits in the
10144network part of a host address. You can also specify hostnames or
10145.domain names (the initial dot causes the domain to match any name
10146below it),  "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns.  A "/file/name"
10147pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
10148is matched when a table entry matches a lookup string (the lookup
10149result is ignored).  Continue long lines by starting the next line
10150with whitespace. Specify "!pattern" to exclude an address or network
10151block from the list. The form "!/file/name" is supported only in
10152Postfix version 2.4 and later.  </p>
10153
10154<p> Note: IP version 6 address information must be specified inside
10155<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a> value, and in
10156files specified with "/file/name".  IP version 6 addresses contain
10157the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
10158pattern.  </p>
10159
10160
10161</DD>
10162
10163<DT><b><a name="smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a>
10164(default: empty)</b></DT><DD>
10165
10166<p>
10167What SMTP clients are allowed to use the XFORWARD feature.  This
10168command forwards information that is used to improve logging after
10169SMTP-based content filters. See the <a href="XFORWARD_README.html">XFORWARD_README</a> document for
10170details.
10171</p>
10172
10173<p>
10174This feature is available in Postfix 2.1 and later.
10175</p>
10176
10177<p>
10178By default, no clients are allowed to specify XFORWARD.
10179</p>
10180
10181<p>
10182Specify a list of network/netmask patterns, separated by commas
10183and/or whitespace. The mask specifies the number of bits in the
10184network part of a host address. You can also specify hostnames or
10185.domain names (the initial dot causes the domain to match any name
10186below it),  "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns.  A "/file/name"
10187pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
10188is matched when a table entry matches a lookup string (the lookup
10189result is ignored).  Continue long lines by starting the next line
10190with whitespace. Specify "!pattern" to exclude an address or network
10191block from the list. The form "!/file/name" is supported only in
10192Postfix version 2.4 and later.  </p>
10193
10194<p> Note: IP version 6 address information must be specified inside
10195<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a> value, and in
10196files specified with "/file/name".  IP version 6 addresses contain
10197the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
10198pattern.  </p>
10199
10200
10201</DD>
10202
10203<DT><b><a name="smtpd_banner">smtpd_banner</a>
10204(default: $<a href="postconf.5.html#myhostname">myhostname</a> ESMTP $<a href="postconf.5.html#mail_name">mail_name</a>)</b></DT><DD>
10205
10206<p>
10207The text that follows the 220 status code in the SMTP greeting
10208banner. Some people like to see the mail version advertised. By
10209default, Postfix shows no version.
10210</p>
10211
10212<p>
10213You MUST specify $<a href="postconf.5.html#myhostname">myhostname</a> at the start of the text. This is
10214required by the SMTP protocol.
10215</p>
10216
10217<p>
10218Example:
10219</p>
10220
10221<pre>
10222<a href="postconf.5.html#smtpd_banner">smtpd_banner</a> = $<a href="postconf.5.html#myhostname">myhostname</a> ESMTP $<a href="postconf.5.html#mail_name">mail_name</a> ($<a href="postconf.5.html#mail_version">mail_version</a>)
10223</pre>
10224
10225
10226</DD>
10227
10228<DT><b><a name="smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a>
10229(default: 50)</b></DT><DD>
10230
10231<p>
10232How many simultaneous connections any client is allowed to
10233make to this service.  By default, the limit is set to half
10234the default process limit value.
10235</p>
10236
10237<p>
10238To disable this feature, specify a limit of 0.
10239</p>
10240
10241<p>
10242WARNING: The purpose of this feature is to limit abuse. It must
10243not be used to regulate legitimate mail traffic.
10244</p>
10245
10246<p>
10247This feature is available in Postfix 2.2 and later.
10248</p>
10249
10250
10251</DD>
10252
10253<DT><b><a name="smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a>
10254(default: 0)</b></DT><DD>
10255
10256<p>
10257The maximal number of connection attempts any client is allowed to
10258make to this service per time unit.  The time unit is specified
10259with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
10260</p>
10261
10262<p>
10263By default, a client can make as many connections per time unit as
10264Postfix can accept.
10265</p>
10266
10267<p>
10268To disable this feature, specify a limit of 0.
10269</p>
10270
10271<p>
10272WARNING: The purpose of this feature is to limit abuse. It must
10273not be used to regulate legitimate mail traffic.
10274</p>
10275
10276<p>
10277This feature is available in Postfix 2.2 and later.
10278</p>
10279
10280<p>
10281Example:
10282</p>
10283
10284<pre>
10285<a href="postconf.5.html#smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a> = 1000
10286</pre>
10287
10288
10289</DD>
10290
10291<DT><b><a name="smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a>
10292(default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD>
10293
10294<p>
10295Clients that are excluded from connection count, connection rate,
10296or SMTP request rate restrictions. See the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter
10297description for the parameter value syntax.
10298</p>
10299
10300<p>
10301By default, clients in trusted networks are excluded. Specify a
10302list of network blocks, hostnames or .domain names (the initial
10303dot causes the domain to match any name below it).
10304</p>
10305
10306<p> Note: IP version 6 address information must be specified inside
10307<tt>[]</tt> in the <a href="postconf.5.html#smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a> value, and
10308in files specified with "/file/name".  IP version 6 addresses
10309contain the ":" character, and would otherwise be confused with a
10310"<a href="DATABASE_README.html">type:table</a>" pattern.  </p>
10311
10312<p>
10313This feature is available in Postfix 2.2 and later.
10314</p>
10315
10316
10317</DD>
10318
10319<DT><b><a name="smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a>
10320(default: 0)</b></DT><DD>
10321
10322<p>
10323The maximal number of message delivery requests that any client is
10324allowed to make to this service per time unit, regardless of whether
10325or not Postfix actually accepts those messages.  The time unit is
10326specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
10327</p>
10328
10329<p>
10330By default, a client can send as many message delivery requests
10331per time unit as Postfix can accept.
10332</p>
10333
10334<p>
10335To disable this feature, specify a limit of 0.
10336</p>
10337
10338<p>
10339WARNING: The purpose of this feature is to limit abuse. It must
10340not be used to regulate legitimate mail traffic.
10341</p>
10342
10343<p>
10344This feature is available in Postfix 2.2 and later.
10345</p>
10346
10347<p>
10348Example:
10349</p>
10350
10351<pre>
10352<a href="postconf.5.html#smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a> = 1000
10353</pre>
10354
10355
10356</DD>
10357
10358<DT><b><a name="smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a>
10359(default: 0)</b></DT><DD>
10360
10361<p>
10362The maximal number of new (i.e., uncached) TLS sessions that a
10363remote SMTP client is allowed to negotiate with this service per
10364time unit.  The time unit is specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a>
10365configuration parameter.
10366</p>
10367
10368<p>
10369By default, a remote SMTP client can negotiate as many new TLS
10370sessions per time unit as Postfix can accept.
10371</p>
10372
10373<p>
10374To disable this feature, specify a limit of 0. Otherwise, specify
10375a limit that is at least the per-client concurrent session limit,
10376or else legitimate client sessions may be rejected.
10377</p>
10378
10379<p>
10380WARNING: The purpose of this feature is to limit abuse. It must
10381not be used to regulate legitimate mail traffic.
10382</p>
10383
10384<p>
10385This feature is available in Postfix 2.3 and later.
10386</p>
10387
10388<p>
10389Example:
10390</p>
10391
10392<pre>
10393<a href="postconf.5.html#smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a> = 100
10394</pre>
10395
10396
10397</DD>
10398
10399<DT><b><a name="smtpd_client_port_logging">smtpd_client_port_logging</a>
10400(default: no)</b></DT><DD>
10401
10402<p> Enable logging of the remote SMTP client port in addition to
10403the hostname and IP address. The logging format is "host[address]:port".
10404</p>
10405
10406<p> This feature is available in Postfix 2.5 and later. </p>
10407
10408
10409</DD>
10410
10411<DT><b><a name="smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a>
10412(default: 0)</b></DT><DD>
10413
10414<p>
10415The maximal number of recipient addresses that any client is allowed
10416to send to this service per time unit, regardless of whether or not
10417Postfix actually accepts those recipients.  The time unit is specified
10418with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
10419</p>
10420
10421<p>
10422By default, a client can make as many recipient addresses per time
10423unit as Postfix can accept.
10424</p>
10425
10426<p>
10427To disable this feature, specify a limit of 0.
10428</p>
10429
10430<p>
10431WARNING: The purpose of this feature is to limit abuse. It must
10432not be used to regulate legitimate mail traffic.
10433</p>
10434
10435<p>
10436This feature is available in Postfix 2.2 and later.
10437</p>
10438
10439<p>
10440Example:
10441</p>
10442
10443<pre>
10444<a href="postconf.5.html#smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a> = 1000
10445</pre>
10446
10447
10448</DD>
10449
10450<DT><b><a name="smtpd_client_restrictions">smtpd_client_restrictions</a>
10451(default: empty)</b></DT><DD>
10452
10453<p>
10454Optional SMTP server access restrictions in the context of a client
10455SMTP connection request.
10456See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
10457restriction lists" for a discussion of evaluation context and time.
10458</p>
10459
10460<p>
10461The default is to allow all connection requests.
10462</p>
10463
10464<p>
10465Specify a list of restrictions, separated by commas and/or whitespace.
10466Continue long lines by starting the next line with whitespace.
10467Restrictions are applied in the order as specified; the first
10468restriction that matches wins.
10469</p>
10470
10471<p>
10472The following restrictions are specific to client hostname or
10473client network address information.
10474</p>
10475
10476<dl>
10477
10478<dt><b><a name="check_ccert_access">check_ccert_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
10479
10480<dd> Use the client certificate fingerprint as lookup key for the
10481specified <a href="access.5.html">access(5)</a> database; with Postfix version 2.2, also require that
10482the SMTP client certificate is verified successfully.
10483The fingerprint digest algorithm is configurable via the
10484<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
10485Postfix version 2.5).  This feature is available with Postfix version
104862.2 and later. </dd>
10487
10488<dt><b><a name="check_client_access">check_client_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
10489
10490<dd>Search the specified access database for the client hostname,
10491parent domains, client IP address, or networks obtained by stripping
10492least significant octets. See the <a href="access.5.html">access(5)</a> manual page for details. </dd>
10493
10494<dt><b><a name="check_reverse_client_hostname_access">check_reverse_client_hostname_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
10495
10496<dd>Search the specified access database for the unverified reverse
10497client hostname, parent domains, client IP address, or networks
10498obtained by stripping least significant octets. See the <a href="access.5.html">access(5)</a>
10499manual page for details.  Note: a result of "OK" is not allowed for
10500safety reasons.  Instead, use DUNNO in order to exclude specific
10501hosts from blacklists.  This feature is available in Postfix 2.6
10502and later.</dd>
10503
10504<dt><b><a name="permit_inet_interfaces">permit_inet_interfaces</a></b></dt>
10505
10506<dd>Permit the request when the client IP address matches
10507$<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. </dd>
10508
10509<dt><b><a name="permit_mynetworks">permit_mynetworks</a></b></dt>
10510
10511<dd>Permit the request when the client IP address matches any
10512network or network address listed in  $<a href="postconf.5.html#mynetworks">mynetworks</a>. </dd>
10513
10514<dt><b><a name="permit_sasl_authenticated">permit_sasl_authenticated</a></b></dt>
10515
10516<dd> Permit the request when the client is successfully
10517authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH) protocol. </dd>
10518
10519<dt><b><a name="permit_tls_all_clientcerts">permit_tls_all_clientcerts</a></b></dt>
10520
10521<dd> Permit the request when the remote SMTP client certificate is
10522verified successfully.  This option must be used only if a special
10523CA issues the certificates and only this CA is listed as trusted
10524CA, otherwise all clients with a recognized certificate would be
10525allowed to relay. This feature is available with Postfix version 2.2.</dd>
10526
10527<dt><b><a name="permit_tls_clientcerts">permit_tls_clientcerts</a></b></dt>
10528
10529<dd>Permit the request when the remote SMTP client certificate
10530fingerprint is listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>.
10531The fingerprint digest algorithm is configurable via the
10532<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
10533Postfix version 2.5).  This feature is available with Postfix version
105342.2. </dd>
10535
10536<dt><b><a name="reject_rbl_client">reject_rbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt>
10537
10538<dd>Reject the request when the reversed client network address is
10539listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>
10540(Postfix version 2.1 and later only).  If no "<i>=d.d.d.d</i>" is
10541specified, reject the request when the reversed client network
10542address is listed with any A record under <i>rbl_domain</i>. <br>
10543The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for
10544rejected requests (default:  554), the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a>  parameter
10545specifies the default server reply, and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a>  parameter
10546specifies tables with server replies indexed by <i>rbl_domain</i>.
10547This feature is available in Postfix 2.0 and later.  </dd>
10548
10549<dt><b><a name="reject_rhsbl_client">reject_rhsbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt>
10550
10551<dd>Reject the request when the client hostname is listed with the
10552A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version
105532.1 and later only).  If no "<i>=d.d.d.d</i>" is specified, reject
10554the request when the client hostname is listed with
10555any A record under <i>rbl_domain</i>. See the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a>
10556description above for additional RBL related configuration parameters.
10557This feature is available in Postfix 2.0 and later.  </dd>
10558
10559<dt><b><a name="reject_unknown_client_hostname">reject_unknown_client_hostname</a></b> (with Postfix &lt; 2.3: reject_unknown_client)</dt>
10560
10561<dd>Reject the request when 1) the client IP address-&gt;name mapping
10562fails, 2) the name-&gt;address mapping fails, or 3) the name-&gt;address
10563mapping does not match the client IP address.  <br> This is a
10564stronger restriction than the <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a>
10565feature, which triggers only under condition 1) above. <br> The
10566<a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response code
10567for rejected requests (default: 450). The reply is always 450 in
10568case the address-&gt;name or name-&gt;address lookup failed due to
10569a temporary problem. </dd>
10570
10571<dt><b><a name="reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a></b></dt>
10572
10573<dd>Reject the request when the client IP address has no address-&gt;name
10574mapping. <br> This is a weaker restriction than the
10575<a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> feature, which requires not only
10576that the address-&gt;name and name-&gt;address mappings exist, but
10577also that the two mappings reproduce the client IP address.  <br>
10578The <a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response
10579code for rejected requests (default: 450).  The reply is always 450
10580in case the address-&gt;name lookup failed due to a temporary
10581problem. <br> This feature is available in Postfix 2.3 and
10582later.  </dd>
10583
10584</dl>
10585
10586<p>
10587In addition, you can use any of the following <a name="generic">
10588generic</a> restrictions.  These restrictions are applicable in
10589any SMTP command context.
10590</p>
10591
10592<dl>
10593
10594<dt><b><a name="check_policy_service">check_policy_service <i>servername</i></a></b></dt>
10595
10596<dd>Query the specified policy server. See the <a href="SMTPD_POLICY_README.html">SMTPD_POLICY_README</a>
10597document for details. This feature is available in Postfix 2.1
10598and later. </dd>
10599
10600<dt><b><a name="defer">defer</a></b></dt>
10601
10602<dd>Defer the request. The client is told to try again later. This
10603restriction is useful at the end of a restriction list, to make
10604the default policy explicit. <br> The <a href="postconf.5.html#defer_code">defer_code</a> parameter specifies
10605the SMTP server reply code (default: 450).</dd>
10606
10607<dt><b><a name="defer_if_permit">defer_if_permit</a></b></dt>
10608
10609<dd>Defer the request if some later restriction would result in an
10610explicit or implicit PERMIT action.  This is useful when a blacklisting
10611feature fails due to a temporary problem.  This feature is available
10612in Postfix version 2.1 and later.  </dd>
10613
10614<dt><b><a name="defer_if_reject">defer_if_reject</a></b></dt>
10615
10616<dd>Defer the request if some later restriction would result in a
10617REJECT action.  This is useful when a whitelisting feature fails
10618due to a temporary problem.  This feature is available in Postfix
10619version 2.1 and later.  </dd>
10620
10621<dt><b><a name="permit">permit</a></b></dt>
10622
10623<dd>Permit the request. This restriction is useful at the end of
10624a restriction list, to make the default policy explicit.</dd>
10625
10626<dt><b><a name="reject_multi_recipient_bounce">reject_multi_recipient_bounce</a></b></dt>
10627
10628<dd>Reject the request when the envelope sender is the null address,
10629and the message has multiple envelope recipients. This usage has
10630rare but legitimate applications: under certain conditions,
10631multi-recipient mail that was posted with the DSN option NOTIFY=NEVER
10632may be forwarded with the null sender address.
10633<br> Note: this restriction can only work reliably
10634when used in <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> or
10635<a href="postconf.5.html#smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a>, because the total number of
10636recipients is not known at an earlier stage of the SMTP conversation.
10637Use at the RCPT stage will only reject the second etc.  recipient.
10638<br>
10639The <a href="postconf.5.html#multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a> parameter specifies the
10640response code for rejected requests (default:  550).  This feature
10641is available in Postfix 2.1 and later. </dd>
10642
10643<dt><b><a name="reject_plaintext_session">reject_plaintext_session</a></b></dt>
10644
10645<dd>Reject the request when the connection is not encrypted. This
10646restriction should not be used before the client has had a chance
10647to negotiate encryption with the AUTH or STARTTLS commands.
10648<br>
10649The <a href="postconf.5.html#plaintext_reject_code">plaintext_reject_code</a> parameter specifies the response
10650code for rejected requests (default:  450).  This feature is available
10651in Postfix 2.3 and later. </dd>
10652
10653<dt><b><a name="reject_unauth_pipelining">reject_unauth_pipelining</a></b></dt>
10654
10655<dd>Reject the request when the client sends SMTP commands ahead
10656of time where it is not allowed, or when the client sends SMTP
10657commands ahead of time without knowing that Postfix actually supports
10658ESMTP command pipelining. This stops mail from bulk mail software
10659that improperly uses ESMTP command pipelining in order to speed up
10660deliveries.
10661<br> With Postfix 2.6 and later, the SMTP server sets a per-session
10662flag whenever it detects illegal pipelining, including pipelined
10663EHLO or HELO commands. The <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> feature simply
10664tests whether the flag was set at any point in time during the
10665session.
10666<br> With older Postfix versions, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> checks
10667the current status of the input read queue, and its usage is not
10668recommended in contexts other than <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a>.  </dd>
10669
10670<dt><b><a name="reject">reject</a></b></dt>
10671
10672<dd>Reject the request. This restriction is useful at the end of
10673a restriction list, to make the default policy explicit.  The
10674<a href="postconf.5.html#reject_code">reject_code</a> configuration parameter specifies the response code for
10675rejected requests (default: 554).</dd>
10676
10677<dt><b><a name="sleep">sleep <i>seconds</i></a></b></dt>
10678
10679<dd>Pause for the specified number of seconds and proceed with
10680the next restriction in the list, if any. This may stop zombie
10681mail when used as:
10682<pre>
10683/etc/postfix/<a href="postconf.5.html">main.cf</a>:
10684    <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> =
10685        sleep 1, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a>
10686    <a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = no
10687</pre>
10688This feature is available in Postfix 2.3. </dd>
10689
10690<dt><b><a name="warn_if_reject">warn_if_reject</a></b></dt>
10691
10692<dd>Change the meaning of the next restriction, so that it logs
10693a warning instead of rejecting a request (look for logfile records
10694that contain "reject_warning"). This is useful for testing new
10695restrictions in a "live" environment without risking unnecessary
10696loss of mail. </dd>
10697
10698</dl>
10699
10700<p>
10701Other restrictions that are valid in this context:
10702</p>
10703
10704<ul>
10705
10706<li> SMTP command specific restrictions that are described under
10707the <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>, <a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> or
10708<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameters. When helo, sender or
10709recipient restrictions are listed under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>,
10710they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that
10711$<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> is evaluated at the time of the RCPT TO
10712command.
10713
10714</ul>
10715
10716<p>
10717Example:
10718</p>
10719
10720<pre>
10721<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a>
10722</pre>
10723
10724
10725</DD>
10726
10727<DT><b><a name="smtpd_data_restrictions">smtpd_data_restrictions</a>
10728(default: empty)</b></DT><DD>
10729
10730<p>
10731Optional access restrictions that the Postfix SMTP server applies
10732in the context of the SMTP DATA command.
10733See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
10734restriction lists" for a discussion of evaluation context and time.
10735</p>
10736
10737<p>
10738This feature is available in Postfix 2.0 and later.
10739</p>
10740
10741<p>
10742Specify a list of restrictions, separated by commas and/or whitespace.
10743Continue long lines by starting the next line with whitespace.
10744Restrictions are applied in the order as specified; the first
10745restriction that matches wins.
10746</p>
10747
10748<p>
10749The following restrictions are valid in this context:
10750</p>
10751
10752<ul>
10753
10754<li><a href="#generic">Generic</a> restrictions that can be used
10755in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
10756
10757<li>SMTP command specific restrictions described under
10758<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>,
10759<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> or <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>.
10760
10761</ul>
10762
10763<p>
10764Examples:
10765</p>
10766
10767<pre>
10768<a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> = <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a>
10769<a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> = <a href="postconf.5.html#reject_multi_recipient_bounce">reject_multi_recipient_bounce</a>
10770</pre>
10771
10772
10773</DD>
10774
10775<DT><b><a name="smtpd_delay_open_until_valid_rcpt">smtpd_delay_open_until_valid_rcpt</a>
10776(default: yes)</b></DT><DD>
10777
10778<p> Postpone the start of an SMTP mail transaction until a valid
10779RCPT TO command is received. Specify "no" to create a mail transaction
10780as soon as the SMTP server receives a valid MAIL FROM command. </p>
10781
10782<p> With sites that reject lots of mail, the default setting reduces
10783the use of
10784disk, CPU and memory resources. The downside is that rejected
10785recipients are logged with NOQUEUE instead of a mail transaction
10786ID. This complicates the logfile analysis of multi-recipient mail.
10787</p>
10788
10789<p> This feature is available in Postfix 2.3 and later. </p>
10790
10791
10792</DD>
10793
10794<DT><b><a name="smtpd_delay_reject">smtpd_delay_reject</a>
10795(default: yes)</b></DT><DD>
10796
10797<p>
10798Wait until the RCPT TO command before evaluating
10799$<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, $<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> and
10800$<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, or wait until the ETRN command before
10801evaluating $<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> and $<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>.
10802</p>
10803
10804<p>
10805This feature is turned on by default because some clients apparently
10806mis-behave when the Postfix SMTP server rejects commands before
10807RCPT TO.
10808</p>
10809
10810<p>
10811The default setting has one major benefit: it allows Postfix to log
10812recipient address information when rejecting a client name/address
10813or sender address, so that it is possible to find out whose mail
10814is being rejected.
10815</p>
10816
10817
10818</DD>
10819
10820<DT><b><a name="smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>
10821(default: empty)</b></DT><DD>
10822
10823<p> Lookup tables, indexed by the remote SMTP client address, with
10824case insensitive lists of EHLO keywords (pipelining, starttls, auth,
10825etc.) that the SMTP server will not send in the EHLO response to a
10826remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details.
10827The table is not searched by hostname for robustness reasons.  </p>
10828
10829<p> This feature is available in Postfix 2.2 and later. </p>
10830
10831
10832</DD>
10833
10834<DT><b><a name="smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a>
10835(default: empty)</b></DT><DD>
10836
10837<p> A case insensitive list of EHLO keywords (pipelining, starttls,
10838auth, etc.) that the SMTP server will not send in the EHLO response
10839to a remote SMTP client. </p>
10840
10841<p> This feature is available in Postfix 2.2 and later. </p>
10842
10843<p> Notes: </p>
10844
10845<ul>
10846
10847<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
10848this action from being logged. </p>
10849
10850<li> <p> Use the <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a> feature
10851to discard EHLO keywords selectively.  </p>
10852
10853</ul>
10854
10855
10856</DD>
10857
10858<DT><b><a name="smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a>
10859(default: empty)</b></DT><DD>
10860
10861<p> Optional access restrictions that the Postfix SMTP server
10862applies in the context of the SMTP END-OF-DATA command.
10863See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
10864restriction lists" for a discussion of evaluation context and time.
10865</p>
10866
10867<p> This feature is available in Postfix 2.2 and later. </p>
10868
10869<p> See <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> for syntax details. </p>
10870
10871
10872</DD>
10873
10874<DT><b><a name="smtpd_enforce_tls">smtpd_enforce_tls</a>
10875(default: no)</b></DT><DD>
10876
10877<p> Mandatory TLS: announce STARTTLS support to SMTP clients,
10878and require that clients use TLS encryption.  According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a>
10879this MUST NOT be applied in case of a publicly-referenced SMTP
10880server.  This option is off by default and should be used only on
10881dedicated servers. </p>
10882
10883<p> Note 1: "<a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a> = yes" implies "<a href="postconf.5.html#smtpd_tls_auth_only">smtpd_tls_auth_only</a> = yes". </p>
10884
10885<p> Note 2: when invoked via "<b>sendmail -bs</b>", Postfix will never offer
10886STARTTLS due to insufficient privileges to access the server private
10887key. This is intended behavior. </p>
10888
10889<p> This feature is available in Postfix 2.2 and later. With
10890Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p>
10891
10892
10893</DD>
10894
10895<DT><b><a name="smtpd_error_sleep_time">smtpd_error_sleep_time</a>
10896(default: 1s)</b></DT><DD>
10897
10898<p>With Postfix version 2.1 and later: the SMTP server response delay after
10899a client has made more than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors, and
10900fewer than $<a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a> errors, without delivering mail.
10901</p>
10902
10903<p>With Postfix version 2.0 and earlier: the SMTP server delay before
10904sending a reject (4xx or 5xx) response, when the client has made
10905fewer than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors without delivering
10906mail. </p>
10907
10908
10909</DD>
10910
10911<DT><b><a name="smtpd_etrn_restrictions">smtpd_etrn_restrictions</a>
10912(default: empty)</b></DT><DD>
10913
10914<p>
10915Optional SMTP server access restrictions in the context of a client
10916ETRN request.
10917See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
10918restriction lists" for a discussion of evaluation context and time.
10919</p>
10920
10921<p>
10922The Postfix ETRN implementation accepts only destinations that are
10923eligible for the Postfix "fast flush" service. See the <a href="ETRN_README.html">ETRN_README</a>
10924file for details.
10925</p>
10926
10927<p>
10928Specify a list of restrictions, separated by commas and/or whitespace.
10929Continue long lines by starting the next line with whitespace.
10930Restrictions are applied in the order as specified; the first
10931restriction that matches wins.
10932</p>
10933
10934<p>
10935The following restrictions are specific to the domain name information
10936received with the ETRN command.
10937</p>
10938
10939<dl>
10940
10941<dt><b><a name="check_etrn_access">check_etrn_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
10942
10943<dd>Search the specified access database for the ETRN domain name
10944or its parent domains. See the <a href="access.5.html">access(5)</a> manual page for details.
10945</dd>
10946
10947</dl>
10948
10949<p>
10950Other restrictions that are valid in this context:
10951</p>
10952
10953<ul>
10954
10955<li><a href="#generic">Generic</a> restrictions that can be used
10956in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
10957
10958<li>SMTP command specific restrictions described under
10959<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> and <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>.
10960
10961</ul>
10962
10963<p>
10964Example:
10965</p>
10966
10967<pre>
10968<a href="postconf.5.html#smtpd_etrn_restrictions">smtpd_etrn_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, reject
10969</pre>
10970
10971
10972</DD>
10973
10974<DT><b><a name="smtpd_expansion_filter">smtpd_expansion_filter</a>
10975(default: see "postconf -d" output)</b></DT><DD>
10976
10977<p>
10978What characters are allowed in $name expansions of RBL reply
10979templates. Characters not in the allowed set are replaced by "_".
10980Use C like escapes to specify special characters such as whitespace.
10981</p>
10982
10983<p>
10984This parameter is not subjected to $parameter expansion.
10985</p>
10986
10987<p>
10988This feature is available in Postfix 2.0 and later.
10989</p>
10990
10991
10992</DD>
10993
10994<DT><b><a name="smtpd_forbidden_commands">smtpd_forbidden_commands</a>
10995(default: CONNECT, GET, POST)</b></DT><DD>
10996
10997<p>
10998List of commands that causes the Postfix SMTP server to immediately
10999terminate the session with a 221 code. This can be used to disconnect
11000clients that obviously attempt to abuse the system. In addition to the
11001commands listed in this parameter, commands that follow the "Label:"
11002format of message headers will also cause a disconnect.
11003</p>
11004
11005<p>
11006This feature is available in Postfix 2.2 and later.
11007</p>
11008
11009
11010</DD>
11011
11012<DT><b><a name="smtpd_hard_error_limit">smtpd_hard_error_limit</a>
11013(default: normal: 20, stress: 1)</b></DT><DD>
11014
11015<p>
11016The maximal number of errors a remote SMTP client is allowed to
11017make without delivering mail. The Postfix SMTP server disconnects
11018when the limit is exceeded. Normally the default limit is 20, but
11019it changes under overload to just 1 with Postfix 2.6 and later.
11020</p>
11021
11022
11023</DD>
11024
11025<DT><b><a name="smtpd_helo_required">smtpd_helo_required</a>
11026(default: no)</b></DT><DD>
11027
11028<p>
11029Require that a remote SMTP client introduces itself at the beginning
11030of an SMTP session with the HELO or EHLO command.
11031</p>
11032
11033<p>
11034Example:
11035</p>
11036
11037<pre>
11038<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes
11039</pre>
11040
11041
11042</DD>
11043
11044<DT><b><a name="smtpd_helo_restrictions">smtpd_helo_restrictions</a>
11045(default: empty)</b></DT><DD>
11046
11047<p>
11048Optional restrictions that the Postfix SMTP server applies in the
11049context of the SMTP HELO command.
11050See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
11051restriction lists" for a discussion of evaluation context and time.
11052</p>
11053
11054<p>
11055The default is to permit everything.
11056</p>
11057
11058<p>
11059Specify a list of restrictions, separated by commas and/or whitespace.
11060Continue long lines by starting the next line with whitespace.
11061Restrictions are applied in the order as specified; the first
11062restriction that matches wins.
11063</p>
11064
11065<p>
11066The following restrictions are specific to the hostname information
11067received with the HELO or EHLO command.
11068</p>
11069
11070<dl>
11071
11072<dt><b><a name="check_helo_access">check_helo_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11073
11074<dd>Search the specified <a href="access.5.html">access(5)</a> database for the HELO or EHLO
11075hostname or parent domains, and execute the corresponding action.
11076</dd>
11077
11078<dt><b><a name="check_helo_mx_access">check_helo_mx_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11079
11080<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
11081the HELO or EHLO hostname, and execute the corresponding action.
11082Note: a result of "OK" is not allowed for safety reasons. Instead,
11083use DUNNO in order to exclude specific hosts from blacklists.  This
11084feature is available in Postfix 2.1 and later.  </dd>
11085
11086<dt><b><a name="check_helo_ns_access">check_helo_ns_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11087
11088<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
11089for the HELO or EHLO hostname, and execute the corresponding action.
11090Note: a result of "OK" is not allowed for safety reasons. Instead,
11091use DUNNO in order to exclude specific hosts from blacklists.  This
11092feature is available in Postfix 2.1 and later.  </dd>
11093
11094<dt><b><a name="reject_invalid_helo_hostname">reject_invalid_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_invalid_hostname)</dt>
11095
11096<dd>Reject the request when the HELO or EHLO hostname syntax is
11097invalid. <br> The <a href="postconf.5.html#invalid_hostname_reject_code">invalid_hostname_reject_code</a> specifies the response
11098code for rejected requests (default: 501).</dd>
11099
11100<dt><b><a name="reject_non_fqdn_helo_hostname">reject_non_fqdn_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_non_fqdn_hostname)</dt>
11101
11102<dd>Reject the request when the HELO or EHLO hostname is not in
11103fully-qualified domain form, as required by the RFC. <br> The
11104<a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
11105rejected requests (default: 504).</dd>
11106
11107<dt><b><a name="reject_rhsbl_helo">reject_rhsbl_helo <i>rbl_domain=d.d.d.d</i></a></b></dt>
11108
11109<dd>Reject the request when the HELO or EHLO hostname hostname is
11110listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>
11111(Postfix version 2.1 and later only).  If no "<i>=d.d.d.d</i>" is
11112specified, reject the request when the HELO or EHLO hostname is
11113listed with any A record under <i>rbl_domain</i>. See the
11114<a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> description for additional RBL related configuration
11115parameters.  This feature is available in Postfix 2.0 and later.
11116</dd>
11117
11118<dt><b><a name="reject_unknown_helo_hostname">reject_unknown_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_unknown_hostname)</dt>
11119
11120<dd>Reject the request when the HELO or EHLO hostname has no DNS A
11121or MX record. <br> The <a href="postconf.5.html#unknown_hostname_reject_code">unknown_hostname_reject_code</a> parameter
11122specifies the numerical response code for rejected requests (default:
11123450). <br> The <a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a> parameter
11124specifies the action after a temporary DNS error (default:
11125<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). </dd>
11126
11127</dl>
11128
11129<p>
11130Other restrictions that are valid in this context:
11131</p>
11132
11133<ul>
11134
11135<li> <a href="#generic">Generic</a> restrictions that can be used
11136in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
11137
11138<li> Client hostname or network address specific restrictions
11139described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
11140
11141<li> SMTP command specific restrictions described under
11142<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> or <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>.  When
11143sender or recipient restrictions are listed under <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>,
11144they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that
11145$<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> is evaluated at the time of the RCPT TO
11146command.
11147
11148</ul>
11149
11150<p>
11151Examples:
11152</p>
11153
11154<pre>
11155<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a>
11156<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a>
11157</pre>
11158
11159
11160</DD>
11161
11162<DT><b><a name="smtpd_history_flush_threshold">smtpd_history_flush_threshold</a>
11163(default: 100)</b></DT><DD>
11164
11165<p>
11166The maximal number of lines in the Postfix SMTP server command history
11167before it is flushed upon receipt of EHLO, RSET, or end of DATA.
11168</p>
11169
11170
11171</DD>
11172
11173<DT><b><a name="smtpd_junk_command_limit">smtpd_junk_command_limit</a>
11174(default: normal: 100, stress: 1)</b></DT><DD>
11175
11176<p>
11177The number of junk commands (NOOP, VRFY, ETRN or RSET) that a remote
11178SMTP client can send before the Postfix SMTP server starts to
11179increment the error counter with each junk command.  The junk
11180command count is reset after mail is delivered.  See also the
11181<a href="postconf.5.html#smtpd_error_sleep_time">smtpd_error_sleep_time</a> and <a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> configuration
11182parameters.  Normally the default limit is 100, but it changes under
11183overload to just 1 with Postfix 2.6 and later.
11184</p>
11185
11186
11187</DD>
11188
11189<DT><b><a name="smtpd_milters">smtpd_milters</a>
11190(default: empty)</b></DT><DD>
11191
11192<p> A list of Milter (mail filter) applications for new mail that
11193arrives via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server.  See the <a href="MILTER_README.html">MILTER_README</a>
11194document for details.  </p>
11195
11196<p> This feature is available in Postfix 2.3 and later. </p>
11197
11198
11199</DD>
11200
11201<DT><b><a name="smtpd_noop_commands">smtpd_noop_commands</a>
11202(default: empty)</b></DT><DD>
11203
11204<p>
11205List of commands that the Postfix SMTP server replies to with "250
11206Ok", without doing any syntax checks and without changing state.
11207This list overrides any commands built into the Postfix SMTP server.
11208</p>
11209
11210
11211</DD>
11212
11213<DT><b><a name="smtpd_null_access_lookup_key">smtpd_null_access_lookup_key</a>
11214(default: &lt;&gt;)</b></DT><DD>
11215
11216<p>
11217The lookup key to be used in SMTP <a href="access.5.html">access(5)</a> tables instead of the
11218null sender address.
11219</p>
11220
11221
11222</DD>
11223
11224<DT><b><a name="smtpd_peername_lookup">smtpd_peername_lookup</a>
11225(default: yes)</b></DT><DD>
11226
11227<p> Attempt to look up the remote SMTP client hostname, and verify that
11228the name matches the client IP address. A client name is set to
11229"unknown" when it cannot be looked up or verified, or when name
11230lookup is disabled.  Turning off name lookup reduces delays due to
11231DNS lookup and increases the maximal inbound delivery rate. </p>
11232
11233<p> This feature is available in Postfix 2.3 and later.  </p>
11234
11235
11236</DD>
11237
11238<DT><b><a name="smtpd_policy_service_max_idle">smtpd_policy_service_max_idle</a>
11239(default: 300s)</b></DT><DD>
11240
11241<p>
11242The time after which an idle SMTPD policy service connection is
11243closed.
11244</p>
11245
11246<p>
11247This feature is available in Postfix 2.1 and later.
11248</p>
11249
11250
11251</DD>
11252
11253<DT><b><a name="smtpd_policy_service_max_ttl">smtpd_policy_service_max_ttl</a>
11254(default: 1000s)</b></DT><DD>
11255
11256<p>
11257The time after which an active SMTPD policy service connection is
11258closed.
11259</p>
11260
11261<p>
11262This feature is available in Postfix 2.1 and later.
11263</p>
11264
11265
11266</DD>
11267
11268<DT><b><a name="smtpd_policy_service_timeout">smtpd_policy_service_timeout</a>
11269(default: 100s)</b></DT><DD>
11270
11271<p>
11272The time limit for connecting to, writing to or receiving from a
11273delegated SMTPD policy server.
11274</p>
11275
11276<p>
11277This feature is available in Postfix 2.1 and later.
11278</p>
11279
11280
11281</DD>
11282
11283<DT><b><a name="smtpd_proxy_ehlo">smtpd_proxy_ehlo</a>
11284(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
11285
11286<p>
11287How the Postfix SMTP server announces itself to the proxy filter.
11288By default, the Postfix hostname is used.
11289</p>
11290
11291<p>
11292This feature is available in Postfix 2.1 and later.
11293</p>
11294
11295
11296</DD>
11297
11298<DT><b><a name="smtpd_proxy_filter">smtpd_proxy_filter</a>
11299(default: empty)</b></DT><DD>
11300
11301<p> The hostname and TCP port of the mail filtering proxy server.
11302The proxy receives all mail from the Postfix SMTP server, and is
11303supposed to give the result to another Postfix SMTP server process.
11304</p>
11305
11306<p> Specify "host:port" or "inet:host:port" for a TCP endpoint, or
11307"unix:pathname" for a UNIX-domain endpoint. The host can be specified
11308as an IP address or as a symbolic name; no MX lookups are done.
11309When no "host" or "host:"  are specified, the local machine is
11310assumed.  Pathname interpretation is relative to the Postfix queue
11311directory.  </p>
11312
11313<p> This feature is available in Postfix 2.1 and later.  </p>
11314
11315<p> The "inet:" and "unix:" prefixes are available in Postfix 2.3
11316and later.  </p>
11317
11318
11319</DD>
11320
11321<DT><b><a name="smtpd_proxy_timeout">smtpd_proxy_timeout</a>
11322(default: 100s)</b></DT><DD>
11323
11324<p>
11325The time limit for connecting to a proxy filter and for sending or
11326receiving information.  When a connection fails the client gets a
11327generic error message while more detailed information is logged to
11328the maillog file.
11329</p>
11330
11331<p>
11332Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
11333The default time unit is s (seconds).
11334</p>
11335
11336<p>
11337This feature is available in Postfix 2.1 and later.
11338</p>
11339
11340
11341</DD>
11342
11343<DT><b><a name="smtpd_recipient_limit">smtpd_recipient_limit</a>
11344(default: 1000)</b></DT><DD>
11345
11346<p>
11347The maximal number of recipients that the Postfix SMTP server
11348accepts per message delivery request.
11349</p>
11350
11351
11352</DD>
11353
11354<DT><b><a name="smtpd_recipient_overshoot_limit">smtpd_recipient_overshoot_limit</a>
11355(default: 1000)</b></DT><DD>
11356
11357<p> The number of recipients that a remote SMTP client can send in
11358excess of the limit specified with $<a href="postconf.5.html#smtpd_recipient_limit">smtpd_recipient_limit</a>, before
11359the Postfix SMTP server increments the per-session error count
11360for each excess recipient.  </p>
11361
11362
11363</DD>
11364
11365<DT><b><a name="smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>
11366(default: <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>)</b></DT><DD>
11367
11368<p>
11369The access restrictions that the Postfix SMTP server applies in
11370the context of the RCPT TO command.
11371See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
11372restriction lists" for a discussion of evaluation context and time.
11373</p>
11374
11375<p>
11376By default, the Postfix SMTP server accepts:
11377</p>
11378
11379<ul>
11380
11381<li> Mail from clients whose IP address matches $<a href="postconf.5.html#mynetworks">mynetworks</a>, or:
11382
11383<li> Mail to remote destinations that match $<a href="postconf.5.html#relay_domains">relay_domains</a>, except
11384for addresses that contain sender-specified routing
11385(user@elsewhere@domain), or:
11386
11387<li> Mail to local destinations that match $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
11388or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, or
11389$<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
11390
11391</ul>
11392
11393<p>
11394IMPORTANT: If you change this parameter setting, you must specify
11395at least one of the following restrictions. Otherwise Postfix will
11396refuse to receive mail:
11397</p>
11398
11399<blockquote>
11400<pre>
11401reject, defer, <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>, <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>
11402</pre>
11403</blockquote>
11404
11405<p>
11406Specify a list of restrictions, separated by commas and/or whitespace.
11407Continue long lines by starting the next line with whitespace.
11408Restrictions are applied in the order as specified; the first
11409restriction that matches wins.
11410</p>
11411
11412<p>
11413The following restrictions are specific to the recipient address
11414that is received with the RCPT TO command.
11415</p>
11416
11417<dl>
11418
11419<dt><b><a name="check_recipient_access">check_recipient_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11420
11421<dd>Search the specified <a href="access.5.html">access(5)</a> database for the resolved RCPT
11422TO address, domain, parent domains, or localpart@, and execute the
11423corresponding action.  </dd>
11424
11425<dt><b><a name="check_recipient_mx_access">check_recipient_mx_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11426
11427<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
11428the RCPT TO domain, and execute the corresponding action.  Note:
11429a result of "OK" is not allowed for safety reasons. Instead, use
11430DUNNO in order to exclude specific hosts from blacklists.  This
11431feature is available in Postfix 2.1 and later. </dd>
11432
11433<dt><b><a name="check_recipient_ns_access">check_recipient_ns_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11434
11435<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
11436for the RCPT TO domain, and execute the corresponding action.
11437Note: a result of "OK" is not allowed for safety reasons. Instead,
11438use DUNNO in order to exclude specific hosts from blacklists.  This
11439feature is available in Postfix 2.1 and later.  </dd>
11440
11441<dt><b><a name="permit_auth_destination">permit_auth_destination</a></b></dt>
11442
11443<dd>Permit the request when one of the following is true:
11444
11445<ul>
11446
11447<li> Postfix is mail forwarder: the resolved RCPT TO domain matches
11448$<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and the address contains no
11449sender-specified routing (user@elsewhere@domain),
11450
11451<li> Postfix is the final destination: the resolved RCPT TO domain
11452matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>, $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>,
11453$<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, or $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>, and the address
11454contains no sender-specified routing (user@elsewhere@domain).
11455
11456</ul></dd>
11457
11458<dt><b><a name="permit_mx_backup">permit_mx_backup</a></b></dt>
11459
11460<dd>Permit the request when the local mail system is backup MX for
11461the RCPT TO domain, or when the domain is an authorized destination
11462(see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> for definition).
11463
11464<ul>
11465
11466<li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> does not accept addresses that have
11467sender-specified routing information (example: user@elsewhere@domain).
11468
11469<li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> can be vulnerable to mis-use when
11470access is not restricted with <a href="postconf.5.html#permit_mx_backup_networks">permit_mx_backup_networks</a>.
11471
11472<li> Safety: as of Postfix version 2.3, <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> no longer
11473accepts the address when the local mail system is primary MX for
11474the recipient domain.  Exception: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> accepts the address
11475when it specifies an authorized destination (see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a>
11476for definition).
11477
11478<li> Limitation: mail may be rejected in case of a temporary DNS
11479lookup problem with Postfix prior to version 2.0.
11480
11481</ul></dd>
11482
11483<dt><b><a name="reject_non_fqdn_recipient">reject_non_fqdn_recipient</a></b></dt>
11484
11485<dd>Reject the request when the RCPT TO address is not in
11486fully-qualified domain form, as required by the RFC. <br> The
11487<a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
11488rejected requests (default: 504). </dd>
11489
11490<dt><b><a name="reject_rhsbl_recipient">reject_rhsbl_recipient <i>rbl_domain=d.d.d.d</i></a></b></dt>
11491
11492<dd>Reject the request when the RCPT TO domain is listed with the
11493A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version
114942.1 and later only).  If no "<i>=d.d.d.d</i>" is specified, reject
11495the request when the RCPT TO domain is listed with
11496any A record under <i>rbl_domain</i>. <br> The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a>
11497parameter specifies the response code for rejected requests (default:
11498554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter specifies the default server
11499reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter specifies tables with server
11500replies indexed by <i>rbl_domain</i>.  This feature is available
11501in Postfix version 2.0 and later.</dd>
11502
11503<dt><b><a name="reject_unauth_destination">reject_unauth_destination</a></b></dt>
11504
11505<dd>Reject the request unless one of the following is true:
11506
11507<ul>
11508
11509<li> Postfix is mail forwarder: the resolved RCPT TO domain matches
11510$<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and contains no sender-specified
11511routing (user@elsewhere@domain),
11512
11513<li> Postfix is the final destination: the resolved RCPT TO domain
11514matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>, $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>,
11515$<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, or $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>, and contains
11516no sender-specified routing (user@elsewhere@domain).
11517
11518</ul> The <a href="postconf.5.html#relay_domains_reject_code">relay_domains_reject_code</a> parameter specifies the response
11519code for rejected requests (default: 554). </dd>
11520
11521<dt><b><a name="reject_unknown_recipient_domain">reject_unknown_recipient_domain</a></b></dt>
11522
11523<dd>Reject the request when Postfix is not final destination for
11524the recipient domain, and the RCPT TO domain has no DNS A or MX
11525record, or when it has a malformed MX record such as a record with
11526a zero-length MX hostname (Postfix version 2.3 and later). <br> The
11527<a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter specifies the numerical
11528response code for rejected requests (default: 450).  The response
11529is always 450 in case of a temporary DNS error. <br> The
11530<a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> parameter specifies the action
11531after a temporary DNS error (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>).  </dd>
11532
11533<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b> (with Postfix version 2.0: check_recipient_maps)</dt>
11534
11535<dd> Reject the request when the RCPT TO address is not listed in
11536the list of valid recipients for its domain class. See the
11537<a href="postconf.5.html#smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a> parameter description for details.
11538This feature is available in Postfix 2.1 and later.</dd>
11539
11540<dt><b><a name="reject_unverified_recipient">reject_unverified_recipient</a></b></dt>
11541
11542<dd>Reject the request when mail to the RCPT TO address is known
11543to bounce, or when the recipient address destination is not reachable.
11544Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server;
11545see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details.  <br> The
11546<a href="postconf.5.html#unverified_recipient_reject_code">unverified_recipient_reject_code</a> parameter specifies the numerical
11547response code when an address is known to bounce (default: 450,
11548change into 550 when you are confident that it is safe to do so).
11549<br>The <a href="postconf.5.html#unverified_recipient_defer_code">unverified_recipient_defer_code</a> parameter specifies the
11550numerical response code when an address probe failed due to a
11551temporary problem (default: 450). <br> The
11552<a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a> parameter specifies the action
11553after addres probe failure due to a temporary problem (default:
11554<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>).  <br>  This feature is available in Postfix 2.1
11555and later.  </dd>
11556
11557</dl>
11558
11559<p>
11560Other restrictions that are valid in this context:
11561</p>
11562
11563<ul>
11564
11565<li><a href="#generic">Generic</a> restrictions that can be used
11566in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
11567
11568<li>SMTP command specific restrictions described under
11569<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> and
11570<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>.
11571
11572</ul>
11573
11574<p>
11575Example:
11576</p>
11577
11578<pre>
11579<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>
11580</pre>
11581
11582
11583</DD>
11584
11585<DT><b><a name="smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a>
11586(default: yes)</b></DT><DD>
11587
11588<p>
11589Request that the Postfix SMTP server rejects mail for unknown
11590recipient addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_recipient">reject_unlisted_recipient</a>
11591access restriction is specified. This prevents the Postfix queue
11592from filling up with undeliverable MAILER-DAEMON messages.
11593</p>
11594
11595<ul>
11596
11597<li> The recipient domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
11598or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the recipient is not listed in
11599$<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a>, and $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> is not null.
11600
11601<li> The recipient domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the
11602recipient is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>.
11603
11604<li> The recipient domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the
11605recipient is not listed in $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>, and $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>
11606is not null.
11607
11608<li> The recipient domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the recipient
11609is not listed in $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a>, and $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a>
11610is not null.
11611
11612</ul>
11613
11614<p>
11615This feature is available in Postfix 2.1 and later.
11616</p>
11617
11618
11619</DD>
11620
11621<DT><b><a name="smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a>
11622(default: no)</b></DT><DD>
11623
11624<p> Request that the Postfix SMTP server rejects mail from unknown
11625sender addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_sender">reject_unlisted_sender</a>
11626access restriction is specified. This can slow down an explosion
11627of forged mail from worms or viruses.  </p>
11628
11629<ul>
11630
11631<li> The sender domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or
11632$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the sender is not listed in
11633$<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a>, and $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> is not null.
11634
11635<li> The sender domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the sender
11636is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>.
11637
11638<li> The sender domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the
11639sender is not listed in $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>, and $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>
11640is not null.
11641
11642<li> The sender domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the sender is
11643not listed in $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a>, and $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> is
11644not null.
11645
11646</ul>
11647
11648<p>
11649This feature is available in Postfix 2.1 and later.
11650</p>
11651
11652
11653</DD>
11654
11655<DT><b><a name="smtpd_restriction_classes">smtpd_restriction_classes</a>
11656(default: empty)</b></DT><DD>
11657
11658<p>
11659User-defined aliases for groups of access restrictions. The aliases
11660can be specified in <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> etc., and on the
11661right-hand side of a Postfix <a href="access.5.html">access(5)</a> table.
11662</p>
11663
11664<p>
11665One major application is for implementing per-recipient UCE control.
11666See the <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a> document for other examples.
11667</p>
11668
11669
11670</DD>
11671
11672<DT><b><a name="smtpd_sasl_application_name">smtpd_sasl_application_name</a>
11673(default: smtpd)</b></DT><DD>
11674
11675<p>
11676The application name that the Postfix SMTP server uses for SASL
11677server initialization. This
11678controls the name of the SASL configuration file. The default value
11679is <b>smtpd</b>, corresponding to a SASL configuration file named
11680<b>smtpd.conf</b>.
11681</p>
11682
11683<p>
11684This feature is available in Postfix 2.1 and 2.2. With Postfix 2.3
11685it was renamed to <a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>.
11686</p>
11687
11688
11689</DD>
11690
11691<DT><b><a name="smtpd_sasl_auth_enable">smtpd_sasl_auth_enable</a>
11692(default: no)</b></DT><DD>
11693
11694<p>
11695Enable SASL authentication in the Postfix SMTP server. By default,
11696the Postfix SMTP server does not use authentication.
11697</p>
11698
11699<p>
11700If a remote SMTP client is authenticated, the <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>
11701access restriction can be used to permit relay access, like this:
11702</p>
11703
11704<blockquote>
11705<pre>
11706<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> =
11707    <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, ...
11708</pre>
11709</blockquote>
11710
11711<p> To reject all SMTP connections from unauthenticated clients,
11712specify "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes" (which is the default) and use:
11713</p>
11714
11715<blockquote>
11716<pre>
11717<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> = <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, reject
11718</pre>
11719</blockquote>
11720
11721<p>
11722See the <a href="SASL_README.html">SASL_README</a> file for SASL configuration and operation details.
11723</p>
11724
11725
11726</DD>
11727
11728<DT><b><a name="smtpd_sasl_authenticated_header">smtpd_sasl_authenticated_header</a>
11729(default: no)</b></DT><DD>
11730
11731<p> Report the SASL authenticated user name in the <a href="smtpd.8.html">smtpd(8)</a> Received
11732message header.  </p>
11733
11734<p> This feature is available in Postfix 2.3 and later.  </p>
11735
11736
11737</DD>
11738
11739<DT><b><a name="smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a>
11740(default: empty)</b></DT><DD>
11741
11742<p>
11743What remote SMTP clients the Postfix SMTP server will not offer
11744AUTH support to.
11745</p>
11746
11747<p>
11748Some clients (Netscape 4 at least) have a bug that causes them to
11749require a login and password whenever AUTH is offered, whether it's
11750necessary or not. To work around this, specify, for example,
11751$<a href="postconf.5.html#mynetworks">mynetworks</a> to prevent Postfix from offering AUTH to local clients.
11752</p>
11753
11754<p>
11755Specify a list of network/netmask patterns, separated by commas
11756and/or whitespace. The mask specifies the number of bits in the
11757network part of a host address. You can also "/file/name" or
11758"<a href="DATABASE_README.html">type:table</a>" patterns.  A "/file/name" pattern is replaced by its
11759contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry
11760matches a lookup string (the lookup result is ignored).  Continue
11761long lines by starting the next line with whitespace. Specify
11762"!pattern" to exclude an address or network block from the list.
11763The form "!/file/name" is supported only in Postfix version 2.4 and
11764later.  </p>
11765
11766<p> Note: IP version 6 address information must be specified inside
11767<tt>[]</tt> in the <a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> value, and in
11768files specified with "/file/name".  IP version 6 addresses contain
11769the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
11770pattern.  </p>
11771
11772<p>
11773Example:
11774</p>
11775
11776<pre>
11777<a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> = $<a href="postconf.5.html#mynetworks">mynetworks</a>
11778</pre>
11779
11780<p>
11781This feature is available in Postfix 2.1 and later.
11782</p>
11783
11784
11785</DD>
11786
11787<DT><b><a name="smtpd_sasl_local_domain">smtpd_sasl_local_domain</a>
11788(default: empty)</b></DT><DD>
11789
11790<p>
11791The name of the Postfix SMTP server's local SASL authentication
11792realm.
11793</p>
11794
11795<p>
11796By default, the local authentication realm name is the null string.
11797</p>
11798
11799<p>
11800Examples:
11801</p>
11802
11803<pre>
11804<a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
11805<a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#myhostname">myhostname</a>
11806</pre>
11807
11808
11809</DD>
11810
11811<DT><b><a name="smtpd_sasl_path">smtpd_sasl_path</a>
11812(default: smtpd)</b></DT><DD>
11813
11814<p> Implementation-specific information that the Postfix SMTP server
11815passes through to
11816the SASL plug-in implementation that is selected with
11817<b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>.  Typically this specifies the name of a
11818configuration file or rendezvous point. </p>
11819
11820<p> This feature is available in Postfix 2.3 and later. In earlier
11821releases it was called <b>smtpd_sasl_application_name</b>. </p>
11822
11823
11824</DD>
11825
11826<DT><b><a name="smtpd_sasl_security_options">smtpd_sasl_security_options</a>
11827(default: noanonymous)</b></DT><DD>
11828
11829<p> Postfix SMTP server SASL security options; as of Postfix 2.3
11830the list of available
11831features depends on the SASL server implementation that is selected
11832with <b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>.  </p>
11833
11834<p> The following security features are defined for the <b>cyrus</b>
11835server SASL implementation: </p>
11836
11837<p>
11838Restrict what authentication mechanisms the Postfix SMTP server
11839will offer to the client.  The list of available authentication
11840mechanisms is system dependent.
11841</p>
11842
11843<p>
11844Specify zero or more of the following:
11845</p>
11846
11847<dl>
11848
11849<dt><b>noplaintext</b></dt>
11850
11851<dd>Disallow methods that use plaintext passwords. </dd>
11852
11853<dt><b>noactive</b></dt>
11854
11855<dd>Disallow methods subject to active (non-dictionary) attack. </dd>
11856
11857<dt><b>nodictionary</b></dt>
11858
11859<dd>Disallow methods subject to passive (dictionary) attack. </dd>
11860
11861<dt><b>noanonymous</b></dt>
11862
11863<dd>Disallow methods that allow anonymous authentication. </dd>
11864
11865<dt><b>forward_secrecy</b></dt>
11866
11867<dd>Only allow methods that support forward secrecy (Dovecot only).
11868</dd>
11869
11870<dt><b>mutual_auth</b></dt>
11871
11872<dd>Only allow methods that provide mutual authentication (not available
11873with Cyrus SASL version 1). </dd>
11874
11875</dl>
11876
11877<p>
11878By default, the Postfix SMTP server accepts plaintext passwords but
11879not anonymous logins.
11880</p>
11881
11882<p>
11883Warning: it appears that clients try authentication methods in the
11884order as advertised by the server (e.g., PLAIN ANONYMOUS CRAM-MD5)
11885which means that if you disable plaintext passwords, clients will
11886log in anonymously, even when they should be able to use CRAM-MD5.
11887So, if you disable plaintext logins, disable anonymous logins too.
11888Postfix treats anonymous login as no authentication.
11889</p>
11890
11891<p>
11892Example:
11893</p>
11894
11895<pre>
11896<a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a> = noanonymous, noplaintext
11897</pre>
11898
11899
11900</DD>
11901
11902<DT><b><a name="smtpd_sasl_tls_security_options">smtpd_sasl_tls_security_options</a>
11903(default: $<a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a>)</b></DT><DD>
11904
11905<p> The SASL authentication security options that the Postfix SMTP
11906server uses for TLS encrypted SMTP sessions. </p>
11907
11908<p> This feature is available in Postfix 2.2 and later.  </p>
11909
11910
11911</DD>
11912
11913<DT><b><a name="smtpd_sasl_type">smtpd_sasl_type</a>
11914(default: cyrus)</b></DT><DD>
11915
11916<p> The SASL plug-in type that the Postfix SMTP server should use
11917for authentication. The available types are listed with the
11918"<b>postconf -a</b>" command. </p>
11919
11920<p> This feature is available in Postfix 2.3 and later. </p>
11921
11922
11923</DD>
11924
11925<DT><b><a name="smtpd_sender_login_maps">smtpd_sender_login_maps</a>
11926(default: empty)</b></DT><DD>
11927
11928<p>
11929Optional lookup table with the SASL login names that own sender
11930(MAIL FROM) addresses.
11931</p>
11932
11933<p>
11934Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup tables. With lookups from
11935indexed files such as DB or DBM, or from networked tables such as
11936NIS, LDAP or SQL, the following search operations are done with a
11937sender address of <i>user@domain</i>:  </p>
11938
11939<dl>
11940
11941<dt> 1) <i>user@domain</i> </dt>
11942
11943<dd>This table lookup is always done and has the highest precedence. </dd>
11944
11945<dt> 2) <i>user</i> </dt>
11946
11947<dd>This table lookup is done only when the <i>domain</i> part of the
11948sender address matches $<a href="postconf.5.html#myorigin">myorigin</a>, $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
11949or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>. </dd>
11950
11951<dt> 3) <i>@domain</i> </dt>
11952
11953<dd>This table lookup is done last and has the lowest precedence. </dd>
11954
11955</dl>
11956
11957<p>
11958In all cases the result of table lookup must be either "not found"
11959or a list of SASL login names separated by comma and/or whitespace.
11960</p>
11961
11962
11963</DD>
11964
11965<DT><b><a name="smtpd_sender_restrictions">smtpd_sender_restrictions</a>
11966(default: empty)</b></DT><DD>
11967
11968<p>
11969Optional restrictions that the Postfix SMTP server applies in the
11970context of the MAIL FROM command.
11971See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
11972restriction lists" for a discussion of evaluation context and time.
11973</p>
11974
11975<p>
11976The default is to permit everything.
11977</p>
11978
11979<p>
11980Specify a list of restrictions, separated by commas and/or whitespace.
11981Continue long lines by starting the next line with whitespace.
11982Restrictions are applied in the order as specified; the first
11983restriction that matches wins.
11984</p>
11985
11986<p>
11987The following restrictions are specific to the sender address
11988received with the MAIL FROM command.
11989</p>
11990
11991<dl>
11992
11993<dt><b><a name="check_sender_access">check_sender_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11994
11995<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MAIL FROM
11996address, domain, parent domains, or localpart@, and execute the
11997corresponding action. </dd>
11998
11999<dt><b><a name="check_sender_mx_access">check_sender_mx_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
12000
12001<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
12002the MAIL FROM address, and execute the corresponding action.  Note:
12003a result of "OK" is not allowed for safety reasons. Instead, use
12004DUNNO in order to exclude specific hosts from blacklists.  This
12005feature is available in Postfix 2.1 and later. </dd>
12006
12007<dt><b><a name="check_sender_ns_access">check_sender_ns_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
12008
12009<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
12010for the MAIL FROM address, and execute the corresponding action.
12011Note: a result of "OK" is not allowed for safety reasons. Instead,
12012use DUNNO in order to exclude specific hosts from blacklists.  This
12013feature is available in Postfix 2.1 and later.  </dd>
12014
12015<dt><b><a name="reject_authenticated_sender_login_mismatch">reject_authenticated_sender_login_mismatch</a></b></dt>
12016
12017<dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for
12018authenticated clients only. This feature is available in
12019Postfix version 2.1 and later. </dd>
12020
12021<dt><b><a name="reject_non_fqdn_sender">reject_non_fqdn_sender</a></b></dt>
12022
12023<dd>Reject the request when the MAIL FROM address is not in
12024fully-qualified domain form, as required by the RFC. <br> The
12025<a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
12026rejected requests (default: 504). </dd>
12027
12028<dt><b><a name="reject_rhsbl_sender">reject_rhsbl_sender <i>rbl_domain=d.d.d.d</i></a></b></dt>
12029
12030<dd>Reject the request when the MAIL FROM domain is listed with
12031the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix
12032version 2.1 and later only).  If no "<i>=d.d.d.d</i>" is specified,
12033reject the request when the MAIL FROM domain is
12034listed with any A record under <i>rbl_domain</i>. <br> The
12035<a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for
12036rejected requests (default:  554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter
12037specifies the default server reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter
12038specifies tables with server replies indexed by <i>rbl_domain</i>.
12039This feature is available in Postfix 2.0 and later.</dd>
12040
12041<dt><b><a name="reject_sender_login_mismatch">reject_sender_login_mismatch</a></b></dt>
12042
12043<dd>Reject the request when $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a> specifies an
12044owner for the MAIL FROM address, but the client is not (SASL) logged
12045in as that MAIL FROM address owner; or when the client is (SASL)
12046logged in, but the client login name doesn't own the MAIL FROM
12047address according to $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a>.</dd>
12048
12049<dt><b><a name="reject_unauthenticated_sender_login_mismatch">reject_unauthenticated_sender_login_mismatch</a></b></dt>
12050
12051<dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for
12052unauthenticated clients only. This feature is available in
12053Postfix version 2.1 and later. </dd>
12054
12055<dt><b><a name="reject_unknown_sender_domain">reject_unknown_sender_domain</a></b></dt>
12056
12057<dd>Reject the request when Postfix is not final destination for
12058the sender address, and the MAIL FROM address has no DNS A or MX
12059record, or when it has a malformed MX record such as a record with
12060a zero-length MX hostname (Postfix version 2.3 and later). <br> The
12061<a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter specifies the numerical
12062response code for rejected requests (default: 450).  The response
12063is always 450 in case of a temporary DNS error. <br> The
12064<a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> parameter specifies the action
12065after a temporary DNS error (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). </dd>
12066
12067<dt><b><a name="reject_unlisted_sender">reject_unlisted_sender</a></b></dt>
12068
12069<dd>Reject the request when the MAIL FROM address is not listed in
12070the list of valid recipients for its domain class. See the
12071<a href="postconf.5.html#smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a> parameter description for details.
12072This feature is available in Postfix 2.1 and later.</dd>
12073
12074<dt><b><a name="reject_unverified_sender">reject_unverified_sender</a></b></dt>
12075
12076<dd>Reject the request when mail to the MAIL FROM address is known to
12077bounce, or when the sender address destination is not reachable.
12078Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server;
12079see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details. <br> The
12080<a href="postconf.5.html#unverified_sender_reject_code">unverified_sender_reject_code</a> parameter specifies the numerical
12081response code when an address is known to bounce (default: 450,
12082change into 550 when you are confident that it is safe to do so).
12083<br>The <a href="postconf.5.html#unverified_sender_defer_code">unverified_sender_defer_code</a> specifies the numerical response
12084code when an address address probe failed due to a temporary problem
12085(default: 450).  <br> The <a href="postconf.5.html#unverified_sender_tempfail_action">unverified_sender_tempfail_action</a> parameter
12086specifies the action after address probe failure due to a temporary
12087problem (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>).  <br> This feature is available
12088in Postfix 2.1 and later.  </dd>
12089
12090</dl>
12091
12092<p>
12093Other restrictions that are valid in this context:
12094</p>
12095
12096<ul>
12097
12098<li> <a href="#generic">Generic</a> restrictions that can be used
12099in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
12100
12101<li> SMTP command specific restrictions described under
12102<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> and <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>.
12103
12104<li> SMTP command specific restrictions described under
12105<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. When recipient restrictions are listed
12106under <a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, they have effect only with
12107"<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that $<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> is
12108evaluated at the time of the RCPT TO command.
12109
12110</ul>
12111
12112<p>
12113Examples:
12114</p>
12115
12116<pre>
12117<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> = <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>
12118<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a> = <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>,
12119    <a href="postconf.5.html#check_sender_access">check_sender_access</a> hash:/etc/postfix/access
12120</pre>
12121
12122
12123</DD>
12124
12125<DT><b><a name="smtpd_soft_error_limit">smtpd_soft_error_limit</a>
12126(default: 10)</b></DT><DD>
12127
12128<p>
12129The number of errors a remote SMTP client is allowed to make without
12130delivering mail before the Postfix SMTP server slows down all its
12131responses.
12132</p>
12133
12134<ul>
12135
12136<li><p>With Postfix version 2.1 and later, the Postfix SMTP server
12137delays all responses by $<a href="postconf.5.html#smtpd_error_sleep_time">smtpd_error_sleep_time</a> seconds. </p>
12138
12139<li><p>With Postfix versions 2.0 and earlier, the Postfix SMTP
12140server delays all responses by (number of errors) seconds. </p>
12141
12142</ul>
12143
12144
12145</DD>
12146
12147<DT><b><a name="smtpd_starttls_timeout">smtpd_starttls_timeout</a>
12148(default: 300s)</b></DT><DD>
12149
12150<p> The time limit for Postfix SMTP server write and read operations
12151during TLS startup and shutdown handshake procedures. </p>
12152
12153<p> This feature is available in Postfix 2.2 and later.  </p>
12154
12155
12156</DD>
12157
12158<DT><b><a name="smtpd_timeout">smtpd_timeout</a>
12159(default: normal: 300s, stress: 10s)</b></DT><DD>
12160
12161<p>
12162The time limit for sending a Postfix SMTP server response and for
12163receiving a remote SMTP client request. Normally the default limit
12164is 300s, but it changes under overload to just 10s with Postfix 2.6
12165and later.
12166</p>
12167
12168<p>
12169Note: if you set SMTP time limits to very large values you may have
12170to update the global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter.
12171</p>
12172
12173<p>
12174Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
12175The default time unit is s (seconds).
12176</p>
12177
12178
12179</DD>
12180
12181<DT><b><a name="smtpd_tls_CAfile">smtpd_tls_CAfile</a>
12182(default: empty)</b></DT><DD>
12183
12184<p> A file containing (PEM format) CA certificates of root CAs trusted
12185to sign either remote SMTP client certificates or intermediate CA
12186certificates.  These are loaded into memory before the <a href="smtpd.8.html">smtpd(8)</a> server
12187enters the chroot jail. If the number of trusted roots is large, consider
12188using <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> instead, but note that the latter directory must
12189be present in the chroot jail if the <a href="smtpd.8.html">smtpd(8)</a> server is chrooted. This
12190file may also be used to augment the server certificate trust chain,
12191but it is best to include all the required certificates directly in the
12192server certificate file. </p>
12193
12194<p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are not
12195requested, and <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> should remain empty. If you do make use
12196of client certificates, the distinguished names (DNs) of the certificate
12197authorities listed in <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> are sent to the remote SMTP client
12198in the client certificate request message. MUAs with multiple client
12199certificates may use the list of preferred certificate authorities
12200to select the correct client certificate.  You may want to put your
12201"preferred" CA or CAs in this file, and install other trusted CAs in
12202$<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p>
12203
12204<p> Example: </p>
12205
12206<pre>
12207<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> = /etc/postfix/CAcert.pem
12208</pre>
12209
12210<p> This feature is available in Postfix 2.2 and later.  </p>
12211
12212
12213</DD>
12214
12215<DT><b><a name="smtpd_tls_CApath">smtpd_tls_CApath</a>
12216(default: empty)</b></DT><DD>
12217
12218<p> A directory containing (PEM format) CA certificates of root CAs
12219trusted to sign either remote SMTP client certificates or intermediate CA
12220certificates. Do not forget to create the necessary "hash" links with,
12221for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs". To use
12222<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> in chroot mode, this directory (or a copy) must be
12223inside the chroot jail. </p>
12224
12225<p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are
12226not requested, and <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> should remain empty. In contrast
12227to <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>, DNs of certificate authorities installed
12228in $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> are not included in the client certificate
12229request message. MUAs with multiple client certificates may use the
12230list of preferred certificate authorities to select the correct
12231client certificate.  You may want to put your "preferred" CA or
12232CAs in $<a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>, and install the remaining trusted CAs in
12233$<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p>
12234
12235<p> Example: </p>
12236
12237<pre>
12238<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> = /etc/postfix/certs
12239</pre>
12240
12241<p> This feature is available in Postfix 2.2 and later.  </p>
12242
12243
12244</DD>
12245
12246<DT><b><a name="smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a>
12247(default: yes)</b></DT><DD>
12248
12249<p> Force the Postfix SMTP server to issue a TLS session id, even
12250when TLS session caching is turned off (<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>
12251is empty). This behavior is compatible with Postfix &lt; 2.3. </p>
12252
12253<p> With Postfix 2.3 and later the Postfix SMTP server can disable
12254session id generation when TLS session caching is turned off. This
12255keeps clients from caching sessions that almost certainly cannot
12256be re-used.  </p>
12257
12258<p> By default, the Postfix SMTP server always generates TLS session
12259ids. This works around a known defect in mail client applications
12260such as MS Outlook, and may also prevent interoperability issues
12261with other MTAs. </p>
12262
12263<p> Example: </p>
12264
12265<pre>
12266<a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> = no
12267</pre>
12268
12269<p> This feature is available in Postfix 2.3 and later. </p>
12270
12271
12272</DD>
12273
12274<DT><b><a name="smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>
12275(default: no)</b></DT><DD>
12276
12277<p> Ask a remote SMTP client for a client certificate. This
12278information is needed for certificate based mail relaying with,
12279for example, the <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> feature. </p>
12280
12281<p> Some clients such as Netscape will either complain if no
12282certificate is available (for the list of CAs in $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>)
12283or will offer multiple client certificates to choose from. This
12284may be annoying, so this option is "off" by default. </p>
12285
12286<p> This feature is available in Postfix 2.2 and later.  </p>
12287
12288
12289</DD>
12290
12291<DT><b><a name="smtpd_tls_auth_only">smtpd_tls_auth_only</a>
12292(default: no)</b></DT><DD>
12293
12294<p> When TLS encryption is optional in the Postfix SMTP server, do
12295not announce or accept SASL authentication over unencrypted
12296connections. </p>
12297
12298<p> This feature is available in Postfix 2.2 and later.  </p>
12299
12300
12301</DD>
12302
12303<DT><b><a name="smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a>
12304(default: 9)</b></DT><DD>
12305
12306<p> The verification depth for remote SMTP client certificates. A
12307depth of 1 is sufficient if the issuing CA is listed in a local CA
12308file. </p>
12309
12310<p> The default verification depth is 9 (the OpenSSL default) for
12311compatibility with earlier Postfix behavior. Prior to Postfix 2.5,
12312the default value was 5, but the limit was not actually enforced. If
12313you have set this to a lower non-default value, certificates with longer
12314trust chains may now fail to verify. Certificate chains with 1 or 2
12315CAs are common, deeper chains are more rare and any number between 5
12316and 9 should suffice in practice. You can choose a lower number if,
12317for example, you trust certificates directly signed by an issuing CA
12318but not any CAs it delegates to. </p>
12319
12320<p> This feature is available in Postfix 2.2 and later.  </p>
12321
12322
12323</DD>
12324
12325<DT><b><a name="smtpd_tls_cert_file">smtpd_tls_cert_file</a>
12326(default: empty)</b></DT><DD>
12327
12328<p> File with the Postfix SMTP server RSA certificate in PEM format.
12329This file may also contain the Postfix SMTP server private RSA key. </p>
12330
12331<p> Public Internet MX hosts without certificates signed by a "reputable"
12332CA must generate, and be prepared to present to most clients, a
12333self-signed or private-CA signed certificate. The client will not be
12334able to authenticate the server, but unless it is running Postfix 2.3 or
12335similar software, it will still insist on a server certificate. </p>
12336
12337<p> For servers that are <b>not</b> public Internet MX hosts, Postfix
123382.3 supports configurations with no certificates. This entails the
12339use of just the anonymous TLS ciphers, which are not supported by
12340typical SMTP clients. Since such clients will not, as a rule, fall
12341back to plain text after a TLS handshake failure, the server will
12342be unable to receive email from TLS enabled clients. To avoid
12343accidental configurations with no certificates, Postfix 2.3 enables
12344certificate-less operation only when the administrator explicitly
12345sets "<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = none". This ensures that new Postfix
12346configurations will not accidentally run with no certificates. </p>
12347
12348<p> Both RSA and DSA certificates are supported.  When both types
12349are present, the cipher used determines which certificate will be
12350presented to the client.  For Netscape and OpenSSL clients without
12351special cipher choices the RSA certificate is preferred. </p>
12352
12353<p> To enable a remote SMTP client to verify the Postfix SMTP server
12354certificate, the issuing CA certificates must be made available to the
12355client. You should include the required certificates in the server
12356certificate file, the server certificate first, then the issuing
12357CA(s) (bottom-up order). </p>
12358
12359<p> Example: the certificate for "server.example.com" was issued by
12360"intermediate CA" which itself has a certificate of "root CA".
12361Create the server.pem file with "cat server_cert.pem intermediate_CA.pem
12362root_CA.pem &gt; server.pem". </p>
12363
12364<p> If you also want to verify client certificates issued by these
12365CAs, you can add the CA certificates to the <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, in which
12366case it is not necessary to have them in the <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> or
12367<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p>
12368
12369<p> A certificate supplied here must be usable as an SSL server certificate
12370and hence pass the "openssl verify -purpose sslserver ..." test. </p>
12371
12372<p> Example: </p>
12373
12374<pre>
12375<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = /etc/postfix/server.pem
12376</pre>
12377
12378<p> This feature is available in Postfix 2.2 and later.  </p>
12379
12380
12381</DD>
12382
12383<DT><b><a name="smtpd_tls_cipherlist">smtpd_tls_cipherlist</a>
12384(default: empty)</b></DT><DD>
12385
12386<p> Obsolete Postfix &lt; 2.3 control for the Postfix SMTP server TLS
12387cipher list. It is easy to create inter-operability problems by choosing
12388a non-default cipher list. Do not use a non-default TLS cipherlist for
12389MX hosts on the public Internet. Clients that begin the TLS handshake,
12390but are unable to agree on a common cipher, may not be able to send any
12391email to the SMTP server. Using a restricted cipher list may be more
12392appropriate for a dedicated MSA or an internal mailhub, where one can
12393exert some control over the TLS software and settings of the connecting
12394clients. </p>
12395
12396<p> <b>Note:</b> do not use "" quotes around the parameter value. </p>
12397
12398<p>This feature is available with Postfix version 2.2. It is not used with
12399Postfix 2.3 and later; use <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> instead. </p>
12400
12401
12402</DD>
12403
12404<DT><b><a name="smtpd_tls_ciphers">smtpd_tls_ciphers</a>
12405(default: export)</b></DT><DD>
12406
12407<p> The minimum TLS cipher grade that the Postfix SMTP server
12408will use with opportunistic TLS encryption. Cipher types listed in
12409<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> are excluded from the base definition of
12410the selected cipher grade. The default value "export" ensures maximum
12411inter-operability. Because encryption is optional, stronger controls
12412are not appropriate, and this setting SHOULD NOT be changed unless the
12413change is essential. </p>
12414
12415<p> When TLS is mandatory the cipher grade is chosen via the
12416<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> configuration parameter, see there for syntax
12417details. </p>
12418
12419<p> Example: </p>
12420<pre>
12421<a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> = export
12422</pre>
12423
12424<p> This feature is available in Postfix 2.6 and later. With earlier Postfix
12425releases only the <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> parameter is implemented,
12426and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p>
12427
12428
12429</DD>
12430
12431<DT><b><a name="smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>
12432(default: empty)</b></DT><DD>
12433
12434<p> File with the Postfix SMTP server DSA certificate in PEM format.
12435This file may also contain the Postfix SMTP server private DSA key. </p>
12436
12437<p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details.
12438</p>
12439
12440<p> Example: </p>
12441
12442<pre>
12443<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> = /etc/postfix/server-dsa.pem
12444</pre>
12445
12446<p> This feature is available in Postfix 2.2 and later.  </p>
12447
12448
12449</DD>
12450
12451<DT><b><a name="smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>
12452(default: empty)</b></DT><DD>
12453
12454<p> File with DH parameters that the Postfix SMTP server should
12455use with EDH ciphers. </p>
12456
12457<p> Instead of using the exact same parameter sets as distributed
12458with other TLS packages, it is more secure to generate your own
12459set of parameters with something like the following command:  </p>
12460
12461<blockquote>
12462<pre>
12463openssl gendh -out /etc/postfix/dh_1024.pem -2 1024
12464</pre>
12465</blockquote>
12466
12467<p> Your actual source for entropy may differ. Some systems have
12468/dev/random; on other system you may consider using the "Entropy
12469Gathering Daemon EGD", available at <a href="http://egd.sourceforge.net/">http://egd.sourceforge.net/</a>
12470</p>
12471
12472<p> Example: </p>
12473
12474<pre>
12475<a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> = /etc/postfix/dh_1024.pem
12476</pre>
12477
12478<p>This feature is available with Postfix version 2.2.</p>
12479
12480
12481</DD>
12482
12483<DT><b><a name="smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a>
12484(default: empty)</b></DT><DD>
12485
12486<p> File with DH parameters that the Postfix SMTP server should
12487use with EDH ciphers. </p>
12488
12489<p> See also the discussion under the <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>
12490configuration parameter.  </p>
12491
12492<p> Example: </p>
12493
12494<pre>
12495<a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> = /etc/postfix/dh_512.pem
12496</pre>
12497
12498<p>This feature is available with Postfix version 2.2.</p>
12499
12500
12501</DD>
12502
12503<DT><b><a name="smtpd_tls_dkey_file">smtpd_tls_dkey_file</a>
12504(default: $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>)</b></DT><DD>
12505
12506<p> File with the Postfix SMTP server DSA private key in PEM format.
12507This file may be combined with the Postfix SMTP server DSA certificate
12508file specified with $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p>
12509
12510<p> The private key must be accessible without a pass-phrase, i.e. it
12511must not be encrypted. File permissions should grant read-only
12512access to the system superuser account ("root"), and no access
12513to anyone else. </p>
12514
12515<p> This feature is available in Postfix 2.2 and later.  </p>
12516
12517
12518</DD>
12519
12520<DT><b><a name="smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>
12521(default: empty)</b></DT><DD>
12522
12523<p> File with the Postfix SMTP server ECDSA certificate in PEM format.
12524This file may also contain the Postfix SMTP server private ECDSA key. </p>
12525
12526<p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details. </p>
12527
12528<p> Example: </p>
12529
12530<pre>
12531<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> = /etc/postfix/ecdsa-scert.pem
12532</pre>
12533
12534<p> This feature is available in Postfix 2.6 and later, when Postfix is
12535compiled and linked with OpenSSL 0.9.9 or later. </p>
12536
12537
12538</DD>
12539
12540<DT><b><a name="smtpd_tls_eckey_file">smtpd_tls_eckey_file</a>
12541(default: $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>)</b></DT><DD>
12542
12543<p> File with the Postfix SMTP server ECDSA private key in PEM format.
12544This file may be combined with the Postfix SMTP server ECDSA certificate
12545file specified with $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>. </p>
12546
12547<p> The private key must be accessible without a pass-phrase, i.e. it
12548must not be encrypted. File permissions should grant read-only
12549access to the system superuser account ("root"), and no access
12550to anyone else. </p>
12551
12552<p> This feature is available in Postfix 2.6 and later, when Postfix is
12553compiled and linked with OpenSSL 0.9.9 or later. </p>
12554
12555
12556</DD>
12557
12558<DT><b><a name="smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a>
12559(default: see "postconf -d" output)</b></DT><DD>
12560
12561<p> The Postfix SMTP server security grade for ephemeral elliptic-curve
12562Diffie-Hellman (EECDH) key exchange. </p>
12563
12564<p> The available choices are: </p>
12565
12566<dl>
12567
12568<dt><b>none</b></dt> <dd> Don't use EECDH. Ciphers based on EECDH key
12569exchange will be disabled. This is the default in official Postfix
12570releases (<a href="postconf.5.html#mail_version">mail_version</a> = major.minor.patchlevel). </dd>
12571
12572<dt><b>strong</b></dt> <dd> Use EECDH with approximately 128
12573bits of security at a reasonable computational cost. This is the
12574current best-practice trade-off between security and computational
12575efficiency. This is the default in Postfix snapshot releases
12576(<a href="postconf.5.html#mail_version">mail_version</a> = major.minor-releasedate). </dd>
12577
12578<dt><b>ultra</b></dt> <dd> Use EECDH with approximately 192 bits of
12579security at computational cost that is approximately twice as high
12580as 128 bit strength ECC. Barring significant progress in attacks on
12581elliptic curve crypto-systems, the "strong" curve is sufficient for most
12582users. </dd>
12583
12584</dl>
12585
12586<p> This feature is available in Postfix 2.6 and later, when it is
12587compiled and linked with OpenSSL 0.9.9 or later. </p>
12588
12589
12590</DD>
12591
12592<DT><b><a name="smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>
12593(default: empty)</b></DT><DD>
12594
12595<p> List of ciphers or cipher types to exclude from the SMTP server
12596cipher list at all TLS security levels. Excluding valid ciphers
12597can create interoperability problems. DO NOT exclude ciphers unless it
12598is essential to do so. This is not an OpenSSL cipherlist; it is a simple
12599list separated by whitespace and/or commas. The elements are a single
12600cipher, or one or more "+" separated cipher properties, in which case
12601only ciphers matching <b>all</b> the properties are excluded. </p>
12602
12603<p> Examples (some of these will cause problems): </p>
12604
12605<blockquote>
12606<pre>
12607<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL
12608<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = MD5, DES
12609<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = DES+MD5
12610<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5
12611<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = kEDH+aRSA
12612</pre>
12613</blockquote>
12614
12615<p> The first setting disables anonymous ciphers. The next setting
12616disables ciphers that use the MD5 digest algorithm or the (single) DES
12617encryption algorithm. The next setting disables ciphers that use MD5 and
12618DES together.  The next setting disables the two ciphers "AES256-SHA"
12619and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH"
12620key exchange with RSA authentication. </p>
12621
12622<p> This feature is available in Postfix 2.3 and later. </p>
12623
12624
12625</DD>
12626
12627<DT><b><a name="smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a>
12628(default: md5)</b></DT><DD>
12629
12630<p> The message digest algorithm used to construct client-certificate
12631fingerprints for <b><a href="postconf.5.html#check_ccert_access">check_ccert_access</a></b> and
12632<b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a></b>. The default algorithm is <b>md5</b>,
12633for backwards compatibility with Postfix releases prior to 2.5.
12634</p>
12635
12636<p> The best practice algorithm is now <b>sha1</b>. Recent advances in hash
12637function cryptanalysis have led to md5 being deprecated in favor of sha1.
12638However, as long as there are no known "second pre-image" attacks
12639against md5, its use in this context can still be considered safe.
12640</p>
12641
12642<p> While additional digest algorithms are often available with OpenSSL's
12643libcrypto, only those used by libssl in SSL cipher suites are available to
12644Postfix. For now this means just md5 or sha1. </p>
12645
12646<p> To find the fingerprint of a specific certificate file, with a
12647specific digest algorithm, run: </p>
12648
12649<blockquote>
12650<pre>
12651$ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem
12652</pre>
12653</blockquote>
12654
12655<p> The text to the right of "=" sign is the desired fingerprint.
12656For example: </p>
12657
12658<blockquote>
12659<pre>
12660$ openssl x509 -noout -fingerprint -sha1 -in cert.pem
12661SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A
12662</pre>
12663</blockquote>
12664
12665<p> Example: client-certificate access table, with sha1 fingerprints: </p>
12666
12667<blockquote>
12668<pre>
12669/etc/postfix/<a href="postconf.5.html">main.cf</a>:
12670    <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> = sha1
12671    <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> =
12672        <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> hash:/etc/postfix/access,
12673        reject
12674</pre>
12675<pre>
12676/etc/postfix/access:
12677    # Action folded to next line...
12678    AF:88:7C:AD:51:95:6F:36:96:F6:01:FB:2E:48:CD:AB:49:25:A2:3B
12679        OK
12680    85:16:78:FD:73:6E:CE:70:E0:31:5F:0D:3C:C8:6D:C4:2C:24:59:E1
12681        <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a>
12682</pre>
12683</blockquote>
12684
12685<p> This feature is available in Postfix 2.5 and later. </p>
12686
12687
12688</DD>
12689
12690<DT><b><a name="smtpd_tls_key_file">smtpd_tls_key_file</a>
12691(default: $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>)</b></DT><DD>
12692
12693<p> File with the Postfix SMTP server RSA private key in PEM format.
12694This file may be combined with the Postfix SMTP server RSA certificate
12695file specified with $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>. </p>
12696
12697<p> The private key must be accessible without a pass-phrase, i.e. it
12698must not be encrypted. File permissions should grant read-only
12699access to the system superuser account ("root"), and no access
12700to anyone else. </p>
12701
12702
12703</DD>
12704
12705<DT><b><a name="smtpd_tls_loglevel">smtpd_tls_loglevel</a>
12706(default: 0)</b></DT><DD>
12707
12708<p> Enable additional Postfix SMTP server logging of TLS activity.
12709Each logging level also includes the information that is logged at
12710a lower logging level.  </p>
12711
12712<dl compact>
12713
12714<dt> </dt> <dd> 0 Disable logging of TLS activity. </dd>
12715
12716<dt> </dt> <dd> 1 Log TLS handshake and certificate information. </dd>
12717
12718<dt> </dt> <dd> 2 Log levels during TLS negotiation. </dd>
12719
12720<dt> </dt> <dd> 3 Log hexadecimal and ASCII dump of TLS negotiation
12721process.  </dd>
12722
12723<dt> </dt> <dd> 4 Also log hexadecimal and ASCII dump of complete
12724transmission after STARTTLS. </dd>
12725
12726</dl>
12727
12728<p> Use "<a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a> = 3" only in case of problems. Use of
12729loglevel 4 is strongly discouraged. </p>
12730
12731<p> This feature is available in Postfix 2.2 and later.  </p>
12732
12733
12734</DD>
12735
12736<DT><b><a name="smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>
12737(default: medium)</b></DT><DD>
12738
12739<p> The minimum TLS cipher grade that the Postfix SMTP server
12740will use with mandatory TLS encryption. Cipher types listed in
12741<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> or <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> are
12742excluded from the base definition of the selected cipher grade. See
12743<a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> for cipher controls that apply to opportunistic
12744TLS. </p>
12745
12746<p> The following cipher grades are supported: </p>
12747
12748<dl>
12749<dt><b>export</b></dt>
12750<dd> Enable the mainstream "EXPORT" grade or better OpenSSL ciphers.
12751This is the most appropriate setting for public MX hosts, and is always
12752used with opportunistic TLS encryption. The underlying cipherlist
12753is specified via the <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> configuration parameter,
12754which you are strongly encouraged to not change. The default value
12755of <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> includes anonymous ciphers, but these are
12756automatically filtered out if the server is configured to ask for
12757client certificates. If you must always exclude anonymous ciphers,
12758set "<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL". To exclude anonymous ciphers
12759only when TLS is enforced, set "<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> =
12760aNULL". </dd>
12761
12762<dt><b>low</b></dt>
12763<dd> Enable the mainstream "LOW" grade or better OpenSSL ciphers. The
12764underlying cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a>
12765configuration parameter, which you are strongly encouraged to
12766not change. The default value of <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> includes
12767anonymous ciphers, but these are automatically filtered out if the
12768server is configured to ask for client certificates. If you must
12769always exclude anonymous ciphers, set "<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> =
12770aNULL". To exclude anonymous ciphers only when TLS is enforced, set
12771"<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
12772
12773<dt><b>medium</b></dt>
12774<dd> Enable the mainstream "MEDIUM" grade or better OpenSSL ciphers. These
12775are essentially the 128-bit or stronger ciphers. This is the default
12776minimum strength for mandatory TLS encryption. MSAs that enforce
12777TLS and have clients that do not support any "MEDIUM" or "HIGH"
12778grade ciphers, may need to configure a weaker ("low" or "export")
12779minimum cipher grade. The underlying cipherlist is specified via the
12780<a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a> configuration parameter, which you are strongly
12781encouraged to not change. The default value of <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a>
12782includes anonymous ciphers, but these are automatically filtered out if
12783the server is configured to ask for client certificates. If you must
12784always exclude anonymous ciphers, set "<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> =
12785aNULL". To exclude anonymous ciphers only when TLS is enforced, set
12786"<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
12787
12788<dt><b>high</b></dt>
12789<dd> Enable only the mainstream "HIGH" grade OpenSSL ciphers. The
12790underlying cipherlist is specified via the <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a>
12791configuration parameter, which you are strongly encouraged to
12792not change. The default value of <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> includes
12793anonymous ciphers, but these are automatically filtered out if the
12794server is configured to ask for client certificates. If you must
12795always exclude anonymous ciphers, set "<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> =
12796aNULL". To exclude anonymous ciphers only when TLS is enforced, set
12797"<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> = aNULL". </dd>
12798
12799<dt><b>null</b></dt>
12800<dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication
12801without encryption.  This setting is only appropriate in the rare
12802case that all clients are prepared to use NULL ciphers (not normally
12803enabled in TLS clients). The underlying cipherlist is specified via the
12804<a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a> configuration parameter, which you are strongly
12805encouraged to not change. The default value of <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a>
12806excludes anonymous ciphers (OpenSSL 0.9.8 has NULL ciphers that offer
12807data integrity without encryption or authentication). </dd>
12808
12809</dl>
12810
12811<p> This feature is available in Postfix 2.3 and later. </p>
12812
12813
12814</DD>
12815
12816<DT><b><a name="smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a>
12817(default: empty)</b></DT><DD>
12818
12819<p> Additional list of ciphers or cipher types to exclude from the
12820SMTP server cipher list at mandatory TLS security levels. This list
12821works in addition to the exclusions listed with <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>
12822(see there for syntax details).  </p>
12823
12824<p> This feature is available in Postfix 2.3 and later. </p>
12825
12826
12827</DD>
12828
12829<DT><b><a name="smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a>
12830(default: SSLv3, TLSv1)</b></DT><DD>
12831
12832<p> The SSL/TLS protocols accepted by the Postfix SMTP server with
12833mandatory TLS encryption. If the list is empty, the server supports all
12834available SSL/TLS protocol versions.  A non-empty value is a list
12835of protocol
12836names separated by whitespace, commas or colons. The supported protocol
12837names are "SSLv2", "SSLv3" and "TLSv1", and are not case sensitive. </p>
12838
12839<p> With Postfix &ge; 2.5 the parameter syntax is expanded to support
12840protocol exclusions. One can now explicitly exclude SSLv2 by setting
12841"<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2". To exclude both SSLv2 and
12842SSLv3 set "<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing
12843the protocols to include, rather than protocols to exclude, is still
12844supported, use the form you find more intuitive. </p>
12845
12846<p> Since SSL version 2 has known protocol weaknesses and is now
12847deprecated, the default setting excludes "SSLv2".  This means that
12848by default, SSL version 2 will not be used at the "encrypt" security
12849level. </p>
12850
12851<p> Example: </p>
12852
12853<pre>
12854<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = TLSv1
12855# Alternative form with Postfix &ge; 2.5:
12856<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
12857</pre>
12858
12859<p> This feature is available in Postfix 2.3 and later. </p>
12860
12861
12862</DD>
12863
12864<DT><b><a name="smtpd_tls_protocols">smtpd_tls_protocols</a>
12865(default: empty)</b></DT><DD>
12866
12867<p> List of TLS protocols that the Postfix SMTP server will exclude
12868or include with opportunistic TLS encryption. This parameter SHOULD be
12869left at its default empty value, allowing all protocols to be used with
12870opportunistic TLS. </p>
12871
12872<p> In <a href="postconf.5.html">main.cf</a> the values are separated by whitespace, commas or
12873colons. An empty value means allow all protocols. The valid protocol
12874names, (see <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" and
12875"TLSv1". In <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> table entries, "protocols" attribute
12876values are separated by a colon. </p>
12877
12878<p> To include a protocol list its name, to exclude it, prefix the name
12879with a "!" character. To exclude SSLv2 even for opportunistic TLS set
12880"<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set
12881"<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to
12882include, is supported, but not recommended. OpenSSL provides no mechanisms
12883for excluding protocols not known at compile-time. If Postfix is linked
12884against an OpenSSL library that supports additional protocol versions,
12885they cannot be excluded using either syntax. </p>
12886
12887<p> Example: </p>
12888<pre>
12889<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2
12890</pre>
12891
12892<p> This feature is available in Postfix 2.6 and later. </p>
12893
12894
12895</DD>
12896
12897<DT><b><a name="smtpd_tls_received_header">smtpd_tls_received_header</a>
12898(default: no)</b></DT><DD>
12899
12900<p> Request that the Postfix SMTP server produces Received:  message
12901headers that include information about the protocol and cipher used,
12902as well as the client CommonName and client certificate issuer
12903CommonName.  This is disabled by default, as the information may
12904be modified in transit through other mail servers.  Only information
12905that was recorded by the final destination can be trusted. </p>
12906
12907<p> This feature is available in Postfix 2.2 and later.  </p>
12908
12909
12910</DD>
12911
12912<DT><b><a name="smtpd_tls_req_ccert">smtpd_tls_req_ccert</a>
12913(default: no)</b></DT><DD>
12914
12915<p> With mandatory TLS encryption, require a trusted remote SMTP client
12916certificate in order to allow TLS connections to proceed.  This
12917option implies "<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> = yes". </p>
12918
12919<p> When TLS encryption is optional, this setting is ignored with
12920a warning written to the mail log. </p>
12921
12922<p> This feature is available in Postfix 2.2 and later.  </p>
12923
12924
12925</DD>
12926
12927<DT><b><a name="smtpd_tls_security_level">smtpd_tls_security_level</a>
12928(default: empty)</b></DT><DD>
12929
12930<p> The SMTP TLS security level for the Postfix SMTP server; when
12931a non-empty value is specified, this overrides the obsolete parameters
12932<a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a> and <a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a>. This parameter is ignored with
12933"<a href="postconf.5.html#smtpd_tls_wrappermode">smtpd_tls_wrappermode</a> = yes".  </p>
12934
12935<p> Specify one of the following security levels: </p>
12936
12937<dl>
12938
12939<dt><b>none</b></dt> <dd> TLS will not be used. </dd>
12940
12941<dt><b>may</b></dt> <dd> Opportunistic TLS: announce STARTTLS support
12942to SMTP clients, but do not require that clients use TLS encryption.
12943</dd>
12944
12945<dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption: announce
12946STARTTLS support to SMTP clients, and require that clients use TLS
12947encryption. According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> this MUST NOT be applied in case
12948of a publicly-referenced SMTP server. Instead, this option should
12949be used only on dedicated servers. </dd>
12950
12951</dl>
12952
12953<p> Note 1: the "fingerprint", "verify" and "secure" levels are not
12954supported here.
12955The Postfix SMTP server logs a warning and uses "encrypt" instead.
12956To verify SMTP client certificates, see <a href="TLS_README.html">TLS_README</a> for a discussion
12957of the <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>, <a href="postconf.5.html#smtpd_tls_req_ccert">smtpd_tls_req_ccert</a>, and <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a>
12958features.  </p>
12959
12960<p> Note 2: The parameter setting "<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> =
12961encrypt" implies "<a href="postconf.5.html#smtpd_tls_auth_only">smtpd_tls_auth_only</a> = yes".</p>
12962
12963<p> Note 3: when invoked via "sendmail -bs", Postfix will never
12964offer STARTTLS due to insufficient privileges to access the server
12965private key. This is intended behavior.</p>
12966
12967<p> This feature is available in Postfix 2.3 and later. </p>
12968
12969
12970</DD>
12971
12972<DT><b><a name="smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>
12973(default: empty)</b></DT><DD>
12974
12975<p> Name of the file containing the optional Postfix SMTP server
12976TLS session cache. Specify a database type that supports enumeration,
12977such as <b>btree</b> or <b>sdbm</b>; there is no need to support
12978concurrent access.  The file is created if it does not exist. The <a href="smtpd.8.html">smtpd(8)</a>
12979daemon does not use this parameter directly, rather the cache is
12980implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that
12981per-smtpd-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not
12982effective. Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a>
12983daemon: $<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>, $<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
12984(and with Postfix 2.3 and later $<a href="postconf.5.html#lmtp_tls_session_cache_database">lmtp_tls_session_cache_database</a>), needs to be
12985stored separately. It is not at this time possible to store multiple
12986caches in a single database. </p>
12987
12988<p> Note: <b>dbm</b> databases are not suitable. TLS
12989session objects are too large. </p>
12990
12991<p> As of version 2.5, Postfix no longer uses root privileges when
12992opening this file. The file should now be stored under the Postfix-owned
12993<a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file
12994under a non-Postfix directory is redirected to the Postfix-owned
12995<a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p>
12996
12997<p> Example: </p>
12998
12999<pre>
13000<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a> = btree:/var/db/postfix/smtpd_scache
13001</pre>
13002
13003<p> This feature is available in Postfix 2.2 and later.  </p>
13004
13005
13006</DD>
13007
13008<DT><b><a name="smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>
13009(default: 3600s)</b></DT><DD>
13010
13011<p> The expiration time of Postfix SMTP server TLS session cache
13012information. A cache cleanup is performed periodically
13013every $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> seconds. As with
13014$<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>, this parameter is implemented in the
13015<a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtpd-instance <a href="master.5.html">master.cf</a> overrides
13016are not possible. </p>
13017
13018<p> This feature is available in Postfix 2.2 and later.  </p>
13019
13020
13021</DD>
13022
13023<DT><b><a name="smtpd_tls_wrappermode">smtpd_tls_wrappermode</a>
13024(default: no)</b></DT><DD>
13025
13026<p> Run the Postfix SMTP server in the non-standard "wrapper" mode,
13027instead of using the STARTTLS command. </p>
13028
13029<p> If you want to support this service, enable a special port in
13030<a href="master.5.html">master.cf</a>, and specify "-o <a href="postconf.5.html#smtpd_tls_wrappermode">smtpd_tls_wrappermode</a>=yes" on the SMTP
13031server's command line. Port 465 (smtps) was once chosen for this
13032purpose. </p>
13033
13034<p> This feature is available in Postfix 2.2 and later.  </p>
13035
13036
13037</DD>
13038
13039<DT><b><a name="smtpd_use_tls">smtpd_use_tls</a>
13040(default: no)</b></DT><DD>
13041
13042<p> Opportunistic TLS: announce STARTTLS support to SMTP clients,
13043but do not require that clients use TLS encryption. </p>
13044
13045<p> Note: when invoked via "<b>sendmail -bs</b>", Postfix will never offer
13046STARTTLS due to insufficient privileges to access the server private
13047key. This is intended behavior. </p>
13048
13049<p> This feature is available in Postfix 2.2 and later. With
13050Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p>
13051
13052
13053</DD>
13054
13055<DT><b><a name="soft_bounce">soft_bounce</a>
13056(default: no)</b></DT><DD>
13057
13058<p>
13059Safety net to keep mail queued that would otherwise be returned to
13060the sender.  This parameter disables locally-generated bounces,
13061and prevents the Postfix SMTP server from rejecting mail permanently,
13062by changing 5xx reply codes into 4xx.  However, <a href="postconf.5.html#soft_bounce">soft_bounce</a> is no
13063cure for address rewriting mistakes or mail routing mistakes.
13064</p>
13065
13066<p>
13067Example:
13068</p>
13069
13070<pre>
13071<a href="postconf.5.html#soft_bounce">soft_bounce</a> = yes
13072</pre>
13073
13074
13075</DD>
13076
13077<DT><b><a name="stale_lock_time">stale_lock_time</a>
13078(default: 500s)</b></DT><DD>
13079
13080<p>
13081The time after which a stale exclusive mailbox lockfile is removed.
13082This is used for delivery to file or mailbox.
13083</p>
13084
13085<p>
13086Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
13087The default time unit is s (seconds).
13088</p>
13089
13090
13091</DD>
13092
13093<DT><b><a name="stress">stress</a>
13094(default: empty)</b></DT><DD>
13095
13096<p> This feature is documented in the <a href="STRESS_README.html">STRESS_README</a> document. </p>
13097
13098<p> This feature is available in Postfix 2.5 and later. </p>
13099
13100
13101</DD>
13102
13103<DT><b><a name="strict_7bit_headers">strict_7bit_headers</a>
13104(default: no)</b></DT><DD>
13105
13106<p>
13107Reject mail with 8-bit text in message headers. This blocks mail
13108from poorly written applications.
13109</p>
13110
13111<p>
13112This feature should not be enabled on a general purpose mail server,
13113because it is likely to reject legitimate email.
13114</p>
13115
13116<p>
13117This feature is available in Postfix 2.0 and later.
13118</p>
13119
13120
13121</DD>
13122
13123<DT><b><a name="strict_8bitmime">strict_8bitmime</a>
13124(default: no)</b></DT><DD>
13125
13126<p>
13127Enable both <a href="postconf.5.html#strict_7bit_headers">strict_7bit_headers</a> and <a href="postconf.5.html#strict_8bitmime_body">strict_8bitmime_body</a>.
13128</p>
13129
13130<p>
13131This feature should not be enabled on a general purpose mail server,
13132because it is likely to reject legitimate email.
13133</p>
13134
13135<p>
13136This feature is available in Postfix 2.0 and later.
13137</p>
13138
13139
13140</DD>
13141
13142<DT><b><a name="strict_8bitmime_body">strict_8bitmime_body</a>
13143(default: no)</b></DT><DD>
13144
13145<p>
13146Reject 8-bit message body text without 8-bit MIME content encoding
13147information.  This blocks mail from poorly written applications.
13148</p>
13149
13150<p>
13151Unfortunately, this also rejects majordomo approval requests when
13152the included request contains valid 8-bit MIME mail, and it rejects
13153bounces from mailers that do not MIME encapsulate 8-bit content
13154(for example, bounces from qmail or from old versions of Postfix).
13155</p>
13156
13157<p>
13158This feature should not be enabled on a general purpose mail server,
13159because it is likely to reject legitimate email.
13160</p>
13161
13162<p>
13163This feature is available in Postfix 2.0 and later.
13164</p>
13165
13166
13167</DD>
13168
13169<DT><b><a name="strict_mailbox_ownership">strict_mailbox_ownership</a>
13170(default: yes)</b></DT><DD>
13171
13172<p> Defer delivery when a mailbox file is not owned by its recipient.
13173The default setting is not backwards compatible.  </p>
13174
13175<p> This feature is available in Postfix 2.5.3 and later. </p>
13176
13177
13178</DD>
13179
13180<DT><b><a name="strict_mime_encoding_domain">strict_mime_encoding_domain</a>
13181(default: no)</b></DT><DD>
13182
13183<p>
13184Reject mail with invalid Content-Transfer-Encoding: information
13185for the message/* or multipart/* MIME content types.  This blocks
13186mail from poorly written software.
13187</p>
13188
13189<p>
13190This feature should not be enabled on a general purpose mail server,
13191because it will reject mail after a single violation.
13192</p>
13193
13194<p>
13195This feature is available in Postfix 2.0 and later.
13196</p>
13197
13198
13199</DD>
13200
13201<DT><b><a name="strict_rfc821_envelopes">strict_rfc821_envelopes</a>
13202(default: no)</b></DT><DD>
13203
13204<p>
13205Require that addresses received in SMTP MAIL FROM and RCPT TO
13206commands are enclosed with &lt;&gt;, and that those addresses do
13207not contain <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> style comments or phrases.  This stops mail
13208from poorly written software.
13209</p>
13210
13211<p>
13212By default, the Postfix SMTP server accepts <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> syntax in MAIL
13213FROM and RCPT TO addresses.
13214</p>
13215
13216
13217</DD>
13218
13219<DT><b><a name="sun_mailtool_compatibility">sun_mailtool_compatibility</a>
13220(default: no)</b></DT><DD>
13221
13222<p>
13223Obsolete SUN mailtool compatibility feature. Instead, use
13224"<a href="postconf.5.html#mailbox_delivery_lock">mailbox_delivery_lock</a> = dotlock".
13225</p>
13226
13227
13228</DD>
13229
13230<DT><b><a name="swap_bangpath">swap_bangpath</a>
13231(default: yes)</b></DT><DD>
13232
13233<p>
13234Enable the rewriting of "site!user" into "user@site".  This is
13235necessary if your machine is connected to UUCP networks.  It is
13236enabled by default.
13237</p>
13238
13239<p> Note: with Postfix version 2.2, message header address rewriting
13240happens only when one of the following conditions is true: </p>
13241
13242<ul>
13243
13244<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
13245
13246<li> The message is received from a network client that matches
13247$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
13248
13249<li> The message is received from the network, and the
13250<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
13251
13252</ul>
13253
13254<p> To get the behavior before Postfix version 2.2, specify
13255"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = static:all". </p>
13256
13257<p>
13258Example:
13259</p>
13260
13261<pre>
13262<a href="postconf.5.html#swap_bangpath">swap_bangpath</a> = no
13263</pre>
13264
13265
13266</DD>
13267
13268<DT><b><a name="syslog_facility">syslog_facility</a>
13269(default: mail)</b></DT><DD>
13270
13271<p>
13272The syslog facility of Postfix logging. Specify a facility as
13273defined in syslog.conf(5). The default facility is "mail".
13274</p>
13275
13276<p>
13277Warning: a non-default <a href="postconf.5.html#syslog_facility">syslog_facility</a> setting takes effect only
13278after a Postfix process has completed initialization.  Errors during
13279process initialization will be logged with the default facility.
13280Examples are errors while parsing the command line arguments, and
13281errors while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file.
13282</p>
13283
13284
13285</DD>
13286
13287<DT><b><a name="syslog_name">syslog_name</a>
13288(default: see "postconf -d" output)</b></DT><DD>
13289
13290<p>
13291The mail system name that is prepended to the process name in syslog
13292records, so that "smtpd" becomes, for example, "postfix/smtpd".
13293</p>
13294
13295<p>
13296Warning: a non-default <a href="postconf.5.html#syslog_name">syslog_name</a> setting takes effect only after
13297a Postfix process has completed initialization. Errors during
13298process initialization will be logged with the default name. Examples
13299are errors while parsing the command line arguments, and errors
13300while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file.
13301</p>
13302
13303
13304</DD>
13305
13306<DT><b><a name="tcp_windowsize">tcp_windowsize</a>
13307(default: 0)</b></DT><DD>
13308
13309<p> An optional workaround for routers that break TCP window scaling.
13310Specify a value &gt; 0 and &lt; 65536 to enable this feature.  With
13311Postfix TCP servers (<a href="smtpd.8.html">smtpd(8)</a>, <a href="qmqpd.8.html">qmqpd(8)</a>), this feature is implemented
13312by the Postfix <a href="master.8.html">master(8)</a> daemon.  </p>
13313
13314<p> To change this parameter without stopping Postfix, you need to
13315first terminate all Postfix TCP servers: </p>
13316
13317<blockquote>
13318<pre>
13319# postconf -e <a href="postconf.5.html#master_service_disable">master_service_disable</a>=inet
13320# postfix reload
13321</pre>
13322</blockquote>
13323
13324<p> This immediately terminates all processes that accept network
13325connections.  Next, you enable Postfix TCP servers with the updated
13326<a href="postconf.5.html#tcp_windowsize">tcp_windowsize</a> setting: </p>
13327
13328<blockquote>
13329<pre>
13330# postconf -e <a href="postconf.5.html#tcp_windowsize">tcp_windowsize</a>=65535 <a href="postconf.5.html#master_service_disable">master_service_disable</a>=
13331# postfix reload
13332</pre>
13333</blockquote>
13334
13335<p> If you skip these steps with a running Postfix system, then the
13336<a href="postconf.5.html#tcp_windowsize">tcp_windowsize</a> change will work only for Postfix TCP clients (<a href="smtp.8.html">smtp(8)</a>,
13337<a href="lmtp.8.html">lmtp(8)</a>).  </p>
13338
13339<p> This feature is available in Postfix 2.6 and later. </p>
13340
13341
13342</DD>
13343
13344<DT><b><a name="tls_daemon_random_bytes">tls_daemon_random_bytes</a>
13345(default: 32)</b></DT><DD>
13346
13347<p> The number of pseudo-random bytes that an <a href="smtp.8.html">smtp(8)</a> or <a href="smtpd.8.html">smtpd(8)</a>
13348process requests from the <a href="tlsmgr.8.html">tlsmgr(8)</a> server in order to seed its
13349internal pseudo random number generator (PRNG).  The default of 32
13350bytes (equivalent to 256 bits) is sufficient to generate a 128bit
13351(or 168bit) session key. </p>
13352
13353<p> This feature is available in Postfix 2.2 and later.  </p>
13354
13355
13356</DD>
13357
13358<DT><b><a name="tls_eecdh_strong_curve">tls_eecdh_strong_curve</a>
13359(default: prime256v1)</b></DT><DD>
13360
13361<p> The elliptic curve used by the SMTP server for sensibly strong
13362ephemeral ECDH key exchange. This curve is used by the Postfix SMTP
13363server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong". The phrase "sensibly
13364strong" means approximately 128-bit security based on best known
13365attacks. The selected curve must be implemented by OpenSSL (as
13366reported by ecparam(1) with the "-list_curves" option) and be one
13367of the curves listed in Section 5.1.1 of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not
13368generally change this setting. </p>
13369
13370<p> This default curve is specified in NSA "Suite B" Cryptography
13371(see <a href="http://www.nsa.gov/ia/industry/crypto_suite_b.cfm">http://www.nsa.gov/ia/industry/crypto_suite_b.cfm</a>) for
13372information classified as SECRET. </p>
13373
13374<p> Note: elliptic curve names are poorly standardized; different
13375standards groups are assigning different names to the same underlying
13376curves.  The curve with the X9.62 name "prime256v1" is also known
13377under the SECG name "secp256r1", but OpenSSL does not recognize the
13378latter name. </p>
13379
13380<p> This feature is available in Postfix 2.6 and later, when it is
13381compiled and linked with OpenSSL 0.9.9 or later. </p>
13382
13383
13384</DD>
13385
13386<DT><b><a name="tls_eecdh_ultra_curve">tls_eecdh_ultra_curve</a>
13387(default: secp384r1)</b></DT><DD>
13388
13389<p> The elliptic curve used by the SMTP server for maximally strong
13390ephemeral ECDH key exchange. This curve is used by the Postfix SMTP
13391server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = ultra". The phrase "maximally
13392strong" means approximately 192-bit security based on best known attacks.
13393This additional strength comes at a significant computational cost, most
13394users should instead set "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong".  The selected
13395curve must be implemented by OpenSSL (as reported by ecparam(1) with the
13396"-list_curves" option) and be one of the curves listed in Section 5.1.1
13397of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not generally change this setting. </p>
13398
13399<p> This default "ultra" curve is specified in NSA "Suite B" Cryptography
13400(see <a href="http://www.nsa.gov/ia/industry/crypto_suite_b.cfm">http://www.nsa.gov/ia/industry/crypto_suite_b.cfm</a>) for information
13401classified as TOP SECRET. </p>
13402
13403<p> This feature is available in Postfix 2.6 and later, when it is
13404compiled and linked with OpenSSL 0.9.9 or later. </p>
13405
13406
13407</DD>
13408
13409<DT><b><a name="tls_export_cipherlist">tls_export_cipherlist</a>
13410(default: ALL:+RC4:@STRENGTH)</b></DT><DD>
13411
13412<p> The OpenSSL cipherlist for "EXPORT" or higher grade ciphers. This
13413defines the meaning of the "export" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
13414<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. This is
13415the cipherlist for the opportunistic ("may") TLS client security
13416level and is the default cipherlist for the SMTP server. You are
13417strongly encouraged to not change this setting. </p>
13418
13419<p> This feature is available in Postfix 2.3 and later. </p>
13420
13421
13422</DD>
13423
13424<DT><b><a name="tls_high_cipherlist">tls_high_cipherlist</a>
13425(default: ALL:!EXPORT:!LOW:!MEDIUM:+RC4:@STRENGTH)</b></DT><DD>
13426
13427<p> The OpenSSL cipherlist for "HIGH" grade ciphers. This defines
13428the meaning of the "high" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
13429<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are
13430strongly encouraged to not change this setting. </p>
13431
13432<p> This feature is available in Postfix 2.3 and later. </p>
13433
13434
13435</DD>
13436
13437<DT><b><a name="tls_low_cipherlist">tls_low_cipherlist</a>
13438(default: ALL:!EXPORT:+RC4:@STRENGTH)</b></DT><DD>
13439
13440<p> The OpenSSL cipherlist for "LOW" or higher grade ciphers. This defines
13441the meaning of the "low" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
13442<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are
13443strongly encouraged to not change this setting. </p>
13444
13445<p> This feature is available in Postfix 2.3 and later. </p>
13446
13447
13448</DD>
13449
13450<DT><b><a name="tls_medium_cipherlist">tls_medium_cipherlist</a>
13451(default: ALL:!EXPORT:!LOW:+RC4:@STRENGTH)</b></DT><DD>
13452
13453<p> The OpenSSL cipherlist for "MEDIUM" or higher grade ciphers. This
13454defines the meaning of the "medium" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
13455<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. This is
13456the default cipherlist for mandatory TLS encryption in the TLS
13457client (with anonymous ciphers disabled when verifying server
13458certificates). You are strongly encouraged to not change this
13459setting. </p>
13460
13461<p> This feature is available in Postfix 2.3 and later. </p>
13462
13463
13464</DD>
13465
13466<DT><b><a name="tls_null_cipherlist">tls_null_cipherlist</a>
13467(default: eNULL:!aNULL)</b></DT><DD>
13468
13469<p> The OpenSSL cipherlist for "NULL" grade ciphers that provide
13470authentication without encryption. This defines the meaning of the "null"
13471setting in smtpd_mandatory_tls_ciphers, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and
13472<a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>.  You are strongly encouraged to not
13473change this setting. </p>
13474
13475<p> This feature is available in Postfix 2.3 and later. </p>
13476
13477
13478</DD>
13479
13480<DT><b><a name="tls_random_bytes">tls_random_bytes</a>
13481(default: 32)</b></DT><DD>
13482
13483<p> The number of bytes that <a href="tlsmgr.8.html">tlsmgr(8)</a> reads from $<a href="postconf.5.html#tls_random_source">tls_random_source</a>
13484when (re)seeding the in-memory pseudo random number generator (PRNG)
13485pool. The default of 32 bytes (256 bits) is good enough for 128bit
13486symmetric keys.  If using EGD or a device file, a maximum of 255
13487bytes is read. </p>
13488
13489<p> This feature is available in Postfix 2.2 and later.  </p>
13490
13491
13492</DD>
13493
13494<DT><b><a name="tls_random_exchange_name">tls_random_exchange_name</a>
13495(default: see "postconf -d" output)</b></DT><DD>
13496
13497<p> Name of the pseudo random number generator (PRNG) state file
13498that is maintained by <a href="tlsmgr.8.html">tlsmgr(8)</a>. The file is created when it does
13499not exist, and its length is fixed at 1024 bytes.  </p>
13500
13501<p> As of version 2.5, Postfix no longer uses root privileges when
13502opening this file, and the default file location was changed from
13503${<a href="postconf.5.html#config_directory">config_directory</a>}/prng_exch to ${<a href="postconf.5.html#data_directory">data_directory</a>}/prng_exch.  As
13504a migration aid, an attempt to open the file under a non-Postfix
13505directory is redirected to the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>, and a
13506warning is logged. </p>
13507
13508<p> This feature is available in Postfix 2.2 and later.  </p>
13509
13510
13511</DD>
13512
13513<DT><b><a name="tls_random_prng_update_period">tls_random_prng_update_period</a>
13514(default: 3600s)</b></DT><DD>
13515
13516<p> The time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to save the state of
13517the pseudo random number generator (PRNG) to the file specified
13518with $<a href="postconf.5.html#tls_random_exchange_name">tls_random_exchange_name</a>.  </p>
13519
13520<p> This feature is available in Postfix 2.2 and later.  </p>
13521
13522
13523</DD>
13524
13525<DT><b><a name="tls_random_reseed_period">tls_random_reseed_period</a>
13526(default: 3600s)</b></DT><DD>
13527
13528<p> The maximal time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to re-seed the
13529in-memory pseudo random number generator (PRNG) pool from external
13530sources.  The actual time between re-seeding attempts is calculated
13531using the PRNG, and is between 0 and the time specified.  </p>
13532
13533<p> This feature is available in Postfix 2.2 and later.  </p>
13534
13535
13536</DD>
13537
13538<DT><b><a name="tls_random_source">tls_random_source</a>
13539(default: see "postconf -d" output)</b></DT><DD>
13540
13541<p> The external entropy source for the in-memory <a href="tlsmgr.8.html">tlsmgr(8)</a> pseudo
13542random number generator (PRNG) pool. Be sure to specify a non-blocking
13543source.  If this source is not a regular file, the entropy source
13544type must be prepended:  egd:/path/to/egd_socket for a source with
13545EGD compatible socket interface, or dev:/path/to/device for a
13546device file.  </p>
13547
13548<p> Note: on OpenBSD systems specify /dev/arandom when /dev/urandom
13549gives timeout errors.  </p>
13550
13551<p> This feature is available in Postfix 2.2 and later.  </p>
13552
13553
13554</DD>
13555
13556<DT><b><a name="trace_service_name">trace_service_name</a>
13557(default: trace)</b></DT><DD>
13558
13559<p>
13560The name of the trace service. This service is implemented by the
13561<a href="bounce.8.html">bounce(8)</a> daemon and maintains a record
13562of mail deliveries and produces a mail delivery report when verbose
13563delivery is requested with "<b>sendmail -v</b>".
13564</p>
13565
13566<p>
13567This feature is available in Postfix 2.1 and later.
13568</p>
13569
13570
13571</DD>
13572
13573<DT><b><a name="transport_delivery_slot_cost">transport_delivery_slot_cost</a>
13574(default: $<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>)</b></DT><DD>
13575
13576<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>
13577parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13578the message delivery transport. </p>
13579
13580
13581</DD>
13582
13583<DT><b><a name="transport_delivery_slot_discount">transport_delivery_slot_discount</a>
13584(default: $<a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>)</b></DT><DD>
13585
13586<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>
13587parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13588the message delivery transport. </p>
13589
13590
13591</DD>
13592
13593<DT><b><a name="transport_delivery_slot_loan">transport_delivery_slot_loan</a>
13594(default: $<a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>)</b></DT><DD>
13595
13596<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>
13597parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13598the message delivery transport. </p>
13599
13600
13601</DD>
13602
13603<DT><b><a name="transport_destination_concurrency_failed_cohort_limit">transport_destination_concurrency_failed_cohort_limit</a>
13604(default: $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>)</b></DT><DD>
13605
13606<p> A transport-specific override for the
13607<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> parameter value,
13608where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
13609transport. </p>
13610
13611<p> This feature is available in Postfix 2.5 and later. </p>
13612
13613
13614</DD>
13615
13616<DT><b><a name="transport_destination_concurrency_limit">transport_destination_concurrency_limit</a>
13617(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
13618
13619<p> A transport-specific override for the
13620<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> parameter value, where
13621<i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
13622transport. </p>
13623
13624
13625</DD>
13626
13627<DT><b><a name="transport_destination_concurrency_negative_feedback">transport_destination_concurrency_negative_feedback</a>
13628(default: $<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a>)</b></DT><DD>
13629
13630<p> A transport-specific override for the
13631<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> parameter value,
13632where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
13633transport. </p>
13634
13635<p> This feature is available in Postfix 2.5 and later. </p>
13636
13637
13638</DD>
13639
13640<DT><b><a name="transport_destination_concurrency_positive_feedback">transport_destination_concurrency_positive_feedback</a>
13641(default: $<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a>)</b></DT><DD>
13642
13643<p> A transport-specific override for the
13644<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> parameter value,
13645where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
13646transport. </p>
13647
13648<p> This feature is available in Postfix 2.5 and later. </p>
13649
13650
13651</DD>
13652
13653<DT><b><a name="transport_destination_rate_delay">transport_destination_rate_delay</a>
13654(default: $<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b></DT><DD>
13655
13656<p> A transport-specific override for the <a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>
13657parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13658the message delivery transport. </p>
13659
13660<p> This feature is available in Postfix 2.5 and later. </p>
13661
13662
13663</DD>
13664
13665<DT><b><a name="transport_destination_recipient_limit">transport_destination_recipient_limit</a>
13666(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
13667
13668<p> A transport-specific override for the
13669<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> parameter value, where
13670<i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
13671transport. </p>
13672
13673
13674</DD>
13675
13676<DT><b><a name="transport_extra_recipient_limit">transport_extra_recipient_limit</a>
13677(default: $<a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>)</b></DT><DD>
13678
13679<p> A transport-specific override for the <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>
13680parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13681the message delivery transport. </p>
13682
13683
13684</DD>
13685
13686<DT><b><a name="transport_initial_destination_concurrency">transport_initial_destination_concurrency</a>
13687(default: $<a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a>)</b></DT><DD>
13688
13689<p> A transport-specific override for the <a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a>
13690parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13691the message delivery transport. </p>
13692
13693<p> This feature is available in Postfix 2.5 and later. </p>
13694
13695
13696</DD>
13697
13698<DT><b><a name="transport_maps">transport_maps</a>
13699(default: empty)</b></DT><DD>
13700
13701<p>
13702Optional lookup tables with mappings from recipient address to
13703(message delivery transport, next-hop destination).  See <a href="transport.5.html">transport(5)</a>
13704for details.
13705</p>
13706
13707<p>
13708Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup tables.  If you use this
13709feature with local files, run "<b>postmap /etc/postfix/transport</b>"
13710after making a change.  </p>
13711
13712<p> For safety reasons, as of Postfix 2.3 this feature does not
13713allow $number substitutions in regular expression maps. </p>
13714
13715<p>
13716Examples:
13717</p>
13718
13719<pre>
13720<a href="postconf.5.html#transport_maps">transport_maps</a> = dbm:/etc/postfix/transport
13721<a href="postconf.5.html#transport_maps">transport_maps</a> = hash:/etc/postfix/transport
13722</pre>
13723
13724
13725</DD>
13726
13727<DT><b><a name="transport_minimum_delivery_slots">transport_minimum_delivery_slots</a>
13728(default: $<a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>)</b></DT><DD>
13729
13730<p> A transport-specific override for the <a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>
13731parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13732the message delivery transport. </p>
13733
13734
13735</DD>
13736
13737<DT><b><a name="transport_recipient_limit">transport_recipient_limit</a>
13738(default: $<a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>)</b></DT><DD>
13739
13740<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>
13741parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13742the message delivery transport. </p>
13743
13744
13745</DD>
13746
13747<DT><b><a name="transport_recipient_refill_delay">transport_recipient_refill_delay</a>
13748(default: $<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>)</b></DT><DD>
13749
13750<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>
13751parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13752the message delivery transport. </p>
13753
13754<p> This feature is available in Postfix 2.4 and later. </p>
13755
13756
13757</DD>
13758
13759<DT><b><a name="transport_recipient_refill_limit">transport_recipient_refill_limit</a>
13760(default: $<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>)</b></DT><DD>
13761
13762<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>
13763parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
13764the message delivery transport. </p>
13765
13766<p> This feature is available in Postfix 2.4 and later. </p>
13767
13768
13769</DD>
13770
13771<DT><b><a name="transport_retry_time">transport_retry_time</a>
13772(default: 60s)</b></DT><DD>
13773
13774<p>
13775The time between attempts by the Postfix queue manager to contact
13776a malfunctioning message delivery transport.
13777</p>
13778
13779<p>
13780Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
13781The default time unit is s (seconds).
13782</p>
13783
13784
13785</DD>
13786
13787<DT><b><a name="transport_time_limit">transport_time_limit</a>
13788(default: $<a href="postconf.5.html#command_time_limit">command_time_limit</a>)</b></DT><DD>
13789
13790<p> A transport-specific override for the <a href="postconf.5.html#command_time_limit">command_time_limit</a> parameter
13791value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message
13792delivery transport. </p>
13793
13794
13795</DD>
13796
13797<DT><b><a name="trigger_timeout">trigger_timeout</a>
13798(default: 10s)</b></DT><DD>
13799
13800<p>
13801The time limit for sending a trigger to a Postfix daemon (for
13802example, the <a href="pickup.8.html">pickup(8)</a> or <a href="qmgr.8.html">qmgr(8)</a> daemon). This time limit prevents
13803programs from getting stuck when the mail system is under heavy
13804load.
13805</p>
13806
13807<p>
13808Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
13809The default time unit is s (seconds).
13810</p>
13811
13812
13813</DD>
13814
13815<DT><b><a name="undisclosed_recipients_header">undisclosed_recipients_header</a>
13816(default: To: undisclosed-recipients:;)</b></DT><DD>
13817
13818<p>
13819Message header that the Postfix <a href="cleanup.8.html">cleanup(8)</a> server inserts when a
13820message contains no To: or Cc: message header. With Postfix 2.4
13821and later, specify an empty value to disable this feature.  </p>
13822
13823
13824</DD>
13825
13826<DT><b><a name="unknown_address_reject_code">unknown_address_reject_code</a>
13827(default: 450)</b></DT><DD>
13828
13829<p>
13830The numerical Postfix SMTP server response code when a sender or
13831recipient address is rejected by the <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>
13832or <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> restriction.  The response is
13833always 450 in case of a temporary DNS error.
13834</p>
13835
13836<p>
13837Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
13838</p>
13839
13840
13841</DD>
13842
13843<DT><b><a name="unknown_address_tempfail_action">unknown_address_tempfail_action</a>
13844(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
13845
13846<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>
13847or <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> fail due to a temporary error
13848condition. Specify "defer" to defer the remote SMTP client request
13849immediately. With the default "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix
13850SMTP server continues to look for opportunities to reject mail, and
13851defers the client request only if it would otherwise be accepted.
13852</p>
13853
13854<p> This feature is available in Postfix 2.6 and later. </p>
13855
13856
13857</DD>
13858
13859<DT><b><a name="unknown_client_reject_code">unknown_client_reject_code</a>
13860(default: 450)</b></DT><DD>
13861
13862<p>
13863The numerical Postfix SMTP server response code when a client
13864without valid address &lt;=&gt; name mapping is rejected by the
13865<a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> restriction. The SMTP server always replies
13866with 450 when the mapping failed due to a temporary error condition.
13867</p>
13868
13869<p>
13870Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
13871</p>
13872
13873
13874</DD>
13875
13876<DT><b><a name="unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a>
13877(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
13878
13879<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a>
13880fails due to an temporary error condition. Specify "defer" to defer
13881the remote SMTP client request immediately. With the default
13882"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
13883for opportunities to reject mail, and defers the client request
13884only if it would otherwise be accepted. </p>
13885
13886<p> This feature is available in Postfix 2.6 and later. </p>
13887
13888
13889</DD>
13890
13891<DT><b><a name="unknown_hostname_reject_code">unknown_hostname_reject_code</a>
13892(default: 450)</b></DT><DD>
13893
13894<p>
13895The numerical Postfix SMTP server response code when the hostname
13896specified with the HELO or EHLO command is rejected by the
13897<a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> restriction.
13898</p>
13899
13900<p>
13901Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
13902</p>
13903
13904
13905</DD>
13906
13907<DT><b><a name="unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a>
13908(default: 550)</b></DT><DD>
13909
13910<p>
13911The numerical Postfix SMTP server response code when a recipient
13912address is local, and $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> specifies a list of
13913lookup tables that does not match the recipient.  A recipient
13914address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>,
13915$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> or $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>.
13916</p>
13917
13918<p>
13919The default setting is 550 (reject mail) but it is safer to initially
13920use 450 (try again later) so you have time to find out if your
13921<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> settings are OK.
13922</p>
13923
13924<p>
13925Example:
13926</p>
13927
13928<pre>
13929<a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> = 450
13930</pre>
13931
13932<p>
13933This feature is available in Postfix 2.0 and later.
13934</p>
13935
13936
13937</DD>
13938
13939<DT><b><a name="unknown_relay_recipient_reject_code">unknown_relay_recipient_reject_code</a>
13940(default: 550)</b></DT><DD>
13941
13942<p>
13943The numerical Postfix SMTP server reply code when a recipient
13944address matches $<a href="postconf.5.html#relay_domains">relay_domains</a>, and <a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> specifies
13945a list of lookup tables that does not match the recipient address.
13946</p>
13947
13948<p>
13949This feature is available in Postfix 2.0 and later.
13950</p>
13951
13952
13953</DD>
13954
13955<DT><b><a name="unknown_virtual_alias_reject_code">unknown_virtual_alias_reject_code</a>
13956(default: 550)</b></DT><DD>
13957
13958<p>
13959The SMTP server reply code when a recipient address matches
13960$<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>, and $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> specifies a list
13961of lookup tables that does not match the recipient address.
13962</p>
13963
13964<p>
13965This feature is available in Postfix 2.0 and later.
13966</p>
13967
13968
13969</DD>
13970
13971<DT><b><a name="unknown_virtual_mailbox_reject_code">unknown_virtual_mailbox_reject_code</a>
13972(default: 550)</b></DT><DD>
13973
13974<p>
13975The SMTP server reply code when a recipient address matches
13976$<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>, and $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> specifies a list
13977of lookup tables that does not match the recipient address.
13978</p>
13979
13980<p>
13981This feature is available in Postfix 2.0 and later.
13982</p>
13983
13984
13985</DD>
13986
13987<DT><b><a name="unverified_recipient_defer_code">unverified_recipient_defer_code</a>
13988(default: 450)</b></DT><DD>
13989
13990<p>
13991The numerical Postfix SMTP server response when a recipient address
13992probe fails due to a temporary error condition.
13993</p>
13994
13995<p>
13996Unlike elsewhere in Postfix, you can specify 250 in order to
13997accept the address anyway.
13998</p>
13999
14000<p>
14001Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
14002</p>
14003
14004<p>
14005This feature is available in Postfix 2.6 and later.
14006</p>
14007
14008
14009</DD>
14010
14011<DT><b><a name="unverified_recipient_reject_code">unverified_recipient_reject_code</a>
14012(default: 450)</b></DT><DD>
14013
14014<p>
14015The numerical Postfix SMTP server response when a recipient address
14016is rejected by the <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> restriction.
14017</p>
14018
14019<p>
14020Unlike elsewhere in Postfix, you can specify 250 in order to
14021accept the address anyway.
14022</p>
14023
14024<p>
14025Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
14026</p>
14027
14028<p>
14029This feature is available in Postfix 2.1 and later.
14030</p>
14031
14032
14033</DD>
14034
14035<DT><b><a name="unverified_recipient_reject_reason">unverified_recipient_reject_reason</a>
14036(default: empty)</b></DT><DD>
14037
14038<p> The Postfix SMTP server's reply when rejecting mail with
14039<a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>. Do not include the numeric SMTP reply
14040code or the enhanced status code. By default, the response includes
14041actual address verification details.
14042
14043<p> Example: </p>
14044
14045<pre>
14046<a href="postconf.5.html#unverified_recipient_reject_reason">unverified_recipient_reject_reason</a> = Recipient address lookup failed
14047</pre>
14048
14049<p> This feature is available in Postfix 2.6 and later. </p>
14050
14051
14052</DD>
14053
14054<DT><b><a name="unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a>
14055(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
14056
14057<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>
14058fails due to a temporary error condition. Specify "defer" to defer
14059the remote SMTP client request immediately. With the default
14060"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
14061for opportunities to reject mail, and defers the client request
14062only if it would otherwise be accepted. </p>
14063
14064<p> This feature is available in Postfix 2.6 and later. </p>
14065
14066
14067</DD>
14068
14069<DT><b><a name="unverified_sender_defer_code">unverified_sender_defer_code</a>
14070(default: 450)</b></DT><DD>
14071
14072<p>
14073The numerical Postfix SMTP server response code when a sender address
14074probe fails due to a temporary error condition.
14075</p>
14076
14077<p>
14078Unlike elsewhere in Postfix, you can specify 250 in order to
14079accept the address anyway.
14080</p>
14081
14082<p>
14083Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
14084</p>
14085
14086<p>
14087This feature is available in Postfix 2.6 and later.
14088</p>
14089
14090
14091</DD>
14092
14093<DT><b><a name="unverified_sender_reject_code">unverified_sender_reject_code</a>
14094(default: 450)</b></DT><DD>
14095
14096<p>
14097The numerical Postfix SMTP server response code when a recipient
14098address is rejected by the <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> restriction.
14099</p>
14100
14101<p>
14102Unlike elsewhere in Postfix, you can specify 250 in order to
14103accept the address anyway.
14104</p>
14105
14106<p>
14107Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
14108</p>
14109
14110<p>
14111This feature is available in Postfix 2.1 and later.
14112</p>
14113
14114
14115</DD>
14116
14117<DT><b><a name="unverified_sender_reject_reason">unverified_sender_reject_reason</a>
14118(default: empty)</b></DT><DD>
14119
14120<p> The Postfix SMTP server's reply when rejecting mail with
14121<a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>. Do not include the numeric SMTP reply
14122code or the enhanced status code. By default, the response includes
14123actual address verification details.
14124
14125<p> Example: </p>
14126
14127<pre>
14128<a href="postconf.5.html#unverified_sender_reject_reason">unverified_sender_reject_reason</a> = Sender address lookup failed
14129</pre>
14130
14131<p> This feature is available in Postfix 2.6 and later. </p>
14132
14133
14134</DD>
14135
14136<DT><b><a name="unverified_sender_tempfail_action">unverified_sender_tempfail_action</a>
14137(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
14138
14139<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>
14140fails due to a temporary error condition. Specify "defer" to defer
14141the remote SMTP client request immediately. With the default
14142"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
14143for opportunities to reject mail, and defers the client request
14144only if it would otherwise be accepted. </p>
14145
14146<p> This feature is available in Postfix 2.6 and later. </p>
14147
14148
14149</DD>
14150
14151<DT><b><a name="verp_delimiter_filter">verp_delimiter_filter</a>
14152(default: -=+)</b></DT><DD>
14153
14154<p>
14155The characters Postfix accepts as VERP delimiter characters on the
14156Postfix <a href="sendmail.1.html">sendmail(1)</a> command line and in SMTP commands.
14157</p>
14158
14159<p>
14160This feature is available in Postfix 1.1 and later.
14161</p>
14162
14163
14164</DD>
14165
14166<DT><b><a name="virtual_alias_domains">virtual_alias_domains</a>
14167(default: $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)</b></DT><DD>
14168
14169<p> Postfix is final destination for the specified list of virtual
14170alias domains, that is, domains for which all addresses are aliased
14171to addresses in other local or remote domains. The SMTP server
14172validates recipient addresses with $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> and rejects
14173non-existent recipients. See also the <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> class
14174in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file </p>
14175
14176<p>
14177This feature is available in Postfix 2.0 and later. The default
14178value is backwards compatible with Postfix version 1.1.
14179</p>
14180
14181<p>
14182The default value is $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> so that you can keep all
14183information about <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domains</a> in one place.  If you have
14184many users, it is better to separate information that changes more
14185frequently (virtual address -&gt; local or remote address mapping)
14186from information that changes less frequently (the list of virtual
14187domain names).
14188</p>
14189
14190<p> Specify a list of host or domain names, "/file/name" or
14191"<a href="DATABASE_README.html">type:table</a>" patterns, separated by commas and/or whitespace. A
14192"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
14193lookup table is matched when a table entry matches a lookup string
14194(the lookup result is ignored).  Continue long lines by starting
14195the next line with whitespace. Specify "!pattern" to exclude a host
14196or domain name from the list. The form "!/file/name" is supported
14197only in Postfix version 2.4 and later.  </p>
14198
14199<p>
14200See also the <a href="VIRTUAL_README.html">VIRTUAL_README</a> and <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> documents
14201for further information.
14202</p>
14203
14204<p>
14205Example:
14206</p>
14207
14208<pre>
14209<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = virtual1.tld virtual2.tld
14210</pre>
14211
14212
14213</DD>
14214
14215<DT><b><a name="virtual_alias_expansion_limit">virtual_alias_expansion_limit</a>
14216(default: 1000)</b></DT><DD>
14217
14218<p>
14219The maximal number of addresses that virtual alias expansion produces
14220from each original recipient.
14221</p>
14222
14223<p>
14224This feature is available in Postfix 2.1 and later.
14225</p>
14226
14227
14228</DD>
14229
14230<DT><b><a name="virtual_alias_maps">virtual_alias_maps</a>
14231(default: $<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b></DT><DD>
14232
14233<p>
14234Optional lookup tables that alias specific mail addresses or domains
14235to other local or remote address.  The table format and lookups
14236are documented in <a href="virtual.5.html">virtual(5)</a>. For an overview of Postfix address
14237manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document.
14238</p>
14239
14240<p>
14241This feature is available in Postfix 2.0 and later. The default
14242value is backwards compatible with Postfix version 1.1.
14243</p>
14244
14245<p>
14246If you use this feature with indexed files, run "<b>postmap
14247/etc/postfix/virtual</b>" after changing the file.
14248</p>
14249
14250<p>
14251Examples:
14252</p>
14253
14254<pre>
14255<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = dbm:/etc/postfix/virtual
14256<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
14257</pre>
14258
14259
14260</DD>
14261
14262<DT><b><a name="virtual_alias_recursion_limit">virtual_alias_recursion_limit</a>
14263(default: 1000)</b></DT><DD>
14264
14265<p>
14266The maximal nesting depth of virtual alias expansion.  Currently
14267the recursion limit is applied only to the left branch of the
14268expansion graph, so the depth of the tree can in the worst case
14269reach the sum of the expansion and recursion limits.  This may
14270change in the future.
14271</p>
14272
14273<p>
14274This feature is available in Postfix 2.1 and later.
14275</p>
14276
14277
14278</DD>
14279
14280<DT><b><a name="virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a>
14281(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
14282
14283<p> The maximal number of parallel deliveries to the same destination
14284via the virtual message delivery transport. This limit is enforced
14285by the queue manager. The message delivery transport name is the
14286first field in the entry in the <a href="master.5.html">master.cf</a> file.  </p>
14287
14288
14289</DD>
14290
14291<DT><b><a name="virtual_destination_recipient_limit">virtual_destination_recipient_limit</a>
14292(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
14293
14294<p> The maximal number of recipients per message for the virtual
14295message delivery transport. This limit is enforced by the queue
14296manager. The message delivery transport name is the first field in
14297the entry in the <a href="master.5.html">master.cf</a> file.  </p>
14298
14299<p> Setting this parameter to a value of 1 changes the meaning of
14300<a href="postconf.5.html#virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a> from concurrency per domain
14301into concurrency per recipient.  </p>
14302
14303
14304</DD>
14305
14306<DT><b><a name="virtual_gid_maps">virtual_gid_maps</a>
14307(default: empty)</b></DT><DD>
14308
14309<p>
14310Lookup tables with the per-recipient group ID for <a href="virtual.8.html">virtual(8)</a> mailbox
14311delivery.
14312</p>
14313
14314<p>
14315In a lookup table, specify a left-hand side of "@domain.tld" to
14316match any user in the specified domain that does not have a specific
14317"user@domain.tld" entry.
14318</p>
14319
14320<p>
14321When a recipient address has an optional address extension
14322(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
14323the full address first, and when the lookup fails, it looks up the
14324unextended address (user@domain.tld).
14325</p>
14326
14327<p>
14328Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
14329regular expression substitution of $1 etc. in regular expression
14330lookup tables, because that would open a security hole.
14331</p>
14332
14333<p>
14334Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
14335silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
14336it will open the table directly. Before Postfix version 2.2, the
14337<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
14338</p>
14339
14340
14341</DD>
14342
14343<DT><b><a name="virtual_mailbox_base">virtual_mailbox_base</a>
14344(default: empty)</b></DT><DD>
14345
14346<p>
14347A prefix that the <a href="virtual.8.html">virtual(8)</a> delivery agent prepends to all pathname
14348results from $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> table lookups.  This is a safety
14349measure to ensure that an out of control map doesn't litter the
14350file system with mailboxes.  While <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> could be
14351set to "/", this setting isn't recommended.
14352</p>
14353
14354<p>
14355Example:
14356</p>
14357
14358<pre>
14359<a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> = /var/mail
14360</pre>
14361
14362
14363</DD>
14364
14365<DT><b><a name="virtual_mailbox_domains">virtual_mailbox_domains</a>
14366(default: $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>)</b></DT><DD>
14367
14368<p> Postfix is final destination for the specified list of domains;
14369mail is delivered via the $<a href="postconf.5.html#virtual_transport">virtual_transport</a> mail delivery transport.
14370By default this is the Postfix <a href="virtual.8.html">virtual(8)</a> delivery agent.  The SMTP
14371server validates recipient addresses with $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>
14372and rejects mail for non-existent recipients.  See also the virtual
14373mailbox domain class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file.  </p>
14374
14375<p> This parameter expects the same syntax as the <a href="postconf.5.html#mydestination">mydestination</a>
14376configuration parameter.  </p>
14377
14378<p>
14379This feature is available in Postfix 2.0 and later. The default
14380value is backwards compatible with Postfix version 1.1.
14381</p>
14382
14383
14384</DD>
14385
14386<DT><b><a name="virtual_mailbox_limit">virtual_mailbox_limit</a>
14387(default: 51200000)</b></DT><DD>
14388
14389<p>
14390The maximal size in bytes of an individual mailbox or maildir file,
14391or zero (no limit).
14392</p>
14393
14394
14395</DD>
14396
14397<DT><b><a name="virtual_mailbox_lock">virtual_mailbox_lock</a>
14398(default: see "postconf -d" output)</b></DT><DD>
14399
14400<p>
14401How to lock a UNIX-style <a href="virtual.8.html">virtual(8)</a> mailbox before attempting
14402delivery.  For a list of available file locking methods, use the
14403"<b>postconf -l</b>" command.
14404</p>
14405
14406<p>
14407This setting is ignored with <b>maildir</b> style delivery, because
14408such deliveries are safe without application-level locks.
14409</p>
14410
14411<p>
14412Note 1: the <b>dotlock</b> method requires that the recipient UID
14413or GID has write access to the parent directory of the recipient's
14414mailbox file.
14415</p>
14416
14417<p>
14418Note 2: the default setting of this parameter is system dependent.
14419</p>
14420
14421
14422</DD>
14423
14424<DT><b><a name="virtual_mailbox_maps">virtual_mailbox_maps</a>
14425(default: empty)</b></DT><DD>
14426
14427<p>
14428Optional lookup tables with all valid addresses in the domains that
14429match $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
14430</p>
14431
14432<p>
14433In a lookup table, specify a left-hand side of "@domain.tld" to
14434match any user in the specified domain that does not have a specific
14435"user@domain.tld" entry.
14436</p>
14437
14438<p>
14439The <a href="virtual.8.html">virtual(8)</a> delivery agent uses this table to look up the
14440per-recipient mailbox or maildir pathname.  If the lookup result
14441ends in a slash ("/"), maildir-style delivery is carried out,
14442otherwise the path is assumed to specify a UNIX-style mailbox file.
14443Note that $<a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> is unconditionally prepended to
14444this path.
14445</p>
14446
14447<p>
14448When a recipient address has an optional address extension
14449(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
14450the full address first, and when the lookup fails, it looks up the
14451unextended address (user@domain.tld).
14452</p>
14453
14454<p>
14455Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
14456regular expression substitution of $1 etc. in regular expression
14457lookup tables, because that would open a security hole.
14458</p>
14459
14460<p>
14461Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
14462silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
14463it will open the table directly. Before Postfix version 2.2, the
14464<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
14465</p>
14466
14467
14468</DD>
14469
14470<DT><b><a name="virtual_maps">virtual_maps</a>
14471(default: empty)</b></DT><DD>
14472
14473<p> Optional lookup tables with a) names of domains for which all
14474addresses are aliased to addresses in other local or remote domains,
14475and b) addresses that are aliased to addresses in other local or
14476remote domains.  Available before Postfix version 2.0. With Postfix
14477version 2.0 and later, this is replaced by separate controls: <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>
14478and <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>. </p>
14479
14480
14481</DD>
14482
14483<DT><b><a name="virtual_minimum_uid">virtual_minimum_uid</a>
14484(default: 100)</b></DT><DD>
14485
14486<p>
14487The minimum user ID value that the <a href="virtual.8.html">virtual(8)</a> delivery agent accepts
14488as a result from $<a href="postconf.5.html#virtual_uid_maps">virtual_uid_maps</a> table lookup.  Returned
14489values less than this will be rejected, and the message will be
14490deferred.
14491</p>
14492
14493
14494</DD>
14495
14496<DT><b><a name="virtual_transport">virtual_transport</a>
14497(default: virtual)</b></DT><DD>
14498
14499<p>
14500The default mail delivery transport and next-hop destination for
14501final delivery to domains listed with $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
14502This information can be overruled with the <a href="transport.5.html">transport(5)</a> table.
14503</p>
14504
14505<p>
14506Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
14507is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
14508The <i>:nexthop</i> part is optional.  For more details see the
14509<a href="transport.5.html">transport(5)</a> manual page.
14510</p>
14511
14512<p>
14513This feature is available in Postfix 2.0 and later.
14514</p>
14515
14516
14517</DD>
14518
14519<DT><b><a name="virtual_uid_maps">virtual_uid_maps</a>
14520(default: empty)</b></DT><DD>
14521
14522<p>
14523Lookup tables with the per-recipient user ID that the <a href="virtual.8.html">virtual(8)</a>
14524delivery agent uses while writing to the recipient's mailbox.
14525</p>
14526
14527<p>
14528In a lookup table, specify a left-hand side of "@domain.tld"
14529to match any user in the specified domain that does not have a
14530specific "user@domain.tld" entry.
14531</p>
14532
14533<p>
14534When a recipient address has an optional address extension
14535(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
14536the full address first, and when the lookup fails, it looks up the
14537unextended address (user@domain.tld).
14538</p>
14539
14540<p>
14541Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
14542regular expression substitution of $1 etc. in regular expression
14543lookup tables, because that would open a security hole.
14544</p>
14545
14546<p>
14547Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
14548silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
14549it will open the table directly. Before Postfix version 2.2, the
14550<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
14551</p>
14552
14553
14554</DD>
14555
14556</dl>
14557
14558</body>
14559
14560</html>
14561