autoupdate
[postfix-master.git] / postfix-master / postconf.5.html
blob891ea211dc64b457a865a04edacf13c2a87842ea
1 <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/html4/loose.dtd">
4 <html>
6 <head>
8 <title>Postfix Configuration Parameters </title>
10 <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
12 </head>
14 <body>
16 <h1><img src="postfix-logo.jpg" width="203" height="98" alt="">Postfix Configuration Parameters </h1>
18 <hr>
20 <h2> Postfix main.cf file format </h2>
22 <p> The Postfix main.cf configuration file specifies a very small
23 subset of all the parameters that control the operation of the
24 Postfix mail system. Parameters not explicitly specified are left
25 at their default values. </p>
27 <p> The general format of the main.cf file is as follows: </p>
29 <ul>
31 <li> <p> Each logical line is in the form "parameter = value".
32 Whitespace around the "=" is ignored, as is whitespace at the end
33 of a logical line. </p>
35 <li> <p> Empty lines and whitespace-only lines are ignored, as are
36 lines whose first non-whitespace character is a `#'. </p>
38 <li> <p> A logical line starts with non-whitespace text. A line
39 that starts with whitespace continues a logical line. </p>
41 <li> <p> A parameter value may refer to other parameters. </p>
43 <ul>
45 <li> <p> The expressions "$name", "${name}" or "$(name)" are
46 recursively replaced by the value of the named parameter. </p>
48 <li> <p> The expression "${name?value}" expands to "value" when
49 "$name" is non-empty. This form is supported with Postfix version
50 2.2 and later. </p>
52 <li> <p> The expression "${name:value}" expands to "value" when
53 "$name" is empty. This form is supported with Postfix version 2.2
54 and later. </p>
56 <li> <p> Specify "$$" to produce a single "$" character. </p>
58 </ul>
60 <li> <p> When the same parameter is defined multiple times, only
61 the last instance is remembered. </p>
63 <li> <p> Otherwise, the order of main.cf parameter definitions does
64 not matter. </p>
66 </ul>
68 <p> The remainder of this document is a description of all Postfix
69 configuration parameters. Default values are shown after the
70 parameter name in parentheses, and can be looked up with the
71 "<b>postconf -d</b>" command. </p>
73 <p> Note: this is not an invitation to make changes to Postfix
74 configuration parameters. Unnecessary changes are likely to impair
75 the operation of the mail system. </p>
77 <dl>
78 <DT><b><a name="2bounce_notice_recipient">2bounce_notice_recipient</a>
79 (default: postmaster)</b></DT><DD>
81 <p> The recipient of undeliverable mail that cannot be returned to
82 the sender. This feature is enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a>
83 parameter. </p>
86 </DD>
88 <DT><b><a name="access_map_defer_code">access_map_defer_code</a>
89 (default: 450)</b></DT><DD>
91 <p>
92 The numerical Postfix SMTP server response code for
93 an <a href="access.5.html">access(5)</a> map "defer" action, including "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>"
94 or "<a href="postconf.5.html#defer_if_reject">defer_if_reject</a>". Prior to Postfix 2.6, the response
95 is hard-coded as "450".
96 </p>
98 <p>
99 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
100 </p>
103 This feature is available in Postfix 2.6 and later.
104 </p>
107 </DD>
109 <DT><b><a name="access_map_reject_code">access_map_reject_code</a>
110 (default: 554)</b></DT><DD>
113 The numerical Postfix SMTP server response code for
114 an <a href="access.5.html">access(5)</a> map "reject" action.
115 </p>
118 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
119 </p>
122 </DD>
124 <DT><b><a name="address_verify_cache_cleanup_interval">address_verify_cache_cleanup_interval</a>
125 (default: 12h)</b></DT><DD>
127 <p> The amount of time between <a href="verify.8.html">verify(8)</a> address verification
128 database cleanup runs. This feature requires that the database
129 supports the "delete" and "sequence" operators. Specify a zero
130 interval to disable database cleanup. </p>
132 <p> After each database cleanup run, the <a href="verify.8.html">verify(8)</a> daemon logs the
133 number of entries that were retained and dropped. A cleanup run is
134 logged as "partial" when the daemon terminates early after "<b>postfix
135 reload</b>", "<b>postfix stop</b>", or no requests for $<a href="postconf.5.html#max_idle">max_idle</a>
136 seconds. </p>
138 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
139 (weeks). </p>
141 <p> This feature is available in Postfix 2.7. </p>
144 </DD>
146 <DT><b><a name="address_verify_default_transport">address_verify_default_transport</a>
147 (default: $<a href="postconf.5.html#default_transport">default_transport</a>)</b></DT><DD>
150 Overrides the <a href="postconf.5.html#default_transport">default_transport</a> parameter setting for address
151 verification probes.
152 </p>
155 This feature is available in Postfix 2.1 and later.
156 </p>
159 </DD>
161 <DT><b><a name="address_verify_local_transport">address_verify_local_transport</a>
162 (default: $<a href="postconf.5.html#local_transport">local_transport</a>)</b></DT><DD>
165 Overrides the <a href="postconf.5.html#local_transport">local_transport</a> parameter setting for address
166 verification probes.
167 </p>
170 This feature is available in Postfix 2.1 and later.
171 </p>
174 </DD>
176 <DT><b><a name="address_verify_map">address_verify_map</a>
177 (default: see "postconf -d" output)</b></DT><DD>
180 Lookup table for persistent address verification status
181 storage. The table is maintained by the <a href="verify.8.html">verify(8)</a> service, and
182 is opened before the process releases privileges.
183 </p>
186 The lookup table is persistent by default (Postfix 2.7 and later).
187 Specify an empty table name to keep the information in volatile
188 memory which is lost after "<b>postfix reload</b>" or "<b>postfix
189 stop</b>". This is the default with Postfix version 2.6 and earlier.
190 </p>
193 Specify a location in a file system that will not fill up. If the
194 database becomes corrupted, the world comes to an end. To recover
195 delete (NOT: truncate) the file and do "<b>postfix reload</b>".
196 </p>
198 <p> Postfix daemon processes do not use root privileges when opening
199 this file (Postfix 2.5 and later). The file must therefore be
200 stored under a Postfix-owned directory such as the <a href="postconf.5.html#data_directory">data_directory</a>.
201 As a migration aid, an attempt to open the file under a non-Postfix
202 directory is redirected to the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>, and a
203 warning is logged. </p>
206 Examples:
207 </p>
209 <pre>
210 <a href="postconf.5.html#address_verify_map">address_verify_map</a> = hash:/var/lib/postfix/verify
211 <a href="postconf.5.html#address_verify_map">address_verify_map</a> = btree:/var/lib/postfix/verify
212 </pre>
215 This feature is available in Postfix 2.1 and later.
216 </p>
219 </DD>
221 <DT><b><a name="address_verify_negative_cache">address_verify_negative_cache</a>
222 (default: yes)</b></DT><DD>
225 Enable caching of failed address verification probe results. When
226 this feature is enabled, the cache may pollute quickly with garbage.
227 When this feature is disabled, Postfix will generate an address
228 probe for every lookup.
229 </p>
232 This feature is available in Postfix 2.1 and later.
233 </p>
236 </DD>
238 <DT><b><a name="address_verify_negative_expire_time">address_verify_negative_expire_time</a>
239 (default: 3d)</b></DT><DD>
242 The time after which a failed probe expires from the address
243 verification cache.
244 </p>
247 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
248 </p>
251 This feature is available in Postfix 2.1 and later.
252 </p>
255 </DD>
257 <DT><b><a name="address_verify_negative_refresh_time">address_verify_negative_refresh_time</a>
258 (default: 3h)</b></DT><DD>
261 The time after which a failed address verification probe needs to
262 be refreshed.
263 </p>
266 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
267 </p>
270 This feature is available in Postfix 2.1 and later.
271 </p>
274 </DD>
276 <DT><b><a name="address_verify_poll_count">address_verify_poll_count</a>
277 (default: normal: 3, overload: 1)</b></DT><DD>
280 How many times to query the <a href="verify.8.html">verify(8)</a> service for the completion
281 of an address verification request in progress.
282 </p>
284 <p> By default, the Postfix SMTP server polls the <a href="verify.8.html">verify(8)</a> service
285 up to three times under non-overload conditions, and only once when
286 under overload. With Postfix version 2.5 and earlier, the SMTP
287 server always polls the <a href="verify.8.html">verify(8)</a> service up to three times by
288 default. </p>
291 Specify 1 to implement a crude form of greylisting, that is, always
292 defer the first delivery request for a new address.
293 </p>
296 Examples:
297 </p>
299 <pre>
300 # Postfix &le; 2.6 default
301 <a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> = 3
302 # Poor man's greylisting
303 <a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> = 1
304 </pre>
307 This feature is available in Postfix 2.1 and later.
308 </p>
311 </DD>
313 <DT><b><a name="address_verify_poll_delay">address_verify_poll_delay</a>
314 (default: 3s)</b></DT><DD>
317 The delay between queries for the completion of an address
318 verification request in progress.
319 </p>
322 The default polling delay is 3 seconds.
323 </p>
326 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
327 </p>
330 This feature is available in Postfix 2.1 and later.
331 </p>
334 </DD>
336 <DT><b><a name="address_verify_positive_expire_time">address_verify_positive_expire_time</a>
337 (default: 31d)</b></DT><DD>
340 The time after which a successful probe expires from the address
341 verification cache.
342 </p>
345 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
346 </p>
349 This feature is available in Postfix 2.1 and later.
350 </p>
353 </DD>
355 <DT><b><a name="address_verify_positive_refresh_time">address_verify_positive_refresh_time</a>
356 (default: 7d)</b></DT><DD>
359 The time after which a successful address verification probe needs
360 to be refreshed. The address verification status is not updated
361 when the probe fails (optimistic caching).
362 </p>
365 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
366 </p>
369 This feature is available in Postfix 2.1 and later.
370 </p>
373 </DD>
375 <DT><b><a name="address_verify_relay_transport">address_verify_relay_transport</a>
376 (default: $<a href="postconf.5.html#relay_transport">relay_transport</a>)</b></DT><DD>
379 Overrides the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter setting for address
380 verification probes.
381 </p>
384 This feature is available in Postfix 2.1 and later.
385 </p>
388 </DD>
390 <DT><b><a name="address_verify_relayhost">address_verify_relayhost</a>
391 (default: $<a href="postconf.5.html#relayhost">relayhost</a>)</b></DT><DD>
394 Overrides the <a href="postconf.5.html#relayhost">relayhost</a> parameter setting for address verification
395 probes. This information can be overruled with the <a href="transport.5.html">transport(5)</a> table.
396 </p>
399 This feature is available in Postfix 2.1 and later.
400 </p>
403 </DD>
405 <DT><b><a name="address_verify_sender">address_verify_sender</a>
406 (default: $<a href="postconf.5.html#double_bounce_sender">double_bounce_sender</a>)</b></DT><DD>
408 <p> The sender address to use in address verification probes; prior
409 to Postfix 2.5 the default was "postmaster". To
410 avoid problems with address probes that are sent in response to
411 address probes, the Postfix SMTP server excludes the probe sender
412 address from all SMTPD access blocks. </p>
415 Specify an empty value (<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> =) or &lt;&gt; if you want
416 to use the null sender address. Beware, some sites reject mail from
417 &lt;&gt;, even though RFCs require that such addresses be accepted.
418 </p>
421 Examples:
422 </p>
424 <pre>
425 <a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = &lt;&gt;
426 <a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = postmaster@my.domain
427 </pre>
430 This feature is available in Postfix 2.1 and later.
431 </p>
434 </DD>
436 <DT><b><a name="address_verify_sender_dependent_default_transport_maps">address_verify_sender_dependent_default_transport_maps</a>
437 (default: $<a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>)</b></DT><DD>
439 <p> Overrides the <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> parameter
440 setting for address verification probes. </p>
442 <p> This feature is available in Postfix 2.7 and later. </p>
445 </DD>
447 <DT><b><a name="address_verify_sender_dependent_relayhost_maps">address_verify_sender_dependent_relayhost_maps</a>
448 (default: $<a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>)</b></DT><DD>
451 Overrides the <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> parameter setting for address
452 verification probes.
453 </p>
456 This feature is available in Postfix 2.3 and later.
457 </p>
460 </DD>
462 <DT><b><a name="address_verify_service_name">address_verify_service_name</a>
463 (default: verify)</b></DT><DD>
466 The name of the <a href="verify.8.html">verify(8)</a> address verification service. This service
467 maintains the status of sender and/or recipient address verification
468 probes, and generates probes on request by other Postfix processes.
469 </p>
472 </DD>
474 <DT><b><a name="address_verify_transport_maps">address_verify_transport_maps</a>
475 (default: $<a href="postconf.5.html#transport_maps">transport_maps</a>)</b></DT><DD>
478 Overrides the <a href="postconf.5.html#transport_maps">transport_maps</a> parameter setting for address verification
479 probes.
480 </p>
483 This feature is available in Postfix 2.1 and later.
484 </p>
487 </DD>
489 <DT><b><a name="address_verify_virtual_transport">address_verify_virtual_transport</a>
490 (default: $<a href="postconf.5.html#virtual_transport">virtual_transport</a>)</b></DT><DD>
493 Overrides the <a href="postconf.5.html#virtual_transport">virtual_transport</a> parameter setting for address
494 verification probes.
495 </p>
498 This feature is available in Postfix 2.1 and later.
499 </p>
502 </DD>
504 <DT><b><a name="alias_database">alias_database</a>
505 (default: see "postconf -d" output)</b></DT><DD>
508 The alias databases for <a href="local.8.html">local(8)</a> delivery that are updated with
509 "<b>newaliases</b>" or with "<b>sendmail -bi</b>".
510 </p>
513 This is a separate configuration parameter because not all the
514 tables specified with $<a href="postconf.5.html#alias_maps">alias_maps</a> have to be local files.
515 </p>
518 Examples:
519 </p>
521 <pre>
522 <a href="postconf.5.html#alias_database">alias_database</a> = hash:/etc/aliases
523 <a href="postconf.5.html#alias_database">alias_database</a> = hash:/etc/mail/aliases
524 </pre>
527 </DD>
529 <DT><b><a name="alias_maps">alias_maps</a>
530 (default: see "postconf -d" output)</b></DT><DD>
533 The alias databases that are used for <a href="local.8.html">local(8)</a> delivery. See
534 <a href="aliases.5.html">aliases(5)</a> for syntax details.
535 </p>
538 The default list is system dependent. On systems with NIS, the
539 default is to search the local alias database, then the NIS alias
540 database.
541 </p>
544 If you change the alias database, run "<b>postalias /etc/aliases</b>"
545 (or wherever your system stores the mail alias file), or simply
546 run "<b>newaliases</b>" to build the necessary DBM or DB file.
547 </p>
550 The <a href="local.8.html">local(8)</a> delivery agent disallows regular expression substitution
551 of $1 etc. in <a href="postconf.5.html#alias_maps">alias_maps</a>, because that would open a security hole.
552 </p>
555 The <a href="local.8.html">local(8)</a> delivery agent will silently ignore requests to use
556 the <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
557 table directly. Before Postfix version 2.2, the <a href="local.8.html">local(8)</a> delivery
558 agent will terminate with a fatal error.
559 </p>
562 Examples:
563 </p>
565 <pre>
566 <a href="postconf.5.html#alias_maps">alias_maps</a> = hash:/etc/aliases, nis:mail.aliases
567 <a href="postconf.5.html#alias_maps">alias_maps</a> = hash:/etc/aliases
568 </pre>
571 </DD>
573 <DT><b><a name="allow_mail_to_commands">allow_mail_to_commands</a>
574 (default: alias, forward)</b></DT><DD>
577 Restrict <a href="local.8.html">local(8)</a> mail delivery to external commands. The default
578 is to disallow delivery to "|command" in :include: files (see
579 <a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology).
580 </p>
583 Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>,
584 in order to allow commands in <a href="aliases.5.html">aliases(5)</a>, .forward files or in
585 :include: files, respectively.
586 </p>
589 Example:
590 </p>
592 <pre>
593 <a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a> = alias,forward,include
594 </pre>
597 </DD>
599 <DT><b><a name="allow_mail_to_files">allow_mail_to_files</a>
600 (default: alias, forward)</b></DT><DD>
603 Restrict <a href="local.8.html">local(8)</a> mail delivery to external files. The default is
604 to disallow "/file/name" destinations in :include: files (see
605 <a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology).
606 </p>
609 Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>,
610 in order to allow "/file/name" destinations in <a href="aliases.5.html">aliases(5)</a>, .forward
611 files and in :include: files, respectively.
612 </p>
615 Example:
616 </p>
618 <pre>
619 <a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a> = alias,forward,include
620 </pre>
623 </DD>
625 <DT><b><a name="allow_min_user">allow_min_user</a>
626 (default: no)</b></DT><DD>
629 Allow a sender or recipient address to have `-' as the first
630 character. By
631 default, this is not allowed, to avoid accidents with software that
632 passes email addresses via the command line. Such software
633 would not be able to distinguish a malicious address from a
634 bona fide command-line option. Although this can be prevented by
635 inserting a "--" option terminator into the command line, this is
636 difficult to enforce consistently and globally. </p>
638 <p> As of Postfix version 2.5, this feature is implemented by
639 <a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>. With earlier versions this feature was implemented
640 by <a href="qmgr.8.html">qmgr(8)</a> and was limited to recipient addresses only. </p>
643 </DD>
645 <DT><b><a name="allow_percent_hack">allow_percent_hack</a>
646 (default: yes)</b></DT><DD>
649 Enable the rewriting of the form "user%domain" to "user@domain".
650 This is enabled by default.
651 </p>
653 <p> Note: with Postfix version 2.2, message header address rewriting
654 happens only when one of the following conditions is true: </p>
656 <ul>
658 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
660 <li> The message is received from a network client that matches
661 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
663 <li> The message is received from the network, and the
664 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
666 </ul>
668 <p> To get the behavior before Postfix version 2.2, specify
669 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
672 Example:
673 </p>
675 <pre>
676 <a href="postconf.5.html#allow_percent_hack">allow_percent_hack</a> = no
677 </pre>
680 </DD>
682 <DT><b><a name="allow_untrusted_routing">allow_untrusted_routing</a>
683 (default: no)</b></DT><DD>
686 Forward mail with sender-specified routing (user[@%!]remote[@%!]site)
687 from untrusted clients to destinations matching $<a href="postconf.5.html#relay_domains">relay_domains</a>.
688 </p>
691 By default, this feature is turned off. This closes a nasty open
692 relay loophole where a backup MX host can be tricked into forwarding
693 junk mail to a primary MX host which then spams it out to the world.
694 </p>
697 This parameter also controls if non-local addresses with sender-specified
698 routing can match Postfix access tables. By default, such addresses
699 cannot match Postfix access tables, because the address is ambiguous.
700 </p>
703 </DD>
705 <DT><b><a name="alternate_config_directories">alternate_config_directories</a>
706 (default: empty)</b></DT><DD>
709 A list of non-default Postfix configuration directories that may
710 be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line, or
711 via the MAIL_CONFIG environment parameter.
712 </p>
715 This list must be specified in the default Postfix configuration
716 directory, and is used by set-gid Postfix commands such as <a href="postqueue.1.html">postqueue(1)</a>
717 and <a href="postdrop.1.html">postdrop(1)</a>.
718 </p>
721 </DD>
723 <DT><b><a name="always_add_missing_headers">always_add_missing_headers</a>
724 (default: no)</b></DT><DD>
726 <p> Always add (Resent-) From:, To:, Date: or Message-ID: headers
727 when not present. Postfix 2.6 and later add these headers only
728 when clients match the <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter
729 setting. Earlier Postfix versions always add these headers; this
730 may break DKIM signatures that cover non-existent headers. </p>
733 </DD>
735 <DT><b><a name="always_bcc">always_bcc</a>
736 (default: empty)</b></DT><DD>
739 Optional address that receives a "blind carbon copy" of each message
740 that is received by the Postfix mail system.
741 </p>
744 Note: if mail to the BCC address bounces it will be returned to
745 the sender.
746 </p>
748 <p> Note: automatic BCC recipients are produced only for new mail.
749 To avoid mailer loops, automatic BCC recipients are not generated
750 after Postfix forwards mail internally, or after Postfix generates
751 mail itself. </p>
754 </DD>
756 <DT><b><a name="anvil_rate_time_unit">anvil_rate_time_unit</a>
757 (default: 60s)</b></DT><DD>
760 The time unit over which client connection rates and other rates
761 are calculated.
762 </p>
765 This feature is implemented by the <a href="anvil.8.html">anvil(8)</a> service which is available
766 in Postfix version 2.2 and later.
767 </p>
770 The default interval is relatively short. Because of the high
771 frequency of updates, the <a href="anvil.8.html">anvil(8)</a> server uses volatile memory
772 only. Thus, information is lost whenever the process terminates.
773 </p>
776 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
777 The default time unit is s (seconds).
778 </p>
781 </DD>
783 <DT><b><a name="anvil_status_update_time">anvil_status_update_time</a>
784 (default: 600s)</b></DT><DD>
787 How frequently the <a href="anvil.8.html">anvil(8)</a> connection and rate limiting server
788 logs peak usage information.
789 </p>
792 This feature is available in Postfix 2.2 and later.
793 </p>
796 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
797 The default time unit is s (seconds).
798 </p>
801 </DD>
803 <DT><b><a name="append_at_myorigin">append_at_myorigin</a>
804 (default: yes)</b></DT><DD>
807 With locally submitted mail, append the string "@$<a href="postconf.5.html#myorigin">myorigin</a>" to mail
808 addresses without domain information. With remotely submitted mail,
809 append the string "@$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>" instead.
810 </p>
813 Note 1: this feature is enabled by default and must not be turned off.
814 Postfix does not support domain-less addresses.
815 </p>
817 <p> Note 2: with Postfix version 2.2, message header address rewriting
818 happens only when one of the following conditions is true: </p>
820 <ul>
822 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
824 <li> The message is received from a network client that matches
825 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
827 <li> The message is received from the network, and the
828 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
830 </ul>
832 <p> To get the behavior before Postfix version 2.2, specify
833 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
836 </DD>
838 <DT><b><a name="append_dot_mydomain">append_dot_mydomain</a>
839 (default: yes)</b></DT><DD>
842 With locally submitted mail, append the string ".$<a href="postconf.5.html#mydomain">mydomain</a>" to
843 addresses that have no ".domain" information. With remotely submitted
844 mail, append the string ".$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>"
845 instead.
846 </p>
849 Note 1: this feature is enabled by default. If disabled, users will not be
850 able to send mail to "user@partialdomainname" but will have to
851 specify full domain names instead.
852 </p>
854 <p> Note 2: with Postfix version 2.2, message header address rewriting
855 happens only when one of the following conditions is true: </p>
857 <ul>
859 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
861 <li> The message is received from a network client that matches
862 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
864 <li> The message is received from the network, and the
865 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
867 </ul>
869 <p> To get the behavior before Postfix version 2.2, specify
870 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
873 </DD>
875 <DT><b><a name="application_event_drain_time">application_event_drain_time</a>
876 (default: 100s)</b></DT><DD>
879 How long the <a href="postkick.1.html">postkick(1)</a> command waits for a request to enter the
880 server's input buffer before giving up.
881 </p>
884 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
885 The default time unit is s (seconds).
886 </p>
889 This feature is available in Postfix 2.1 and later.
890 </p>
893 </DD>
895 <DT><b><a name="authorized_flush_users">authorized_flush_users</a>
896 (default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD>
899 List of users who are authorized to flush the queue.
900 </p>
903 By default, all users are allowed to flush the queue. Access is
904 always granted if the invoking user is the super-user or the
905 $<a href="postconf.5.html#mail_owner">mail_owner</a> user. Otherwise, the real UID of the process is looked
906 up in the system password file, and access is granted only if the
907 corresponding login name is on the access list. The username
908 "unknown" is used for processes whose real UID is not found in the
909 password file. </p>
912 Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
913 separated by commas and/or whitespace. The list is matched left to
914 right, and the search stops on the first match. A "/file/name"
915 pattern is replaced
916 by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
917 matches a lookup key (the lookup result is ignored). Continue long
918 lines by starting the next line with whitespace. Specify "!pattern"
919 to exclude a name from the list. The form "!/file/name" is supported
920 only in Postfix version 2.4 and later. </p>
923 This feature is available in Postfix 2.2 and later.
924 </p>
927 </DD>
929 <DT><b><a name="authorized_mailq_users">authorized_mailq_users</a>
930 (default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD>
933 List of users who are authorized to view the queue.
934 </p>
937 By default, all users are allowed to view the queue. Access is
938 always granted if the invoking user is the super-user or the
939 $<a href="postconf.5.html#mail_owner">mail_owner</a> user. Otherwise, the real UID of the process is looked
940 up in the system password file, and access is granted only if the
941 corresponding login name is on the access list. The username
942 "unknown" is used for processes whose real UID is not found in the
943 password file. </p>
946 Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
947 separated by commas and/or whitespace. The list is matched left to
948 right, and the search stops on the first match. A "/file/name"
949 pattern is replaced
950 by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
951 matches a lookup key (the lookup result is ignored). Continue long
952 lines by starting the next line with whitespace. Specify "!pattern"
953 to exclude a user name from the list. The form "!/file/name" is
954 supported only in Postfix version 2.4 and later. </p>
957 This feature is available in Postfix 2.2 and later.
958 </p>
961 </DD>
963 <DT><b><a name="authorized_submit_users">authorized_submit_users</a>
964 (default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD>
967 List of users who are authorized to submit mail with the <a href="sendmail.1.html">sendmail(1)</a>
968 command (and with the privileged <a href="postdrop.1.html">postdrop(1)</a> helper command).
969 </p>
972 By default, all users are allowed to submit mail. Otherwise, the
973 real UID of the process is looked up in the system password file,
974 and access is granted only if the corresponding login name is on
975 the access list. The username "unknown" is used for processes
976 whose real UID is not found in the password file. To deny mail
977 submission access to all users specify an empty list. </p>
980 Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
981 separated by commas and/or whitespace. The list is matched left to right,
982 and the search stops on the first match. A "/file/name" pattern is
983 replaced by its contents;
984 a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name matches a lookup key
985 (the lookup result is ignored). Continue long lines by starting the
986 next line with whitespace. Specify "!pattern" to exclude a user
987 name from the list. The form "!/file/name" is supported only in
988 Postfix version 2.4 and later. </p>
991 Example:
992 </p>
994 <pre>
995 <a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> = !www, <a href="DATABASE_README.html#types">static</a>:all
996 </pre>
999 This feature is available in Postfix 2.2 and later.
1000 </p>
1003 </DD>
1005 <DT><b><a name="authorized_verp_clients">authorized_verp_clients</a>
1006 (default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD>
1008 <p> What SMTP clients are allowed to specify the XVERP command.
1009 This command requests that mail be delivered one recipient at a
1010 time with a per recipient return address. </p>
1012 <p> By default, only trusted clients are allowed to specify XVERP.
1013 </p>
1015 <p> This parameter was introduced with Postfix version 1.1. Postfix
1016 version 2.1 renamed this parameter to <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a>
1017 and changed the default to none. </p>
1019 <p> Specify a list of network/netmask patterns, separated by commas
1020 and/or whitespace. The mask specifies the number of bits in the
1021 network part of a host address. You can also specify hostnames or
1022 .domain names (the initial dot causes the domain to match any name
1023 below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name"
1024 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
1025 is matched when a table entry matches a lookup string (the lookup
1026 result is ignored). Continue long lines by starting the next line
1027 with whitespace. Specify "!pattern" to exclude an address or network
1028 block from the list. The form "!/file/name" is supported only in
1029 Postfix version 2.4 and later. </p>
1031 <p> Note: IP version 6 address information must be specified inside
1032 <tt>[]</tt> in the <a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a> value, and in files
1033 specified with "/file/name". IP version 6 addresses contain the
1034 ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
1035 pattern. </p>
1038 </DD>
1040 <DT><b><a name="backwards_bounce_logfile_compatibility">backwards_bounce_logfile_compatibility</a>
1041 (default: yes)</b></DT><DD>
1044 Produce additional <a href="bounce.8.html">bounce(8)</a> logfile records that can be read by
1045 Postfix versions before 2.0. The current and more extensible "name =
1046 value" format is needed in order to implement more sophisticated
1047 functionality.
1048 </p>
1051 This feature is available in Postfix 2.1 and later.
1052 </p>
1055 </DD>
1057 <DT><b><a name="berkeley_db_create_buffer_size">berkeley_db_create_buffer_size</a>
1058 (default: 16777216)</b></DT><DD>
1061 The per-table I/O buffer size for programs that create Berkeley DB
1062 hash or btree tables. Specify a byte count.
1063 </p>
1066 This feature is available in Postfix 2.0 and later.
1067 </p>
1070 </DD>
1072 <DT><b><a name="berkeley_db_read_buffer_size">berkeley_db_read_buffer_size</a>
1073 (default: 131072)</b></DT><DD>
1076 The per-table I/O buffer size for programs that read Berkeley DB
1077 hash or btree tables. Specify a byte count.
1078 </p>
1081 This feature is available in Postfix 2.0 and later.
1082 </p>
1085 </DD>
1087 <DT><b><a name="best_mx_transport">best_mx_transport</a>
1088 (default: empty)</b></DT><DD>
1091 Where the Postfix SMTP client should deliver mail when it detects
1092 a "mail loops back to myself" error condition. This happens when
1093 the local MTA is the best SMTP mail exchanger for a destination
1094 not 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>,
1095 $<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,
1096 the Postfix SMTP client returns such mail as undeliverable.
1097 </p>
1100 Specify, for example, "<a href="postconf.5.html#best_mx_transport">best_mx_transport</a> = local" to pass the mail
1101 from the Postfix SMTP client to the <a href="local.8.html">local(8)</a> delivery agent. You
1102 can specify
1103 any message delivery "transport" or "transport:nexthop" that is
1104 defined in the <a href="master.5.html">master.cf</a> file. See the <a href="transport.5.html">transport(5)</a> manual page
1105 for the syntax and meaning of "transport" or "transport:nexthop".
1106 </p>
1109 However, this feature is expensive because it ties up a Postfix
1110 SMTP client process while the <a href="local.8.html">local(8)</a> delivery agent is doing its
1111 work. It is more efficient (for Postfix) to list all <a href="VIRTUAL_README.html#canonical">hosted domains</a>
1112 in a table or database.
1113 </p>
1116 </DD>
1118 <DT><b><a name="biff">biff</a>
1119 (default: yes)</b></DT><DD>
1122 Whether or not to use the local <a href="postconf.5.html#biff">biff</a> service. This service sends
1123 "new mail" notifications to users who have requested new mail
1124 notification with the UNIX command "<a href="postconf.5.html#biff">biff</a> y".
1125 </p>
1128 For compatibility reasons this feature is on by default. On systems
1129 with lots of interactive users, the <a href="postconf.5.html#biff">biff</a> service can be a performance
1130 drain. Specify "<a href="postconf.5.html#biff">biff</a> = no" in <a href="postconf.5.html">main.cf</a> to disable.
1131 </p>
1134 </DD>
1136 <DT><b><a name="body_checks">body_checks</a>
1137 (default: empty)</b></DT><DD>
1139 <p> Optional lookup tables for content inspection as specified in
1140 the <a href="header_checks.5.html">body_checks(5)</a> manual page. </p>
1142 <p> Note: with Postfix versions before 2.0, these rules inspect
1143 all content after the primary message headers. </p>
1146 </DD>
1148 <DT><b><a name="body_checks_size_limit">body_checks_size_limit</a>
1149 (default: 51200)</b></DT><DD>
1152 How much text in a message body segment (or attachment, if you
1153 prefer to use that term) is subjected to <a href="postconf.5.html#body_checks">body_checks</a> inspection.
1154 The amount of text is limited to avoid scanning huge attachments.
1155 </p>
1158 This feature is available in Postfix 2.0 and later.
1159 </p>
1162 </DD>
1164 <DT><b><a name="bounce_notice_recipient">bounce_notice_recipient</a>
1165 (default: postmaster)</b></DT><DD>
1168 The recipient of postmaster notifications with the message headers
1169 of mail that Postfix did not deliver and of SMTP conversation
1170 transcripts of mail that Postfix did not receive. This feature is
1171 enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a> parameter. </p>
1174 </DD>
1176 <DT><b><a name="bounce_queue_lifetime">bounce_queue_lifetime</a>
1177 (default: 5d)</b></DT><DD>
1180 The maximal time a bounce message is queued before it is considered
1181 undeliverable. By default, this is the same as the queue life time
1182 for regular mail.
1183 </p>
1186 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
1187 The default time unit is d (days).
1188 </p>
1191 Specify 0 when mail delivery should be tried only once.
1192 </p>
1195 This feature is available in Postfix 2.1 and later.
1196 </p>
1199 </DD>
1201 <DT><b><a name="bounce_service_name">bounce_service_name</a>
1202 (default: bounce)</b></DT><DD>
1205 The name of the <a href="bounce.8.html">bounce(8)</a> service. This service maintains a record
1206 of failed delivery attempts and generates non-delivery notifications.
1207 </p>
1210 This feature is available in Postfix 2.0 and later.
1211 </p>
1214 </DD>
1216 <DT><b><a name="bounce_size_limit">bounce_size_limit</a>
1217 (default: 50000)</b></DT><DD>
1219 <p> The maximal amount of original message text that is sent in a
1220 non-delivery notification. Specify a byte count. A message is
1221 returned as either message/rfc822 (the complete original) or as
1222 text/rfc822-headers (the headers only). With Postfix version 2.4
1223 and earlier, a message is always returned as message/rfc822 and is
1224 truncated when it exceeds the size limit.
1225 </p>
1227 <p> Notes: </p>
1229 <ul>
1231 <li> <p> If you increase this limit, then you should increase the
1232 <a href="postconf.5.html#mime_nesting_limit">mime_nesting_limit</a> value proportionally. </p>
1234 <li> <p> Be careful when making changes. Excessively large values
1235 will result in the loss of non-delivery notifications, when a bounce
1236 message size exceeds a local or remote MTA's message size limit.
1237 </p>
1239 </ul>
1242 </DD>
1244 <DT><b><a name="bounce_template_file">bounce_template_file</a>
1245 (default: empty)</b></DT><DD>
1247 <p> Pathname of a configuration file with bounce message templates.
1248 These override the built-in templates of delivery status notification
1249 (DSN) messages for undeliverable mail, for delayed mail, successful
1250 delivery, or delivery verification. The <a href="bounce.5.html">bounce(5)</a> manual page
1251 describes how to edit and test template files. </p>
1253 <p> Template message body text may contain $name references to
1254 Postfix configuration parameters. The result of $name expansion can
1255 be previewed with "<b>postconf -b <i>file_name</i></b>" before the file
1256 is placed into the Postfix configuration directory. </p>
1258 <p> This feature is available in Postfix 2.3 and later. </p>
1261 </DD>
1263 <DT><b><a name="broken_sasl_auth_clients">broken_sasl_auth_clients</a>
1264 (default: no)</b></DT><DD>
1267 Enable inter-operability with SMTP clients that implement an obsolete
1268 version of the AUTH command (<a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a>). Examples of such clients
1269 are MicroSoft Outlook Express version 4 and MicroSoft Exchange
1270 version 5.0.
1271 </p>
1274 Specify "<a href="postconf.5.html#broken_sasl_auth_clients">broken_sasl_auth_clients</a> = yes" to have Postfix advertise
1275 AUTH support in a non-standard way.
1276 </p>
1279 </DD>
1281 <DT><b><a name="canonical_classes">canonical_classes</a>
1282 (default: envelope_sender, envelope_recipient, header_sender, header_recipient)</b></DT><DD>
1284 <p> What addresses are subject to <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping.
1285 By default, <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping is applied to envelope
1286 sender and recipient addresses, and to header sender and header
1287 recipient addresses. </p>
1289 <p> Specify one or more of: envelope_sender, envelope_recipient,
1290 header_sender, header_recipient </p>
1292 <p> This feature is available in Postfix 2.2 and later. </p>
1295 </DD>
1297 <DT><b><a name="canonical_maps">canonical_maps</a>
1298 (default: empty)</b></DT><DD>
1301 Optional address mapping lookup tables for message headers and
1302 envelopes. The mapping is applied to both sender and recipient
1303 addresses, in both envelopes and in headers, as controlled
1304 with the <a href="postconf.5.html#canonical_classes">canonical_classes</a> parameter. This is typically used
1305 to clean up dirty addresses from legacy mail systems, or to replace
1306 login names by Firstname.Lastname. The table format and lookups
1307 are documented in <a href="canonical.5.html">canonical(5)</a>. For an overview of Postfix address
1308 manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document.
1309 </p>
1312 If you use this feature, run "<b>postmap /etc/postfix/canonical</b>" to
1313 build the necessary DBM or DB file after every change. The changes
1314 will become visible after a minute or so. Use "<b>postfix reload</b>"
1315 to eliminate the delay.
1316 </p>
1318 <p> Note: with Postfix version 2.2, message header address mapping
1319 happens only when message header address rewriting is enabled: </p>
1321 <ul>
1323 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
1325 <li> The message is received from a network client that matches
1326 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
1328 <li> The message is received from the network, and the
1329 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
1331 </ul>
1333 <p> To get the behavior before Postfix version 2.2, specify
1334 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
1337 Examples:
1338 </p>
1340 <pre>
1341 <a href="postconf.5.html#canonical_maps">canonical_maps</a> = dbm:/etc/postfix/canonical
1342 <a href="postconf.5.html#canonical_maps">canonical_maps</a> = hash:/etc/postfix/canonical
1343 </pre>
1346 </DD>
1348 <DT><b><a name="cleanup_service_name">cleanup_service_name</a>
1349 (default: cleanup)</b></DT><DD>
1352 The name of the <a href="cleanup.8.html">cleanup(8)</a> service. This service rewrites addresses
1353 into the standard form, and performs <a href="canonical.5.html">canonical(5)</a> address mapping
1354 and <a href="virtual.5.html">virtual(5)</a> aliasing.
1355 </p>
1358 This feature is available in Postfix 2.0 and later.
1359 </p>
1362 </DD>
1364 <DT><b><a name="command_directory">command_directory</a>
1365 (default: see "postconf -d" output)</b></DT><DD>
1368 The location of all postfix administrative commands.
1369 </p>
1372 </DD>
1374 <DT><b><a name="command_execution_directory">command_execution_directory</a>
1375 (default: empty)</b></DT><DD>
1377 <p> The <a href="local.8.html">local(8)</a> delivery agent working directory for delivery to
1378 external command. Failure to change directory causes the delivery
1379 to be deferred. </p>
1381 <p> The following $name expansions are done on <a href="postconf.5.html#command_execution_directory">command_execution_directory</a>
1382 before the directory is changed. Expansion happens in the context
1383 of the delivery request. The result of $name expansion is filtered
1384 with the character set that is specified with the
1385 <a href="postconf.5.html#execution_directory_expansion_filter">execution_directory_expansion_filter</a> parameter. </p>
1387 <dl>
1389 <dt><b>$user</b></dt>
1391 <dd>The recipient's username. </dd>
1393 <dt><b>$shell</b></dt>
1395 <dd>The recipient's login shell pathname. </dd>
1397 <dt><b>$home</b></dt>
1399 <dd>The recipient's home directory. </dd>
1401 <dt><b>$recipient</b></dt>
1403 <dd>The full recipient address. </dd>
1405 <dt><b>$extension</b></dt>
1407 <dd>The optional recipient address extension. </dd>
1409 <dt><b>$domain</b></dt>
1411 <dd>The recipient domain. </dd>
1413 <dt><b>$local</b></dt>
1415 <dd>The entire recipient localpart. </dd>
1417 <dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
1419 <dd>The system-wide recipient address extension delimiter. </dd>
1421 <dt><b>${name?value}</b></dt>
1423 <dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd>
1425 <dt><b>${name:value}</b></dt>
1427 <dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd>
1429 </dl>
1432 Instead of $name you can also specify ${name} or $(name).
1433 </p>
1435 <p> This feature is available in Postfix 2.2 and later. </p>
1438 </DD>
1440 <DT><b><a name="command_expansion_filter">command_expansion_filter</a>
1441 (default: see "postconf -d" output)</b></DT><DD>
1444 Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in
1445 $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>.
1446 Characters outside the
1447 allowed set are replaced by underscores.
1448 </p>
1451 </DD>
1453 <DT><b><a name="command_time_limit">command_time_limit</a>
1454 (default: 1000s)</b></DT><DD>
1457 Time limit for delivery to external commands. This limit is used
1458 by the <a href="local.8.html">local(8)</a> delivery agent, and is the default time limit for
1459 delivery by the <a href="pipe.8.html">pipe(8)</a> delivery agent.
1460 </p>
1463 Note: if you set this time limit to a large value you must update the
1464 global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter as well.
1465 </p>
1468 </DD>
1470 <DT><b><a name="config_directory">config_directory</a>
1471 (default: see "postconf -d" output)</b></DT><DD>
1473 <p> The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a>
1474 configuration files. This can be overruled via the following
1475 mechanisms: </p>
1477 <ul>
1479 <li> <p> The MAIL_CONFIG environment variable (daemon processes
1480 and commands). </p>
1482 <li> <p> The "-c" command-line option (commands only). </p>
1484 </ul>
1486 <p> With Postfix command that run with set-gid privileges, a
1487 <a href="postconf.5.html#config_directory">config_directory</a> override requires either root privileges, or it
1488 requires that the directory is listed with the <a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a>
1489 parameter in the default <a href="postconf.5.html">main.cf</a> file. </p>
1492 </DD>
1494 <DT><b><a name="connection_cache_protocol_timeout">connection_cache_protocol_timeout</a>
1495 (default: 5s)</b></DT><DD>
1497 <p> Time limit for connection cache connect, send or receive
1498 operations. The time limit is enforced in the client. </p>
1500 <p> This feature is available in Postfix 2.3 and later. </p>
1503 </DD>
1505 <DT><b><a name="connection_cache_service_name">connection_cache_service_name</a>
1506 (default: scache)</b></DT><DD>
1508 <p> The name of the <a href="scache.8.html">scache(8)</a> connection cache service. This service
1509 maintains a limited pool of cached sessions. </p>
1511 <p> This feature is available in Postfix 2.2 and later. </p>
1514 </DD>
1516 <DT><b><a name="connection_cache_status_update_time">connection_cache_status_update_time</a>
1517 (default: 600s)</b></DT><DD>
1519 <p> How frequently the <a href="scache.8.html">scache(8)</a> server logs usage statistics with
1520 connection cache hit and miss rates for logical destinations and for
1521 physical endpoints. </p>
1524 </DD>
1526 <DT><b><a name="connection_cache_ttl_limit">connection_cache_ttl_limit</a>
1527 (default: 2s)</b></DT><DD>
1529 <p> The maximal time-to-live value that the <a href="scache.8.html">scache(8)</a> connection
1530 cache server
1531 allows. Requests that specify a larger TTL will be stored with the
1532 maximum allowed TTL. The purpose of this additional control is to
1533 protect the infrastructure against careless people. The cache TTL
1534 is already bounded by $<a href="postconf.5.html#max_idle">max_idle</a>. </p>
1537 </DD>
1539 <DT><b><a name="content_filter">content_filter</a>
1540 (default: empty)</b></DT><DD>
1542 <p> After the message is queued, send the entire message to the
1543 specified <i>transport:destination</i>. The <i>transport</i> name
1544 specifies the first field of a mail delivery agent definition in
1545 <a href="master.5.html">master.cf</a>; the syntax of the next-hop <i>destination</i> is described
1546 in the manual page of the corresponding delivery agent. More
1547 information about external content filters is in the Postfix
1548 <a href="FILTER_README.html">FILTER_README</a> file. </p>
1550 <p> Notes: </p>
1552 <ul>
1554 <li> <p> This setting has lower precedence than a FILTER action
1555 that is specified in an <a href="access.5.html">access(5)</a>, <a href="header_checks.5.html">header_checks(5)</a> or <a href="header_checks.5.html">body_checks(5)</a>
1556 table. </p>
1558 <li> <p> The meaning of an empty next-hop filter <i>destination</i>
1559 is version dependent. Postfix 2.7 and later will use the recipient
1560 domain; earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>. Specify
1561 "<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility with Postfix
1562 2.6 or earlier, or specify a <a href="postconf.5.html#content_filter">content_filter</a> value with an explicit
1563 next-hop <i>destination</i>. </p>
1565 </ul>
1568 </DD>
1570 <DT><b><a name="cyrus_sasl_config_path">cyrus_sasl_config_path</a>
1571 (default: empty)</b></DT><DD>
1573 <p> Search path for Cyrus SASL application configuration files,
1574 currently used only to locate the $<a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>.conf file.
1575 Specify zero or more directories separated by a colon character,
1576 or an empty value to use Cyrus SASL's built-in search path. </p>
1578 <p> This feature is available in Postfix 2.5 and later when compiled
1579 with Cyrus SASL 2.1.22 or later. </p>
1582 </DD>
1584 <DT><b><a name="daemon_directory">daemon_directory</a>
1585 (default: see "postconf -d" output)</b></DT><DD>
1588 The directory with Postfix support programs and daemon programs.
1589 These should not be invoked directly by humans. The directory must
1590 be owned by root.
1591 </p>
1594 </DD>
1596 <DT><b><a name="daemon_timeout">daemon_timeout</a>
1597 (default: 18000s)</b></DT><DD>
1599 <p> How much time a Postfix daemon process may take to handle a
1600 request before it is terminated by a built-in watchdog timer. </p>
1603 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
1604 The default time unit is s (seconds).
1605 </p>
1608 </DD>
1610 <DT><b><a name="data_directory">data_directory</a>
1611 (default: see "postconf -d" output)</b></DT><DD>
1613 <p> The directory with Postfix-writable data files (for example:
1614 caches, pseudo-random numbers). This directory must be owned by
1615 the <a href="postconf.5.html#mail_owner">mail_owner</a> account, and must not be shared with non-Postfix
1616 software. </p>
1618 <p> This feature is available in Postfix 2.5 and later. </p>
1621 </DD>
1623 <DT><b><a name="debug_peer_level">debug_peer_level</a>
1624 (default: 2)</b></DT><DD>
1626 <p> The increment in verbose logging level when a remote client or
1627 server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter. </p>
1630 </DD>
1632 <DT><b><a name="debug_peer_list">debug_peer_list</a>
1633 (default: empty)</b></DT><DD>
1635 <p> Optional list of remote client or server hostname or network
1636 address patterns that cause the verbose logging level to increase
1637 by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>. </p>
1639 <p> Specify domain names, network/netmask patterns, "/file/name"
1640 patterns or "<a href="DATABASE_README.html">type:table</a>" lookup tables. The right-hand side result
1641 from "<a href="DATABASE_README.html">type:table</a>" lookups is ignored. </p>
1643 <p> Pattern matching of domain names is controlled by the
1644 <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter. </p>
1647 Examples:
1648 </p>
1650 <pre>
1651 <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = 127.0.0.1
1652 <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = example.com
1653 </pre>
1656 </DD>
1658 <DT><b><a name="debugger_command">debugger_command</a>
1659 (default: empty)</b></DT><DD>
1662 The external command to execute when a Postfix daemon program is
1663 invoked with the -D option.
1664 </p>
1667 Use "command .. &amp; sleep 5" so that the debugger can attach before
1668 the process marches on. If you use an X-based debugger, be sure to
1669 set up your XAUTHORITY environment variable before starting Postfix.
1670 </p>
1673 Example:
1674 </p>
1676 <pre>
1677 <a href="postconf.5.html#debugger_command">debugger_command</a> =
1678 PATH=/usr/bin:/usr/X11R6/bin
1679 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
1680 </pre>
1683 </DD>
1685 <DT><b><a name="default_database_type">default_database_type</a>
1686 (default: see "postconf -d" output)</b></DT><DD>
1689 The default database type for use in <a href="newaliases.1.html">newaliases(1)</a>, <a href="postalias.1.html">postalias(1)</a>
1690 and <a href="postmap.1.html">postmap(1)</a> commands. On many UNIX systems the default type is
1691 either <b>dbm</b> or <b>hash</b>. The default setting is frozen
1692 when the Postfix system is built.
1693 </p>
1696 Examples:
1697 </p>
1699 <pre>
1700 <a href="postconf.5.html#default_database_type">default_database_type</a> = hash
1701 <a href="postconf.5.html#default_database_type">default_database_type</a> = dbm
1702 </pre>
1705 </DD>
1707 <DT><b><a name="default_delivery_slot_cost">default_delivery_slot_cost</a>
1708 (default: 5)</b></DT><DD>
1711 How often the Postfix queue manager's scheduler is allowed to
1712 preempt delivery of one message with another.
1713 </p>
1716 Each transport maintains a so-called "available delivery slot counter"
1717 for each message. One message can be preempted by another one when
1718 the other message can be delivered using no more delivery slots
1719 (i.e., invocations of delivery agents) than the current message
1720 counter has accumulated (or will eventually accumulate - see about
1721 slot loans below). This parameter controls how often is the counter
1722 incremented - it happens after each <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>
1723 recipients have been delivered.
1724 </p>
1727 The cost of 0 is used to disable the preempting scheduling completely.
1728 The minimum value the scheduling algorithm can use is 2 - use it
1729 if you want to maximize the message throughput rate. Although there
1730 is no maximum, it doesn't make much sense to use values above say
1732 </p>
1735 The only reason why the value of 2 is not the default is the way
1736 this parameter affects the delivery of mailing-list mail. In the
1737 worst case, their delivery can take somewhere between (cost+1/cost)
1738 and (cost/cost-1) times more than if the preemptive scheduler was
1739 disabled. The default value of 5 turns out to provide reasonable
1740 message response times while making sure the mailing-list deliveries
1741 are not extended by more than 20-25 percent even in the worst case.
1742 </p>
1744 <p> Use <a href="postconf.5.html#transport_delivery_slot_cost"><i>transport</i>_delivery_slot_cost</a> to specify a
1745 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1746 name of the message delivery transport.
1747 </p>
1750 Examples:
1751 </p>
1753 <pre>
1754 <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 0
1755 <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 2
1756 </pre>
1759 </DD>
1761 <DT><b><a name="default_delivery_slot_discount">default_delivery_slot_discount</a>
1762 (default: 50)</b></DT><DD>
1765 The default value for transport-specific _delivery_slot_discount
1766 settings.
1767 </p>
1770 This parameter speeds up the moment when a message preemption can
1771 happen. Instead of waiting until the full amount of delivery slots
1772 required is available, the preemption can happen when
1773 transport_delivery_slot_discount percent of the required amount
1774 plus transport_delivery_slot_loan still remains to be accumulated.
1775 Note that the full amount will still have to be accumulated before
1776 another preemption can take place later.
1777 </p>
1779 <p> Use <a href="postconf.5.html#transport_delivery_slot_discount"><i>transport</i>_delivery_slot_discount</a> to specify a
1780 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1781 name of the message delivery transport.
1782 </p>
1785 </DD>
1787 <DT><b><a name="default_delivery_slot_loan">default_delivery_slot_loan</a>
1788 (default: 3)</b></DT><DD>
1791 The default value for transport-specific _delivery_slot_loan
1792 settings.
1793 </p>
1796 This parameter speeds up the moment when a message preemption can
1797 happen. Instead of waiting until the full amount of delivery slots
1798 required is available, the preemption can happen when
1799 transport_delivery_slot_discount percent of the required amount
1800 plus transport_delivery_slot_loan still remains to be accumulated.
1801 Note that the full amount will still have to be accumulated before
1802 another preemption can take place later.
1803 </p>
1805 <p> Use <a href="postconf.5.html#transport_delivery_slot_loan"><i>transport</i>_delivery_slot_loan</a> to specify a
1806 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1807 name of the message delivery transport.
1808 </p>
1811 </DD>
1813 <DT><b><a name="default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>
1814 (default: 1)</b></DT><DD>
1816 <p> How many pseudo-cohorts must suffer connection or handshake
1817 failure before a specific destination is considered unavailable
1818 (and further delivery is suspended). Specify zero to disable this
1819 feature. A destination's pseudo-cohort failure count is reset each
1820 time a delivery completes without connection or handshake failure
1821 for that specific destination. </p>
1823 <p> A pseudo-cohort is the number of deliveries equal to a destination's
1824 delivery concurrency. </p>
1826 <p> Use <a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> to specify
1827 a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1828 name of the message delivery transport. </p>
1830 <p> This feature is available in Postfix 2.5. The default setting
1831 is compatible with earlier Postfix versions. </p>
1834 </DD>
1836 <DT><b><a name="default_destination_concurrency_limit">default_destination_concurrency_limit</a>
1837 (default: 20)</b></DT><DD>
1840 The default maximal number of parallel deliveries to the same
1841 destination. This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>,
1842 <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.
1843 With per-destination recipient limit &gt; 1, a destination is a domain,
1844 otherwise it is a recipient.
1845 </p>
1847 <p> Use <a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> to specify a
1848 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1849 name of the message delivery transport.
1850 </p>
1853 </DD>
1855 <DT><b><a name="default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a>
1856 (default: 1)</b></DT><DD>
1858 <p> The per-destination amount of delivery concurrency negative
1859 feedback, after a delivery completes with a connection or handshake
1860 failure. Feedback values are in the range 0..1 inclusive. With
1861 negative feedback, concurrency is decremented at the beginning of
1862 a sequence of length 1/feedback. This is unlike positive feedback,
1863 where concurrency is incremented at the end of a sequence of length
1864 1/feedback. </p>
1866 <p> As of Postfix version 2.5, negative feedback cannot reduce
1867 delivery concurrency to zero. Instead, a destination is marked
1868 dead (further delivery suspended) after the failed pseudo-cohort
1869 count reaches $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>
1870 (or $<a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a>).
1871 To make the scheduler completely immune to connection or handshake
1872 failures, specify a zero feedback value and a zero failed pseudo-cohort
1873 limit. </p>
1875 <p> Specify one of the following forms: </p>
1877 <dl>
1879 <dt> <b><i>number</i> </b> </dt>
1881 <dt> <b><i>number</i> / <i>number</i> </b> </dt>
1883 <dd> Constant feedback. The value must be in the range 0..1 inclusive.
1884 The default setting of "1" is compatible with Postfix versions
1885 before 2.5, where a destination's delivery concurrency is throttled
1886 down to zero (and further delivery suspended) after a single failed
1887 pseudo-cohort. </dd>
1889 <dt> <b><i>number</i> / concurrency </b> </dt>
1891 <dd> Variable feedback of "<i>number</i> / (delivery concurrency)".
1892 The <i>number</i> must be in the range 0..1 inclusive. With
1893 <i>number</i> equal to "1", a destination's delivery concurrency
1894 is decremented by 1 after each failed pseudo-cohort. </dd>
1896 </dl>
1898 <p> A pseudo-cohort is the number of deliveries equal to a destination's
1899 delivery concurrency. </p>
1901 <p> Use <a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a>
1902 to specify a transport-specific override, where <i>transport</i>
1903 is the <a href="master.5.html">master.cf</a>
1904 name of the message delivery transport. </p>
1906 <p> This feature is available in Postfix 2.5. The default setting
1907 is compatible with earlier Postfix versions. </p>
1910 </DD>
1912 <DT><b><a name="default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a>
1913 (default: 1)</b></DT><DD>
1915 <p> The per-destination amount of delivery concurrency positive
1916 feedback, after a delivery completes without connection or handshake
1917 failure. Feedback values are in the range 0..1 inclusive. The
1918 concurrency increases until it reaches the per-destination maximal
1919 concurrency limit. With positive feedback, concurrency is incremented
1920 at the end of a sequence with length 1/feedback. This is unlike
1921 negative feedback, where concurrency is decremented at the start
1922 of a sequence of length 1/feedback. </p>
1924 <p> Specify one of the following forms: </p>
1926 <dl>
1928 <dt> <b><i>number</i> </b> </dt>
1930 <dt> <b><i>number</i> / <i>number</i> </b> </dt>
1932 <dd> Constant feedback. The value must be in the range 0..1
1933 inclusive. The default setting of "1" is compatible with Postfix
1934 versions before 2.5, where a destination's delivery concurrency
1935 doubles after each successful pseudo-cohort. </dd>
1937 <dt> <b><i>number</i> / concurrency </b> </dt>
1939 <dd> Variable feedback of "<i>number</i> / (delivery concurrency)".
1940 The <i>number</i> must be in the range 0..1 inclusive. With
1941 <i>number</i> equal to "1", a destination's delivery concurrency
1942 is incremented by 1 after each successful pseudo-cohort. </dd>
1944 </dl>
1946 <p> A pseudo-cohort is the number of deliveries equal to a destination's
1947 delivery concurrency. </p>
1949 <p> Use <a href="postconf.5.html#transport_destination_concurrency_positive_feedback"><i>transport</i>_destination_concurrency_positive_feedback</a>
1950 to specify a transport-specific override, where <i>transport</i>
1951 is the <a href="master.5.html">master.cf</a> name of the message delivery transport. </p>
1953 <p> This feature is available in Postfix 2.5 and later. </p>
1956 </DD>
1958 <DT><b><a name="default_destination_rate_delay">default_destination_rate_delay</a>
1959 (default: 0s)</b></DT><DD>
1961 <p> The default amount of delay that is inserted between individual
1962 deliveries to the same destination; with per-destination recipient
1963 limit &gt; 1, a destination is a domain, otherwise it is a recipient.
1964 </p>
1966 <p> To enable the delay, specify a non-zero time value (an integral
1967 value plus an optional one-letter suffix that specifies the time
1968 unit). </p>
1970 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
1971 (weeks). The default time unit is s (seconds). </p>
1973 <p> NOTE: the delay is enforced by the queue manager. The delay
1974 timer state does not survive "<b>postfix reload</b>" or "<b>postfix
1975 stop</b>".
1976 </p>
1978 <p> Use <a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a> to specify a
1979 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
1980 name of the message delivery transport.
1981 </p>
1983 <p> NOTE: with a non-zero _destination_rate_delay, specify a
1984 <a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> of 10
1985 or more to prevent Postfix from deferring all mail for the same
1986 destination after only one connection or handshake error. </p>
1988 <p> This feature is available in Postfix 2.5 and later. </p>
1991 </DD>
1993 <DT><b><a name="default_destination_recipient_limit">default_destination_recipient_limit</a>
1994 (default: 50)</b></DT><DD>
1997 The default maximal number of recipients per message delivery.
1998 This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>, <a href="pipe.8.html">pipe(8)</a>,
1999 <a href="smtp.8.html">smtp(8)</a> and <a href="virtual.8.html">virtual(8)</a> delivery agents.
2000 </p>
2002 <p> Setting this parameter to a value of 1 changes the meaning of
2003 the corresponding per-destination concurrency limit from concurrency
2004 per domain into concurrency per recipient. </p>
2006 <p> Use <a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a> to specify a
2007 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2008 name of the message delivery transport.
2009 </p>
2012 </DD>
2014 <DT><b><a name="default_extra_recipient_limit">default_extra_recipient_limit</a>
2015 (default: 1000)</b></DT><DD>
2018 The default value for the extra per-transport limit imposed on the
2019 number of in-memory recipients. This extra recipient space is
2020 reserved for the cases when the Postfix queue manager's scheduler
2021 preempts one message with another and suddenly needs some extra
2022 recipients slots for the chosen message in order to avoid performance
2023 degradation.
2024 </p>
2026 <p> Use <a href="postconf.5.html#transport_extra_recipient_limit"><i>transport</i>_extra_recipient_limit</a> to specify a
2027 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2028 name of the message delivery transport.
2029 </p>
2032 </DD>
2034 <DT><b><a name="default_filter_nexthop">default_filter_nexthop</a>
2035 (default: empty)</b></DT><DD>
2037 <p> When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request specifies no explicit
2038 next-hop destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead; when
2039 that value is empty, use the domain in the recipient address.
2040 Specify "<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility
2041 with Postfix version 2.6 and earlier, or specify an explicit next-hop
2042 destination with each <a href="postconf.5.html#content_filter">content_filter</a> value or FILTER action. </p>
2044 <p> This feature is available in Postfix 2.7 and later. </p>
2047 </DD>
2049 <DT><b><a name="default_minimum_delivery_slots">default_minimum_delivery_slots</a>
2050 (default: 3)</b></DT><DD>
2053 How many recipients a message must have in order to invoke the
2054 Postfix queue manager's scheduling algorithm at all. Messages
2055 which would never accumulate at least this many delivery slots
2056 (subject to slot cost parameter as well) are never preempted.
2057 </p>
2059 <p> Use <a href="postconf.5.html#transport_minimum_delivery_slots"><i>transport</i>_minimum_delivery_slots</a> to specify a
2060 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2061 name of the message delivery transport.
2062 </p>
2065 </DD>
2067 <DT><b><a name="default_privs">default_privs</a>
2068 (default: nobody)</b></DT><DD>
2071 The default rights used by the <a href="local.8.html">local(8)</a> delivery agent for delivery
2072 to external file or command. These rights are used when delivery
2073 is requested from an <a href="aliases.5.html">aliases(5)</a> file that is owned by <b>root</b>, or
2074 when delivery is done on behalf of <b>root</b>. <b>DO NOT SPECIFY A
2075 PRIVILEGED USER OR THE POSTFIX OWNER</b>.
2076 </p>
2079 </DD>
2081 <DT><b><a name="default_process_limit">default_process_limit</a>
2082 (default: 100)</b></DT><DD>
2085 The default maximal number of Postfix child processes that provide
2086 a given service. This limit can be overruled for specific services
2087 in the <a href="master.5.html">master.cf</a> file.
2088 </p>
2091 </DD>
2093 <DT><b><a name="default_rbl_reply">default_rbl_reply</a>
2094 (default: see "postconf -d" output)</b></DT><DD>
2097 The default SMTP server response template for a request that is
2098 rejected by an RBL-based restriction. This template can be overruled
2099 by specific entries in the optional <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> lookup table.
2100 </p>
2103 This feature is available in Postfix 2.0 and later.
2104 </p>
2107 The template is subject to exactly one level of $name substitution:
2108 </p>
2110 <dl>
2112 <dt><b>$client</b></dt>
2114 <dd>The client hostname and IP address, formatted as name[address]. </dd>
2116 <dt><b>$client_address</b></dt>
2118 <dd>The client IP address. </dd>
2120 <dt><b>$client_name</b></dt>
2122 <dd>The client hostname or "unknown". See <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a>
2123 for more details. </dd>
2125 <dt><b>$reverse_client_name</b></dt>
2127 <dd>The client hostname from address-&gt;name lookup, or "unknown".
2128 See <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a> for more details. </dd>
2130 <dt><b>$helo_name</b></dt>
2132 <dd>The hostname given in HELO or EHLO command or empty string. </dd>
2134 <dt><b>$rbl_class</b></dt>
2136 <dd>The blacklisted entity type: Client host, Helo command, Sender
2137 address, or Recipient address. </dd>
2139 <dt><b>$rbl_code</b></dt>
2141 <dd>The numerical SMTP response code, as specified with the
2142 <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> configuration parameter. Note: The numerical
2143 SMTP response code is required, and must appear at the start of the
2144 reply. With Postfix version 2.3 and later this information may be followed
2145 by an <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> enhanced status code. </dd>
2147 <dt><b>$rbl_domain</b></dt>
2149 <dd>The RBL domain where $rbl_what is blacklisted. </dd>
2151 <dt><b>$rbl_reason</b></dt>
2153 <dd>The reason why $rbl_what is blacklisted, or an empty string. </dd>
2155 <dt><b>$rbl_what</b></dt>
2157 <dd>The entity that is blacklisted (an IP address, a hostname, a domain
2158 name, or an email address whose domain was blacklisted). </dd>
2160 <dt><b>$recipient</b></dt>
2162 <dd>The recipient address or &lt;&gt; in case of the null address. </dd>
2164 <dt><b>$recipient_domain</b></dt>
2166 <dd>The recipient domain or empty string. </dd>
2168 <dt><b>$recipient_name</b></dt>
2170 <dd>The recipient address localpart or &lt;&gt; in case of null address. </dd>
2172 <dt><b>$sender</b></dt>
2174 <dd>The sender address or &lt;&gt; in case of the null address. </dd>
2176 <dt><b>$sender_domain</b></dt>
2178 <dd>The sender domain or empty string. </dd>
2180 <dt><b>$sender_name</b></dt>
2182 <dd>The sender address localpart or &lt;&gt; in case of the null address. </dd>
2184 <dt><b>${name?text}</b></dt>
2186 <dd>Expands to `text' if $name is not empty. </dd>
2188 <dt><b>${name:text}</b></dt>
2190 <dd>Expands to `text' if $name is empty. </dd>
2192 </dl>
2195 Instead of $name you can also specify ${name} or $(name).
2196 </p>
2198 <p> Note: when an enhanced status code is specified in an RBL reply
2199 template, it is subject to modification. The following transformations
2200 are needed when the same RBL reply template is used for client,
2201 helo, sender, or recipient access restrictions. </p>
2203 <ul>
2205 <li> <p> When rejecting a sender address, the Postfix SMTP server
2206 will transform a recipient DSN status (e.g., 4.1.1-4.1.6) into the
2207 corresponding sender DSN status, and vice versa. </p>
2209 <li> <p> When rejecting non-address information (such as the HELO
2210 command argument or the client hostname/address), the Postfix SMTP
2211 server will transform a sender or recipient DSN status into a generic
2212 non-address DSN status (e.g., 4.0.0). </p>
2214 </ul>
2217 </DD>
2219 <DT><b><a name="default_recipient_limit">default_recipient_limit</a>
2220 (default: 20000)</b></DT><DD>
2223 The default per-transport upper limit on the number of in-memory
2224 recipients. These limits take priority over the global
2225 <a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> after the message has been assigned
2226 to the respective transports. See also <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>
2227 and <a href="postconf.5.html#qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a>.
2228 </p>
2230 <p> Use <a href="postconf.5.html#transport_recipient_limit"><i>transport</i>_recipient_limit</a> to specify a
2231 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2232 name of the message delivery transport.
2233 </p>
2236 </DD>
2238 <DT><b><a name="default_recipient_refill_delay">default_recipient_refill_delay</a>
2239 (default: 5s)</b></DT><DD>
2242 The default per-transport maximum delay between recipients refills.
2243 When not all message recipients fit into the memory at once, keep loading
2244 more of them at least once every this many seconds. This is used to
2245 make sure the recipients are refilled in timely manner even when
2246 $<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> is too high for too slow deliveries.
2247 </p>
2249 <p> Use <a href="postconf.5.html#transport_recipient_refill_delay"><i>transport</i>_recipient_refill_delay</a> to specify a
2250 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2251 name of the message delivery transport.
2252 </p>
2254 <p> This feature is available in Postfix 2.4 and later. </p>
2257 </DD>
2259 <DT><b><a name="default_recipient_refill_limit">default_recipient_refill_limit</a>
2260 (default: 100)</b></DT><DD>
2263 The default per-transport limit on the number of recipients refilled at
2264 once. When not all message recipients fit into the memory at once, keep
2265 loading more of them in batches of at least this many at a time. See also
2266 $<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>, which may result in recipient batches
2267 lower than this when this limit is too high for too slow deliveries.
2268 </p>
2270 <p> Use <a href="postconf.5.html#transport_recipient_refill_limit"><i>transport</i>_recipient_refill_limit</a> to specify a
2271 transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
2272 name of the message delivery transport.
2273 </p>
2275 <p> This feature is available in Postfix 2.4 and later. </p>
2278 </DD>
2280 <DT><b><a name="default_transport">default_transport</a>
2281 (default: smtp)</b></DT><DD>
2284 The default mail delivery transport and next-hop destination for
2285 destinations that do not match $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>,
2286 $<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>,
2287 or $<a href="postconf.5.html#relay_domains">relay_domains</a>. This information can be overruled with the
2288 <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> parameter and with the
2289 <a href="transport.5.html">transport(5)</a> table. </p>
2292 In order of decreasing precedence, the nexthop destination is taken
2293 from $<a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>, $<a href="postconf.5.html#default_transport">default_transport</a>,
2294 $<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
2295 domain.
2296 </p>
2299 Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
2300 is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
2301 The <i>:nexthop</i> destination is optional; its syntax is documented
2302 in the manual page of the corresponding delivery agent.
2303 </p>
2306 Example:
2307 </p>
2309 <pre>
2310 <a href="postconf.5.html#default_transport">default_transport</a> = uucp:relayhostname
2311 </pre>
2314 </DD>
2316 <DT><b><a name="default_verp_delimiters">default_verp_delimiters</a>
2317 (default: +=)</b></DT><DD>
2319 <p> The two default VERP delimiter characters. These are used when
2320 no explicit delimiters are specified with the SMTP XVERP command
2321 or with the "<b>sendmail -V</b>" command-line option. Specify
2322 characters that are allowed by the <a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> setting.
2323 </p>
2326 This feature is available in Postfix 1.1 and later.
2327 </p>
2330 </DD>
2332 <DT><b><a name="defer_code">defer_code</a>
2333 (default: 450)</b></DT><DD>
2336 The numerical Postfix SMTP server response code when a remote SMTP
2337 client request is rejected by the "defer" restriction.
2338 </p>
2341 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
2342 </p>
2345 </DD>
2347 <DT><b><a name="defer_service_name">defer_service_name</a>
2348 (default: defer)</b></DT><DD>
2351 The name of the defer service. This service is implemented by the
2352 <a href="bounce.8.html">bounce(8)</a> daemon and maintains a record
2353 of failed delivery attempts and generates non-delivery notifications.
2354 </p>
2357 This feature is available in Postfix 2.0 and later.
2358 </p>
2361 </DD>
2363 <DT><b><a name="defer_transports">defer_transports</a>
2364 (default: empty)</b></DT><DD>
2367 The names of message delivery transports that should not deliver mail
2368 unless someone issues "<b>sendmail -q</b>" or equivalent. Specify zero
2369 or more names of mail delivery transports names that appear in the
2370 first field of <a href="master.5.html">master.cf</a>.
2371 </p>
2374 Example:
2375 </p>
2377 <pre>
2378 <a href="postconf.5.html#defer_transports">defer_transports</a> = smtp
2379 </pre>
2382 </DD>
2384 <DT><b><a name="delay_logging_resolution_limit">delay_logging_resolution_limit</a>
2385 (default: 2)</b></DT><DD>
2387 <p> The maximal number of digits after the decimal point when logging
2388 sub-second delay values. Specify a number in the range 0..6. </p>
2390 <p> Large delay values are rounded off to an integral number seconds;
2391 delay values below the <a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> are logged
2392 as "0", and small delay values are logged with at most two-digit
2393 precision. </p>
2395 <p> The format of the "delays=a/b/c/d" logging is as follows: </p>
2397 <ul>
2399 <li> a = time from message arrival to last <a href="QSHAPE_README.html#active_queue">active queue</a> entry
2401 <li> b = time from last <a href="QSHAPE_README.html#active_queue">active queue</a> entry to connection setup
2403 <li> c = time in connection setup, including DNS, EHLO and STARTTLS
2405 <li> d = time in message transmission
2407 </ul>
2409 <p> This feature is available in Postfix 2.3 and later. </p>
2412 </DD>
2414 <DT><b><a name="delay_notice_recipient">delay_notice_recipient</a>
2415 (default: postmaster)</b></DT><DD>
2418 The recipient of postmaster notifications with the message headers
2419 of mail that cannot be delivered within $<a href="postconf.5.html#delay_warning_time">delay_warning_time</a> time
2420 units. </p>
2423 This feature is enabled with the <a href="postconf.5.html#delay_warning_time">delay_warning_time</a> parameter.
2424 </p>
2427 </DD>
2429 <DT><b><a name="delay_warning_time">delay_warning_time</a>
2430 (default: 0h)</b></DT><DD>
2433 The time after which the sender receives the message headers of
2434 mail that is still queued.
2435 </p>
2438 To enable this feature, specify a non-zero time value (an integral
2439 value plus an optional one-letter suffix that specifies the time
2440 unit).
2441 </p>
2444 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
2445 The default time unit is h (hours).
2446 </p>
2449 </DD>
2451 <DT><b><a name="deliver_lock_attempts">deliver_lock_attempts</a>
2452 (default: 20)</b></DT><DD>
2455 The maximal number of attempts to acquire an exclusive lock on a
2456 mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile.
2457 </p>
2460 </DD>
2462 <DT><b><a name="deliver_lock_delay">deliver_lock_delay</a>
2463 (default: 1s)</b></DT><DD>
2466 The time between attempts to acquire an exclusive lock on a mailbox
2467 file or <a href="bounce.8.html">bounce(8)</a> logfile.
2468 </p>
2471 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
2472 The default time unit is s (seconds).
2473 </p>
2476 </DD>
2478 <DT><b><a name="destination_concurrency_feedback_debug">destination_concurrency_feedback_debug</a>
2479 (default: no)</b></DT><DD>
2481 <p> Make the queue manager's feedback algorithm verbose for performance
2482 analysis purposes. </p>
2484 <p> This feature is available in Postfix 2.5 and later. </p>
2487 </DD>
2489 <DT><b><a name="detect_8bit_encoding_header">detect_8bit_encoding_header</a>
2490 (default: yes)</b></DT><DD>
2492 <p> Automatically detect 8BITMIME body content by looking at
2493 Content-Transfer-Encoding: message headers; historically, this
2494 behavior was hard-coded to be "always on". </p>
2496 <p> This feature is available in Postfix 2.5 and later. </p>
2499 </DD>
2501 <DT><b><a name="disable_dns_lookups">disable_dns_lookups</a>
2502 (default: no)</b></DT><DD>
2505 Disable DNS lookups in the Postfix SMTP and LMTP clients. When
2506 disabled, hosts are looked up with the getaddrinfo() system
2507 library routine which normally also looks in /etc/hosts.
2508 </p>
2511 DNS lookups are enabled by default.
2512 </p>
2515 </DD>
2517 <DT><b><a name="disable_mime_input_processing">disable_mime_input_processing</a>
2518 (default: no)</b></DT><DD>
2521 Turn off MIME processing while receiving mail. This means that no
2522 special treatment is given to Content-Type: message headers, and
2523 that all text after the initial message headers is considered to
2524 be part of the message body.
2525 </p>
2528 This feature is available in Postfix 2.0 and later.
2529 </p>
2532 Mime input processing is enabled by default, and is needed in order
2533 to recognize MIME headers in message content.
2534 </p>
2537 </DD>
2539 <DT><b><a name="disable_mime_output_conversion">disable_mime_output_conversion</a>
2540 (default: no)</b></DT><DD>
2543 Disable the conversion of 8BITMIME format to 7BIT format. Mime
2544 output conversion is needed when the destination does not advertise
2545 8BITMIME support.
2546 </p>
2549 This feature is available in Postfix 2.0 and later.
2550 </p>
2553 </DD>
2555 <DT><b><a name="disable_verp_bounces">disable_verp_bounces</a>
2556 (default: no)</b></DT><DD>
2559 Disable sending one bounce report per recipient.
2560 </p>
2563 The default, one per recipient, is what ezmlm needs.
2564 </p>
2567 This feature is available in Postfix 1.1 and later.
2568 </p>
2571 </DD>
2573 <DT><b><a name="disable_vrfy_command">disable_vrfy_command</a>
2574 (default: no)</b></DT><DD>
2577 Disable the SMTP VRFY command. This stops some techniques used to
2578 harvest email addresses.
2579 </p>
2582 Example:
2583 </p>
2585 <pre>
2586 <a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a> = no
2587 </pre>
2590 </DD>
2592 <DT><b><a name="dnsblog_reply_delay">dnsblog_reply_delay</a>
2593 (default: 0s)</b></DT><DD>
2595 <p> A debugging aid to artifically delay DNS responses. </p>
2597 <p> This feature is available in Postfix 2.8. </p>
2600 </DD>
2602 <DT><b><a name="dnsblog_service_name">dnsblog_service_name</a>
2603 (default: dnsblog)</b></DT><DD>
2605 <p> The name of the <a href="dnsblog.8.html">dnsblog(8)</a> service entry in <a href="master.5.html">master.cf</a>. This
2606 service performs DNS white/blacklist lookups. </p>
2608 <p> This feature is available in Postfix 2.8 and later. </p>
2611 </DD>
2613 <DT><b><a name="dont_remove">dont_remove</a>
2614 (default: 0)</b></DT><DD>
2617 Don't remove queue files and save them to the "saved" mail queue.
2618 This is a debugging aid. To inspect the envelope information and
2619 content of a Postfix queue file, use the <a href="postcat.1.html">postcat(1)</a> command.
2620 </p>
2623 </DD>
2625 <DT><b><a name="double_bounce_sender">double_bounce_sender</a>
2626 (default: double-bounce)</b></DT><DD>
2628 <p> The sender address of postmaster notifications that are generated
2629 by the mail system. All mail to this address is silently discarded,
2630 in order to terminate mail bounce loops. </p>
2633 </DD>
2635 <DT><b><a name="duplicate_filter_limit">duplicate_filter_limit</a>
2636 (default: 1000)</b></DT><DD>
2638 <p> The maximal number of addresses remembered by the address
2639 duplicate filter for <a href="aliases.5.html">aliases(5)</a> or <a href="virtual.5.html">virtual(5)</a> alias expansion, or
2640 for <a href="showq.8.html">showq(8)</a> queue displays. </p>
2643 </DD>
2645 <DT><b><a name="empty_address_default_transport_maps_lookup_key">empty_address_default_transport_maps_lookup_key</a>
2646 (default: &lt;&gt;)</b></DT><DD>
2648 <p> The <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> search string that
2649 will be used instead of the null sender address. </p>
2651 <p> This feature is available in Postfix 2.7 and later. </p>
2654 </DD>
2656 <DT><b><a name="empty_address_recipient">empty_address_recipient</a>
2657 (default: MAILER-DAEMON)</b></DT><DD>
2660 The recipient of mail addressed to the null address. Postfix does
2661 not accept such addresses in SMTP commands, but they may still be
2662 created locally as the result of configuration or software error.
2663 </p>
2666 </DD>
2668 <DT><b><a name="empty_address_relayhost_maps_lookup_key">empty_address_relayhost_maps_lookup_key</a>
2669 (default: &lt;&gt;)</b></DT><DD>
2671 <p> The <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> search string that will be
2672 used instead of the null sender address. </p>
2674 <p> This feature is available in Postfix 2.5 and later. With
2675 earlier versions, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> lookups were
2676 skipped for the null sender address. </p>
2679 </DD>
2681 <DT><b><a name="enable_errors_to">enable_errors_to</a>
2682 (default: no)</b></DT><DD>
2684 <p> Report mail delivery errors to the address specified with the
2685 non-standard Errors-To: message header, instead of the envelope
2686 sender address (this feature is removed with Postfix version 2.2, is
2687 turned off by default with Postfix version 2.1, and is always turned on
2688 with older Postfix versions). </p>
2691 </DD>
2693 <DT><b><a name="enable_original_recipient">enable_original_recipient</a>
2694 (default: yes)</b></DT><DD>
2696 <p> Enable support for the X-Original-To message header. This header
2697 is needed for multi-recipient mailboxes. </p>
2699 <p> When this parameter is set to yes, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs
2700 duplicate elimination on distinct pairs of (original recipient,
2701 rewritten recipient), and generates non-empty original recipient
2702 queue file records. </p>
2704 <p> When this parameter is set to no, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs
2705 duplicate elimination on the rewritten recipient address only, and
2706 generates empty original recipient queue file records. </p>
2708 <p> This feature is available in Postfix 2.1 and later. With Postfix
2709 version 2.0, support for the X-Original-To message header is always turned
2710 on. Postfix versions before 2.0 have no support for the X-Original-To
2711 message header. </p>
2714 </DD>
2716 <DT><b><a name="error_notice_recipient">error_notice_recipient</a>
2717 (default: postmaster)</b></DT><DD>
2719 <p> The recipient of postmaster notifications about mail delivery
2720 problems that are caused by policy, resource, software or protocol
2721 errors. These notifications are enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a>
2722 parameter. </p>
2725 </DD>
2727 <DT><b><a name="error_service_name">error_service_name</a>
2728 (default: error)</b></DT><DD>
2731 The name of the <a href="error.8.html">error(8)</a> pseudo delivery agent. This service always
2732 returns mail as undeliverable.
2733 </p>
2736 This feature is available in Postfix 2.0 and later.
2737 </p>
2740 </DD>
2742 <DT><b><a name="execution_directory_expansion_filter">execution_directory_expansion_filter</a>
2743 (default: see "postconf -d" output)</b></DT><DD>
2745 <p> Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows
2746 in $name expansions of $<a href="postconf.5.html#command_execution_directory">command_execution_directory</a>. Characters
2747 outside the allowed set are replaced by underscores. </p>
2749 <p> This feature is available in Postfix 2.2 and later. </p>
2752 </DD>
2754 <DT><b><a name="expand_owner_alias">expand_owner_alias</a>
2755 (default: no)</b></DT><DD>
2758 When delivering to an alias "aliasname" that has an "owner-aliasname"
2759 companion alias, set the envelope sender address to the expansion
2760 of the "owner-aliasname" alias. Normally, Postfix sets the envelope
2761 sender address to the name of the "owner-aliasname" alias.
2762 </p>
2765 </DD>
2767 <DT><b><a name="export_environment">export_environment</a>
2768 (default: see "postconf -d" output)</b></DT><DD>
2771 The list of environment variables that a Postfix process will export
2772 to non-Postfix processes. The TZ variable is needed for sane
2773 time keeping on System-V-ish systems.
2774 </p>
2777 Specify a list of names and/or name=value pairs, separated by
2778 whitespace or comma. The name=value form is supported with
2779 Postfix version 2.1 and later.
2780 </p>
2783 Example:
2784 </p>
2786 <pre>
2787 <a href="postconf.5.html#export_environment">export_environment</a> = TZ PATH=/bin:/usr/bin
2788 </pre>
2791 </DD>
2793 <DT><b><a name="extract_recipient_limit">extract_recipient_limit</a>
2794 (default: 10240)</b></DT><DD>
2797 The maximal number of recipient addresses that Postfix will extract
2798 from message headers when mail is submitted with "<b>sendmail -t</b>".
2799 </p>
2802 This feature was removed in Postfix version 2.1.
2803 </p>
2806 </DD>
2808 <DT><b><a name="fallback_relay">fallback_relay</a>
2809 (default: empty)</b></DT><DD>
2812 Optional list of relay hosts for SMTP destinations that can't be
2813 found or that are unreachable. With Postfix 2.3 this parameter
2814 is renamed to <a href="postconf.5.html#smtp_fallback_relay">smtp_fallback_relay</a>. </p>
2817 By default, mail is returned to the sender when a destination is
2818 not found, and delivery is deferred when a destination is unreachable.
2819 </p>
2821 <p> The fallback relays must be SMTP destinations. Specify a domain,
2822 host, host:port, [host]:port, [address] or [address]:port; the form
2823 [host] turns off MX lookups. If you specify multiple SMTP
2824 destinations, Postfix will try them in the specified order. </p>
2826 <p> Note: before Postfix 2.2, do not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature
2827 when relaying mail
2828 for a backup or primary MX domain. Mail would loop between the
2829 Postfix MX host and the <a href="postconf.5.html#fallback_relay">fallback_relay</a> host when the final destination
2830 is unavailable. </p>
2832 <ul>
2834 <li> In <a href="postconf.5.html">main.cf</a> specify "<a href="postconf.5.html#relay_transport">relay_transport</a> = relay",
2836 <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
2837 the end of the <tt>relay</tt> entry.
2839 <li> In transport maps, specify "relay:<i>nexthop...</i>"
2840 as the right-hand side for backup or primary MX domain entries.
2842 </ul>
2844 <p> Postfix version 2.2 and later will not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature
2845 for destinations that it is MX host for.
2846 </p>
2849 </DD>
2851 <DT><b><a name="fallback_transport">fallback_transport</a>
2852 (default: empty)</b></DT><DD>
2855 Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery
2856 agent should use for names that are not found in the <a href="aliases.5.html">aliases(5)</a>
2857 or UNIX password database.
2858 </p>
2860 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
2861 is: 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>,
2862 <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>,
2863 <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>
2866 </DD>
2868 <DT><b><a name="fallback_transport_maps">fallback_transport_maps</a>
2869 (default: empty)</b></DT><DD>
2871 <p> Optional lookup tables with per-recipient message delivery
2872 transports for recipients that the <a href="local.8.html">local(8)</a> delivery agent could
2873 not find in the <a href="aliases.5.html">aliases(5)</a> or UNIX password database. </p>
2875 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
2876 is: 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>,
2877 <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>,
2878 <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>
2880 <p> For safety reasons, this feature does not allow $number
2881 substitutions in regular expression maps. </p>
2883 <p> This feature is available in Postfix 2.3 and later. </p>
2886 </DD>
2888 <DT><b><a name="fast_flush_domains">fast_flush_domains</a>
2889 (default: $<a href="postconf.5.html#relay_domains">relay_domains</a>)</b></DT><DD>
2892 Optional list of destinations that are eligible for per-destination
2893 logfiles with mail that is queued to those destinations.
2894 </p>
2897 By default, Postfix maintains "fast flush" logfiles only for
2898 destinations that the Postfix SMTP server is willing to relay to
2899 (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
2900 the <a href="postconf.5.html#relay_domains">relay_domains</a> parameter in the <a href="postconf.5.html">postconf(5)</a> manual).
2901 </p>
2903 <p> Specify a list of hosts or domains, "/file/name" patterns or
2904 "<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace.
2905 Continue long lines by starting the next line with whitespace. A
2906 "/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
2907 lookup table is matched when the domain or its parent domain appears
2908 as lookup key. </p>
2911 Specify "<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> =" (i.e., empty) to disable the feature
2912 altogether.
2913 </p>
2916 </DD>
2918 <DT><b><a name="fast_flush_purge_time">fast_flush_purge_time</a>
2919 (default: 7d)</b></DT><DD>
2922 The time after which an empty per-destination "fast flush" logfile
2923 is deleted.
2924 </p>
2927 You can specify the time as a number, or as a number followed by
2928 a letter that indicates the time unit: s=seconds, m=minutes, h=hours,
2929 d=days, w=weeks. The default time unit is days.
2930 </p>
2933 </DD>
2935 <DT><b><a name="fast_flush_refresh_time">fast_flush_refresh_time</a>
2936 (default: 12h)</b></DT><DD>
2939 The time after which a non-empty but unread per-destination "fast
2940 flush" logfile needs to be refreshed. The contents of a logfile
2941 are refreshed by requesting delivery of all messages listed in the
2942 logfile.
2943 </p>
2946 You can specify the time as a number, or as a number followed by
2947 a letter that indicates the time unit: s=seconds, m=minutes, h=hours,
2948 d=days, w=weeks. The default time unit is hours.
2949 </p>
2952 </DD>
2954 <DT><b><a name="fault_injection_code">fault_injection_code</a>
2955 (default: 0)</b></DT><DD>
2958 Force specific internal tests to fail, to test the handling of
2959 errors that are difficult to reproduce otherwise.
2960 </p>
2963 </DD>
2965 <DT><b><a name="flush_service_name">flush_service_name</a>
2966 (default: flush)</b></DT><DD>
2969 The name of the <a href="flush.8.html">flush(8)</a> service. This service maintains per-destination
2970 logfiles with the queue file names of mail that is queued for those
2971 destinations.
2972 </p>
2975 This feature is available in Postfix 2.0 and later.
2976 </p>
2979 </DD>
2981 <DT><b><a name="fork_attempts">fork_attempts</a>
2982 (default: 5)</b></DT><DD>
2984 <p> The maximal number of attempts to fork() a child process. </p>
2987 </DD>
2989 <DT><b><a name="fork_delay">fork_delay</a>
2990 (default: 1s)</b></DT><DD>
2992 <p> The delay between attempts to fork() a child process. </p>
2994 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
2995 (weeks). The default time unit is s (seconds). </p>
2998 </DD>
3000 <DT><b><a name="forward_expansion_filter">forward_expansion_filter</a>
3001 (default: see "postconf -d" output)</b></DT><DD>
3004 Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in
3005 $name expansions of $<a href="postconf.5.html#forward_path">forward_path</a>. Characters outside the
3006 allowed set are replaced by underscores.
3007 </p>
3010 </DD>
3012 <DT><b><a name="forward_path">forward_path</a>
3013 (default: see "postconf -d" output)</b></DT><DD>
3015 <p> The <a href="local.8.html">local(8)</a> delivery agent search list for finding a .forward
3016 file with user-specified delivery methods. The first file that is
3017 found is used. </p>
3019 <p> The following $name expansions are done on <a href="postconf.5.html#forward_path">forward_path</a> before
3020 the search actually happens. The result of $name expansion is
3021 filtered with the character set that is specified with the
3022 <a href="postconf.5.html#forward_expansion_filter">forward_expansion_filter</a> parameter. </p>
3024 <dl>
3026 <dt><b>$user</b></dt>
3028 <dd>The recipient's username. </dd>
3030 <dt><b>$shell</b></dt>
3032 <dd>The recipient's login shell pathname. </dd>
3034 <dt><b>$home</b></dt>
3036 <dd>The recipient's home directory. </dd>
3038 <dt><b>$recipient</b></dt>
3040 <dd>The full recipient address. </dd>
3042 <dt><b>$extension</b></dt>
3044 <dd>The optional recipient address extension. </dd>
3046 <dt><b>$domain</b></dt>
3048 <dd>The recipient domain. </dd>
3050 <dt><b>$local</b></dt>
3052 <dd>The entire recipient localpart. </dd>
3054 <dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
3056 <dd>The system-wide recipient address extension delimiter. </dd>
3058 <dt><b>${name?value}</b></dt>
3060 <dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd>
3062 <dt><b>${name:value}</b></dt>
3064 <dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd>
3066 </dl>
3069 Instead of $name you can also specify ${name} or $(name).
3070 </p>
3073 Examples:
3074 </p>
3076 <pre>
3077 <a href="postconf.5.html#forward_path">forward_path</a> = /var/forward/$user
3078 <a href="postconf.5.html#forward_path">forward_path</a> =
3079 /var/forward/$user/.forward$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>$extension,
3080 /var/forward/$user/.forward
3081 </pre>
3084 </DD>
3086 <DT><b><a name="frozen_delivered_to">frozen_delivered_to</a>
3087 (default: yes)</b></DT><DD>
3089 <p> Update the <a href="local.8.html">local(8)</a> delivery agent's idea of the Delivered-To:
3090 address (see <a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a>) only once, at the start of
3091 a delivery attempt; do not update the Delivered-To: address while
3092 expanding aliases or .forward files. </p>
3094 <p> This feature is available in Postfix 2.3 and later. With older
3095 Postfix releases, the behavior is as if this parameter is set to
3096 "no". The old setting can be expensive with deeply nested aliases
3097 or .forward files. When an alias or .forward file changes the
3098 Delivered-To: address, it ties up one queue file and one cleanup
3099 process instance while mail is being forwarded. </p>
3102 </DD>
3104 <DT><b><a name="hash_queue_depth">hash_queue_depth</a>
3105 (default: 1)</b></DT><DD>
3108 The number of subdirectory levels for queue directories listed with
3109 the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> parameter.
3110 </p>
3113 After 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,
3114 execute the command "<b>postfix reload</b>".
3115 </p>
3118 </DD>
3120 <DT><b><a name="hash_queue_names">hash_queue_names</a>
3121 (default: deferred, defer)</b></DT><DD>
3124 The names of queue directories that are split across multiple
3125 subdirectory levels.
3126 </p>
3128 <p> Before Postfix version 2.2, the default list of hashed queues
3129 was significantly larger. Claims about improvements in file system
3130 technology 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>
3131 is no longer needed. Fewer hashed directories speed up the time
3132 needed to restart Postfix. </p>
3135 After 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,
3136 execute the command "<b>postfix reload</b>".
3137 </p>
3140 </DD>
3142 <DT><b><a name="header_address_token_limit">header_address_token_limit</a>
3143 (default: 10240)</b></DT><DD>
3146 The maximal number of address tokens are allowed in an address
3147 message header. Information that exceeds the limit is discarded.
3148 The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a> server.
3149 </p>
3152 </DD>
3154 <DT><b><a name="header_checks">header_checks</a>
3155 (default: empty)</b></DT><DD>
3158 Optional lookup tables for content inspection of primary non-MIME
3159 message headers, as specified in the <a href="header_checks.5.html">header_checks(5)</a> manual page.
3160 </p>
3163 </DD>
3165 <DT><b><a name="header_size_limit">header_size_limit</a>
3166 (default: 102400)</b></DT><DD>
3169 The maximal amount of memory in bytes for storing a message header.
3170 If a header is larger, the excess is discarded. The limit is
3171 enforced by the <a href="cleanup.8.html">cleanup(8)</a> server.
3172 </p>
3175 </DD>
3177 <DT><b><a name="helpful_warnings">helpful_warnings</a>
3178 (default: yes)</b></DT><DD>
3181 Log warnings about problematic configuration settings, and provide
3182 helpful suggestions.
3183 </p>
3186 This feature is available in Postfix 2.0 and later.
3187 </p>
3190 </DD>
3192 <DT><b><a name="home_mailbox">home_mailbox</a>
3193 (default: empty)</b></DT><DD>
3196 Optional pathname of a mailbox file relative to a <a href="local.8.html">local(8)</a> user's
3197 home directory.
3198 </p>
3201 Specify a pathname ending in "/" for qmail-style delivery.
3202 </p>
3204 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
3205 is: 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>,
3206 <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>,
3207 <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>
3210 Examples:
3211 </p>
3213 <pre>
3214 <a href="postconf.5.html#home_mailbox">home_mailbox</a> = Mailbox
3215 <a href="postconf.5.html#home_mailbox">home_mailbox</a> = Maildir/
3216 </pre>
3219 </DD>
3221 <DT><b><a name="hopcount_limit">hopcount_limit</a>
3222 (default: 50)</b></DT><DD>
3225 The maximal number of Received: message headers that is allowed
3226 in the primary message headers. A message that exceeds the limit
3227 is bounced, in order to stop a mailer loop.
3228 </p>
3231 </DD>
3233 <DT><b><a name="html_directory">html_directory</a>
3234 (default: see "postconf -d" output)</b></DT><DD>
3237 The location of Postfix HTML files that describe how to build,
3238 configure or operate a specific Postfix subsystem or feature.
3239 </p>
3242 </DD>
3244 <DT><b><a name="ignore_mx_lookup_error">ignore_mx_lookup_error</a>
3245 (default: no)</b></DT><DD>
3247 <p> Ignore DNS MX lookups that produce no response. By default,
3248 the Postfix SMTP client defers delivery and tries again after some
3249 delay. This behavior is required by the SMTP standard. </p>
3252 Specify "<a href="postconf.5.html#ignore_mx_lookup_error">ignore_mx_lookup_error</a> = yes" to force a DNS A record
3253 lookup instead. This violates the SMTP standard and can result in
3254 mis-delivery of mail.
3255 </p>
3258 </DD>
3260 <DT><b><a name="import_environment">import_environment</a>
3261 (default: see "postconf -d" output)</b></DT><DD>
3264 The list of environment parameters that a Postfix process will
3265 import from a non-Postfix parent process. Examples of relevant
3266 parameters:
3267 </p>
3269 <dl>
3271 <dt><b>TZ</b></dt>
3273 <dd>Needed for sane time keeping on most System-V-ish systems. </dd>
3275 <dt><b>DISPLAY</b></dt>
3277 <dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd>
3279 <dt><b>XAUTHORITY</b></dt>
3281 <dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd>
3283 <dt><b>MAIL_CONFIG</b></dt>
3285 <dd>Needed to make "<b>postfix -c</b>" work. </dd>
3287 </dl>
3289 <p> Specify a list of names and/or name=value pairs, separated by
3290 whitespace or comma. The name=value form is supported with
3291 Postfix version 2.1 and later. </p>
3294 </DD>
3296 <DT><b><a name="in_flow_delay">in_flow_delay</a>
3297 (default: 1s)</b></DT><DD>
3299 <p> Time to pause before accepting a new message, when the message
3300 arrival rate exceeds the message delivery rate. This feature is
3301 turned on by default (it's disabled on SCO UNIX due to an SCO bug).
3302 </p>
3305 With the default 100 SMTP server process limit, "<a href="postconf.5.html#in_flow_delay">in_flow_delay</a>
3306 = 1s" limits the mail inflow to 100 messages per second above the
3307 number of messages delivered per second.
3308 </p>
3311 Specify 0 to disable the feature. Valid delays are 0..10.
3312 </p>
3315 </DD>
3317 <DT><b><a name="inet_interfaces">inet_interfaces</a>
3318 (default: all)</b></DT><DD>
3320 <p> The network interface addresses that this mail system receives
3321 mail on. Specify "all" to receive mail on all network
3322 interfaces (default), and "loopback-only" to receive mail
3323 on loopback network interfaces only (Postfix version 2.2 and later). The
3324 parameter also controls delivery of mail to <tt>user@[ip.address]</tt>.
3325 </p>
3328 Note 1: you need to stop and start Postfix when this parameter changes.
3329 </p>
3331 <p> Note 2: address information may be enclosed inside <tt>[]</tt>,
3332 but this form is not required here. </p>
3334 <p> When <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies just one IPv4 and/or IPv6 address
3335 that is not a loopback address, the Postfix SMTP client will use
3336 this address as the IP source address for outbound mail. Support
3337 for IPv6 is available in Postfix version 2.2 and later. </p>
3340 On a multi-homed firewall with separate Postfix instances listening on the
3341 "inside" and "outside" interfaces, this can prevent each instance from
3342 being able to reach servers on the "other side" of the firewall. Setting
3343 <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> to 0.0.0.0 avoids the potential problem for
3344 IPv4, and setting <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> to :: solves the problem
3345 for IPv6. </p>
3348 A better solution for multi-homed firewalls is to leave <a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
3349 at the default value and instead use explicit IP addresses in
3350 the <a href="master.5.html">master.cf</a> SMTP server definitions. This preserves the Postfix
3351 SMTP client's
3352 loop detection, by ensuring that each side of the firewall knows that the
3353 other IP address is still the same host. Setting $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> to a
3354 single IPv4 and/or IPV6 address is primarily useful with virtual
3355 hosting of domains on
3356 secondary IP addresses, when each IP address serves a different domain
3357 (and has a different $<a href="postconf.5.html#myhostname">myhostname</a> setting). </p>
3360 See also the <a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> parameter, for network addresses that
3361 are forwarded to Postfix by way of a proxy or address translator.
3362 </p>
3365 Examples:
3366 </p>
3368 <pre>
3369 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = all (DEFAULT)
3370 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback-only (Postfix version 2.2 and later)
3371 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1
3372 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1, [::1] (Postfix version 2.2 and later)
3373 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 192.168.1.2, 127.0.0.1
3374 </pre>
3377 </DD>
3379 <DT><b><a name="inet_protocols">inet_protocols</a>
3380 (default: ipv4)</b></DT><DD>
3382 <p> The Internet protocols Postfix will attempt to use when making
3383 or accepting connections. Specify one or more of "ipv4"
3384 or "ipv6", separated by whitespace or commas. The form
3385 "all" is equivalent to "ipv4, ipv6" or "ipv4", depending
3386 on whether the operating system implements IPv6. </p>
3388 <p> This feature is available in Postfix 2.2 and later. </p>
3390 <p> Note: you MUST stop and start Postfix after changing this
3391 parameter. </p>
3393 <p> On systems that pre-date IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>), an
3394 IPv6 server will also accept IPv4 connections, even when IPv4 is
3395 turned off with the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter. On systems with
3396 IPV6_V6ONLY support, Postfix will use separate server sockets for
3397 IPv6 and IPv4, and each will accept only connections for the
3398 corresponding protocol. </p>
3400 <p> When IPv4 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter,
3401 Postfix will to DNS type A record lookups, and will convert
3402 IPv4-in-IPv6 client IP addresses (::ffff:1.2.3.4) to their original
3403 IPv4 form (1.2.3.4). The latter is needed on hosts that pre-date
3404 IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>). </p>
3406 <p> When IPv6 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter,
3407 Postfix will do DNS type AAAA record lookups. </p>
3409 <p> When both IPv4 and IPv6 support are enabled, the Postfix SMTP
3410 client will attempt to connect via IPv6 before attempting to use
3411 IPv4. </p>
3414 Examples:
3415 </p>
3417 <pre>
3418 <a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4 (DEFAULT)
3419 <a href="postconf.5.html#inet_protocols">inet_protocols</a> = all
3420 <a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv6
3421 <a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4, ipv6
3422 </pre>
3425 </DD>
3427 <DT><b><a name="initial_destination_concurrency">initial_destination_concurrency</a>
3428 (default: 5)</b></DT><DD>
3431 The initial per-destination concurrency level for parallel delivery
3432 to the same destination.
3433 With per-destination recipient limit &gt; 1, a destination is a domain,
3434 otherwise it is a recipient.
3435 </p>
3437 <p> Use <a href="postconf.5.html#transport_initial_destination_concurrency"><i>transport</i>_initial_destination_concurrency</a> to specify
3438 a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a>
3439 name of the message delivery transport (Postfix 2.5 and later). </p>
3442 Warning: with concurrency of 1, one bad message can be enough to
3443 block all mail to a site.
3444 </p>
3447 </DD>
3449 <DT><b><a name="internal_mail_filter_classes">internal_mail_filter_classes</a>
3450 (default: empty)</b></DT><DD>
3452 <p> What categories of Postfix-generated mail are subject to
3453 before-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>
3454 and <a href="postconf.5.html#body_checks">body_checks</a>. Specify zero or more of the following, separated
3455 by whitespace or comma. </p>
3457 <dl>
3459 <dt><b>bounce</b></dt> <dd> Inspect the content of delivery
3460 status notifications. </dd>
3462 <dt><b>notify</b></dt> <dd> Inspect the content of postmaster
3463 notifications by the <a href="smtp.8.html">smtp(8)</a> and <a href="smtpd.8.html">smtpd(8)</a> processes. </dd>
3465 </dl>
3467 <p> NOTE: It's generally not safe to enable content inspection of
3468 Postfix-generated email messages. The user is warned. </p>
3470 <p> This feature is available in Postfix 2.3 and later. </p>
3473 </DD>
3475 <DT><b><a name="invalid_hostname_reject_code">invalid_hostname_reject_code</a>
3476 (default: 501)</b></DT><DD>
3479 The numerical Postfix SMTP server response code when the client
3480 HELO or EHLO command parameter is rejected by the <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a>
3481 restriction.
3482 </p>
3485 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
3486 </p>
3489 </DD>
3491 <DT><b><a name="ipc_idle">ipc_idle</a>
3492 (default: version dependent)</b></DT><DD>
3495 The time after which a client closes an idle internal communication
3496 channel. The purpose is to allow servers to terminate voluntarily
3497 after they become idle. This is used, for example, by the address
3498 resolving and rewriting clients.
3499 </p>
3501 <p> With Postfix 2.4 the default value was reduced from 100s to 5s. </p>
3504 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3505 The default time unit is s (seconds).
3506 </p>
3509 </DD>
3511 <DT><b><a name="ipc_timeout">ipc_timeout</a>
3512 (default: 3600s)</b></DT><DD>
3515 The time limit for sending or receiving information over an internal
3516 communication channel. The purpose is to break out of deadlock
3517 situations. If the time limit is exceeded the software aborts with a
3518 fatal error.
3519 </p>
3522 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3523 The default time unit is s (seconds).
3524 </p>
3527 </DD>
3529 <DT><b><a name="ipc_ttl">ipc_ttl</a>
3530 (default: 1000s)</b></DT><DD>
3533 The time after which a client closes an active internal communication
3534 channel. The purpose is to allow servers to terminate voluntarily
3535 after reaching their client limit. This is used, for example, by
3536 the address resolving and rewriting clients.
3537 </p>
3540 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3541 The default time unit is s (seconds).
3542 </p>
3545 This feature is available in Postfix 2.1 and later.
3546 </p>
3549 </DD>
3551 <DT><b><a name="line_length_limit">line_length_limit</a>
3552 (default: 2048)</b></DT><DD>
3554 <p> Upon input, long lines are chopped up into pieces of at most
3555 this length; upon delivery, long lines are reconstructed. </p>
3558 </DD>
3560 <DT><b><a name="lmtp_address_preference">lmtp_address_preference</a>
3561 (default: ipv6)</b></DT><DD>
3563 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_address_preference">smtp_address_preference</a>
3564 configuration parameter. See there for details. </p>
3566 <p> This feature is available in Postfix 2.8 and later. </p>
3569 </DD>
3571 <DT><b><a name="lmtp_assume_final">lmtp_assume_final</a>
3572 (default: no)</b></DT><DD>
3574 <p> When an LMTP server announces no DSN support, assume that the
3575 server performs final delivery, and send "delivered" delivery status
3576 notifications instead of "relayed". The default setting is backwards
3577 compatible to avoid the infinetisimal possibility of breaking
3578 existing LMTP-based content filters. </p>
3581 </DD>
3583 <DT><b><a name="lmtp_bind_address">lmtp_bind_address</a>
3584 (default: empty)</b></DT><DD>
3586 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> configuration
3587 parameter. See there for details. </p>
3589 <p> This feature is available in Postfix 2.3 and later. </p>
3592 </DD>
3594 <DT><b><a name="lmtp_bind_address6">lmtp_bind_address6</a>
3595 (default: empty)</b></DT><DD>
3597 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> configuration
3598 parameter. See there for details. </p>
3600 <p> This feature is available in Postfix 2.3 and later. </p>
3603 </DD>
3605 <DT><b><a name="lmtp_body_checks">lmtp_body_checks</a>
3606 (default: empty)</b></DT><DD>
3608 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_body_checks">smtp_body_checks</a> configuration
3609 parameter. See there for details. </p>
3611 <p> This feature is available in Postfix 2.5 and later. </p>
3614 </DD>
3616 <DT><b><a name="lmtp_cache_connection">lmtp_cache_connection</a>
3617 (default: yes)</b></DT><DD>
3620 Keep Postfix LMTP client connections open for up to $<a href="postconf.5.html#max_idle">max_idle</a>
3621 seconds. When the LMTP client receives a request for the same
3622 connection the connection is reused.
3623 </p>
3625 <p> This parameter is available in Postfix version 2.2 and earlier.
3626 With Postfix version 2.3 and later, see <a href="postconf.5.html#lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a>,
3627 <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>.
3628 </p>
3631 The effectiveness of cached connections will be determined by the
3632 number of LMTP servers in use, and the concurrency limit specified
3633 for the LMTP client. Cached connections are closed under any of
3634 the following conditions:
3635 </p>
3637 <ul>
3639 <li> The LMTP client idle time limit is reached. This limit is
3640 specified with the Postfix <a href="postconf.5.html#max_idle">max_idle</a> configuration parameter.
3642 <li> A delivery request specifies a different destination than the
3643 one currently cached.
3645 <li> The per-process limit on the number of delivery requests is
3646 reached. This limit is specified with the Postfix <a href="postconf.5.html#max_use">max_use</a>
3647 configuration parameter.
3649 <li> Upon the onset of another delivery request, the LMTP server
3650 associated with the current session does not respond to the RSET
3651 command.
3653 </ul>
3656 Most of these limitations will be removed after Postfix implements
3657 a connection cache that is shared among multiple LMTP client
3658 programs.
3659 </p>
3662 </DD>
3664 <DT><b><a name="lmtp_cname_overrides_servername">lmtp_cname_overrides_servername</a>
3665 (default: yes)</b></DT><DD>
3667 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_cname_overrides_servername">smtp_cname_overrides_servername</a>
3668 configuration parameter. See there for details. </p>
3670 <p> This feature is available in Postfix 2.3 and later. </p>
3673 </DD>
3675 <DT><b><a name="lmtp_connect_timeout">lmtp_connect_timeout</a>
3676 (default: 0s)</b></DT><DD>
3678 <p> The LMTP client time limit for completing a TCP connection, or
3679 zero (use the operating system built-in time limit). When no
3680 connection can be made within the deadline, the LMTP client tries
3681 the next address on the mail exchanger list. </p>
3684 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3685 The default time unit is s (seconds).
3686 </p>
3689 Example:
3690 </p>
3692 <pre>
3693 <a href="postconf.5.html#lmtp_connect_timeout">lmtp_connect_timeout</a> = 30s
3694 </pre>
3697 </DD>
3699 <DT><b><a name="lmtp_connection_cache_destinations">lmtp_connection_cache_destinations</a>
3700 (default: empty)</b></DT><DD>
3702 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_destinations">smtp_connection_cache_destinations</a>
3703 configuration parameter. See there for details. </p>
3705 <p> This feature is available in Postfix 2.3 and later. </p>
3708 </DD>
3710 <DT><b><a name="lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a>
3711 (default: yes)</b></DT><DD>
3713 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a>
3714 configuration parameter. See there for details. </p>
3716 <p> This feature is available in Postfix 2.3 and later. </p>
3719 </DD>
3721 <DT><b><a name="lmtp_connection_cache_time_limit">lmtp_connection_cache_time_limit</a>
3722 (default: 2s)</b></DT><DD>
3724 <p> The LMTP-specific version of the
3725 <a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> configuration parameter.
3726 See there for details. </p>
3728 <p> This feature is available in Postfix 2.3 and later. </p>
3731 </DD>
3733 <DT><b><a name="lmtp_connection_reuse_time_limit">lmtp_connection_reuse_time_limit</a>
3734 (default: 300s)</b></DT><DD>
3736 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>
3737 configuration parameter. See there for details. </p>
3739 <p> This feature is available in Postfix 2.3 and later. </p>
3742 </DD>
3744 <DT><b><a name="lmtp_data_done_timeout">lmtp_data_done_timeout</a>
3745 (default: 600s)</b></DT><DD>
3747 <p> The LMTP client time limit for sending the LMTP ".", and for
3748 receiving the server response. When no response is received within
3749 the deadline, a warning is logged that the mail may be delivered
3750 multiple times. </p>
3753 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3754 The default time unit is s (seconds).
3755 </p>
3758 </DD>
3760 <DT><b><a name="lmtp_data_init_timeout">lmtp_data_init_timeout</a>
3761 (default: 120s)</b></DT><DD>
3764 The LMTP client time limit for sending the LMTP DATA command, and
3765 for receiving the server response.
3766 </p>
3769 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3770 The default time unit is s (seconds).
3771 </p>
3774 </DD>
3776 <DT><b><a name="lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a>
3777 (default: 180s)</b></DT><DD>
3780 The LMTP client time limit for sending the LMTP message content.
3781 When the connection stalls for more than $<a href="postconf.5.html#lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a>
3782 the LMTP client terminates the transfer.
3783 </p>
3786 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3787 The default time unit is s (seconds).
3788 </p>
3791 </DD>
3793 <DT><b><a name="lmtp_defer_if_no_mx_address_found">lmtp_defer_if_no_mx_address_found</a>
3794 (default: no)</b></DT><DD>
3796 <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>
3797 configuration parameter. See there for details. </p>
3799 <p> This feature is available in Postfix 2.3 and later. </p>
3802 </DD>
3804 <DT><b><a name="lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a>
3805 (default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
3807 <p> The maximal number of parallel deliveries to the same destination
3808 via the lmtp message delivery transport. This limit is enforced by
3809 the queue manager. The message delivery transport name is the first
3810 field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
3813 </DD>
3815 <DT><b><a name="lmtp_destination_recipient_limit">lmtp_destination_recipient_limit</a>
3816 (default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
3818 <p> The maximal number of recipients per message for the lmtp
3819 message delivery transport. This limit is enforced by the queue
3820 manager. The message delivery transport name is the first field in
3821 the entry in the <a href="master.5.html">master.cf</a> file. </p>
3823 <p> Setting this parameter to a value of 1 changes the meaning of
3824 <a href="postconf.5.html#lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a> from concurrency per domain into
3825 concurrency per recipient. </p>
3828 </DD>
3830 <DT><b><a name="lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a>
3831 (default: empty)</b></DT><DD>
3833 <p> Lookup tables, indexed by the remote LMTP server address, with
3834 case insensitive lists of LHLO keywords (pipelining, starttls,
3835 auth, etc.) that the LMTP client will ignore in the LHLO response
3836 from a remote LMTP server. See <a href="postconf.5.html#lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a> for
3837 details. The table is not indexed by hostname for consistency with
3838 <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p>
3840 <p> This feature is available in Postfix 2.3 and later. </p>
3843 </DD>
3845 <DT><b><a name="lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a>
3846 (default: empty)</b></DT><DD>
3848 <p> A case insensitive list of LHLO keywords (pipelining, starttls,
3849 auth, etc.) that the LMTP client will ignore in the LHLO response
3850 from a remote LMTP server. </p>
3852 <p> This feature is available in Postfix 2.3 and later. </p>
3854 <p> Notes: </p>
3856 <ul>
3858 <li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
3859 this action from being logged. </p>
3861 <li> <p> Use the <a href="postconf.5.html#lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a> feature to
3862 discard LHLO keywords selectively. </p>
3864 </ul>
3867 </DD>
3869 <DT><b><a name="lmtp_dns_resolver_options">lmtp_dns_resolver_options</a>
3870 (default: empty)</b></DT><DD>
3872 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_dns_resolver_options">smtp_dns_resolver_options</a>
3873 configuration parameter. See there for details. </p>
3875 <p> This feature is available in Postfix 2.8 and later. </p>
3878 </DD>
3880 <DT><b><a name="lmtp_enforce_tls">lmtp_enforce_tls</a>
3881 (default: no)</b></DT><DD>
3883 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> configuration
3884 parameter. See there for details. </p>
3886 <p> This feature is available in Postfix 2.3 and later. </p>
3889 </DD>
3891 <DT><b><a name="lmtp_generic_maps">lmtp_generic_maps</a>
3892 (default: empty)</b></DT><DD>
3894 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_generic_maps">smtp_generic_maps</a> configuration
3895 parameter. See there for details. </p>
3897 <p> This feature is available in Postfix 2.3 and later. </p>
3900 </DD>
3902 <DT><b><a name="lmtp_header_checks">lmtp_header_checks</a>
3903 (default: empty)</b></DT><DD>
3905 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_header_checks">smtp_header_checks</a> configuration
3906 parameter. See there for details. </p>
3908 <p> This feature is available in Postfix 2.5 and later. </p>
3911 </DD>
3913 <DT><b><a name="lmtp_host_lookup">lmtp_host_lookup</a>
3914 (default: dns)</b></DT><DD>
3916 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a> configuration
3917 parameter. See there for details. </p>
3919 <p> This feature is available in Postfix 2.3 and later. </p>
3922 </DD>
3924 <DT><b><a name="lmtp_lhlo_name">lmtp_lhlo_name</a>
3925 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
3928 The hostname to send in the LMTP LHLO command.
3929 </p>
3932 The default value is the machine hostname. Specify a hostname or
3933 [ip.add.re.ss].
3934 </p>
3937 This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all LMTP
3938 clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific
3939 client, for example:
3940 </p>
3942 <blockquote>
3943 <pre>
3944 /etc/postfix/<a href="master.5.html">master.cf</a>:
3945 mylmtp ... lmtp -o <a href="postconf.5.html#lmtp_lhlo_name">lmtp_lhlo_name</a>=foo.bar.com
3946 </pre>
3947 </blockquote>
3950 This feature is available in Postfix 2.3 and later.
3951 </p>
3954 </DD>
3956 <DT><b><a name="lmtp_lhlo_timeout">lmtp_lhlo_timeout</a>
3957 (default: 300s)</b></DT><DD>
3959 <p> The LMTP client time limit for sending the LHLO command, and
3960 for receiving the initial server response. </p>
3962 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
3963 (weeks). The default time unit is s (seconds). </p>
3966 </DD>
3968 <DT><b><a name="lmtp_line_length_limit">lmtp_line_length_limit</a>
3969 (default: 990)</b></DT><DD>
3971 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_line_length_limit">smtp_line_length_limit</a>
3972 configuration parameter. See there for details. </p>
3974 <p> This feature is available in Postfix 2.3 and later. </p>
3977 </DD>
3979 <DT><b><a name="lmtp_mail_timeout">lmtp_mail_timeout</a>
3980 (default: 300s)</b></DT><DD>
3983 The LMTP client time limit for sending the MAIL FROM command, and
3984 for receiving the server response.
3985 </p>
3988 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
3989 The default time unit is s (seconds).
3990 </p>
3993 </DD>
3995 <DT><b><a name="lmtp_mime_header_checks">lmtp_mime_header_checks</a>
3996 (default: empty)</b></DT><DD>
3998 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mime_header_checks">smtp_mime_header_checks</a>
3999 configuration parameter. See there for details. </p>
4001 <p> This feature is available in Postfix 2.5 and later. </p>
4004 </DD>
4006 <DT><b><a name="lmtp_mx_address_limit">lmtp_mx_address_limit</a>
4007 (default: 5)</b></DT><DD>
4009 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_address_limit">smtp_mx_address_limit</a> configuration
4010 parameter. See there for details. </p>
4012 <p> This feature is available in Postfix 2.3 and later. </p>
4015 </DD>
4017 <DT><b><a name="lmtp_mx_session_limit">lmtp_mx_session_limit</a>
4018 (default: 2)</b></DT><DD>
4020 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_session_limit">smtp_mx_session_limit</a> configuration
4021 parameter. See there for details. </p>
4023 <p> This feature is available in Postfix 2.3 and later. </p>
4026 </DD>
4028 <DT><b><a name="lmtp_nested_header_checks">lmtp_nested_header_checks</a>
4029 (default: empty)</b></DT><DD>
4031 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_nested_header_checks">smtp_nested_header_checks</a>
4032 configuration parameter. See there for details. </p>
4034 <p> This feature is available in Postfix 2.5 and later. </p>
4037 </DD>
4039 <DT><b><a name="lmtp_per_record_deadline">lmtp_per_record_deadline</a>
4040 (default: no)</b></DT><DD>
4042 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_per_record_deadline">smtp_per_record_deadline</a>
4043 configuration parameter. See there for details. </p>
4045 <p> This feature is available in Postfix 2.9 and later. </p>
4048 </DD>
4050 <DT><b><a name="lmtp_pix_workaround_delay_time">lmtp_pix_workaround_delay_time</a>
4051 (default: 10s)</b></DT><DD>
4053 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a>
4054 configuration parameter. See there for details. </p>
4056 <p> This feature is available in Postfix 2.3 and later. </p>
4059 </DD>
4061 <DT><b><a name="lmtp_pix_workaround_maps">lmtp_pix_workaround_maps</a>
4062 (default: empty)</b></DT><DD>
4064 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a>
4065 configuration parameter. See there for details. </p>
4067 <p> This feature is available in Postfix 2.4 and later. </p>
4070 </DD>
4072 <DT><b><a name="lmtp_pix_workaround_threshold_time">lmtp_pix_workaround_threshold_time</a>
4073 (default: 500s)</b></DT><DD>
4075 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a>
4076 configuration parameter. See there for details. </p>
4078 <p> This feature is available in Postfix 2.3 and later. </p>
4081 </DD>
4083 <DT><b><a name="lmtp_pix_workarounds">lmtp_pix_workarounds</a>
4084 (default: empty)</b></DT><DD>
4086 <p> The LMTP-specific version of the smtp_pix_workaround
4087 configuration parameter. See there for details. </p>
4089 <p> This feature is available in Postfix 2.4 and later. </p>
4092 </DD>
4094 <DT><b><a name="lmtp_quit_timeout">lmtp_quit_timeout</a>
4095 (default: 300s)</b></DT><DD>
4098 The LMTP client time limit for sending the QUIT command, and for
4099 receiving the server response.
4100 </p>
4103 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
4104 The default time unit is s (seconds).
4105 </p>
4108 </DD>
4110 <DT><b><a name="lmtp_quote_rfc821_envelope">lmtp_quote_rfc821_envelope</a>
4111 (default: yes)</b></DT><DD>
4113 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>
4114 configuration parameter. See there for details. </p>
4116 <p> This feature is available in Postfix 2.3 and later. </p>
4119 </DD>
4121 <DT><b><a name="lmtp_randomize_addresses">lmtp_randomize_addresses</a>
4122 (default: yes)</b></DT><DD>
4124 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_randomize_addresses">smtp_randomize_addresses</a>
4125 configuration parameter. See there for details. </p>
4127 <p> This feature is available in Postfix 2.3 and later. </p>
4130 </DD>
4132 <DT><b><a name="lmtp_rcpt_timeout">lmtp_rcpt_timeout</a>
4133 (default: 300s)</b></DT><DD>
4136 The LMTP client time limit for sending the RCPT TO command, and
4137 for receiving the server response.
4138 </p>
4141 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
4142 The default time unit is s (seconds).
4143 </p>
4146 </DD>
4148 <DT><b><a name="lmtp_reply_filter">lmtp_reply_filter</a>
4149 (default: empty)</b></DT><DD>
4151 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_reply_filter">smtp_reply_filter</a>
4152 configuration parameter. See there for details. </p>
4154 <p> This feature is available in Postfix 2.7 and later. </p>
4157 </DD>
4159 <DT><b><a name="lmtp_rset_timeout">lmtp_rset_timeout</a>
4160 (default: 20s)</b></DT><DD>
4162 <p> The LMTP client time limit for sending the RSET command, and
4163 for receiving the server response. The LMTP client sends RSET in
4164 order to finish a recipient address probe, or to verify that a
4165 cached connection is still alive. </p>
4168 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
4169 The default time unit is s (seconds).
4170 </p>
4173 </DD>
4175 <DT><b><a name="lmtp_sasl_auth_cache_name">lmtp_sasl_auth_cache_name</a>
4176 (default: empty)</b></DT><DD>
4178 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
4179 configuration parameter. See there for details. </p>
4181 <p> This feature is available in Postfix 2.5 and later. </p>
4184 </DD>
4186 <DT><b><a name="lmtp_sasl_auth_cache_time">lmtp_sasl_auth_cache_time</a>
4187 (default: 90d)</b></DT><DD>
4189 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>
4190 configuration parameter. See there for details. </p>
4192 <p> This feature is available in Postfix 2.5 and later. </p>
4195 </DD>
4197 <DT><b><a name="lmtp_sasl_auth_enable">lmtp_sasl_auth_enable</a>
4198 (default: no)</b></DT><DD>
4201 Enable SASL authentication in the Postfix LMTP client.
4202 </p>
4205 </DD>
4207 <DT><b><a name="lmtp_sasl_auth_soft_bounce">lmtp_sasl_auth_soft_bounce</a>
4208 (default: yes)</b></DT><DD>
4210 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a>
4211 configuration parameter. See there for details. </p>
4213 <p> This feature is available in Postfix 2.5 and later. </p>
4216 </DD>
4218 <DT><b><a name="lmtp_sasl_mechanism_filter">lmtp_sasl_mechanism_filter</a>
4219 (default: empty)</b></DT><DD>
4221 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a>
4222 configuration parameter. See there for details. </p>
4224 <p> This feature is available in Postfix 2.3 and later. </p>
4227 </DD>
4229 <DT><b><a name="lmtp_sasl_password_maps">lmtp_sasl_password_maps</a>
4230 (default: empty)</b></DT><DD>
4233 Optional LMTP client lookup tables with one username:password entry
4234 per host or domain. If a remote host or domain has no username:password
4235 entry, then the Postfix LMTP client will not attempt to authenticate
4236 to the remote host.
4237 </p>
4240 </DD>
4242 <DT><b><a name="lmtp_sasl_path">lmtp_sasl_path</a>
4243 (default: empty)</b></DT><DD>
4245 <p> Implementation-specific information that is passed through to
4246 the SASL plug-in implementation that is selected with
4247 <b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>. Typically this specifies the name of a
4248 configuration file or rendezvous point. </p>
4250 <p> This feature is available in Postfix 2.3 and later. </p>
4253 </DD>
4255 <DT><b><a name="lmtp_sasl_security_options">lmtp_sasl_security_options</a>
4256 (default: noplaintext, noanonymous)</b></DT><DD>
4258 <p> SASL security options; as of Postfix 2.3 the list of available
4259 features depends on the SASL client implementation that is selected
4260 with <b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>. </p>
4262 <p> The following security features are defined for the <b>cyrus</b>
4263 client SASL implementation: </p>
4265 <dl>
4267 <dt><b>noplaintext</b></dt>
4269 <dd>Disallow authentication methods that use plaintext passwords. </dd>
4271 <dt><b>noactive</b></dt>
4273 <dd>Disallow authentication methods that are vulnerable to non-dictionary
4274 active attacks. </dd>
4276 <dt><b>nodictionary</b></dt>
4278 <dd>Disallow authentication methods that are vulnerable to passive
4279 dictionary attack. </dd>
4281 <dt><b>noanonymous</b></dt>
4283 <dd>Disallow anonymous logins. </dd>
4285 </dl>
4288 Example:
4289 </p>
4291 <pre>
4292 <a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a> = noplaintext
4293 </pre>
4296 </DD>
4298 <DT><b><a name="lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a>
4299 (default: $<a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a>)</b></DT><DD>
4301 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>
4302 configuration parameter. See there for details. </p>
4304 <p> This feature is available in Postfix 2.3 and later. </p>
4307 </DD>
4309 <DT><b><a name="lmtp_sasl_tls_verified_security_options">lmtp_sasl_tls_verified_security_options</a>
4310 (default: $<a href="postconf.5.html#lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a>)</b></DT><DD>
4312 <p> The LMTP-specific version of the
4313 <a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> configuration parameter.
4314 See there for details. </p>
4316 <p> This feature is available in Postfix 2.3 and later. </p>
4319 </DD>
4321 <DT><b><a name="lmtp_sasl_type">lmtp_sasl_type</a>
4322 (default: cyrus)</b></DT><DD>
4324 <p> The SASL plug-in type that the Postfix LMTP client should use
4325 for authentication. The available types are listed with the
4326 "<b>postconf -A</b>" command. </p>
4328 <p> This feature is available in Postfix 2.3 and later. </p>
4331 </DD>
4333 <DT><b><a name="lmtp_send_xforward_command">lmtp_send_xforward_command</a>
4334 (default: no)</b></DT><DD>
4337 Send an XFORWARD command to the LMTP server when the LMTP LHLO
4338 server response announces XFORWARD support. This allows an <a href="lmtp.8.html">lmtp(8)</a>
4339 delivery agent, used for content filter message injection, to
4340 forward the name, address, protocol and HELO name of the original
4341 client to the content filter and downstream queuing LMTP server.
4342 Before you change the value to yes, it is best to make sure that
4343 your content filter supports this command.
4344 </p>
4347 This feature is available in Postfix 2.1 and later.
4348 </p>
4351 </DD>
4353 <DT><b><a name="lmtp_sender_dependent_authentication">lmtp_sender_dependent_authentication</a>
4354 (default: no)</b></DT><DD>
4356 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a>
4357 configuration parameter. See there for details. </p>
4359 <p> This feature is available in Postfix 2.3 and later. </p>
4362 </DD>
4364 <DT><b><a name="lmtp_skip_5xx_greeting">lmtp_skip_5xx_greeting</a>
4365 (default: yes)</b></DT><DD>
4367 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a>
4368 configuration parameter. See there for details. </p>
4370 <p> This feature is available in Postfix 2.3 and later. </p>
4373 </DD>
4375 <DT><b><a name="lmtp_skip_quit_response">lmtp_skip_quit_response</a>
4376 (default: no)</b></DT><DD>
4379 Wait for the response to the LMTP QUIT command.
4380 </p>
4383 </DD>
4385 <DT><b><a name="lmtp_starttls_timeout">lmtp_starttls_timeout</a>
4386 (default: 300s)</b></DT><DD>
4388 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_starttls_timeout">smtp_starttls_timeout</a> configuration
4389 parameter. See there for details. </p>
4391 <p> This feature is available in Postfix 2.3 and later. </p>
4394 </DD>
4396 <DT><b><a name="lmtp_tcp_port">lmtp_tcp_port</a>
4397 (default: 24)</b></DT><DD>
4400 The default TCP port that the Postfix LMTP client connects to.
4401 </p>
4404 </DD>
4406 <DT><b><a name="lmtp_tls_CAfile">lmtp_tls_CAfile</a>
4407 (default: empty)</b></DT><DD>
4409 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>
4410 configuration parameter. See there for details. </p>
4412 <p> This feature is available in Postfix 2.3 and later. </p>
4415 </DD>
4417 <DT><b><a name="lmtp_tls_CApath">lmtp_tls_CApath</a>
4418 (default: empty)</b></DT><DD>
4420 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a>
4421 configuration parameter. See there for details. </p>
4423 <p> This feature is available in Postfix 2.3 and later. </p>
4426 </DD>
4428 <DT><b><a name="lmtp_tls_block_early_mail_reply">lmtp_tls_block_early_mail_reply</a>
4429 (default: empty)</b></DT><DD>
4431 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_block_early_mail_reply">smtp_tls_block_early_mail_reply</a>
4432 configuration parameter. See there for details. </p>
4434 <p> This feature is available in Postfix 2.7 and later. </p>
4437 </DD>
4439 <DT><b><a name="lmtp_tls_cert_file">lmtp_tls_cert_file</a>
4440 (default: empty)</b></DT><DD>
4442 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>
4443 configuration parameter. See there for details. </p>
4445 <p> This feature is available in Postfix 2.3 and later. </p>
4448 </DD>
4450 <DT><b><a name="lmtp_tls_ciphers">lmtp_tls_ciphers</a>
4451 (default: export)</b></DT><DD>
4453 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> configuration
4454 parameter. See there for details. </p>
4456 <p> This feature is available in Postfix 2.6 and later. </p>
4459 </DD>
4461 <DT><b><a name="lmtp_tls_dcert_file">lmtp_tls_dcert_file</a>
4462 (default: empty)</b></DT><DD>
4464 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>
4465 configuration parameter. See there for details. </p>
4467 <p> This feature is available in Postfix 2.3 and later. </p>
4470 </DD>
4472 <DT><b><a name="lmtp_tls_dkey_file">lmtp_tls_dkey_file</a>
4473 (default: $<a href="postconf.5.html#lmtp_tls_dcert_file">lmtp_tls_dcert_file</a>)</b></DT><DD>
4475 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a>
4476 configuration parameter. See there for details. </p>
4478 <p> This feature is available in Postfix 2.3 and later. </p>
4481 </DD>
4483 <DT><b><a name="lmtp_tls_eccert_file">lmtp_tls_eccert_file</a>
4484 (default: empty)</b></DT><DD>
4486 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> configuration
4487 parameter. See there for details. </p>
4489 <p> This feature is available in Postfix 2.6 and later, when Postfix is
4490 compiled and linked with OpenSSL 1.0.0 or later. </p>
4493 </DD>
4495 <DT><b><a name="lmtp_tls_eckey_file">lmtp_tls_eckey_file</a>
4496 (default: empty)</b></DT><DD>
4498 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> configuration
4499 parameter. See there for details. </p>
4501 <p> This feature is available in Postfix 2.6 and later, when Postfix is
4502 compiled and linked with OpenSSL 1.0.0 or later. </p>
4505 </DD>
4507 <DT><b><a name="lmtp_tls_enforce_peername">lmtp_tls_enforce_peername</a>
4508 (default: yes)</b></DT><DD>
4510 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
4511 configuration parameter. See there for details. </p>
4513 <p> This feature is available in Postfix 2.3 and later. </p>
4516 </DD>
4518 <DT><b><a name="lmtp_tls_exclude_ciphers">lmtp_tls_exclude_ciphers</a>
4519 (default: empty)</b></DT><DD>
4521 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
4522 configuration parameter. See there for details. </p>
4524 <p> This feature is available in Postfix 2.3 and later. </p>
4527 </DD>
4529 <DT><b><a name="lmtp_tls_fingerprint_cert_match">lmtp_tls_fingerprint_cert_match</a>
4530 (default: empty)</b></DT><DD>
4532 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a>
4533 configuration parameter. See there for details. </p>
4535 <p> This feature is available in Postfix 2.5 and later. </p>
4538 </DD>
4540 <DT><b><a name="lmtp_tls_fingerprint_digest">lmtp_tls_fingerprint_digest</a>
4541 (default: md5)</b></DT><DD>
4543 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a>
4544 configuration parameter. See there for details. </p>
4546 <p> This feature is available in Postfix 2.5 and later. </p>
4549 </DD>
4551 <DT><b><a name="lmtp_tls_key_file">lmtp_tls_key_file</a>
4552 (default: $<a href="postconf.5.html#lmtp_tls_cert_file">lmtp_tls_cert_file</a>)</b></DT><DD>
4554 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a>
4555 configuration parameter. See there for details. </p>
4557 <p> This feature is available in Postfix 2.3 and later. </p>
4560 </DD>
4562 <DT><b><a name="lmtp_tls_loglevel">lmtp_tls_loglevel</a>
4563 (default: 0)</b></DT><DD>
4565 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a>
4566 configuration parameter. See there for details. </p>
4568 <p> This feature is available in Postfix 2.3 and later. </p>
4571 </DD>
4573 <DT><b><a name="lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>
4574 (default: empty)</b></DT><DD>
4576 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>
4577 configuration parameter. See there for details. </p>
4579 <p> This feature is available in Postfix 2.3 and later. </p>
4582 </DD>
4584 <DT><b><a name="lmtp_tls_mandatory_exclude_ciphers">lmtp_tls_mandatory_exclude_ciphers</a>
4585 (default: empty)</b></DT><DD>
4587 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a>
4588 configuration parameter. See there for details. </p>
4590 <p> This feature is available in Postfix 2.3 and later. </p>
4593 </DD>
4595 <DT><b><a name="lmtp_tls_mandatory_protocols">lmtp_tls_mandatory_protocols</a>
4596 (default: SSLv3, TLSv1)</b></DT><DD>
4598 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a>
4599 configuration parameter. See there for details. </p>
4601 <p> This feature is available in Postfix 2.3 and later. </p>
4604 </DD>
4606 <DT><b><a name="lmtp_tls_note_starttls_offer">lmtp_tls_note_starttls_offer</a>
4607 (default: no)</b></DT><DD>
4609 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a>
4610 configuration parameter. See there for details. </p>
4612 <p> This feature is available in Postfix 2.3 and later. </p>
4615 </DD>
4617 <DT><b><a name="lmtp_tls_per_site">lmtp_tls_per_site</a>
4618 (default: empty)</b></DT><DD>
4620 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> configuration
4621 parameter. See there for details. </p>
4623 <p> This feature is available in Postfix 2.3 and later. </p>
4626 </DD>
4628 <DT><b><a name="lmtp_tls_policy_maps">lmtp_tls_policy_maps</a>
4629 (default: empty)</b></DT><DD>
4631 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>
4632 configuration parameter. See there for details. </p>
4634 <p> This feature is available in Postfix 2.3 and later. </p>
4637 </DD>
4639 <DT><b><a name="lmtp_tls_protocols">lmtp_tls_protocols</a>
4640 (default: empty)</b></DT><DD>
4642 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> configuration
4643 parameter. See there for details. </p>
4645 <p> This feature is available in Postfix 2.6 and later. </p>
4648 </DD>
4650 <DT><b><a name="lmtp_tls_scert_verifydepth">lmtp_tls_scert_verifydepth</a>
4651 (default: 9)</b></DT><DD>
4653 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a>
4654 configuration parameter. See there for details. </p>
4656 <p> This feature is available in Postfix 2.3 and later. </p>
4659 </DD>
4661 <DT><b><a name="lmtp_tls_secure_cert_match">lmtp_tls_secure_cert_match</a>
4662 (default: nexthop)</b></DT><DD>
4664 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a>
4665 configuration parameter. See there for details. </p>
4667 <p> This feature is available in Postfix 2.3 and later. </p>
4670 </DD>
4672 <DT><b><a name="lmtp_tls_security_level">lmtp_tls_security_level</a>
4673 (default: empty)</b></DT><DD>
4675 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> configuration
4676 parameter. See there for details. </p>
4678 <p> This feature is available in Postfix 2.3 and later. </p>
4681 </DD>
4683 <DT><b><a name="lmtp_tls_session_cache_database">lmtp_tls_session_cache_database</a>
4684 (default: empty)</b></DT><DD>
4686 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
4687 configuration parameter. See there for details. </p>
4689 <p> This feature is available in Postfix 2.3 and later. </p>
4692 </DD>
4694 <DT><b><a name="lmtp_tls_session_cache_timeout">lmtp_tls_session_cache_timeout</a>
4695 (default: 3600s)</b></DT><DD>
4697 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a>
4698 configuration parameter. See there for details. </p>
4700 <p> This feature is available in Postfix 2.3 and later. </p>
4703 </DD>
4705 <DT><b><a name="lmtp_tls_verify_cert_match">lmtp_tls_verify_cert_match</a>
4706 (default: hostname)</b></DT><DD>
4708 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
4709 configuration parameter. See there for details. </p>
4711 <p> This feature is available in Postfix 2.3 and later. </p>
4714 </DD>
4716 <DT><b><a name="lmtp_use_tls">lmtp_use_tls</a>
4717 (default: no)</b></DT><DD>
4719 <p> The LMTP-specific version of the <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a> configuration
4720 parameter. See there for details. </p>
4722 <p> This feature is available in Postfix 2.3 and later. </p>
4725 </DD>
4727 <DT><b><a name="lmtp_xforward_timeout">lmtp_xforward_timeout</a>
4728 (default: 300s)</b></DT><DD>
4731 The LMTP client time limit for sending the XFORWARD command, and
4732 for receiving the server response.
4733 </p>
4736 In case of problems the client does NOT try the next address on
4737 the mail exchanger list.
4738 </p>
4741 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
4742 The default time unit is s (seconds).
4743 </p>
4746 This feature is available in Postfix 2.1 and later.
4747 </p>
4750 </DD>
4752 <DT><b><a name="local_command_shell">local_command_shell</a>
4753 (default: empty)</b></DT><DD>
4756 Optional shell program for <a href="local.8.html">local(8)</a> delivery to non-Postfix command.
4757 By default, non-Postfix commands are executed directly; commands
4758 are given to given to the default shell (typically, /bin/sh) only
4759 when they contain shell meta characters or shell built-in commands.
4760 </p>
4762 <p> "sendmail's restricted shell" (smrsh) is what most people will
4763 use in order to restrict what programs can be run from e.g. .forward
4764 files (smrsh is part of the Sendmail distribution). </p>
4766 <p> Note: when a shell program is specified, it is invoked even
4767 when the command contains no shell built-in commands or meta
4768 characters. </p>
4771 Example:
4772 </p>
4774 <pre>
4775 <a href="postconf.5.html#local_command_shell">local_command_shell</a> = /some/where/smrsh -c
4776 <a href="postconf.5.html#local_command_shell">local_command_shell</a> = /bin/bash -c
4777 </pre>
4780 </DD>
4782 <DT><b><a name="local_destination_concurrency_limit">local_destination_concurrency_limit</a>
4783 (default: 2)</b></DT><DD>
4785 <p> The maximal number of parallel deliveries via the local mail
4786 delivery transport to the same recipient (when
4787 "<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> = 1") or the maximal number of
4788 parallel deliveries to the same <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> (when
4789 "<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> &gt; 1"). This limit is enforced by
4790 the queue manager. The message delivery transport name is the first
4791 field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
4793 <p> A low limit of 2 is recommended, just in case someone has an
4794 expensive shell command in a .forward file or in an alias (e.g.,
4795 a mailing list manager). You don't want to run lots of those at
4796 the same time. </p>
4799 </DD>
4801 <DT><b><a name="local_destination_recipient_limit">local_destination_recipient_limit</a>
4802 (default: 1)</b></DT><DD>
4804 <p> The maximal number of recipients per message delivery via the
4805 local mail delivery transport. This limit is enforced by the queue
4806 manager. The message delivery transport name is the first field in
4807 the entry in the <a href="master.5.html">master.cf</a> file. </p>
4809 <p> Setting this parameter to a value &gt; 1 changes the meaning of
4810 <a href="postconf.5.html#local_destination_concurrency_limit">local_destination_concurrency_limit</a> from concurrency per recipient
4811 into concurrency per domain. </p>
4814 </DD>
4816 <DT><b><a name="local_header_rewrite_clients">local_header_rewrite_clients</a>
4817 (default: <a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a>)</b></DT><DD>
4819 <p> Rewrite message header addresses in mail from these clients and
4820 update incomplete addresses with the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or
4821 $<a href="postconf.5.html#mydomain">mydomain</a>; either don't rewrite message headers from other clients
4822 at all, or rewrite message headers and update incomplete addresses
4823 with the domain specified in the <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>
4824 parameter. </p>
4826 <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
4827 for details of how domain names are appended to incomplete addresses.
4828 </p>
4830 <p> Specify a list of zero or more of the following: </p>
4832 <dl>
4834 <dt><b><a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a></b></dt>
4836 <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
4837 client IP address matches $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. This is enabled by
4838 default. </dd>
4840 <dt><b><a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a></b></dt>
4842 <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
4843 client IP address matches any network or network address listed in
4844 $<a href="postconf.5.html#mynetworks">mynetworks</a>. This setting will not prevent remote mail header
4845 address rewriting when mail from a remote client is forwarded by
4846 a neighboring system. </dd>
4848 <dt><b><a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> </b></dt>
4850 <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
4851 client is successfully authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH)
4852 protocol. </dd>
4854 <dt><b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> </b></dt>
4856 <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
4857 client TLS certificate fingerprint is listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>.
4858 The fingerprint digest algorithm is configurable via the
4859 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
4860 Postfix version 2.5). </dd>
4862 <dt><b><a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a> </b></dt>
4864 <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
4865 client TLS certificate is successfully verified, regardless of
4866 whether it is listed on the server, and regardless of the certifying
4867 authority. </dd>
4869 <dt><b><a name="check_address_map">check_address_map</a> <i><a href="DATABASE_README.html">type:table</a></i> </b></dt>
4871 <dt><b><i><a href="DATABASE_README.html">type:table</a></i> </b></dt>
4873 <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
4874 client IP address matches the specified lookup table.
4875 The lookup result is ignored, and no subnet lookup is done. This
4876 is suitable for, e.g., pop-before-smtp lookup tables. </dd>
4878 </dl>
4880 <p> Examples: </p>
4882 <p> The Postfix &lt; 2.2 backwards compatible setting: always rewrite
4883 message headers, and always append my own domain to incomplete
4884 header addresses. </p>
4886 <blockquote>
4887 <pre>
4888 <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all
4889 </pre>
4890 </blockquote>
4892 <p> The purist (and default) setting: rewrite headers only in mail
4893 from Postfix sendmail and in SMTP mail from this machine. </p>
4895 <blockquote>
4896 <pre>
4897 <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>
4898 </pre>
4899 </blockquote>
4901 <p> The intermediate setting: rewrite header addresses and append
4902 $<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> information only with mail from Postfix
4903 sendmail, from local clients, or from authorized SMTP clients. </p>
4905 <p> Note: this setting will not prevent remote mail header address
4906 rewriting when mail from a remote client is forwarded by a neighboring
4907 system. </p>
4909 <blockquote>
4910 <pre>
4911 <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>,
4912 <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a>
4913 <a href="postconf.5.html#check_address_map">check_address_map</a> hash:/etc/postfix/pop-before-smtp
4914 </pre>
4915 </blockquote>
4918 </DD>
4920 <DT><b><a name="local_recipient_maps">local_recipient_maps</a>
4921 (default: <a href="proxymap.8.html">proxy</a>:unix:passwd.byname $<a href="postconf.5.html#alias_maps">alias_maps</a>)</b></DT><DD>
4923 <p> Lookup tables with all names or addresses of local recipients:
4924 a recipient address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>,
4925 $<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
4926 wild-card for domains that do not have a valid recipient list.
4927 Technically, tables listed with $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> are used as
4928 lists: Postfix needs to know only if a lookup string is found or
4929 not, but it does not use the result from table lookup. </p>
4932 If this parameter is non-empty (the default), then the Postfix SMTP
4933 server will reject mail for unknown local users.
4934 </p>
4937 To turn off local recipient checking in the Postfix SMTP server,
4938 specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty).
4939 </p>
4942 The default setting assumes that you use the default Postfix local
4943 delivery agent for local delivery. You need to update the
4944 <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> setting if:
4945 </p>
4947 <ul>
4949 <li>You redefine the local delivery agent in <a href="master.5.html">master.cf</a>.
4951 <li>You redefine the "<a href="postconf.5.html#local_transport">local_transport</a>" setting in <a href="postconf.5.html">main.cf</a>.
4953 <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>"
4954 feature of the Postfix <a href="local.8.html">local(8)</a> delivery agent.
4956 </ul>
4959 Details are described in the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> file.
4960 </p>
4963 Beware: if the Postfix SMTP server runs chrooted, you need to access
4964 the passwd file via the <a href="proxymap.8.html">proxymap(8)</a> service, in order to overcome
4965 chroot access restrictions. The alternative, maintaining a copy of
4966 the system password file in the chroot jail is not practical.
4967 </p>
4970 Examples:
4971 </p>
4973 <pre>
4974 <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =
4975 </pre>
4978 </DD>
4980 <DT><b><a name="local_transport">local_transport</a>
4981 (default: <a href="local.8.html">local</a>:$<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
4983 <p> The default mail delivery transport and next-hop destination
4984 for final delivery to domains listed with <a href="postconf.5.html#mydestination">mydestination</a>, and for
4985 [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>.
4986 This information can be overruled with the <a href="transport.5.html">transport(5)</a> table. </p>
4989 By default, local mail is delivered to the transport called "local",
4990 which is just the name of a service that is defined the <a href="master.5.html">master.cf</a> file.
4991 </p>
4994 Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
4995 is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
4996 The <i>:nexthop</i> destination is optional; its syntax is documented
4997 in the manual page of the corresponding delivery agent.
4998 </p>
5001 Beware: if you override the default local delivery agent then you
5002 need to review the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> document, otherwise the
5003 SMTP server may reject mail for local recipients.
5004 </p>
5007 </DD>
5009 <DT><b><a name="luser_relay">luser_relay</a>
5010 (default: empty)</b></DT><DD>
5013 Optional catch-all destination for unknown <a href="local.8.html">local(8)</a> recipients.
5014 By default, mail for unknown recipients in domains that match
5015 $<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
5016 as undeliverable.
5017 </p>
5020 The following $name expansions are done on <a href="postconf.5.html#luser_relay">luser_relay</a>:
5021 </p>
5023 <dl>
5025 <dt><b>$domain</b></dt>
5027 <dd>The recipient domain. </dd>
5029 <dt><b>$extension</b></dt>
5031 <dd>The recipient address extension. </dd>
5033 <dt><b>$home</b></dt>
5035 <dd>The recipient's home directory. </dd>
5037 <dt><b>$local</b></dt>
5039 <dd>The entire recipient address localpart. </dd>
5041 <dt><b>$recipient</b></dt>
5043 <dd>The full recipient address. </dd>
5045 <dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt>
5047 <dd>The system-wide recipient address extension delimiter. </dd>
5049 <dt><b>$shell</b></dt>
5051 <dd>The recipient's login shell. </dd>
5053 <dt><b>$user</b></dt>
5055 <dd>The recipient username. </dd>
5057 <dt><b>${name?value}</b></dt>
5059 <dd>Expands to <i>value</i> when <i>$name</i> has a non-empty value. </dd>
5061 <dt><b>${name:value}</b></dt>
5063 <dd>Expands to <i>value</i> when <i>$name</i> has an empty value. </dd>
5065 </dl>
5068 Instead of $name you can also specify ${name} or $(name).
5069 </p>
5072 Note: <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.
5073 </p>
5076 Note: if you use this feature for accounts not in the UNIX password
5077 file, then you must specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty)
5078 in the <a href="postconf.5.html">main.cf</a> file, otherwise the Postfix SMTP server will reject mail
5079 for non-UNIX accounts with "User unknown in local recipient table".
5080 </p>
5083 Examples:
5084 </p>
5086 <pre>
5087 <a href="postconf.5.html#luser_relay">luser_relay</a> = $user@other.host
5088 <a href="postconf.5.html#luser_relay">luser_relay</a> = $local@other.host
5089 <a href="postconf.5.html#luser_relay">luser_relay</a> = admin+$local
5090 </pre>
5093 </DD>
5095 <DT><b><a name="mail_name">mail_name</a>
5096 (default: Postfix)</b></DT><DD>
5099 The mail system name that is displayed in Received: headers, in
5100 the SMTP greeting banner, and in bounced mail.
5101 </p>
5104 </DD>
5106 <DT><b><a name="mail_owner">mail_owner</a>
5107 (default: postfix)</b></DT><DD>
5110 The UNIX system account that owns the Postfix queue and most Postfix
5111 daemon processes. Specify the name of a user account that does
5112 not share a group with other accounts and that owns no other files
5113 or processes on the system. In particular, don't specify nobody
5114 or daemon. PLEASE USE A DEDICATED USER ID AND GROUP ID.
5115 </p>
5118 When this parameter value is changed you need to re-run "<b>postfix
5119 set-permissions</b>" (with Postfix version 2.0 and earlier:
5120 "<b>/etc/postfix/post-install set-permissions</b>".
5121 </p>
5124 </DD>
5126 <DT><b><a name="mail_release_date">mail_release_date</a>
5127 (default: see "postconf -d" output)</b></DT><DD>
5130 The Postfix release date, in "YYYYMMDD" format.
5131 </p>
5134 </DD>
5136 <DT><b><a name="mail_spool_directory">mail_spool_directory</a>
5137 (default: see "postconf -d" output)</b></DT><DD>
5140 The directory where <a href="local.8.html">local(8)</a> UNIX-style mailboxes are kept. The
5141 default setting depends on the system type. Specify a name ending
5142 in / for maildir-style delivery.
5143 </p>
5146 Note: maildir delivery is done with the privileges of the recipient.
5147 If you use the <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> setting for maildir style
5148 delivery, then you must create the top-level maildir directory in
5149 advance. Postfix will not create it.
5150 </p>
5153 Examples:
5154 </p>
5156 <pre>
5157 <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/mail
5158 <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/spool/mail
5159 </pre>
5162 </DD>
5164 <DT><b><a name="mail_version">mail_version</a>
5165 (default: see "postconf -d" output)</b></DT><DD>
5168 The version of the mail system. Stable releases are named
5169 <i>major</i>.<i>minor</i>.<i>patchlevel</i>. Experimental releases
5170 also include the release date. The version string can be used in,
5171 for example, the SMTP greeting banner.
5172 </p>
5175 </DD>
5177 <DT><b><a name="mailbox_command">mailbox_command</a>
5178 (default: empty)</b></DT><DD>
5181 Optional external command that the <a href="local.8.html">local(8)</a> delivery agent should
5182 use for mailbox delivery. The command is run with the user ID and
5183 the primary group ID privileges of the recipient. Exception:
5184 command delivery for root executes with $<a href="postconf.5.html#default_privs">default_privs</a> privileges.
5185 This is not a problem, because 1) mail for root should always be
5186 aliased to a real user and 2) don't log in as root, use "su" instead.
5187 </p>
5190 The following environment variables are exported to the command:
5191 </p>
5193 <dl>
5195 <dt><b>CLIENT_ADDRESS</b></dt>
5197 <dd>Remote client network address. Available in Postfix version 2.2 and
5198 later. </dd>
5200 <dt><b>CLIENT_HELO</b></dt>
5202 <dd>Remote client EHLO command parameter. Available in Postfix version 2.2
5203 and later.</dd>
5205 <dt><b>CLIENT_HOSTNAME</b></dt>
5207 <dd>Remote client hostname. Available in Postfix version 2.2 and later.
5208 </dd>
5210 <dt><b>CLIENT_PROTOCOL</b></dt>
5212 <dd>Remote client protocol. Available in Postfix version 2.2 and later.
5213 </dd>
5215 <dt><b>DOMAIN</b></dt>
5217 <dd>The domain part of the recipient address. </dd>
5219 <dt><b>EXTENSION</b></dt>
5221 <dd>The optional address extension. </dd>
5223 <dt><b>HOME</b></dt>
5225 <dd>The recipient home directory. </dd>
5227 <dt><b>LOCAL</b></dt>
5229 <dd>The recipient address localpart. </dd>
5231 <dt><b>LOGNAME</b></dt>
5233 <dd>The recipient's username. </dd>
5235 <dt><b>ORIGINAL_RECIPIENT</b></dt>
5237 <dd>The entire recipient address, before any address rewriting or
5238 aliasing. </dd>
5240 <dt><b>RECIPIENT</b></dt>
5242 <dd>The full recipient address. </dd>
5244 <dt><b>SASL_METHOD</b></dt>
5246 <dd>SASL authentication method specified in the remote client AUTH
5247 command. Available in Postfix version 2.2 and later. </dd>
5249 <dt><b>SASL_SENDER</b></dt>
5251 <dd>SASL sender address specified in the remote client MAIL FROM
5252 command. Available in Postfix version 2.2 and later. </dd>
5254 <dt><b>SASL_USER</b></dt>
5256 <dd>SASL username specified in the remote client AUTH command.
5257 Available in Postfix version 2.2 and later. </dd>
5259 <dt><b>SENDER</b></dt>
5261 <dd>The full sender address. </dd>
5263 <dt><b>SHELL</b></dt>
5265 <dd>The recipient's login shell. </dd>
5267 <dt><b>USER</b></dt>
5269 <dd>The recipient username. </dd>
5271 </dl>
5274 Unlike other Postfix configuration parameters, the <a href="postconf.5.html#mailbox_command">mailbox_command</a>
5275 parameter is not subjected to $name substitutions. This is to make
5276 it easier to specify shell syntax (see example below).
5277 </p>
5280 If you can, avoid shell meta characters because they will force
5281 Postfix to run an expensive shell process. If you're delivering
5282 via Procmail then running a shell won't make a noticeable difference
5283 in the total cost.
5284 </p>
5287 Note: if you use the <a href="postconf.5.html#mailbox_command">mailbox_command</a> feature to deliver mail
5288 system-wide, you must set up an alias that forwards mail for root
5289 to a real user.
5290 </p>
5292 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5293 is: 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>,
5294 <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>,
5295 <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>
5298 Examples:
5299 </p>
5301 <pre>
5302 <a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail
5303 <a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail -a "$EXTENSION"
5304 <a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/maildrop -d "$USER"
5305 -f "$SENDER" "$EXTENSION"
5306 </pre>
5309 </DD>
5311 <DT><b><a name="mailbox_command_maps">mailbox_command_maps</a>
5312 (default: empty)</b></DT><DD>
5315 Optional lookup tables with per-recipient external commands to use
5316 for <a href="local.8.html">local(8)</a> mailbox delivery. Behavior is as with <a href="postconf.5.html#mailbox_command">mailbox_command</a>.
5317 </p>
5319 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5320 is: 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>,
5321 <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>,
5322 <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>
5325 </DD>
5327 <DT><b><a name="mailbox_delivery_lock">mailbox_delivery_lock</a>
5328 (default: see "postconf -d" output)</b></DT><DD>
5331 How to lock a UNIX-style <a href="local.8.html">local(8)</a> mailbox before attempting delivery.
5332 For a list of available file locking methods, use the "<b>postconf
5333 -l</b>" command.
5334 </p>
5337 This setting is ignored with <b>maildir</b> style delivery,
5338 because such deliveries are safe without explicit locks.
5339 </p>
5342 Note: The <b>dotlock</b> method requires that the recipient UID or
5343 GID has write access to the parent directory of the mailbox file.
5344 </p>
5347 Note: the default setting of this parameter is system dependent.
5348 </p>
5351 </DD>
5353 <DT><b><a name="mailbox_size_limit">mailbox_size_limit</a>
5354 (default: 51200000)</b></DT><DD>
5356 <p> The maximal size of any <a href="local.8.html">local(8)</a> individual mailbox or maildir
5357 file, or zero (no limit). In fact, this limits the size of any
5358 file that is written to upon local delivery, including files written
5359 by external commands that are executed by the <a href="local.8.html">local(8)</a> delivery
5360 agent. </p>
5363 This limit must not be smaller than the message size limit.
5364 </p>
5367 </DD>
5369 <DT><b><a name="mailbox_transport">mailbox_transport</a>
5370 (default: empty)</b></DT><DD>
5373 Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery
5374 agent should use for mailbox delivery to all local recipients,
5375 whether or not they are found in the UNIX passwd database.
5376 </p>
5378 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5379 is: 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>,
5380 <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>,
5381 <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>
5384 </DD>
5386 <DT><b><a name="mailbox_transport_maps">mailbox_transport_maps</a>
5387 (default: empty)</b></DT><DD>
5389 <p> Optional lookup tables with per-recipient message delivery
5390 transports to use for <a href="local.8.html">local(8)</a> mailbox delivery, whether or not the
5391 recipients are found in the UNIX passwd database. </p>
5393 <p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low
5394 is: 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>,
5395 <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>,
5396 <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>
5398 <p> For safety reasons, this feature does not allow $number
5399 substitutions in regular expression maps. </p>
5401 <p> This feature is available in Postfix 2.3 and later. </p>
5404 </DD>
5406 <DT><b><a name="mailq_path">mailq_path</a>
5407 (default: see "postconf -d" output)</b></DT><DD>
5410 Sendmail compatibility feature that specifies where the Postfix
5411 <a href="mailq.1.html">mailq(1)</a> command is installed. This command can be used to
5412 list the Postfix mail queue.
5413 </p>
5416 </DD>
5418 <DT><b><a name="manpage_directory">manpage_directory</a>
5419 (default: see "postconf -d" output)</b></DT><DD>
5422 Where the Postfix manual pages are installed.
5423 </p>
5426 </DD>
5428 <DT><b><a name="maps_rbl_domains">maps_rbl_domains</a>
5429 (default: empty)</b></DT><DD>
5432 Obsolete feature: use the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> feature instead.
5433 </p>
5436 </DD>
5438 <DT><b><a name="maps_rbl_reject_code">maps_rbl_reject_code</a>
5439 (default: 554)</b></DT><DD>
5442 The numerical Postfix SMTP server response code when a remote SMTP
5443 client 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>,
5444 <a href="postconf.5.html#reject_rhsbl_reverse_client">reject_rhsbl_reverse_client</a>, <a href="postconf.5.html#reject_rhsbl_sender">reject_rhsbl_sender</a> or
5445 <a href="postconf.5.html#reject_rhsbl_recipient">reject_rhsbl_recipient</a> restriction.
5446 </p>
5449 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
5450 </p>
5453 </DD>
5455 <DT><b><a name="masquerade_classes">masquerade_classes</a>
5456 (default: envelope_sender, header_sender, header_recipient)</b></DT><DD>
5459 What addresses are subject to address masquerading.
5460 </p>
5463 By default, address masquerading is limited to envelope sender
5464 addresses, and to header sender and header recipient addresses.
5465 This allows you to use address masquerading on a mail gateway while
5466 still being able to forward mail to users on individual machines.
5467 </p>
5470 Specify zero or more of: envelope_sender, envelope_recipient,
5471 header_sender, header_recipient
5472 </p>
5475 </DD>
5477 <DT><b><a name="masquerade_domains">masquerade_domains</a>
5478 (default: empty)</b></DT><DD>
5481 Optional list of domains whose subdomain structure will be stripped
5482 off in email addresses.
5483 </p>
5486 The list is processed left to right, and processing stops at the
5487 first match. Thus,
5488 </p>
5490 <blockquote>
5491 <pre>
5492 <a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = foo.example.com example.com
5493 </pre>
5494 </blockquote>
5497 strips "user@any.thing.foo.example.com" to "user@foo.example.com",
5498 but strips "user@any.thing.else.example.com" to "user@example.com".
5499 </p>
5502 A domain name prefixed with ! means do not masquerade this domain
5503 or its subdomains. Thus,
5504 </p>
5506 <blockquote>
5507 <pre>
5508 <a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = !foo.example.com example.com
5509 </pre>
5510 </blockquote>
5513 does not change "user@any.thing.foo.example.com" or "user@foo.example.com",
5514 but strips "user@any.thing.else.example.com" to "user@example.com".
5515 </p>
5517 <p> Note: with Postfix version 2.2, message header address masquerading
5518 happens only when message header address rewriting is enabled: </p>
5520 <ul>
5522 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
5524 <li> The message is received from a network client that matches
5525 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
5527 <li> The message is received from the network, and the
5528 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
5530 </ul>
5532 <p> To get the behavior before Postfix version 2.2, specify
5533 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
5536 Example:
5537 </p>
5539 <pre>
5540 <a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
5541 </pre>
5544 </DD>
5546 <DT><b><a name="masquerade_exceptions">masquerade_exceptions</a>
5547 (default: empty)</b></DT><DD>
5550 Optional list of user names that are not subjected to address
5551 masquerading, even when their address matches $<a href="postconf.5.html#masquerade_domains">masquerade_domains</a>.
5552 </p>
5555 By default, address masquerading makes no exceptions.
5556 </p>
5559 Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns,
5560 separated by commas and/or whitespace. The list is matched left to
5561 right, and the search stops on the first match. A "/file/name"
5562 pattern is replaced
5563 by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name
5564 matches a lookup key (the lookup result is ignored). Continue long
5565 lines by starting the next line with whitespace. Specify "!pattern"
5566 to exclude a name from the list. The form "!/file/name" is supported
5567 only in Postfix version 2.4 and later. </p>
5570 Examples:
5571 </p>
5573 <pre>
5574 <a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root, mailer-daemon
5575 <a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root
5576 </pre>
5579 </DD>
5581 <DT><b><a name="master_service_disable">master_service_disable</a>
5582 (default: empty)</b></DT><DD>
5584 <p> Selectively disable <a href="master.8.html">master(8)</a> listener ports by service type
5585 or by service name and type. Specify a list of service types
5586 ("inet", "unix", "fifo", or "pass") or "name.type" tuples, where
5587 "name" is the first field of a <a href="master.5.html">master.cf</a> entry and "type" is a
5588 service type. As with other Postfix matchlists, a search stops at
5589 the first match. Specify "!pattern" to exclude a service from the
5590 list. By default, all <a href="master.8.html">master(8)</a> listener ports are enabled. </p>
5592 <p> Note: this feature does not support "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
5593 patterns, nor does it support wildcards such as "*" or "all". This
5594 is intentional. </p>
5596 <p> Examples: </p>
5598 <pre>
5599 # Turn on all <a href="master.8.html">master(8)</a> listener ports (the default).
5600 <a href="postconf.5.html#master_service_disable">master_service_disable</a> =
5601 # Turn off only the main SMTP listener port.
5602 <a href="postconf.5.html#master_service_disable">master_service_disable</a> = smtp.inet
5603 # Turn off all TCP/IP listener ports.
5604 <a href="postconf.5.html#master_service_disable">master_service_disable</a> = inet
5605 # Turn off all TCP/IP listener ports except "foo".
5606 <a href="postconf.5.html#master_service_disable">master_service_disable</a> = !foo.inet, inet
5607 </pre>
5609 <p> This feature is available in Postfix 2.6 and later. </p>
5612 </DD>
5614 <DT><b><a name="max_idle">max_idle</a>
5615 (default: 100s)</b></DT><DD>
5618 The maximum amount of time that an idle Postfix daemon process waits
5619 for an incoming connection before terminating voluntarily. This
5620 parameter
5621 is ignored by the Postfix queue manager and by other long-lived
5622 Postfix daemon processes.
5623 </p>
5626 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5627 The default time unit is s (seconds).
5628 </p>
5631 </DD>
5633 <DT><b><a name="max_use">max_use</a>
5634 (default: 100)</b></DT><DD>
5637 The maximal number of incoming connections that a Postfix daemon
5638 process will service before terminating voluntarily. This parameter
5639 is ignored by the Postfix queue
5640 manager and by other long-lived Postfix daemon processes.
5641 </p>
5644 </DD>
5646 <DT><b><a name="maximal_backoff_time">maximal_backoff_time</a>
5647 (default: 4000s)</b></DT><DD>
5650 The maximal time between attempts to deliver a deferred message.
5651 </p>
5653 <p> This parameter should be set to a value greater than or equal
5654 to $<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>
5657 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5658 The default time unit is s (seconds).
5659 </p>
5662 </DD>
5664 <DT><b><a name="maximal_queue_lifetime">maximal_queue_lifetime</a>
5665 (default: 5d)</b></DT><DD>
5668 The maximal time a message is queued before it is sent back as
5669 undeliverable.
5670 </p>
5673 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
5674 The default time unit is d (days).
5675 </p>
5678 Specify 0 when mail delivery should be tried only once.
5679 </p>
5682 </DD>
5684 <DT><b><a name="message_reject_characters">message_reject_characters</a>
5685 (default: empty)</b></DT><DD>
5687 <p> The set of characters that Postfix will reject in message
5688 content. The usual C-like escape sequences are recognized: <tt>\a
5689 \b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and
5690 <tt>\\</tt>. </p>
5692 <p> Example: </p>
5694 <pre>
5695 <a href="postconf.5.html#message_reject_characters">message_reject_characters</a> = \0
5696 </pre>
5698 <p> This feature is available in Postfix 2.3 and later. </p>
5701 </DD>
5703 <DT><b><a name="message_size_limit">message_size_limit</a>
5704 (default: 10240000)</b></DT><DD>
5707 The maximal size in bytes of a message, including envelope information.
5708 </p>
5710 <p> Note: be careful when making changes. Excessively small values
5711 will result in the loss of non-delivery notifications, when a bounce
5712 message size exceeds the local or remote MTA's message size limit.
5713 </p>
5716 </DD>
5718 <DT><b><a name="message_strip_characters">message_strip_characters</a>
5719 (default: empty)</b></DT><DD>
5721 <p> The set of characters that Postfix will remove from message
5722 content. The usual C-like escape sequences are recognized: <tt>\a
5723 \b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and
5724 <tt>\\</tt>. </p>
5726 <p> Example: </p>
5728 <pre>
5729 <a href="postconf.5.html#message_strip_characters">message_strip_characters</a> = \0
5730 </pre>
5732 <p> This feature is available in Postfix 2.3 and later. </p>
5735 </DD>
5737 <DT><b><a name="milter_command_timeout">milter_command_timeout</a>
5738 (default: 30s)</b></DT><DD>
5740 <p> The time limit for sending an SMTP command to a Milter (mail
5741 filter) application, and for receiving the response. </p>
5743 <p> Specify a non-zero time value (an integral value plus an optional
5744 one-letter suffix that specifies the time unit). </p>
5746 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5747 (weeks). The default time unit is s (seconds). </p>
5749 <p> This feature is available in Postfix 2.3 and later. </p>
5752 </DD>
5754 <DT><b><a name="milter_connect_macros">milter_connect_macros</a>
5755 (default: see "postconf -d" output)</b></DT><DD>
5757 <p> The macros that are sent to Milter (mail filter) applications
5758 after completion of an SMTP connection. See <a href="MILTER_README.html">MILTER_README</a>
5759 for a list of available macro names and their meanings. </p>
5761 <p> This feature is available in Postfix 2.3 and later. </p>
5764 </DD>
5766 <DT><b><a name="milter_connect_timeout">milter_connect_timeout</a>
5767 (default: 30s)</b></DT><DD>
5769 <p> The time limit for connecting to a Milter (mail filter)
5770 application, and for negotiating protocol options. </p>
5772 <p> Specify a non-zero time value (an integral value plus an optional
5773 one-letter suffix that specifies the time unit). </p>
5775 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5776 (weeks). The default time unit is s (seconds). </p>
5778 <p> This feature is available in Postfix 2.3 and later. </p>
5781 </DD>
5783 <DT><b><a name="milter_content_timeout">milter_content_timeout</a>
5784 (default: 300s)</b></DT><DD>
5786 <p> The time limit for sending message content to a Milter (mail
5787 filter) application, and for receiving the response. </p>
5789 <p> Specify a non-zero time value (an integral value plus an optional
5790 one-letter suffix that specifies the time unit). </p>
5792 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
5793 (weeks). The default time unit is s (seconds). </p>
5795 <p> This feature is available in Postfix 2.3 and later. </p>
5798 </DD>
5800 <DT><b><a name="milter_data_macros">milter_data_macros</a>
5801 (default: see "postconf -d" output)</b></DT><DD>
5803 <p> The macros that are sent to version 4 or higher Milter (mail
5804 filter) applications after the SMTP DATA command. See <a href="MILTER_README.html">MILTER_README</a>
5805 for a list of available macro names and their meanings. </p>
5807 <p> This feature is available in Postfix 2.3 and later. </p>
5810 </DD>
5812 <DT><b><a name="milter_default_action">milter_default_action</a>
5813 (default: tempfail)</b></DT><DD>
5815 <p> The default action when a Milter (mail filter) application is
5816 unavailable or mis-configured. Specify one of the following: </p>
5818 <dl compact>
5820 <dt>accept</dt> <dd>Proceed as if the mail filter was not present.
5821 </dd>
5823 <dt>reject</dt> <dd>Reject all further commands in this session
5824 with a permanent status code.</dd>
5826 <dt>tempfail</dt> <dd>Reject all further commands in this session
5827 with a temporary status code. </dd>
5829 <dt>quarantine</dt> <dd>Like "accept", but freeze the message in
5830 the "<a href="QSHAPE_README.html#hold_queue">hold" queue</a>. Available with Postfix 2.6 and later. </dd>
5832 </dl>
5834 <p> This feature is available in Postfix 2.3 and later. </p>
5837 </DD>
5839 <DT><b><a name="milter_end_of_data_macros">milter_end_of_data_macros</a>
5840 (default: see "postconf -d" output)</b></DT><DD>
5842 <p> The macros that are sent to Milter (mail filter) applications
5843 after the message end-of-data. See <a href="MILTER_README.html">MILTER_README</a> for a list of
5844 available macro names and their meanings. </p>
5846 <p> This feature is available in Postfix 2.3 and later. </p>
5849 </DD>
5851 <DT><b><a name="milter_end_of_header_macros">milter_end_of_header_macros</a>
5852 (default: see "postconf -d" output)</b></DT><DD>
5854 <p> The macros that are sent to Milter (mail filter) applications
5855 after the end of the message header. See <a href="MILTER_README.html">MILTER_README</a> for a list
5856 of available macro names and their meanings. </p>
5858 <p> This feature is available in Postfix 2.5 and later. </p>
5861 </DD>
5863 <DT><b><a name="milter_header_checks">milter_header_checks</a>
5864 (default: empty)</b></DT><DD>
5866 <p> Optional lookup tables for content inspection of message headers
5867 that are produced by Milter applications. See the <a href="header_checks.5.html">header_checks(5)</a>
5868 manual page available actions. Currently, PREPEND is not implemented.
5869 </p>
5871 <p> The following example sends all mail that is marked as SPAM to
5872 a spam handling machine. Note that matches are case-insensitive
5873 by default. </p>
5875 <pre>
5876 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
5877 <a href="postconf.5.html#milter_header_checks">milter_header_checks</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/<a href="postconf.5.html#milter_header_checks">milter_header_checks</a>
5878 </pre>
5880 <pre>
5881 /etc/postfix/<a href="postconf.5.html#milter_header_checks">milter_header_checks</a>:
5882 /^X-SPAM-FLAG:\s+YES/ FILTER mysmtp:sanitizer.example.com:25
5883 </pre>
5885 <p> The <a href="postconf.5.html#milter_header_checks">milter_header_checks</a> mechanism could also be used for
5886 whitelisting. For example it could be used to skip heavy content
5887 inspection for DKIM-signed mail from known friendly domains. </p>
5889 <p> This feature is available in Postfix 2.7, and as an optional
5890 patch for Postfix 2.6. </p>
5893 </DD>
5895 <DT><b><a name="milter_helo_macros">milter_helo_macros</a>
5896 (default: see "postconf -d" output)</b></DT><DD>
5898 <p> The macros that are sent to Milter (mail filter) applications
5899 after the SMTP HELO or EHLO command. See
5900 <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their meanings.
5901 </p>
5903 <p> This feature is available in Postfix 2.3 and later. </p>
5906 </DD>
5908 <DT><b><a name="milter_macro_daemon_name">milter_macro_daemon_name</a>
5909 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
5911 <p> The {daemon_name} macro value for Milter (mail filter) applications.
5912 See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their
5913 meanings. </p>
5915 <p> This feature is available in Postfix 2.3 and later. </p>
5918 </DD>
5920 <DT><b><a name="milter_macro_v">milter_macro_v</a>
5921 (default: $<a href="postconf.5.html#mail_name">mail_name</a> $<a href="postconf.5.html#mail_version">mail_version</a>)</b></DT><DD>
5923 <p> The {v} macro value for Milter (mail filter) applications.
5924 See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their
5925 meanings. </p>
5927 <p> This feature is available in Postfix 2.3 and later. </p>
5930 </DD>
5932 <DT><b><a name="milter_mail_macros">milter_mail_macros</a>
5933 (default: see "postconf -d" output)</b></DT><DD>
5935 <p> The macros that are sent to Milter (mail filter) applications
5936 after the SMTP MAIL FROM command. See <a href="MILTER_README.html">MILTER_README</a>
5937 for a list of available macro names and their meanings. </p>
5939 <p> This feature is available in Postfix 2.3 and later. </p>
5942 </DD>
5944 <DT><b><a name="milter_protocol">milter_protocol</a>
5945 (default: 6)</b></DT><DD>
5947 <p> The mail filter protocol version and optional protocol extensions
5948 for communication with a Milter application; prior to Postfix 2.6
5949 the default protocol is 2. Postfix
5950 sends this version number during the initial protocol handshake.
5951 It should match the version number that is expected by the mail
5952 filter application (or by its Milter library). </p>
5954 <p>Protocol versions: </p>
5956 <dl compact>
5958 <dt>2</dt> <dd>Use Sendmail 8 mail filter protocol version 2 (default
5959 with Sendmail version 8.11 .. 8.13 and Postfix version 2.3 ..
5960 2.5).</dd>
5962 <dt>3</dt> <dd>Use Sendmail 8 mail filter protocol version 3.</dd>
5964 <dt>4</dt> <dd>Use Sendmail 8 mail filter protocol version 4.</dd>
5966 <dt>6</dt> <dd>Use Sendmail 8 mail filter protocol version 6 (default
5967 with Sendmail version 8.14 and Postfix version 2.6).</dd>
5969 </dl>
5971 <p>Protocol extensions: </p>
5973 <dl compact>
5975 <dt>no_header_reply</dt> <dd> Specify this when the Milter application
5976 will not reply for each individual message header.</dd>
5978 </dl>
5980 <p> This feature is available in Postfix 2.3 and later. </p>
5983 </DD>
5985 <DT><b><a name="milter_rcpt_macros">milter_rcpt_macros</a>
5986 (default: see "postconf -d" output)</b></DT><DD>
5988 <p> The macros that are sent to Milter (mail filter) applications
5989 after the SMTP RCPT TO command. See <a href="MILTER_README.html">MILTER_README</a>
5990 for a list of available macro names and their meanings. </p>
5992 <p> This feature is available in Postfix 2.3 and later. </p>
5995 </DD>
5997 <DT><b><a name="milter_unknown_command_macros">milter_unknown_command_macros</a>
5998 (default: see "postconf -d" output)</b></DT><DD>
6000 <p> The macros that are sent to version 3 or higher Milter (mail
6001 filter) applications after an unknown SMTP command. See <a href="MILTER_README.html">MILTER_README</a>
6002 for a list of available macro names and their meanings. </p>
6004 <p> This feature is available in Postfix 2.3 and later. </p>
6007 </DD>
6009 <DT><b><a name="mime_boundary_length_limit">mime_boundary_length_limit</a>
6010 (default: 2048)</b></DT><DD>
6013 The maximal length of MIME multipart boundary strings. The MIME
6014 processor is unable to distinguish between boundary strings that
6015 do not differ in the first $<a href="postconf.5.html#mime_boundary_length_limit">mime_boundary_length_limit</a> characters.
6016 </p>
6019 This feature is available in Postfix 2.0 and later.
6020 </p>
6023 </DD>
6025 <DT><b><a name="mime_header_checks">mime_header_checks</a>
6026 (default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD>
6029 Optional lookup tables for content inspection of MIME related
6030 message headers, as described in the <a href="header_checks.5.html">header_checks(5)</a> manual page.
6031 </p>
6034 This feature is available in Postfix 2.0 and later.
6035 </p>
6038 </DD>
6040 <DT><b><a name="mime_nesting_limit">mime_nesting_limit</a>
6041 (default: 100)</b></DT><DD>
6044 The maximal recursion level that the MIME processor will handle.
6045 Postfix refuses mail that is nested deeper than the specified limit.
6046 </p>
6049 This feature is available in Postfix 2.0 and later.
6050 </p>
6053 </DD>
6055 <DT><b><a name="minimal_backoff_time">minimal_backoff_time</a>
6056 (default: 300s)</b></DT><DD>
6059 The minimal time between attempts to deliver a deferred message;
6060 prior to Postfix 2.4 the default value was 1000s.
6061 </p>
6064 This parameter also limits the time an unreachable destination is
6065 kept in the short-term, in-memory, destination status cache.
6066 </p>
6068 <p> This parameter should be set greater than or equal to
6069 $<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>
6072 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
6073 The default time unit is s (seconds).
6074 </p>
6077 </DD>
6079 <DT><b><a name="multi_instance_directories">multi_instance_directories</a>
6080 (default: empty)</b></DT><DD>
6082 <p> An optional list of non-default Postfix configuration directories;
6083 these directories belong to additional Postfix instances that share
6084 the Postfix executable files and documentation with the default
6085 Postfix instance, and that are started, stopped, etc., together
6086 with the default Postfix instance. Specify a list of pathnames
6087 separated by comma or whitespace. </p>
6089 <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
6090 runs in single-instance mode and operates on a single Postfix
6091 instance only. Otherwise, the <a href="postfix.1.html">postfix(1)</a> command runs in multi-instance
6092 mode and invokes the multi-instance manager specified with the
6093 <a href="postconf.5.html#multi_instance_wrapper">multi_instance_wrapper</a> parameter. The multi-instance manager in
6094 turn executes <a href="postfix.1.html">postfix(1)</a> commands for the default instance and for
6095 all Postfix instances in $<a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>. </p>
6097 <p> Currently, this parameter setting is ignored except for the
6098 default <a href="postconf.5.html">main.cf</a> file. </p>
6100 <p> This feature is available in Postfix 2.6 and later. </p>
6103 </DD>
6105 <DT><b><a name="multi_instance_enable">multi_instance_enable</a>
6106 (default: no)</b></DT><DD>
6108 <p> Allow this Postfix instance to be started, stopped, etc., by a
6109 multi-instance manager. By default, new instances are created in
6110 a safe state that prevents them from being started inadvertently.
6111 This parameter is reserved for the multi-instance manager. </p>
6113 <p> This feature is available in Postfix 2.6 and later. </p>
6116 </DD>
6118 <DT><b><a name="multi_instance_group">multi_instance_group</a>
6119 (default: empty)</b></DT><DD>
6121 <p> The optional instance group name of this Postfix instance. A
6122 group identifies closely-related Postfix instances that the
6123 multi-instance manager can start, stop, etc., as a unit. This
6124 parameter is reserved for the multi-instance manager. </p>
6126 <p> This feature is available in Postfix 2.6 and later. </p>
6129 </DD>
6131 <DT><b><a name="multi_instance_name">multi_instance_name</a>
6132 (default: empty)</b></DT><DD>
6134 <p> The optional instance name of this Postfix instance. This name
6135 becomes also the default value for the <a href="postconf.5.html#syslog_name">syslog_name</a> parameter. </p>
6137 <p> This feature is available in Postfix 2.6 and later. </p>
6140 </DD>
6142 <DT><b><a name="multi_instance_wrapper">multi_instance_wrapper</a>
6143 (default: empty)</b></DT><DD>
6145 <p> The pathname of a multi-instance manager command that the
6146 <a href="postfix.1.html">postfix(1)</a> command invokes when the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>
6147 parameter value is non-empty. The pathname may be followed by
6148 initial command arguments separated by whitespace; shell
6149 metacharacters such as quotes are not supported in this context.
6150 </p>
6152 <p> The <a href="postfix.1.html">postfix(1)</a> command invokes the manager command with the
6153 <a href="postfix.1.html">postfix(1)</a> non-option command arguments on the manager command line,
6154 and with all installation configuration parameters exported into
6155 the manager command process environment. The manager command in
6156 turn invokes the <a href="postfix.1.html">postfix(1)</a> command for individual Postfix instances
6157 as "postfix -c <i><a href="postconf.5.html#config_directory">config_directory</a></i> <i>command</i>". </p>
6159 <p> This feature is available in Postfix 2.6 and later. </p>
6162 </DD>
6164 <DT><b><a name="multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a>
6165 (default: 550)</b></DT><DD>
6168 The numerical Postfix SMTP server response code when a remote SMTP
6169 client request is blocked by the <a href="postconf.5.html#reject_multi_recipient_bounce">reject_multi_recipient_bounce</a>
6170 restriction.
6171 </p>
6174 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
6175 </p>
6178 This feature is available in Postfix 2.1 and later.
6179 </p>
6182 </DD>
6184 <DT><b><a name="mydestination">mydestination</a>
6185 (default: $<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a>, localhost)</b></DT><DD>
6187 <p> The list of domains that are delivered via the $<a href="postconf.5.html#local_transport">local_transport</a>
6188 mail delivery transport. By default this is the Postfix <a href="local.8.html">local(8)</a>
6189 delivery agent which looks up all recipients in /etc/passwd and
6190 /etc/aliases. The SMTP server validates recipient addresses with
6191 $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> and rejects non-existent recipients. See also
6192 the <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.
6193 </p>
6196 The default <a href="postconf.5.html#mydestination">mydestination</a> value specifies names for the local
6197 machine only. On a mail domain gateway, you should also include
6198 $<a href="postconf.5.html#mydomain">mydomain</a>.
6199 </p>
6202 The $<a href="postconf.5.html#local_transport">local_transport</a> delivery method is also selected for mail
6203 addressed to user@[the.net.work.address] of the mail system (the
6204 IP 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>
6205 parameters).
6206 </p>
6209 Warnings:
6210 </p>
6212 <ul>
6214 <li><p>Do not specify the names of virtual domains - those domains
6215 are specified elsewhere. See <a href="VIRTUAL_README.html">VIRTUAL_README</a> for more information. </p>
6217 <li><p>Do not specify the names of domains that this machine is
6218 backup MX host for. See <a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> for how to
6219 set up backup MX hosts. </p>
6221 <li><p>By default, the Postfix SMTP server rejects mail for recipients
6222 not listed with the <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> parameter. See the
6223 <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>
6224 and <a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> parameters. </p>
6226 </ul>
6229 Specify a list of host or domain names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
6230 patterns, separated by commas and/or whitespace. A "/file/name"
6231 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
6232 is matched when a name matches a lookup key (the lookup result is
6233 ignored). Continue long lines by starting the next line with
6234 whitespace. </p>
6237 Examples:
6238 </p>
6240 <pre>
6241 <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>
6242 <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>
6243 </pre>
6246 </DD>
6248 <DT><b><a name="mydomain">mydomain</a>
6249 (default: see "postconf -d" output)</b></DT><DD>
6252 The internet domain name of this mail system. The default is to
6253 use $<a href="postconf.5.html#myhostname">myhostname</a> minus the first component, or "localdomain" (Postfix
6254 2.3 and later). $<a href="postconf.5.html#mydomain">mydomain</a> is used as
6255 a default value for many other configuration parameters.
6256 </p>
6259 Example:
6260 </p>
6262 <pre>
6263 <a href="postconf.5.html#mydomain">mydomain</a> = domain.tld
6264 </pre>
6267 </DD>
6269 <DT><b><a name="myhostname">myhostname</a>
6270 (default: see "postconf -d" output)</b></DT><DD>
6273 The internet hostname of this mail system. The default is to use
6274 the fully-qualified domain name (FQDN) from gethostname(), or to
6275 use the non-FQDN result from gethostname() and append ".$<a href="postconf.5.html#mydomain">mydomain</a>".
6276 $<a href="postconf.5.html#myhostname">myhostname</a> is used as a default value for many other configuration
6277 parameters. </p>
6280 Example:
6281 </p>
6283 <pre>
6284 <a href="postconf.5.html#myhostname">myhostname</a> = host.example.com
6285 </pre>
6288 </DD>
6290 <DT><b><a name="mynetworks">mynetworks</a>
6291 (default: see "postconf -d" output)</b></DT><DD>
6294 The list of "trusted" SMTP clients that have more privileges than
6295 "strangers".
6296 </p>
6299 In particular, "trusted" SMTP clients are allowed to relay mail
6300 through Postfix. See the <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameter
6301 description in the <a href="postconf.5.html">postconf(5)</a> manual.
6302 </p>
6305 You can specify the list of "trusted" network addresses by hand
6306 or you can let Postfix do it for you (which is the default).
6307 See the description of the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> parameter for more
6308 information.
6309 </p>
6312 If you specify the <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand,
6313 Postfix ignores the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> setting.
6314 </p>
6316 <p> Specify a list of network addresses or network/netmask patterns,
6317 separated by commas and/or whitespace. Continue long lines by
6318 starting the next line with whitespace. </p>
6320 <p> The netmask specifies the number of bits in the network part
6321 of a host address. You can also specify "/file/name" or "<a href="DATABASE_README.html">type:table</a>"
6322 patterns. A "/file/name" pattern is replaced by its contents; a
6323 "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry matches a
6324 lookup string (the lookup result is ignored). </p>
6326 <p> The list is matched left to right, and the search stops on the
6327 first match. Specify "!pattern" to exclude an address or network
6328 block from the list. The form "!/file/name" is supported only
6329 in Postfix version 2.4 and later. </p>
6331 <p> Note: IP version 6 address information must be specified inside
6332 <tt>[]</tt> in the <a href="postconf.5.html#mynetworks">mynetworks</a> value, and in files specified with
6333 "/file/name". IP version 6 addresses contain the ":" character,
6334 and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" pattern. </p>
6336 <p> Examples: </p>
6338 <pre>
6339 <a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28
6340 <a href="postconf.5.html#mynetworks">mynetworks</a> = !192.168.0.1, 192.168.0.0/28
6341 <a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28 [::1]/128 [2001:240:587::]/64
6342 <a href="postconf.5.html#mynetworks">mynetworks</a> = $<a href="postconf.5.html#config_directory">config_directory</a>/mynetworks
6343 <a href="postconf.5.html#mynetworks">mynetworks</a> = hash:/etc/postfix/network_table
6344 </pre>
6347 </DD>
6349 <DT><b><a name="mynetworks_style">mynetworks_style</a>
6350 (default: subnet)</b></DT><DD>
6353 The method to generate the default value for the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter.
6354 This is the list of trusted networks for relay access control etc.
6355 </p>
6357 <ul>
6359 <li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = host" when Postfix should
6360 "trust" only the local machine. </p>
6362 <li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = subnet" when Postfix
6363 should "trust" SMTP clients in the same IP subnetworks as the local
6364 machine. On Linux, this works correctly only with interfaces
6365 specified with the "ifconfig" command. </p>
6367 <li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = class" when Postfix should
6368 "trust" SMTP clients in the same IP class A/B/C networks as the
6369 local machine. Don't do this with a dialup site - it would cause
6370 Postfix to "trust" your entire provider's network. Instead, specify
6371 an explicit <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand, as described with the <a href="postconf.5.html#mynetworks">mynetworks</a>
6372 configuration parameter. </p>
6374 </ul>
6377 </DD>
6379 <DT><b><a name="myorigin">myorigin</a>
6380 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
6383 The domain name that locally-posted mail appears to come
6384 from, and that locally posted mail is delivered to. The default,
6385 $<a href="postconf.5.html#myhostname">myhostname</a>, is adequate for small sites. If you run a domain with
6386 multiple machines, you should (1) change this to $<a href="postconf.5.html#mydomain">mydomain</a> and (2)
6387 set up a domain-wide alias database that aliases each user to
6388 user@that.users.mailhost.
6389 </p>
6392 Example:
6393 </p>
6395 <pre>
6396 <a href="postconf.5.html#myorigin">myorigin</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
6397 </pre>
6400 </DD>
6402 <DT><b><a name="nested_header_checks">nested_header_checks</a>
6403 (default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD>
6406 Optional lookup tables for content inspection of non-MIME message
6407 headers in attached messages, as described in the <a href="header_checks.5.html">header_checks(5)</a>
6408 manual page.
6409 </p>
6412 This feature is available in Postfix 2.0 and later.
6413 </p>
6416 </DD>
6418 <DT><b><a name="newaliases_path">newaliases_path</a>
6419 (default: see "postconf -d" output)</b></DT><DD>
6422 Sendmail compatibility feature that specifies the location of the
6423 <a href="newaliases.1.html">newaliases(1)</a> command. This command can be used to rebuild the
6424 <a href="local.8.html">local(8)</a> <a href="aliases.5.html">aliases(5)</a> database.
6425 </p>
6428 </DD>
6430 <DT><b><a name="non_fqdn_reject_code">non_fqdn_reject_code</a>
6431 (default: 504)</b></DT><DD>
6434 The numerical Postfix SMTP server reply code when a client request
6435 is 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>
6436 or <a href="postconf.5.html#reject_non_fqdn_recipient">reject_non_fqdn_recipient</a> restriction.
6437 </p>
6440 </DD>
6442 <DT><b><a name="non_smtpd_milters">non_smtpd_milters</a>
6443 (default: empty)</b></DT><DD>
6445 <p> A list of Milter (mail filter) applications for new mail that
6446 does not arrive via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server. This includes local
6447 submission via the <a href="sendmail.1.html">sendmail(1)</a> command line, new mail that arrives
6448 via the Postfix <a href="qmqpd.8.html">qmqpd(8)</a> server, and old mail that is re-injected
6449 into the queue with "postsuper -r". Specify space or comma as
6450 separator. See the <a href="MILTER_README.html">MILTER_README</a> document for details. </p>
6452 <p> This feature is available in Postfix 2.3 and later. </p>
6455 </DD>
6457 <DT><b><a name="notify_classes">notify_classes</a>
6458 (default: resource, software)</b></DT><DD>
6461 The list of error classes that are reported to the postmaster. The
6462 default is to report only the most serious problems. The paranoid
6463 may wish to turn on the policy (UCE and mail relaying) and protocol
6464 error (broken mail software) reports.
6465 </p>
6467 <p> NOTE: postmaster notifications may contain confidential information
6468 such as SASL passwords or message content. It is the system
6469 administrator's responsibility to treat such information with care.
6470 </p>
6473 The error classes are:
6474 </p>
6476 <dl>
6478 <dt><b>bounce</b> (also implies <b>2bounce</b>)</dt>
6480 <dd>Send the postmaster copies of the headers of bounced mail, and
6481 send transcripts of SMTP sessions when Postfix rejects mail. The
6482 notification is sent to the address specified with the
6483 <a href="postconf.5.html#bounce_notice_recipient">bounce_notice_recipient</a> configuration parameter (default: postmaster).
6484 </dd>
6486 <dt><b>2bounce</b></dt>
6488 <dd>Send undeliverable bounced mail to the postmaster. The notification
6489 is sent to the address specified with the <a href="postconf.5.html#2bounce_notice_recipient">2bounce_notice_recipient</a>
6490 configuration parameter (default: postmaster). </dd>
6492 <dt><b>delay</b></dt>
6494 <dd>Send the postmaster copies of the headers of delayed mail. The
6495 notification is sent to the address specified with the
6496 <a href="postconf.5.html#delay_notice_recipient">delay_notice_recipient</a> configuration parameter (default: postmaster).
6497 </dd>
6499 <dt><b>policy</b></dt>
6501 <dd>Send the postmaster a transcript of the SMTP session when a
6502 client request was rejected because of (UCE) policy. The notification
6503 is sent to the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a>
6504 configuration parameter (default: postmaster). </dd>
6506 <dt><b>protocol</b></dt>
6508 <dd>Send the postmaster a transcript of the SMTP session in case
6509 of client or server protocol errors. The notification is sent to
6510 the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration
6511 parameter (default: postmaster). </dd>
6513 <dt><b>resource</b></dt>
6515 <dd>Inform the postmaster of mail not delivered due to resource
6516 problems. The notification is sent to the address specified with
6517 the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default:
6518 postmaster). </dd>
6520 <dt><b>software</b></dt>
6522 <dd>Inform the postmaster of mail not delivered due to software
6523 problems. The notification is sent to the address specified with
6524 the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default:
6525 postmaster). </dd>
6527 </dl>
6530 Examples:
6531 </p>
6533 <pre>
6534 <a href="postconf.5.html#notify_classes">notify_classes</a> = bounce, delay, policy, protocol, resource, software
6535 <a href="postconf.5.html#notify_classes">notify_classes</a> = 2bounce, resource, software
6536 </pre>
6539 </DD>
6541 <DT><b><a name="owner_request_special">owner_request_special</a>
6542 (default: yes)</b></DT><DD>
6545 Give special treatment to owner-listname and listname-request
6546 address localparts: don't split such addresses when the
6547 <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is set to "-". This feature is useful for
6548 mailing lists.
6549 </p>
6552 </DD>
6554 <DT><b><a name="parent_domain_matches_subdomains">parent_domain_matches_subdomains</a>
6555 (default: see "postconf -d" output)</b></DT><DD>
6558 What Postfix features match subdomains of "domain.tld" automatically,
6559 instead of requiring an explicit ".domain.tld" pattern. This is
6560 planned backwards compatibility: eventually, all Postfix features
6561 are expected to require explicit ".domain.tld" style patterns when
6562 you really want to match subdomains.
6563 </p>
6566 </DD>
6568 <DT><b><a name="permit_mx_backup_networks">permit_mx_backup_networks</a>
6569 (default: empty)</b></DT><DD>
6572 Restrict the use of the <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> SMTP access feature to
6573 only domains whose primary MX hosts match the listed networks.
6574 The parameter value syntax is the same as with the <a href="postconf.5.html#mynetworks">mynetworks</a>
6575 parameter; note, however, that the default value is empty. </p>
6578 </DD>
6580 <DT><b><a name="pickup_service_name">pickup_service_name</a>
6581 (default: pickup)</b></DT><DD>
6584 The name of the <a href="pickup.8.html">pickup(8)</a> service. This service picks up local mail
6585 submissions from the Postfix <a href="QSHAPE_README.html#maildrop_queue">maildrop queue</a>.
6586 </p>
6589 This feature is available in Postfix 2.0 and later.
6590 </p>
6593 </DD>
6595 <DT><b><a name="plaintext_reject_code">plaintext_reject_code</a>
6596 (default: 450)</b></DT><DD>
6599 The numerical Postfix SMTP server response code when a request
6600 is rejected by the <b><a href="postconf.5.html#reject_plaintext_session">reject_plaintext_session</a></b> restriction.
6601 </p>
6603 <p> This feature is available in Postfix 2.3 and later. </p>
6606 </DD>
6608 <DT><b><a name="postmulti_control_commands">postmulti_control_commands</a>
6609 (default: reload flush)</b></DT><DD>
6611 <p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager
6612 treats as "control" commands, that operate on running instances. For
6613 these commands, disabled instances are skipped. </p>
6615 <p> This feature is available in Postfix 2.6 and later. </p>
6618 </DD>
6620 <DT><b><a name="postmulti_start_commands">postmulti_start_commands</a>
6621 (default: start)</b></DT><DD>
6623 <p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats
6624 as "start" commands. For these commands, disabled instances are "checked"
6625 rather than "started", and failure to "start" a member instance of an
6626 instance group will abort the start-up of later instances. </p>
6628 <p> This feature is available in Postfix 2.6 and later. </p>
6631 </DD>
6633 <DT><b><a name="postmulti_stop_commands">postmulti_stop_commands</a>
6634 (default: see "postconf -d" output)</b></DT><DD>
6636 <p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats
6637 as "stop" commands. For these commands, disabled instances are skipped,
6638 and enabled instances are processed in reverse order. </p>
6640 <p> This feature is available in Postfix 2.6 and later. </p>
6643 </DD>
6645 <DT><b><a name="postscreen_access_list">postscreen_access_list</a>
6646 (default: <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>)</b></DT><DD>
6648 <p> Permanent white/blacklist for remote SMTP client IP addresses.
6649 <a href="postscreen.8.html">postscreen(8)</a> searches this list immediately after a remote SMTP
6650 client connects. Specify a comma- or whitespace-separated list of
6651 commands (in upper or lower case) or lookup tables. The search stops
6652 upon the first command that fires for the client IP address. </p>
6654 <dl>
6656 <dt> <b> <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a> </b> </dt> <dd> Whitelist the client and
6657 terminate the search if the client IP address matches $<a href="postconf.5.html#mynetworks">mynetworks</a>.
6658 Do not subject the client to any before/after 220 greeting tests.
6659 Pass the connection immediately to a Postfix SMTP server process.
6660 </dd>
6662 <dt> <b> <a href="DATABASE_README.html">type:table</a> </b> </dt> <dd> Query the specified lookup
6663 table. Each table lookup result is an access list, except that
6664 access lists inside a table cannot specify <a href="DATABASE_README.html">type:table</a> entries. <br>
6665 To discourage the use of hash, btree, etc. tables, there is no
6666 support for substring matching like <a href="smtpd.8.html">smtpd(8)</a>. Use CIDR tables
6667 instead. </dd>
6669 <dt> <b> permit </b> </dt> <dd> Whitelist the client and terminate
6670 the search. Do not subject the client to any before/after 220
6671 greeting tests. Pass the connection immediately to a Postfix SMTP
6672 server process. </dd>
6674 <dt> <b> reject </b> </dt> <dd> Blacklist the client and terminate
6675 the search. Subject the client to the action configured with the
6676 <a href="postconf.5.html#postscreen_blacklist_action">postscreen_blacklist_action</a> configuration parameter. </dd>
6678 <dt> <b> dunno </b> </dt> <dd> All <a href="postscreen.8.html">postscreen(8)</a> access lists
6679 implicitly have this command at the end. <br> When <b> dunno </b>
6680 is executed inside a lookup table, return from the lookup table and
6681 evaluate the next command. <br> When <b> dunno </b> is executed
6682 outside a lookup table, terminate the search, and subject the client
6683 to the configured before/after 220 greeting tests. </dd>
6685 </dl>
6687 <p> Example: </p>
6689 <pre>
6690 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
6691 <a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>,
6692 <a href="cidr_table.5.html">cidr</a>:/etc/postfix/postscreen_access.cidr
6693 </pre>
6695 <pre>
6696 /etc/postfix/postscreen_access.<a href="cidr_table.5.html">cidr</a>:
6697 # Rules are evaluated in the order as specified.
6698 # Blacklist 192.168.* except 192.168.0.1.
6699 192.168.0.1 dunno
6700 192.168.0.0/16 reject
6701 </pre>
6703 <p> This feature is available in Postfix 2.8. </p>
6706 </DD>
6708 <DT><b><a name="postscreen_bare_newline_action">postscreen_bare_newline_action</a>
6709 (default: ignore)</b></DT><DD>
6711 <p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client sends
6712 a bare newline character, that is, a newline not preceded by carriage
6713 return. Specify one of the following: </p>
6715 <dl>
6717 <dt> <b>ignore</b> </dt>
6719 <dd> Ignore the failure of this test. Allow other tests to complete.
6720 Do <i>not</i> repeat this test before some the result from some
6721 other test expires.
6722 This option is useful for testing and collecting statistics
6723 without blocking mail permanently. </dd>
6725 <dt> <b>enforce</b> </dt>
6727 <dd> Allow other tests to complete. Reject attempts to deliver mail
6728 with a 550 SMTP reply, and log the helo/sender/recipient information.
6729 Repeat this test the next time the client connects. </dd>
6731 <dt> <b>drop</b> </dt>
6733 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
6734 this test the next time the client connects. </dd>
6736 </dl>
6738 <p> This feature is available in Postfix 2.8. </p>
6741 </DD>
6743 <DT><b><a name="postscreen_bare_newline_enable">postscreen_bare_newline_enable</a>
6744 (default: no)</b></DT><DD>
6746 <p> Enable "bare newline" SMTP protocol tests in the <a href="postscreen.8.html">postscreen(8)</a>
6747 server. These tests are expensive: a client must disconnect after
6748 it passes the test, before it can talk to a real Postfix SMTP server.
6749 </p>
6751 <p> This feature is available in Postfix 2.8. </p>
6754 </DD>
6756 <DT><b><a name="postscreen_bare_newline_ttl">postscreen_bare_newline_ttl</a>
6757 (default: 30d)</b></DT><DD>
6759 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from
6760 a successful "bare newline" SMTP protocol test. During this
6761 time, the client IP address is excluded from this test. The default
6762 is long because a client must disconnect after it passes the test,
6763 before it can talk to a real Postfix SMTP server. </p>
6765 <p> Specify a non-zero time value (an integral value plus an optional
6766 one-letter suffix that specifies the time unit). Time units: s
6767 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
6769 <p> This feature is available in Postfix 2.8. </p>
6772 </DD>
6774 <DT><b><a name="postscreen_blacklist_action">postscreen_blacklist_action</a>
6775 (default: ignore)</b></DT><DD>
6777 <p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client is
6778 permanently blacklisted with the <a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a> parameter.
6779 Specify one of the following: </p>
6781 <dl>
6783 <dt> <b>ignore</b> (default) </dt>
6785 <dd> Ignore this result. Allow other tests to complete. Repeat
6786 this test the next time the client connects.
6787 This option is useful for testing and collecting statistics
6788 without blocking mail. </dd>
6790 <dt> <b>enforce</b> </dt>
6792 <dd> Allow other tests to complete. Reject attempts to deliver mail
6793 with a 550 SMTP reply, and log the helo/sender/recipient information.
6794 Repeat this test the next time the client connects. </dd>
6796 <dt> <b>drop</b> </dt>
6798 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
6799 this test the next time the client connects. </dd>
6801 </dl>
6803 <p> This feature is available in Postfix 2.8. </p>
6806 </DD>
6808 <DT><b><a name="postscreen_cache_cleanup_interval">postscreen_cache_cleanup_interval</a>
6809 (default: 12h)</b></DT><DD>
6811 <p> The amount of time between <a href="postscreen.8.html">postscreen(8)</a> cache cleanup runs.
6812 Cache cleanup increases the load on the cache database and should
6813 therefore not be run frequently. This feature requires that the
6814 cache database supports the "delete" and "sequence" operators.
6815 Specify a zero interval to disable cache cleanup. </p>
6817 <p> After each cache cleanup run, the <a href="postscreen.8.html">postscreen(8)</a> daemon logs the
6818 number of entries that were retained and dropped. A cleanup run is
6819 logged as "partial" when the daemon terminates early after "<b>postfix
6820 reload</b>", "<b>postfix stop</b>", or no requests for $<a href="postconf.5.html#max_idle">max_idle</a>
6821 seconds. </p>
6823 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
6824 (weeks). </p>
6826 <p> This feature is available in Postfix 2.8. </p>
6829 </DD>
6831 <DT><b><a name="postscreen_cache_map">postscreen_cache_map</a>
6832 (default: btree:$<a href="postconf.5.html#data_directory">data_directory</a>/postscreen_cache)</b></DT><DD>
6834 <p> Persistent storage for the <a href="postscreen.8.html">postscreen(8)</a> server decisions. </p>
6836 <p> This feature is available in Postfix 2.8. </p>
6839 </DD>
6841 <DT><b><a name="postscreen_cache_retention_time">postscreen_cache_retention_time</a>
6842 (default: 7d)</b></DT><DD>
6844 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will cache an expired
6845 temporary whitelist entry before it is removed. This prevents clients
6846 from being logged as "NEW" just because their cache entry expired
6847 an hour ago. It also prevents the cache from filling up with clients
6848 that passed some deep protocol test once and never came back. </p>
6850 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
6851 (weeks). </p>
6853 <p> This feature is available in Postfix 2.8. </p>
6856 </DD>
6858 <DT><b><a name="postscreen_client_connection_count_limit">postscreen_client_connection_count_limit</a>
6859 (default: $<a href="postconf.5.html#smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a>)</b></DT><DD>
6861 <p> How many simultaneous connections any client is allowed to have
6862 with the <a href="postscreen.8.html">postscreen(8)</a> daemon. By default, this limit is the same
6863 as with the Postfix SMTP server. Note that the triage process can
6864 take several seconds, with the time spent in <a href="postconf.5.html#postscreen_greet_wait">postscreen_greet_wait</a>
6865 delay, and with the time spent talking to the <a href="postscreen.8.html">postscreen(8)</a> built-in
6866 dummy SMTP protocol engine. </p>
6868 <p> This feature is available in Postfix 2.8. </p>
6871 </DD>
6873 <DT><b><a name="postscreen_command_count_limit">postscreen_command_count_limit</a>
6874 (default: 20)</b></DT><DD>
6876 <p> The limit on the total number of commands per SMTP session for
6877 <a href="postscreen.8.html">postscreen(8)</a>'s built-in SMTP protocol engine. This SMTP engine
6878 defers or rejects all attempts to deliver mail, therefore there is
6879 no need to enforce separate limits on the number of junk commands
6880 and error commands. </p>
6882 <p> This feature is available in Postfix 2.8. </p>
6885 </DD>
6887 <DT><b><a name="postscreen_command_filter">postscreen_command_filter</a>
6888 (default: $<a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a>)</b></DT><DD>
6890 <p> A mechanism to transform commands from remote SMTP clients.
6891 See <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> for further details. </p>
6893 <p> This feature is available in Postfix 2.8 and later. </p>
6896 </DD>
6898 <DT><b><a name="postscreen_command_time_limit">postscreen_command_time_limit</a>
6899 (default: ${stress?10}${stress:300}s)</b></DT><DD>
6901 <p> The time limit to read an entire command line with <a href="postscreen.8.html">postscreen(8)</a>'s
6902 built-in SMTP protocol engine. </p>
6904 <p> This feature is available in Postfix 2.8. </p>
6907 </DD>
6909 <DT><b><a name="postscreen_disable_vrfy_command">postscreen_disable_vrfy_command</a>
6910 (default: $<a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a>)</b></DT><DD>
6912 <p> Disable the SMTP VRFY command in the <a href="postscreen.8.html">postscreen(8)</a> daemon. See
6913 <a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a> for details. </p>
6915 <p> This feature is available in Postfix 2.8. </p>
6918 </DD>
6920 <DT><b><a name="postscreen_discard_ehlo_keyword_address_maps">postscreen_discard_ehlo_keyword_address_maps</a>
6921 (default: $<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>)</b></DT><DD>
6923 <p> Lookup tables, indexed by the remote SMTP client address, with
6924 case insensitive lists of EHLO keywords (pipelining, starttls, auth,
6925 etc.) that the <a href="postscreen.8.html">postscreen(8)</a> server will not send in the EHLO response
6926 to a remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details.
6927 The table is not searched by hostname for robustness reasons. </p>
6929 <p> This feature is available in Postfix 2.8 and later. </p>
6932 </DD>
6934 <DT><b><a name="postscreen_discard_ehlo_keywords">postscreen_discard_ehlo_keywords</a>
6935 (default: $<a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a>)</b></DT><DD>
6937 <p> A case insensitive list of EHLO keywords (pipelining, starttls,
6938 auth, etc.) that the <a href="postscreen.8.html">postscreen(8)</a> server will not send in the EHLO
6939 response to a remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a>
6940 for details. </p>
6942 <p> This feature is available in Postfix 2.8 and later. </p>
6945 </DD>
6947 <DT><b><a name="postscreen_dnsbl_action">postscreen_dnsbl_action</a>
6948 (default: ignore)</b></DT><DD>
6950 <p>The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client's combined
6951 DNSBL score is equal to or greater than a threshold (as defined
6952 with the <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> and <a href="postconf.5.html#postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a>
6953 parameters). Specify one of the following: </p>
6955 <dl>
6957 <dt> <b>ignore</b> (default) </dt>
6959 <dd> Ignore the failure of this test. Allow other tests to complete.
6960 Repeat this test the next time the client connects.
6961 This option is useful for testing and collecting statistics
6962 without blocking mail. </dd>
6964 <dt> <b>enforce</b> </dt>
6966 <dd> Allow other tests to complete. Reject attempts to deliver mail
6967 with a 550 SMTP reply, and log the helo/sender/recipient information.
6968 Repeat this test the next time the client connects. </dd>
6970 <dt> <b>drop</b> </dt>
6972 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
6973 this test the next time the client connects. </dd>
6975 </dl>
6977 <p> This feature is available in Postfix 2.8. </p>
6980 </DD>
6982 <DT><b><a name="postscreen_dnsbl_reply_map">postscreen_dnsbl_reply_map</a>
6983 (default: empty)</b></DT><DD>
6985 <p> A mapping from actual DNSBL domain name which includes a secret
6986 password, to the DNSBL domain name that postscreen will reply with
6987 when it rejects mail. When no mapping is found, the actual DNSBL
6988 domain will be used. </p>
6990 <p> For maximal stability it is best to use a file that is read
6991 into memory such as <a href="pcre_table.5.html">pcre</a>:, <a href="regexp_table.5.html">regexp</a>: or <a href="DATABASE_README.html#types">texthash</a>: (<a href="DATABASE_README.html#types">texthash</a>: is similar
6992 to hash:, except a) there is no need to run <a href="postmap.1.html">postmap(1)</a> before the
6993 file can be used, and b) <a href="DATABASE_README.html#types">texthash</a>: does not detect changes after
6994 the file is read). </p>
6996 <p> Example: </p>
6998 <pre>
6999 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
7000 <a href="postconf.5.html#postscreen_dnsbl_reply_map">postscreen_dnsbl_reply_map</a> = <a href="DATABASE_README.html#types">texthash</a>:/etc/postfix/dnsbl_reply
7001 </pre>
7003 <pre>
7004 /etc/postfix/dnsbl_reply:
7005 secret.zen.spamhaus.org zen.spamhaus.org
7006 </pre>
7008 <p> This feature is available in Postfix 2.8. </p>
7011 </DD>
7013 <DT><b><a name="postscreen_dnsbl_sites">postscreen_dnsbl_sites</a>
7014 (default: empty)</b></DT><DD>
7016 <p>Optional list of DNS white/blacklist domains, filters and weight
7017 factors. When the list is non-empty, the <a href="dnsblog.8.html">dnsblog(8)</a> daemon will
7018 query these domains with the IP addresses of remote SMTP clients,
7019 and <a href="postscreen.8.html">postscreen(8)</a> will update an SMTP client's DNSBL score with
7020 each non-error reply. </p>
7022 <p> Caution: when postscreen rejects mail, it replies with the DNSBL
7023 domain name. Use the <a href="postconf.5.html#postscreen_dnsbl_reply_map">postscreen_dnsbl_reply_map</a> feature to hide
7024 "password" information in DNSBL domain names. </p>
7026 <p> When a client's score is equal to or greater than the threshold
7027 specified with <a href="postconf.5.html#postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a>, <a href="postscreen.8.html">postscreen(8)</a> can drop
7028 the connection with the SMTP client. </p>
7030 <p> Specify a list of domain=filter*weight entries, separated by
7031 comma or whitespace. </p>
7033 <ul>
7035 <li> <p> When no "=filter" is specified, <a href="postscreen.8.html">postscreen(8)</a> will use any
7036 non-error DNSBL reply. Otherwise, <a href="postscreen.8.html">postscreen(8)</a> uses only DNSBL
7037 replies that match the filter. The filter has the form d.d.d.d,
7038 where each d is a number, or a pattern inside [] that contains one
7039 or more ";"-separated numbers or number..number ranges. </p>
7041 <li> <p> When no "*weight" is specified, <a href="postscreen.8.html">postscreen(8)</a> increments
7042 the SMTP client's DNSBL score by 1. Otherwise, the weight must be
7043 an integral number, and <a href="postscreen.8.html">postscreen(8)</a> adds the specified weight to
7044 the SMTP client's DNSBL score. Specify a negative number for
7045 whitelisting. </p>
7047 <li> <p> When one <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> entry produces multiple
7048 DNSBL responses, <a href="postscreen.8.html">postscreen(8)</a> applies the weight at most once.
7049 </p>
7051 </ul>
7053 <p> Examples: </p>
7055 <p> To use example.com as a high-confidence blocklist, and to
7056 block mail with example.net and example.org only when both agree:
7057 </p>
7059 <pre>
7060 <a href="postconf.5.html#postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a> = 2
7061 <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> = example.com*2, example.net, example.org
7062 </pre>
7064 <p> To filter only DNSBL replies containing 127.0.0.4: </p>
7066 <pre>
7067 <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> = example.com=127.0.0.4
7068 </pre>
7070 <p> This feature is available in Postfix 2.8. </p>
7073 </DD>
7075 <DT><b><a name="postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a>
7076 (default: 1)</b></DT><DD>
7078 <p> The inclusive lower bound for blocking an SMTP client, based on
7079 its combined DNSBL score as defined with the <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a>
7080 parameter. </p>
7082 <p> This feature is available in Postfix 2.8. </p>
7085 </DD>
7087 <DT><b><a name="postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a>
7088 (default: 1h)</b></DT><DD>
7090 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from
7091 a successful DNS blocklist test. During this time, the client IP address
7092 is excluded from this test. The default is relatively short, because a
7093 good client can immediately talk to a real Postfix SMTP server.
7094 </p>
7096 <p> Specify a non-zero time value (an integral value plus an optional
7097 one-letter suffix that specifies the time unit). Time units: s
7098 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
7100 <p> This feature is available in Postfix 2.8. </p>
7103 </DD>
7105 <DT><b><a name="postscreen_enforce_tls">postscreen_enforce_tls</a>
7106 (default: $<a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a>)</b></DT><DD>
7108 <p> Mandatory TLS: announce STARTTLS support to SMTP clients, and
7109 require that clients use TLS encryption. See smtpd_postscreen_enforce_tls
7110 for details. </p>
7112 <p> This feature is available in Postfix 2.8 and later.
7113 Preferably, use <a href="postconf.5.html#postscreen_tls_security_level">postscreen_tls_security_level</a> instead. </p>
7116 </DD>
7118 <DT><b><a name="postscreen_expansion_filter">postscreen_expansion_filter</a>
7119 (default: see "postconf -d" output)</b></DT><DD>
7121 <p> List of characters that are permitted in <a href="postconf.5.html#postscreen_reject_footer">postscreen_reject_footer</a>
7122 attribute expansions. See <a href="postconf.5.html#smtpd_expansion_filter">smtpd_expansion_filter</a> for further
7123 details. </p>
7125 <p> This feature is available in Postfix 2.8 and later. </p>
7128 </DD>
7130 <DT><b><a name="postscreen_forbidden_commands">postscreen_forbidden_commands</a>
7131 (default: $<a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a>)</b></DT><DD>
7133 <p> List of commands that the <a href="postscreen.8.html">postscreen(8)</a> server considers in
7134 violation of the SMTP protocol. See <a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a> for
7135 syntax, and <a href="postconf.5.html#postscreen_non_smtp_command_action">postscreen_non_smtp_command_action</a> for possible actions.
7136 </p>
7138 <p> This feature is available in Postfix 2.8. </p>
7141 </DD>
7143 <DT><b><a name="postscreen_greet_action">postscreen_greet_action</a>
7144 (default: ignore)</b></DT><DD>
7146 <p>The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client speaks
7147 before its turn within the time specified with the <a href="postconf.5.html#postscreen_greet_wait">postscreen_greet_wait</a>
7148 parameter. Specify one of the following: </p>
7150 <dl>
7152 <dt> <b>ignore</b> (default) </dt>
7154 <dd> Ignore the failure of this test. Allow other tests to complete.
7155 Repeat this test the next time the client connects.
7156 This option is useful for testing and collecting statistics
7157 without blocking mail. </dd>
7159 <dt> <b>enforce</b> </dt>
7161 <dd> Allow other tests to complete. Reject attempts to deliver mail
7162 with a 550 SMTP reply, and log the helo/sender/recipient information.
7163 Repeat this test the next time the client connects. </dd>
7165 <dt> <b>drop</b> </dt>
7167 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
7168 this test the next time the client connects. </dd>
7170 </dl>
7172 <p> In either case, <a href="postscreen.8.html">postscreen(8)</a> will not whitelist the SMTP client
7173 IP address. </p>
7175 <p> This feature is available in Postfix 2.8. </p>
7178 </DD>
7180 <DT><b><a name="postscreen_greet_banner">postscreen_greet_banner</a>
7181 (default: $<a href="postconf.5.html#smtpd_banner">smtpd_banner</a>)</b></DT><DD>
7183 <p> The <i>text</i> in the optional "220-<i>text</i>..." server
7184 response that
7185 <a href="postscreen.8.html">postscreen(8)</a> sends ahead of the real Postfix SMTP server's "220
7186 text..." response, in an attempt to confuse bad SMTP clients so
7187 that they speak before their turn (pre-greet). Specify an empty
7188 value to disable this feature. </p>
7190 <p> This feature is available in Postfix 2.8. </p>
7193 </DD>
7195 <DT><b><a name="postscreen_greet_ttl">postscreen_greet_ttl</a>
7196 (default: 1d)</b></DT><DD>
7198 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from
7199 a successful PREGREET test. During this time, the client IP address
7200 is excluded from this test. The default is relatively short, because
7201 a good client can immediately talk to a real Postfix SMTP server. </p>
7203 <p> Specify a non-zero time value (an integral value plus an optional
7204 one-letter suffix that specifies the time unit). Time units: s
7205 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
7207 <p> This feature is available in Postfix 2.8. </p>
7210 </DD>
7212 <DT><b><a name="postscreen_greet_wait">postscreen_greet_wait</a>
7213 (default: ${stress?2}${stress:6}s)</b></DT><DD>
7215 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will wait for an SMTP
7216 client to send a command before its turn, and for DNS blocklist
7217 lookup results to arrive (default: up to 2 seconds under stress,
7218 up to 6 seconds otherwise). <p>
7220 <p> Specify a non-zero time value (an integral value plus an optional
7221 one-letter suffix that specifies the time unit). </p>
7223 <p> Time units: s (seconds), m (minutes), h (hours), d (days), w
7224 (weeks). </p>
7226 <p> This feature is available in Postfix 2.8. </p>
7229 </DD>
7231 <DT><b><a name="postscreen_helo_required">postscreen_helo_required</a>
7232 (default: $<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a>)</b></DT><DD>
7234 <p> Require that a remote SMTP client sends HELO or EHLO before
7235 commencing a MAIL transaction. </p>
7237 <p> This feature is available in Postfix 2.8. </p>
7240 </DD>
7242 <DT><b><a name="postscreen_non_smtp_command_action">postscreen_non_smtp_command_action</a>
7243 (default: drop)</b></DT><DD>
7245 <p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client sends
7246 non-SMTP commands as specified with the <a href="postconf.5.html#postscreen_forbidden_commands">postscreen_forbidden_commands</a>
7247 parameter. Specify one of the following: </p>
7249 <dl>
7251 <dt> <b>ignore</b> </dt>
7253 <dd> Ignore the failure of this test. Allow other tests to complete.
7254 Do <i>not</i> repeat this test before some the result from some
7255 other test expires.
7256 This option is useful for testing and collecting statistics
7257 without blocking mail permanently. </dd>
7259 <dt> <b>enforce</b> </dt>
7261 <dd> Allow other tests to complete. Reject attempts to deliver mail
7262 with a 550 SMTP reply, and log the helo/sender/recipient information.
7263 Repeat this test the next time the client connects. </dd>
7265 <dt> <b>drop</b> </dt>
7267 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
7268 this test the next time the client connects. This action is the
7269 same as with the Postfix SMTP server's <a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a>
7270 feature. </dd>
7272 </dl>
7274 <p> This feature is available in Postfix 2.8. </p>
7277 </DD>
7279 <DT><b><a name="postscreen_non_smtp_command_enable">postscreen_non_smtp_command_enable</a>
7280 (default: no)</b></DT><DD>
7282 <p> Enable "non-SMTP command" tests in the <a href="postscreen.8.html">postscreen(8)</a> server. These
7283 tests are expensive: a client must disconnect after it passes the
7284 test, before it can talk to a real Postfix SMTP server. </p>
7286 <p> This feature is available in Postfix 2.8. </p>
7289 </DD>
7291 <DT><b><a name="postscreen_non_smtp_command_ttl">postscreen_non_smtp_command_ttl</a>
7292 (default: 30d)</b></DT><DD>
7294 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from
7295 a successful "non_smtp_command" SMTP protocol test. During this
7296 time, the client IP address is excluded from this test. The default
7297 is long because a client must disconnect after it passes the test,
7298 before it can talk to a real Postfix SMTP server. </p>
7300 <p> Specify a non-zero time value (an integral value plus an optional
7301 one-letter suffix that specifies the time unit). Time units: s
7302 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
7304 <p> This feature is available in Postfix 2.8. </p>
7307 </DD>
7309 <DT><b><a name="postscreen_pipelining_action">postscreen_pipelining_action</a>
7310 (default: enforce)</b></DT><DD>
7312 <p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when an SMTP client sends
7313 multiple commands instead of sending one command and waiting for
7314 the server to respond. Specify one of the following: </p>
7316 <dl>
7318 <dt> <b>ignore</b> </dt>
7320 <dd> Ignore the failure of this test. Allow other tests to complete.
7321 Do <i>not</i> repeat this test before some the result from some
7322 other test expires.
7323 This option is useful for testing and collecting statistics
7324 without blocking mail permanently. </dd>
7326 <dt> <b>enforce</b> </dt>
7328 <dd> Allow other tests to complete. Reject attempts to deliver mail
7329 with a 550 SMTP reply, and log the helo/sender/recipient information.
7330 Repeat this test the next time the client connects. </dd>
7332 <dt> <b>drop</b> </dt>
7334 <dd> Drop the connection immediately with a 521 SMTP reply. Repeat
7335 this test the next time the client connects. </dd>
7337 </dl>
7339 <p> This feature is available in Postfix 2.8. </p>
7342 </DD>
7344 <DT><b><a name="postscreen_pipelining_enable">postscreen_pipelining_enable</a>
7345 (default: no)</b></DT><DD>
7347 <p> Enable "pipelining" SMTP protocol tests in the <a href="postscreen.8.html">postscreen(8)</a>
7348 server. These tests are expensive: a good client must disconnect
7349 after it passes the test, before it can talk to a real Postfix SMTP
7350 server. </p>
7352 <p> This feature is available in Postfix 2.8. </p>
7355 </DD>
7357 <DT><b><a name="postscreen_pipelining_ttl">postscreen_pipelining_ttl</a>
7358 (default: 30d)</b></DT><DD>
7360 <p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from
7361 a successful "pipelining" SMTP protocol test. During this time, the
7362 client IP address is excluded from this test. The default is
7363 long because a good client must disconnect after it passes the test,
7364 before it can talk to a real Postfix SMTP server. </p>
7366 <p> Specify a non-zero time value (an integral value plus an optional
7367 one-letter suffix that specifies the time unit). Time units: s
7368 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
7370 <p> This feature is available in Postfix 2.8. </p>
7373 </DD>
7375 <DT><b><a name="postscreen_post_queue_limit">postscreen_post_queue_limit</a>
7376 (default: $<a href="postconf.5.html#default_process_limit">default_process_limit</a>)</b></DT><DD>
7378 <p> The number of clients that can be waiting for service from a
7379 real SMTP server process. When this queue is full, all clients will
7380 receive a 421 reponse. </p>
7382 <p> This feature is available in Postfix 2.8. </p>
7385 </DD>
7387 <DT><b><a name="postscreen_pre_queue_limit">postscreen_pre_queue_limit</a>
7388 (default: $<a href="postconf.5.html#default_process_limit">default_process_limit</a>)</b></DT><DD>
7390 <p> The number of non-whitelisted clients that can be waiting for
7391 a decision whether they will receive service from a real SMTP server
7392 process. When this queue is full, all non-whitelisted clients will
7393 receive a 421 reponse. </p>
7395 <p> This feature is available in Postfix 2.8. </p>
7398 </DD>
7400 <DT><b><a name="postscreen_reject_footer">postscreen_reject_footer</a>
7401 (default: $<a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a>)</b></DT><DD>
7403 <p> Optional information that is appended after a 4XX or 5XX server
7404 response. See <a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a> for further details. </p>
7406 <p> This feature is available in Postfix 2.8 and later. </p>
7409 </DD>
7411 <DT><b><a name="postscreen_tls_security_level">postscreen_tls_security_level</a>
7412 (default: $<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a>)</b></DT><DD>
7414 <p> The SMTP TLS security level for the <a href="postscreen.8.html">postscreen(8)</a> server; when
7415 a non-empty value is specified, this overrides the obsolete parameters
7416 <a href="postconf.5.html#postscreen_use_tls">postscreen_use_tls</a> and <a href="postconf.5.html#postscreen_enforce_tls">postscreen_enforce_tls</a>. See <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a>
7417 for details. </p>
7419 <p> This feature is available in Postfix 2.8 and later. </p>
7422 </DD>
7424 <DT><b><a name="postscreen_use_tls">postscreen_use_tls</a>
7425 (default: $<a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a>)</b></DT><DD>
7427 <p> Opportunistic TLS: announce STARTTLS support to SMTP clients,
7428 but do not require that clients use TLS encryption. </p>
7430 <p> This feature is available in Postfix 2.8 and later.
7431 Preferably, use <a href="postconf.5.html#postscreen_tls_security_level">postscreen_tls_security_level</a> instead. </p>
7434 </DD>
7436 <DT><b><a name="postscreen_watchdog_timeout">postscreen_watchdog_timeout</a>
7437 (default: 10s)</b></DT><DD>
7439 <p> How much time a <a href="postscreen.8.html">postscreen(8)</a> process may take to respond to
7440 an SMTP client command or to perform a cache operation before it
7441 is terminated by a built-in watchdog timer. This is a safety
7442 mechanism that prevents <a href="postscreen.8.html">postscreen(8)</a> from becoming non-responsive
7443 due to a bug in Postfix itself or in system software. To avoid
7444 false alarms and unnecessary cache corruption this limit cannot be
7445 set under 10s. </p>
7447 <p> Specify a non-zero time value (an integral value plus an optional
7448 one-letter suffix that specifies the time unit). Time units: s
7449 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
7451 <p> This feature is available in Postfix 2.8. </p>
7454 </DD>
7456 <DT><b><a name="postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a>
7457 (default: <a href="DATABASE_README.html#types">static</a>:all)</b></DT><DD>
7459 <p> A list of local <a href="postscreen.8.html">postscreen(8)</a> server IP addresses where a
7460 non-whitelisted SMTP client can obtain <a href="postscreen.8.html">postscreen(8)</a>'s temporary
7461 whitelist status to talk to a Postfix SMTP server process. By
7462 default, a client can pass <a href="postscreen.8.html">postscreen(8)</a>'s whitelist tests on any
7463 local <a href="postscreen.8.html">postscreen(8)</a> server IP address. </p>
7465 <p> When <a href="postscreen.8.html">postscreen(8)</a> listens on both primary and backup MX
7466 addresses, the <a href="postconf.5.html#postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a> parameter can be
7467 used to disable whitelisting on backup MX addresses. With this
7468 configuration, <a href="postscreen.8.html">postscreen(8)</a> denies whitelisting status to clients
7469 that connect only to backup MX addresses, and prevents them from
7470 talking to a Postfix SMTP server process. </p>
7472 <p> Example: </p>
7474 <pre>
7475 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
7476 # Don't whitelist connections to the backup IP address.
7477 <a href="postconf.5.html#postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a> = !168.100.189.8, <a href="DATABASE_README.html#types">static</a>:all
7478 </pre>
7480 <p> This feature is available in Postfix 2.9 and later. </p>
7483 </DD>
7485 <DT><b><a name="prepend_delivered_header">prepend_delivered_header</a>
7486 (default: command, file, forward)</b></DT><DD>
7488 <p> The message delivery contexts where the Postfix <a href="local.8.html">local(8)</a> delivery
7489 agent prepends a Delivered-To: message header with the address
7490 that the mail was delivered to. This information is used for mail
7491 delivery loop detection. </p>
7494 By default, the Postfix local delivery agent prepends a Delivered-To:
7495 header when forwarding mail and when delivering to file (mailbox)
7496 and command. Turning off the Delivered-To: header when forwarding
7497 mail is not recommended.
7498 </p>
7501 Specify zero or more of <b>forward</b>, <b>file</b>, or <b>command</b>.
7502 </p>
7505 Example:
7506 </p>
7508 <pre>
7509 <a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a> = forward
7510 </pre>
7513 </DD>
7515 <DT><b><a name="process_id">process_id</a>
7516 (read-only)</b></DT><DD>
7519 The process ID of a Postfix command or daemon process.
7520 </p>
7523 </DD>
7525 <DT><b><a name="process_id_directory">process_id_directory</a>
7526 (default: pid)</b></DT><DD>
7529 The location of Postfix PID files relative to $<a href="postconf.5.html#queue_directory">queue_directory</a>.
7530 This is a read-only parameter.
7531 </p>
7534 </DD>
7536 <DT><b><a name="process_name">process_name</a>
7537 (read-only)</b></DT><DD>
7540 The process name of a Postfix command or daemon process.
7541 </p>
7544 </DD>
7546 <DT><b><a name="propagate_unmatched_extensions">propagate_unmatched_extensions</a>
7547 (default: canonical, virtual)</b></DT><DD>
7550 What address lookup tables copy an address extension from the lookup
7551 key to the lookup result.
7552 </p>
7555 For example, with a <a href="virtual.5.html">virtual(5)</a> mapping of "<i>joe@example.com =&gt;
7556 joe.user@example.net</i>", the address "<i>joe+foo@example.com</i>"
7557 would rewrite to "<i>joe.user+foo@example.net</i>".
7558 </p>
7561 Specify zero or more of <b>canonical</b>, <b>virtual</b>, <b>alias</b>,
7562 <b>forward</b>, <b>include</b> or <b>generic</b>. These cause
7563 address extension
7564 propagation 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,
7565 with <a href="local.8.html">local(8)</a> .forward and :include: file lookups, and with <a href="smtp.8.html">smtp(8)</a>
7566 generic maps, respectively. </p>
7569 Note: enabling this feature for types other than <b>canonical</b>
7570 and <b>virtual</b> is likely to cause problems when mail is forwarded
7571 to other sites, especially with mail that is sent to a mailing list
7572 exploder address.
7573 </p>
7576 Examples:
7577 </p>
7579 <pre>
7580 <a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual, alias,
7581 forward, include
7582 <a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual
7583 </pre>
7586 </DD>
7588 <DT><b><a name="proxy_interfaces">proxy_interfaces</a>
7589 (default: empty)</b></DT><DD>
7592 The network interface addresses that this mail system receives mail
7593 on by way of a proxy or network address translation unit.
7594 </p>
7597 This feature is available in Postfix 2.0 and later.
7598 </p>
7600 <p> You must specify your "outside" proxy/NAT addresses when your
7601 system is a backup MX host for other domains, otherwise mail delivery
7602 loops will happen when the primary MX host is down. </p>
7605 Example:
7606 </p>
7608 <pre>
7609 <a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> = 1.2.3.4
7610 </pre>
7613 </DD>
7615 <DT><b><a name="proxy_read_maps">proxy_read_maps</a>
7616 (default: see "postconf -d" output)</b></DT><DD>
7619 The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to
7620 access for the read-only service.
7621 Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored.
7622 </p>
7625 This feature is available in Postfix 2.0 and later.
7626 </p>
7629 </DD>
7631 <DT><b><a name="proxy_write_maps">proxy_write_maps</a>
7632 (default: see "postconf -d" output)</b></DT><DD>
7634 <p> The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to
7635 access for the read-write service. Postfix-owned local database
7636 files should be stored under the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>.
7637 Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored. </p>
7640 This feature is available in Postfix 2.5 and later.
7641 </p>
7644 </DD>
7646 <DT><b><a name="proxymap_service_name">proxymap_service_name</a>
7647 (default: proxymap)</b></DT><DD>
7649 <p> The name of the proxymap read-only table lookup service. This
7650 service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon. </p>
7652 <p> This feature is available in Postfix 2.6 and later. </p>
7655 </DD>
7657 <DT><b><a name="proxywrite_service_name">proxywrite_service_name</a>
7658 (default: proxywrite)</b></DT><DD>
7660 <p> The name of the proxywrite read-write table lookup service.
7661 This service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon.
7662 </p>
7664 <p> This feature is available in Postfix 2.6 and later. </p>
7667 </DD>
7669 <DT><b><a name="qmgr_clog_warn_time">qmgr_clog_warn_time</a>
7670 (default: 300s)</b></DT><DD>
7673 The minimal delay between warnings that a specific destination is
7674 clogging up the Postfix <a href="QSHAPE_README.html#active_queue">active queue</a>. Specify 0 to disable.
7675 </p>
7678 This feature is enabled with the <a href="postconf.5.html#helpful_warnings">helpful_warnings</a> parameter.
7679 </p>
7682 This feature is available in Postfix 2.0 and later.
7683 </p>
7686 </DD>
7688 <DT><b><a name="qmgr_daemon_timeout">qmgr_daemon_timeout</a>
7689 (default: 1000s)</b></DT><DD>
7691 <p> How much time a Postfix queue manager process may take to handle
7692 a request before it is terminated by a built-in watchdog timer.
7693 </p>
7696 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7697 The default time unit is s (seconds).
7698 </p>
7701 </DD>
7703 <DT><b><a name="qmgr_fudge_factor">qmgr_fudge_factor</a>
7704 (default: 100)</b></DT><DD>
7707 Obsolete feature: the percentage of delivery resources that a busy
7708 mail system will use up for delivery of a large mailing list
7709 message.
7710 </p>
7713 This feature exists only in the <a href="qmgr.8.html">oqmgr(8)</a> old queue manager. The
7714 current queue manager solves the problem in a better way.
7715 </p>
7718 </DD>
7720 <DT><b><a name="qmgr_ipc_timeout">qmgr_ipc_timeout</a>
7721 (default: 60s)</b></DT><DD>
7723 <p> The time limit for the queue manager to send or receive information
7724 over an internal communication channel. The purpose is to break
7725 out of deadlock situations. If the time limit is exceeded the
7726 software either retries or aborts the operation. </p>
7729 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7730 The default time unit is s (seconds).
7731 </p>
7734 </DD>
7736 <DT><b><a name="qmgr_message_active_limit">qmgr_message_active_limit</a>
7737 (default: 20000)</b></DT><DD>
7740 The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>.
7741 </p>
7744 </DD>
7746 <DT><b><a name="qmgr_message_recipient_limit">qmgr_message_recipient_limit</a>
7747 (default: 20000)</b></DT><DD>
7749 <p> The maximal number of recipients held in memory by the Postfix
7750 queue manager, and the maximal size of the size of the short-term,
7751 in-memory "dead" destination status cache. </p>
7754 </DD>
7756 <DT><b><a name="qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a>
7757 (default: 10)</b></DT><DD>
7760 The minimal number of in-memory recipients for any message. This
7761 takes priority over any other in-memory recipient limits (i.e.,
7762 the global <a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> and the per transport
7763 _recipient_limit) if necessary. The minimum value allowed for this
7764 parameter is 1.
7765 </p>
7768 </DD>
7770 <DT><b><a name="qmqpd_authorized_clients">qmqpd_authorized_clients</a>
7771 (default: empty)</b></DT><DD>
7774 What clients are allowed to connect to the QMQP server port.
7775 </p>
7778 By default, no client is allowed to use the service. This is
7779 because the QMQP server will relay mail to any destination.
7780 </p>
7783 Specify a list of client patterns. A list pattern specifies a host
7784 name, a domain name, an internet address, or a network/mask pattern,
7785 where the mask specifies the number of bits in the network part.
7786 When a pattern specifies a file name, its contents are substituted
7787 for the file name; when a pattern is a "<a href="DATABASE_README.html">type:table</a>" table specification,
7788 table lookup is used instead. </p>
7791 Patterns are separated by whitespace and/or commas. In order to
7792 reverse the result, precede a pattern with an
7793 exclamation point (!). The form "!/file/name" is supported only
7794 in Postfix version 2.4 and later.
7795 </p>
7798 Example:
7799 </p>
7801 <pre>
7802 <a href="postconf.5.html#qmqpd_authorized_clients">qmqpd_authorized_clients</a> = !192.168.0.1, 192.168.0.0/24
7803 </pre>
7806 </DD>
7808 <DT><b><a name="qmqpd_client_port_logging">qmqpd_client_port_logging</a>
7809 (default: no)</b></DT><DD>
7811 <p> Enable logging of the remote QMQP client port in addition to
7812 the hostname and IP address. The logging format is "host[address]:port".
7813 </p>
7815 <p> This feature is available in Postfix 2.5 and later. </p>
7818 </DD>
7820 <DT><b><a name="qmqpd_error_delay">qmqpd_error_delay</a>
7821 (default: 1s)</b></DT><DD>
7824 How long the QMQP server will pause before sending a negative reply
7825 to the client. The purpose is to slow down confused or malicious
7826 clients.
7827 </p>
7830 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7831 The default time unit is s (seconds).
7832 </p>
7835 </DD>
7837 <DT><b><a name="qmqpd_timeout">qmqpd_timeout</a>
7838 (default: 300s)</b></DT><DD>
7841 The time limit for sending or receiving information over the network.
7842 If a read or write operation blocks for more than $<a href="postconf.5.html#qmqpd_timeout">qmqpd_timeout</a>
7843 seconds the QMQP server gives up and disconnects.
7844 </p>
7847 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7848 The default time unit is s (seconds).
7849 </p>
7852 </DD>
7854 <DT><b><a name="queue_directory">queue_directory</a>
7855 (default: see "postconf -d" output)</b></DT><DD>
7858 The location of the Postfix top-level queue directory. This is the
7859 root directory of Postfix daemon processes that run chrooted.
7860 </p>
7863 </DD>
7865 <DT><b><a name="queue_file_attribute_count_limit">queue_file_attribute_count_limit</a>
7866 (default: 100)</b></DT><DD>
7869 The maximal number of (name=value) attributes that may be stored
7870 in a Postfix queue file. The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a>
7871 server.
7872 </p>
7875 This feature is available in Postfix 2.0 and later.
7876 </p>
7879 </DD>
7881 <DT><b><a name="queue_minfree">queue_minfree</a>
7882 (default: 0)</b></DT><DD>
7885 The minimal amount of free space in bytes in the queue file system
7886 that is needed to receive mail. This is currently used by the SMTP
7887 server to decide if it will accept any mail at all.
7888 </p>
7891 By default, the Postfix SMTP server rejects MAIL FROM commands when
7892 the amount of free space is less than 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a>
7893 (Postfix version 2.1 and later).
7894 To specify a higher minimum free space limit, specify a <a href="postconf.5.html#queue_minfree">queue_minfree</a>
7895 value that is at least 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a>.
7896 </p>
7899 With Postfix versions 2.0 and earlier, a <a href="postconf.5.html#queue_minfree">queue_minfree</a> value of
7900 zero means there is no minimum required amount of free space.
7901 </p>
7904 </DD>
7906 <DT><b><a name="queue_run_delay">queue_run_delay</a>
7907 (default: 300s)</b></DT><DD>
7910 The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue manager;
7911 prior to Postfix 2.4 the default value was 1000s.
7912 </p>
7914 <p> This parameter should be set less than or equal to
7915 $<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>
7918 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
7919 The default time unit is s (seconds).
7920 </p>
7923 </DD>
7925 <DT><b><a name="queue_service_name">queue_service_name</a>
7926 (default: qmgr)</b></DT><DD>
7929 The name of the <a href="qmgr.8.html">qmgr(8)</a> service. This service manages the Postfix
7930 queue and schedules delivery requests.
7931 </p>
7934 This feature is available in Postfix 2.0 and later.
7935 </p>
7938 </DD>
7940 <DT><b><a name="rbl_reply_maps">rbl_reply_maps</a>
7941 (default: empty)</b></DT><DD>
7944 Optional lookup tables with RBL response templates. The tables are
7945 indexed by the RBL domain name. By default, Postfix uses the default
7946 template as specified with the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> configuration
7947 parameter. See there for a discussion of the syntax of RBL reply
7948 templates.
7949 </p>
7952 This feature is available in Postfix 2.0 and later.
7953 </p>
7956 </DD>
7958 <DT><b><a name="readme_directory">readme_directory</a>
7959 (default: see "postconf -d" output)</b></DT><DD>
7962 The location of Postfix README files that describe how to build,
7963 configure or operate a specific Postfix subsystem or feature.
7964 </p>
7967 </DD>
7969 <DT><b><a name="receive_override_options">receive_override_options</a>
7970 (default: empty)</b></DT><DD>
7972 <p> Enable or disable recipient validation, built-in content
7973 filtering, or address mapping. Typically, these are specified in
7974 <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
7975 <a href="pickup.8.html">pickup(8)</a> daemons. </p>
7977 <p> Specify zero or more of the following options. The options
7978 override <a href="postconf.5.html">main.cf</a> settings and are either implemented by <a href="smtpd.8.html">smtpd(8)</a>,
7979 <a href="qmqpd.8.html">qmqpd(8)</a>, or <a href="pickup.8.html">pickup(8)</a> themselves, or they are forwarded to the
7980 cleanup server. </p>
7982 <dl>
7984 <dt><b><a name="no_unknown_recipient_checks">no_unknown_recipient_checks</a></b></dt>
7986 <dd>Do not try to reject unknown recipients (SMTP server only).
7987 This is typically specified AFTER an external content filter.
7988 </dd>
7990 <dt><b><a name="no_address_mappings">no_address_mappings</a></b></dt>
7992 <dd>Disable canonical address mapping, virtual alias map expansion,
7993 address masquerading, and automatic BCC (blind carbon-copy)
7994 recipients. This is typically specified BEFORE an external content
7995 filter. </dd>
7997 <dt><b><a name="no_header_body_checks">no_header_body_checks</a></b></dt>
7999 <dd>Disable header/body_checks. This is typically specified AFTER
8000 an external content filter. </dd>
8002 <dt><b><a name="no_milters">no_milters</a></b></dt>
8004 <dd>Disable Milter (mail filter) applications. This is typically
8005 specified AFTER an external content filter. </dd>
8007 </dl>
8010 Note: when the "BEFORE content filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a>
8011 setting is specified in the <a href="postconf.5.html">main.cf</a> file, specify the "AFTER content
8012 filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a> setting in <a href="master.5.html">master.cf</a> (and vice
8013 versa).
8014 </p>
8017 Examples:
8018 </p>
8020 <pre>
8021 <a href="postconf.5.html#receive_override_options">receive_override_options</a> =
8022 <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>
8023 <a href="postconf.5.html#receive_override_options">receive_override_options</a> = <a href="postconf.5.html#no_address_mappings">no_address_mappings</a>
8024 </pre>
8027 This feature is available in Postfix 2.1 and later.
8028 </p>
8031 </DD>
8033 <DT><b><a name="recipient_bcc_maps">recipient_bcc_maps</a>
8034 (default: empty)</b></DT><DD>
8037 Optional BCC (blind carbon-copy) address lookup tables, indexed by
8038 recipient address. The BCC address (multiple results are not
8039 supported) is added when mail enters from outside of Postfix.
8040 </p>
8043 This feature is available in Postfix 2.1 and later.
8044 </p>
8047 The table search order is as follows:
8048 </p>
8050 <ul>
8052 <li> Look up the "user+extension@domain.tld" address including the
8053 optional address extension.
8055 <li> Look up the "user@domain.tld" address without the optional
8056 address extension.
8058 <li> Look up the "user+extension" address local part when the
8059 recipient 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>
8060 or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
8062 <li> Look up the "user" address local part when the recipient domain
8063 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> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
8065 <li> Look up the "@domain.tld" part.
8067 </ul>
8070 Specify the types and names of databases to use. After change,
8071 run "<b>postmap /etc/postfix/recipient_bcc</b>".
8072 </p>
8075 Note: if mail to the BCC address bounces it will be returned to
8076 the sender.
8077 </p>
8079 <p> Note: automatic BCC recipients are produced only for new mail.
8080 To avoid mailer loops, automatic BCC recipients are not generated
8081 after Postfix forwards mail internally, or after Postfix generates
8082 mail itself. </p>
8085 Example:
8086 </p>
8088 <pre>
8089 <a href="postconf.5.html#recipient_bcc_maps">recipient_bcc_maps</a> = hash:/etc/postfix/recipient_bcc
8090 </pre>
8093 </DD>
8095 <DT><b><a name="recipient_canonical_classes">recipient_canonical_classes</a>
8096 (default: envelope_recipient, header_recipient)</b></DT><DD>
8098 <p> What addresses are subject to <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address
8099 mapping. By default, <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address mapping is
8100 applied to envelope recipient addresses, and to header recipient
8101 addresses. </p>
8103 <p> Specify one or more of: envelope_recipient, header_recipient
8104 </p>
8106 <p> This feature is available in Postfix 2.2 and later. </p>
8109 </DD>
8111 <DT><b><a name="recipient_canonical_maps">recipient_canonical_maps</a>
8112 (default: empty)</b></DT><DD>
8115 Optional address mapping lookup tables for envelope and header
8116 recipient addresses.
8117 The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>.
8118 </p>
8121 Note: $<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>.
8122 </p>
8125 Example:
8126 </p>
8128 <pre>
8129 <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> = hash:/etc/postfix/recipient_canonical
8130 </pre>
8133 </DD>
8135 <DT><b><a name="recipient_delimiter">recipient_delimiter</a>
8136 (default: empty)</b></DT><DD>
8139 The separator between user names and address extensions (user+foo).
8140 See <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
8141 effects this has on aliases, canonical, virtual, relocated and
8142 on .forward file lookups. Basically, the software tries user+foo
8143 and .forward+foo before trying user and .forward.
8144 </p>
8147 Example:
8148 </p>
8150 <pre>
8151 <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> = +
8152 </pre>
8155 </DD>
8157 <DT><b><a name="reject_code">reject_code</a>
8158 (default: 554)</b></DT><DD>
8161 The numerical Postfix SMTP server response code when a remote SMTP
8162 client request is rejected by the "reject" restriction.
8163 </p>
8166 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
8167 </p>
8170 </DD>
8172 <DT><b><a name="reject_tempfail_action">reject_tempfail_action</a>
8173 (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>)</b></DT><DD>
8175 <p> The Postfix SMTP server's action when a reject-type restriction
8176 fails due to a temporary error condition. Specify "defer" to defer
8177 the remote SMTP client request immediately. With the default
8178 "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
8179 for opportunities to reject mail, and defers the client request
8180 only if it would otherwise be accepted. </p>
8182 <p> For finer control, see: <a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a>,
8183 <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>,
8184 and <a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a>. </p>
8186 <p> This feature is available in Postfix 2.6 and later. </p>
8189 </DD>
8191 <DT><b><a name="relay_clientcerts">relay_clientcerts</a>
8192 (default: empty)</b></DT><DD>
8194 <p> List of tables with remote SMTP client-certificate fingerprints
8195 for which the Postfix SMTP server will allow access with the
8196 <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> feature.
8197 The fingerprint digest algorithm is configurable via the
8198 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
8199 Postfix version 2.5). </p>
8201 <p> Postfix lookup tables are in the form of (key, value) pairs.
8202 Since we only need the key, the value can be chosen freely, e.g.
8203 the name of the user or host:
8204 D7:04:2F:A7:0B:8C:A5:21:FA:31:77:E1:41:8A:EE:80 lutzpc.at.home </p>
8206 <p> Example: </p>
8208 <pre>
8209 <a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a> = hash:/etc/postfix/relay_clientcerts
8210 </pre>
8212 <p>For more fine-grained control, use <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> to select
8213 an appropriate <a href="access.5.html">access(5)</a> policy for each client.
8214 See <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a>.</p>
8216 <p>This feature is available with Postfix version 2.2.</p>
8219 </DD>
8221 <DT><b><a name="relay_destination_concurrency_limit">relay_destination_concurrency_limit</a>
8222 (default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
8224 <p> The maximal number of parallel deliveries to the same destination
8225 via the relay message delivery transport. This limit is enforced
8226 by the queue manager. The message delivery transport name is the
8227 first field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
8229 <p> This feature is available in Postfix 2.0 and later. </p>
8232 </DD>
8234 <DT><b><a name="relay_destination_recipient_limit">relay_destination_recipient_limit</a>
8235 (default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
8237 <p> The maximal number of recipients per message for the relay
8238 message delivery transport. This limit is enforced by the queue
8239 manager. The message delivery transport name is the first field in
8240 the entry in the <a href="master.5.html">master.cf</a> file. </p>
8242 <p> Setting this parameter to a value of 1 changes the meaning of
8243 <a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> from concurrency per domain
8244 into concurrency per recipient. </p>
8246 <p> This feature is available in Postfix 2.0 and later. </p>
8249 </DD>
8251 <DT><b><a name="relay_domains">relay_domains</a>
8252 (default: $<a href="postconf.5.html#mydestination">mydestination</a>)</b></DT><DD>
8254 <p> What destination domains (and subdomains thereof) this system
8255 will relay mail to. Subdomain matching is controlled with the
8256 <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter. For details about how
8257 the <a href="postconf.5.html#relay_domains">relay_domains</a> value is used, see the description of the
8258 <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
8259 restrictions. </p>
8261 <p> Domains that match $<a href="postconf.5.html#relay_domains">relay_domains</a> are delivered with the
8262 $<a href="postconf.5.html#relay_transport">relay_transport</a> mail delivery transport. The SMTP server validates
8263 recipient addresses with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> and rejects non-existent
8264 recipients. See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the
8265 <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file. </p>
8267 <p> Note: Postfix will not automatically forward mail for domains
8268 that list this system as their primary or backup MX host. See the
8269 <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>
8271 <p> Specify a list of host or domain names, "/file/name" patterns
8272 or "<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace.
8273 Continue long lines by starting the next line with whitespace. A
8274 "/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
8275 lookup table is matched when a (parent) domain appears as lookup
8276 key. Specify "!pattern" to exclude a domain from the list. The form
8277 "!/file/name" is supported only in Postfix version 2.4 and later.
8278 </p>
8281 </DD>
8283 <DT><b><a name="relay_domains_reject_code">relay_domains_reject_code</a>
8284 (default: 554)</b></DT><DD>
8287 The numerical Postfix SMTP server response code when a client
8288 request is rejected by the <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> recipient
8289 restriction.
8290 </p>
8293 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
8294 </p>
8297 </DD>
8299 <DT><b><a name="relay_recipient_maps">relay_recipient_maps</a>
8300 (default: empty)</b></DT><DD>
8302 <p> Optional lookup tables with all valid addresses in the domains
8303 that match $<a href="postconf.5.html#relay_domains">relay_domains</a>. Specify @domain as a wild-card for
8304 domains that have no valid recipient list, and become a source of
8305 backscatter mail: Postfix accepts spam for non-existent recipients
8306 and then floods innocent people with undeliverable mail. Technically,
8307 tables
8308 listed with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> are used as lists: Postfix needs
8309 to know only if a lookup string is found or not, but it does not
8310 use the result from table lookup. </p>
8313 If this parameter is non-empty, then the Postfix SMTP server will reject
8314 mail to unknown relay users. This feature is off by default.
8315 </p>
8318 See 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>
8319 file.
8320 </p>
8323 Example:
8324 </p>
8326 <pre>
8327 <a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> = hash:/etc/postfix/relay_recipients
8328 </pre>
8331 This feature is available in Postfix 2.0 and later.
8332 </p>
8335 </DD>
8337 <DT><b><a name="relay_transport">relay_transport</a>
8338 (default: relay)</b></DT><DD>
8341 The default mail delivery transport and next-hop destination for
8342 remote delivery to domains listed with $<a href="postconf.5.html#relay_domains">relay_domains</a>. In order of
8343 decreasing precedence, the nexthop destination is taken from
8344 $<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
8345 from the recipient domain. This information can be overruled with
8346 the <a href="transport.5.html">transport(5)</a> table.
8347 </p>
8350 Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
8351 is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
8352 The <i>:nexthop</i> destination is optional; its syntax is documented
8353 in the manual page of the corresponding delivery agent.
8354 </p>
8357 See 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>
8358 file.
8359 </p>
8362 This feature is available in Postfix 2.0 and later.
8363 </p>
8366 </DD>
8368 <DT><b><a name="relayhost">relayhost</a>
8369 (default: empty)</b></DT><DD>
8372 The next-hop destination of non-local mail; overrides non-local
8373 domains in recipient addresses. This information is overruled with
8374 <a href="postconf.5.html#relay_transport">relay_transport</a>, <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>,
8375 <a href="postconf.5.html#default_transport">default_transport</a>, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
8376 and with the <a href="transport.5.html">transport(5)</a> table.
8377 </p>
8380 On an intranet, specify the organizational domain name. If your
8381 internal DNS uses no MX records, specify the name of the intranet
8382 gateway host instead.
8383 </p>
8386 In the case of SMTP, specify a domain name, hostname, hostname:port,
8387 [hostname]:port, [hostaddress] or [hostaddress]:port. The form
8388 [hostname] turns off MX lookups.
8389 </p>
8392 If you're connected via UUCP, see the <a href="UUCP_README.html">UUCP_README</a> file for useful
8393 information.
8394 </p>
8397 Examples:
8398 </p>
8400 <pre>
8401 <a href="postconf.5.html#relayhost">relayhost</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
8402 <a href="postconf.5.html#relayhost">relayhost</a> = [gateway.example.com]
8403 <a href="postconf.5.html#relayhost">relayhost</a> = uucphost
8404 <a href="postconf.5.html#relayhost">relayhost</a> = [an.ip.add.ress]
8405 </pre>
8408 </DD>
8410 <DT><b><a name="relocated_maps">relocated_maps</a>
8411 (default: empty)</b></DT><DD>
8414 Optional lookup tables with new contact information for users or
8415 domains that no longer exist. The table format and lookups are
8416 documented in <a href="relocated.5.html">relocated(5)</a>.
8417 </p>
8420 If you use this feature, run "<b>postmap /etc/postfix/relocated</b>" to
8421 build the necessary DBM or DB file after change, then "<b>postfix
8422 reload</b>" to make the changes visible.
8423 </p>
8426 Examples:
8427 </p>
8429 <pre>
8430 <a href="postconf.5.html#relocated_maps">relocated_maps</a> = dbm:/etc/postfix/relocated
8431 <a href="postconf.5.html#relocated_maps">relocated_maps</a> = hash:/etc/postfix/relocated
8432 </pre>
8435 </DD>
8437 <DT><b><a name="remote_header_rewrite_domain">remote_header_rewrite_domain</a>
8438 (default: empty)</b></DT><DD>
8440 <p> Don't rewrite message headers from remote clients at all when
8441 this parameter is empty; otherwise, rewrite message headers and
8442 append the specified domain name to incomplete addresses. The
8443 <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter controls what clients Postfix
8444 considers local. </p>
8446 <p> Examples: </p>
8448 <p> The safe setting: append "domain.invalid" to incomplete header
8449 addresses from remote SMTP clients, so that those addresses cannot
8450 be confused with local addresses. </p>
8452 <blockquote>
8453 <pre>
8454 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> = domain.invalid
8455 </pre>
8456 </blockquote>
8458 <p> The default, purist, setting: don't rewrite headers from remote
8459 clients at all. </p>
8461 <blockquote>
8462 <pre>
8463 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> =
8464 </pre>
8465 </blockquote>
8468 </DD>
8470 <DT><b><a name="require_home_directory">require_home_directory</a>
8471 (default: no)</b></DT><DD>
8474 Require that a <a href="local.8.html">local(8)</a> recipient's home directory exists
8475 before mail delivery is attempted. By default this test is disabled.
8476 It can be useful for environments that import home directories to
8477 the mail server (IMPORTING HOME DIRECTORIES IS NOT RECOMMENDED).
8478 </p>
8481 </DD>
8483 <DT><b><a name="reset_owner_alias">reset_owner_alias</a>
8484 (default: no)</b></DT><DD>
8486 <p> Reset the <a href="local.8.html">local(8)</a> delivery agent's idea of the owner-alias
8487 attribute, when delivering mail to a child alias that does not have
8488 its own owner alias. </p>
8490 <p> This feature is available in Postfix 2.8 and later. With older
8491 Postfix releases, the behavior is as if this parameter is set to
8492 "yes". </p>
8494 <p> As documented in <a href="aliases.5.html">aliases(5)</a>, when an alias <i>name</i> has a
8495 companion alias named owner-<i>name</i>, delivery errors will be
8496 reported to the owner alias instead of the sender. This configuration
8497 is recommended for mailing lists. <p>
8499 <p> A less known property of the owner alias is that it also forces
8500 the <a href="local.8.html">local(8)</a> delivery agent to write local and remote addresses
8501 from alias expansion to a new queue file, instead of attempting to
8502 deliver mail to local addresses as soon as they come out of alias
8503 expansion. </p>
8505 <p> Writing local addresses from alias expansion to a new queue
8506 file allows for robust handling of temporary delivery errors: errors
8507 with one local member have no effect on deliveries to other members
8508 of the list. On the other hand, delivery to local addresses as
8509 soon as they come out of alias expansion is fragile: a temporary
8510 error with one local address from alias expansion will cause the
8511 entire alias to be expanded repeatedly until the error goes away,
8512 or until the message expires in the queue. In that case, a problem
8513 with one list member results in multiple message deliveries to other
8514 list members. </p>
8516 <p> The default behavior of Postfix 2.8 and later is to keep the
8517 owner-alias attribute of the parent alias, when delivering mail to
8518 a child alias that does not have its own owner alias. Then, local
8519 addresses from that child alias will be written to a new queue file,
8520 and a temporary error with one local address will not affect delivery
8521 to other mailing list members. </p>
8523 <p> Unfortunately, older Postfix releases reset the owner-alias
8524 attribute when delivering mail to a child alias that does not have
8525 its own owner alias. The <a href="local.8.html">local(8)</a> delivery agent then attempts to
8526 deliver local addresses as soon as they come out of child alias
8527 expansion. If delivery to any address from child alias expansion
8528 fails with a temporary error condition, the entire mailing list may
8529 be expanded repeatedly until the mail expires in the queue, resulting
8530 in multiple deliveries of the same message to mailing list members.
8531 </p>
8534 </DD>
8536 <DT><b><a name="resolve_dequoted_address">resolve_dequoted_address</a>
8537 (default: yes)</b></DT><DD>
8539 <p> Resolve a recipient address safely instead of correctly, by
8540 looking inside quotes. </p>
8542 <p> By default, the Postfix address resolver does not quote the
8543 address localpart as per <a href="http://tools.ietf.org/html/rfc822">RFC 822</a>, so that additional @ or % or !
8544 operators remain visible. This behavior is safe but it is also
8545 technically incorrect. </p>
8547 <p> If you specify "<a href="postconf.5.html#resolve_dequoted_address">resolve_dequoted_address</a> = no", then
8548 the Postfix
8549 resolver will not know about additional @ etc. operators in the
8550 address localpart. This opens opportunities for obscure mail relay
8551 attacks with user@domain@domain addresses when Postfix provides
8552 backup MX service for Sendmail systems. </p>
8555 </DD>
8557 <DT><b><a name="resolve_null_domain">resolve_null_domain</a>
8558 (default: no)</b></DT><DD>
8560 <p> Resolve an address that ends in the "@" null domain as if the
8561 local hostname were specified, instead of rejecting the address as
8562 invalid. </p>
8564 <p> This feature is available in Postfix 2.1 and later.
8565 Earlier versions always resolve the null domain as the local
8566 hostname. </p>
8568 <p> The Postfix SMTP server uses this feature to reject mail from
8569 or to addresses that end in the "@" null domain, and from addresses
8570 that rewrite into a form that ends in the "@" null domain. </p>
8573 </DD>
8575 <DT><b><a name="resolve_numeric_domain">resolve_numeric_domain</a>
8576 (default: no)</b></DT><DD>
8578 <p> Resolve "user@ipaddress" as "user@[ipaddress]", instead of
8579 rejecting the address as invalid. </p>
8581 <p> This feature is available in Postfix 2.3 and later.
8584 </DD>
8586 <DT><b><a name="rewrite_service_name">rewrite_service_name</a>
8587 (default: rewrite)</b></DT><DD>
8590 The name of the address rewriting service. This service rewrites
8591 addresses to standard form and resolves them to a (delivery method,
8592 next-hop host, recipient) triple.
8593 </p>
8596 This feature is available in Postfix 2.0 and later.
8597 </p>
8600 </DD>
8602 <DT><b><a name="sample_directory">sample_directory</a>
8603 (default: /etc/postfix)</b></DT><DD>
8606 The name of the directory with example Postfix configuration files.
8607 Starting with Postfix 2.1, these files have been replaced with the
8608 <a href="postconf.5.html">postconf(5)</a> manual page.
8609 </p>
8612 </DD>
8614 <DT><b><a name="send_cyrus_sasl_authzid">send_cyrus_sasl_authzid</a>
8615 (default: no)</b></DT><DD>
8617 <p> When authenticating to a remote SMTP or LMTP server with the
8618 default setting "no", send no SASL authoriZation ID (authzid); send
8619 only the SASL authentiCation ID (authcid) plus the authcid's password.
8620 </p>
8622 <p> The non-default setting "yes" enables the behavior of older
8623 Postfix versions. These always send a SASL authzid that is equal
8624 to the SASL authcid, but this causes inter-operability problems
8625 with some SMTP servers. </p>
8627 <p> This feature is available in Postfix 2.4.4 and later. </p>
8630 </DD>
8632 <DT><b><a name="sender_based_routing">sender_based_routing</a>
8633 (default: no)</b></DT><DD>
8636 This parameter should not be used. It was replaced by <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
8637 in Postfix version 2.3.
8638 </p>
8641 </DD>
8643 <DT><b><a name="sender_bcc_maps">sender_bcc_maps</a>
8644 (default: empty)</b></DT><DD>
8646 <p> Optional BCC (blind carbon-copy) address lookup tables, indexed
8647 by sender address. The BCC address (multiple results are not
8648 supported) is added when mail enters from outside of Postfix. </p>
8651 This feature is available in Postfix 2.1 and later.
8652 </p>
8655 The table search order is as follows:
8656 </p>
8658 <ul>
8660 <li> Look up the "user+extension@domain.tld" address including the
8661 optional address extension.
8663 <li> Look up the "user@domain.tld" address without the optional
8664 address extension.
8666 <li> Look up the "user+extension" address local part when the
8667 sender 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>
8668 or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
8670 <li> Look up the "user" address local part when the sender domain
8671 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> or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>.
8673 <li> Look up the "@domain.tld" part.
8675 </ul>
8678 Specify the types and names of databases to use. After change,
8679 run "<b>postmap /etc/postfix/sender_bcc</b>".
8680 </p>
8683 Note: if mail to the BCC address bounces it will be returned to
8684 the sender.
8685 </p>
8687 <p> Note: automatic BCC recipients are produced only for new mail.
8688 To avoid mailer loops, automatic BCC recipients are not generated
8689 after Postfix forwards mail internally, or after Postfix generates
8690 mail itself. </p>
8693 Example:
8694 </p>
8696 <pre>
8697 <a href="postconf.5.html#sender_bcc_maps">sender_bcc_maps</a> = hash:/etc/postfix/sender_bcc
8698 </pre>
8701 </DD>
8703 <DT><b><a name="sender_canonical_classes">sender_canonical_classes</a>
8704 (default: envelope_sender, header_sender)</b></DT><DD>
8706 <p> What addresses are subject to <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address
8707 mapping. By default, <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address mapping is
8708 applied to envelope sender addresses, and to header sender addresses.
8709 </p>
8711 <p> Specify one or more of: envelope_sender, header_sender </p>
8713 <p> This feature is available in Postfix 2.2 and later. </p>
8716 </DD>
8718 <DT><b><a name="sender_canonical_maps">sender_canonical_maps</a>
8719 (default: empty)</b></DT><DD>
8722 Optional address mapping lookup tables for envelope and header
8723 sender addresses.
8724 The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>.
8725 </p>
8728 Example: you want to rewrite the SENDER address "user@ugly.domain"
8729 to "user@pretty.domain", while still being able to send mail to
8730 the RECIPIENT address "user@ugly.domain".
8731 </p>
8734 Note: $<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>.
8735 </p>
8738 Example:
8739 </p>
8741 <pre>
8742 <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> = hash:/etc/postfix/sender_canonical
8743 </pre>
8746 </DD>
8748 <DT><b><a name="sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>
8749 (default: empty)</b></DT><DD>
8751 <p> A sender-dependent override for the global <a href="postconf.5.html#default_transport">default_transport</a>
8752 parameter setting. The tables are searched by the envelope sender
8753 address and @domain. A lookup result of DUNNO terminates the search
8754 without overriding the global <a href="postconf.5.html#default_transport">default_transport</a> parameter setting.
8755 This information is overruled with the <a href="transport.5.html">transport(5)</a> table. </p>
8757 <p> Note: this overrides <a href="postconf.5.html#default_transport">default_transport</a>, not <a href="postconf.5.html#transport_maps">transport_maps</a>, and
8758 therefore the expected syntax is that of <a href="postconf.5.html#default_transport">default_transport</a>, not the
8759 syntax of <a href="postconf.5.html#transport_maps">transport_maps</a>. Specifically, this does not support the
8760 <a href="postconf.5.html#transport_maps">transport_maps</a> syntax for null transport, null nexthop, or null
8761 email addresses. </p>
8763 <p> For safety reasons, this feature does not allow $number
8764 substitutions in regular expression maps. </p>
8766 <p> This feature is available in Postfix 2.7 and later. </p>
8769 </DD>
8771 <DT><b><a name="sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>
8772 (default: empty)</b></DT><DD>
8774 <p> A sender-dependent override for the global <a href="postconf.5.html#relayhost">relayhost</a> parameter
8775 setting. The tables are searched by the envelope sender address and
8776 @domain. A lookup result of DUNNO terminates the search without
8777 overriding the global <a href="postconf.5.html#relayhost">relayhost</a> parameter setting (Postfix 2.6 and
8778 later). This information is overruled with <a href="postconf.5.html#relay_transport">relay_transport</a>,
8779 <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>, <a href="postconf.5.html#default_transport">default_transport</a> and with
8780 the <a href="transport.5.html">transport(5)</a> table. </p>
8782 <p> For safety reasons, this feature does not allow $number
8783 substitutions in regular expression maps. </p>
8786 This feature is available in Postfix 2.3 and later.
8787 </p>
8790 </DD>
8792 <DT><b><a name="sendmail_path">sendmail_path</a>
8793 (default: see "postconf -d" output)</b></DT><DD>
8796 A Sendmail compatibility feature that specifies the location of
8797 the Postfix <a href="sendmail.1.html">sendmail(1)</a> command. This command can be used to
8798 submit mail into the Postfix queue.
8799 </p>
8802 </DD>
8804 <DT><b><a name="service_throttle_time">service_throttle_time</a>
8805 (default: 60s)</b></DT><DD>
8808 How long the Postfix <a href="master.8.html">master(8)</a> waits before forking a server that
8809 appears to be malfunctioning.
8810 </p>
8813 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
8814 The default time unit is s (seconds).
8815 </p>
8818 </DD>
8820 <DT><b><a name="setgid_group">setgid_group</a>
8821 (default: postdrop)</b></DT><DD>
8824 The group ownership of set-gid Postfix commands and of group-writable
8825 Postfix directories. When this parameter value is changed you need
8826 to re-run "<b>postfix set-permissions</b>" (with Postfix version 2.0 and
8827 earlier: "<b>/etc/postfix/post-install set-permissions</b>".
8828 </p>
8831 </DD>
8833 <DT><b><a name="show_user_unknown_table_name">show_user_unknown_table_name</a>
8834 (default: yes)</b></DT><DD>
8837 Display the name of the recipient table in the "User unknown"
8838 responses. The extra detail makes trouble shooting easier but also
8839 reveals information that is nobody elses business.
8840 </p>
8843 This feature is available in Postfix 2.0 and later.
8844 </p>
8847 </DD>
8849 <DT><b><a name="showq_service_name">showq_service_name</a>
8850 (default: showq)</b></DT><DD>
8853 The name of the <a href="showq.8.html">showq(8)</a> service. This service produces mail queue
8854 status reports.
8855 </p>
8858 This feature is available in Postfix 2.0 and later.
8859 </p>
8862 </DD>
8864 <DT><b><a name="smtp_address_preference">smtp_address_preference</a>
8865 (default: ipv6)</b></DT><DD>
8867 <p> The address type ("ipv6", "ipv4" or "any") that the Postfix
8868 SMTP client will try first, when a destination has IPv6 and IPv4
8869 addresses with equal MX preference. This feature has no effect
8870 unless the <a href="postconf.5.html#inet_protocols">inet_protocols</a> setting enables both IPv4 and IPv6. </p>
8872 <p> This feature is available in Postfix 2.8 and later. </p>
8875 </DD>
8877 <DT><b><a name="smtp_always_send_ehlo">smtp_always_send_ehlo</a>
8878 (default: yes)</b></DT><DD>
8881 Always send EHLO at the start of an SMTP session.
8882 </p>
8885 With "<a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> = no", Postfix sends EHLO only when
8886 the word "ESMTP" appears in the server greeting banner (example:
8887 220 spike.porcupine.org ESMTP Postfix).
8888 </p>
8891 </DD>
8893 <DT><b><a name="smtp_bind_address">smtp_bind_address</a>
8894 (default: empty)</b></DT><DD>
8897 An optional numerical network address that the Postfix SMTP client
8898 should bind to when making an IPv4 connection.
8899 </p>
8902 This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or
8903 it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client,
8904 for example:
8905 </p>
8907 <blockquote>
8908 <pre>
8909 /etc/postfix/<a href="master.5.html">master.cf</a>:
8910 smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>=11.22.33.44
8911 </pre>
8912 </blockquote>
8914 <p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv4
8915 address, and that address is a non-loopback address, it is
8916 automatically used as the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>. This supports virtual
8917 IP hosting, but can be a problem on multi-homed firewalls. See the
8918 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p>
8920 <p> Note 2: address information may be enclosed inside <tt>[]</tt>,
8921 but this form is not required here. </p>
8924 </DD>
8926 <DT><b><a name="smtp_bind_address6">smtp_bind_address6</a>
8927 (default: empty)</b></DT><DD>
8930 An optional numerical network address that the Postfix SMTP client
8931 should bind to when making an IPv6 connection.
8932 </p>
8934 <p> This feature is available in Postfix 2.2 and later. </p>
8937 This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or
8938 it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client,
8939 for example:
8940 </p>
8942 <blockquote>
8943 <pre>
8944 /etc/postfix/<a href="master.5.html">master.cf</a>:
8945 smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>=1:2:3:4:5:6:7:8
8946 </pre>
8947 </blockquote>
8949 <p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv6
8950 address, and that address is a non-loopback address, it is
8951 automatically used as the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>. This supports virtual
8952 IP hosting, but can be a problem on multi-homed firewalls. See the
8953 <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p>
8955 <p> Note 2: address information may be enclosed inside <tt>[]</tt>,
8956 but this form is not recommended here. </p>
8959 </DD>
8961 <DT><b><a name="smtp_body_checks">smtp_body_checks</a>
8962 (default: empty)</b></DT><DD>
8964 <p> Restricted <a href="header_checks.5.html">body_checks(5)</a> tables for the Postfix SMTP client.
8965 These tables are searched while mail is being delivered. Actions
8966 that change the delivery time or destination are not available.
8967 </p>
8969 <p> This feature is available in Postfix 2.5 and later. </p>
8972 </DD>
8974 <DT><b><a name="smtp_cname_overrides_servername">smtp_cname_overrides_servername</a>
8975 (default: version dependent)</b></DT><DD>
8977 <p> Allow DNS CNAME records to override the servername that the
8978 Postfix SMTP client uses for logging, SASL password lookup, TLS
8979 policy decisions, or TLS certificate verification. The value "no"
8980 hardens Postfix <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> hostname-based policies against
8981 false hostname information in DNS CNAME records, and makes SASL
8982 password file lookups more predictable. This is the default setting
8983 as of Postfix 2.3. </p>
8985 <p> This feature is available in Postfix 2.2.9 and later. </p>
8988 </DD>
8990 <DT><b><a name="smtp_connect_timeout">smtp_connect_timeout</a>
8991 (default: 30s)</b></DT><DD>
8994 The SMTP client time limit for completing a TCP connection, or
8995 zero (use the operating system built-in time limit).
8996 </p>
8999 When no connection can be made within the deadline, the Postfix
9000 SMTP client
9001 tries the next address on the mail exchanger list. Specify 0 to
9002 disable the time limit (i.e. use whatever timeout is implemented by
9003 the operating system).
9004 </p>
9007 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9008 The default time unit is s (seconds).
9009 </p>
9012 </DD>
9014 <DT><b><a name="smtp_connection_cache_destinations">smtp_connection_cache_destinations</a>
9015 (default: empty)</b></DT><DD>
9017 <p> Permanently enable SMTP connection caching for the specified
9018 destinations. With SMTP connection caching, a connection is not
9019 closed immediately after completion of a mail transaction. Instead,
9020 the connection is kept open for up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a>
9021 seconds. This allows connections to be reused for other deliveries,
9022 and can improve mail delivery performance. </p>
9024 <p> Specify a comma or white space separated list of destinations
9025 or pseudo-destinations: </p>
9027 <ul>
9029 <li> if mail is sent without a <a href="postconf.5.html#relayhost">relay host</a>: a domain name (the
9030 right-hand side of an email address, without the [] around a numeric
9031 IP address),
9033 <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
9034 [] or non-default TCP port), as specified in <a href="postconf.5.html">main.cf</a> or in the
9035 transport map,
9037 <li> if mail is sent via a UNIX-domain socket: a pathname (without
9038 the unix: prefix),
9040 <li> a /file/name with domain names and/or <a href="postconf.5.html#relayhost">relay host</a> names as
9041 defined above,
9043 <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
9044 the left-hand side. The right-hand side result from "<a href="DATABASE_README.html">type:table</a>"
9045 lookups is ignored.
9047 </ul>
9049 <p> This feature is available in Postfix 2.2 and later. </p>
9052 </DD>
9054 <DT><b><a name="smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a>
9055 (default: yes)</b></DT><DD>
9057 <p> Temporarily enable SMTP connection caching while a destination
9058 has a high volume of mail in the <a href="QSHAPE_README.html#active_queue">active queue</a>. With SMTP connection
9059 caching, a connection is not closed immediately after completion
9060 of a mail transaction. Instead, the connection is kept open for
9061 up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> seconds. This allows
9062 connections to be reused for other deliveries, and can improve mail
9063 delivery performance. </p>
9065 <p> This feature is available in Postfix 2.2 and later. </p>
9068 </DD>
9070 <DT><b><a name="smtp_connection_cache_reuse_limit">smtp_connection_cache_reuse_limit</a>
9071 (default: 10)</b></DT><DD>
9073 <p> When SMTP connection caching is enabled, the number of times that
9074 an SMTP session may be reused before it is closed.
9075 </p>
9077 <p> This feature is available in Postfix 2.2. In Postfix 2.3 it is
9078 replaced by $<a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>.</p>
9081 </DD>
9083 <DT><b><a name="smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a>
9084 (default: 2s)</b></DT><DD>
9086 <p> When SMTP connection caching is enabled, the amount of time that
9087 an unused SMTP client socket is kept open before it is closed. Do
9088 not specify larger values without permission from the remote sites.
9089 </p>
9091 <p> This feature is available in Postfix 2.2 and later. </p>
9094 </DD>
9096 <DT><b><a name="smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a>
9097 (default: 300s)</b></DT><DD>
9099 <p> The amount of time during which Postfix will use an SMTP
9100 connection repeatedly. The timer starts when the connection is
9101 initiated (i.e. it includes the connect, greeting and helo latency,
9102 in addition to the latencies of subsequent mail delivery transactions).
9103 </p>
9105 <p> This feature addresses a performance stability problem with
9106 remote SMTP servers. This problem is not specific to Postfix: it
9107 can happen when any MTA sends large amounts of SMTP email to a site
9108 that has multiple MX hosts. </p>
9110 <p> The problem starts when one of a set of MX hosts becomes slower
9111 than the rest. Even though SMTP clients connect to fast and slow
9112 MX hosts with equal probability, the slow MX host ends up with more
9113 simultaneous inbound connections than the faster MX hosts, because
9114 the slow MX host needs more time to serve each client request. </p>
9116 <p> The slow MX host becomes a connection attractor. If one MX
9117 host becomes N times slower than the rest, it dominates mail delivery
9118 latency unless there are more than N fast MX hosts to counter the
9119 effect. And if the number of MX hosts is smaller than N, the mail
9120 delivery latency becomes effectively that of the slowest MX host
9121 divided by the total number of MX hosts. </p>
9123 <p> The solution uses connection caching in a way that differs from
9124 Postfix version 2.2. By limiting the amount of time during which a connection
9125 can be used repeatedly (instead of limiting the number of deliveries
9126 over that connection), Postfix not only restores fairness in the
9127 distribution of simultaneous connections across a set of MX hosts,
9128 it also favors deliveries over connections that perform well, which
9129 is exactly what we want. </p>
9131 <p> The default reuse time limit, 300s, is comparable to the various
9132 smtp transaction timeouts which are fair estimates of maximum excess
9133 latency for a slow delivery. Note that hosts may accept thousands
9134 of messages over a single connection within the default connection
9135 reuse time limit. This number is much larger than the default Postfix
9136 version 2.2 limit of 10 messages per cached connection. It may prove necessary
9137 to lower the limit to avoid interoperability issues with MTAs that
9138 exhibit bugs when many messages are delivered via a single connection.
9139 A lower reuse time limit risks losing the benefit of connection
9140 reuse when the average connection and mail delivery latency exceeds
9141 the reuse time limit. </p>
9143 <p> This feature is available in Postfix 2.3 and later. </p>
9146 </DD>
9148 <DT><b><a name="smtp_data_done_timeout">smtp_data_done_timeout</a>
9149 (default: 600s)</b></DT><DD>
9152 The SMTP client time limit for sending the SMTP ".", and for receiving
9153 the server response.
9154 </p>
9157 When no response is received within the deadline, a warning is
9158 logged that the mail may be delivered multiple times.
9159 </p>
9162 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9163 The default time unit is s (seconds).
9164 </p>
9167 </DD>
9169 <DT><b><a name="smtp_data_init_timeout">smtp_data_init_timeout</a>
9170 (default: 120s)</b></DT><DD>
9173 The SMTP client time limit for sending the SMTP DATA command, and for
9174 receiving the server response.
9175 </p>
9178 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9179 The default time unit is s (seconds).
9180 </p>
9183 </DD>
9185 <DT><b><a name="smtp_data_xfer_timeout">smtp_data_xfer_timeout</a>
9186 (default: 180s)</b></DT><DD>
9189 The SMTP client time limit for sending the SMTP message content.
9190 When the connection makes no progress for more than $<a href="postconf.5.html#smtp_data_xfer_timeout">smtp_data_xfer_timeout</a>
9191 seconds the Postfix SMTP client terminates the transfer.
9192 </p>
9195 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9196 The default time unit is s (seconds).
9197 </p>
9200 </DD>
9202 <DT><b><a name="smtp_defer_if_no_mx_address_found">smtp_defer_if_no_mx_address_found</a>
9203 (default: no)</b></DT><DD>
9206 Defer mail delivery when no MX record resolves to an IP address.
9207 </p>
9210 The default (no) is to return the mail as undeliverable. With older
9211 Postfix versions the default was to keep trying to deliver the mail
9212 until someone fixed the MX record or until the mail was too old.
9213 </p>
9216 Note: Postfix always ignores MX records with equal or worse preference
9217 than the local MTA itself.
9218 </p>
9221 This feature is available in Postfix 2.1 and later.
9222 </p>
9225 </DD>
9227 <DT><b><a name="smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a>
9228 (default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
9230 <p> The maximal number of parallel deliveries to the same destination
9231 via the smtp message delivery transport. This limit is enforced by
9232 the queue manager. The message delivery transport name is the first
9233 field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
9236 </DD>
9238 <DT><b><a name="smtp_destination_recipient_limit">smtp_destination_recipient_limit</a>
9239 (default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
9241 <p> The maximal number of recipients per message for the smtp
9242 message delivery transport. This limit is enforced by the queue
9243 manager. The message delivery transport name is the first field in
9244 the entry in the <a href="master.5.html">master.cf</a> file. </p>
9246 <p> Setting this parameter to a value of 1 changes the meaning of
9247 <a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> from concurrency per domain
9248 into concurrency per recipient. </p>
9251 </DD>
9253 <DT><b><a name="smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>
9254 (default: empty)</b></DT><DD>
9256 <p> Lookup tables, indexed by the remote SMTP server address, with
9257 case insensitive lists of EHLO keywords (pipelining, starttls, auth,
9258 etc.) that the Postfix SMTP client will ignore in the EHLO response from a
9259 remote SMTP server. See <a href="postconf.5.html#smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a> for details. The
9260 table is not indexed by hostname for consistency with
9261 <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p>
9263 <p> This feature is available in Postfix 2.2 and later. </p>
9266 </DD>
9268 <DT><b><a name="smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a>
9269 (default: empty)</b></DT><DD>
9271 <p> A case insensitive list of EHLO keywords (pipelining, starttls,
9272 auth, etc.) that the Postfix SMTP client will ignore in the EHLO
9273 response from a remote SMTP server. </p>
9275 <p> This feature is available in Postfix 2.2 and later. </p>
9277 <p> Notes: </p>
9279 <ul>
9281 <li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
9282 this action from being logged. </p>
9284 <li> <p> Use the <a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a> feature to
9285 discard EHLO keywords selectively. </p>
9287 </ul>
9290 </DD>
9292 <DT><b><a name="smtp_dns_resolver_options">smtp_dns_resolver_options</a>
9293 (default: empty)</b></DT><DD>
9295 <p> DNS Resolver options for the Postfix SMTP client. Specify zero
9296 or more of the following options, separated by comma or whitespace.
9297 Option names are case-sensitive. Some options refer to domain names
9298 that are specified in the file /etc/resolv.conf or equivalent. </p>
9300 <dl>
9302 <dt><b>res_defnames</b></dt>
9304 <dd> Append the current domain name to single-component names (those
9305 that do not contain a "." character). This can produce incorrect
9306 results, and is the hard-coded behavior prior to Postfix 2.8. </dd>
9308 <dt><b>res_dnsrch</b></dt>
9310 <dd> Search for host names in the current domain and in parent
9311 domains. This can produce incorrect results and is therefore not
9312 recommended. </dd>
9314 </dl>
9316 <p> This feature is available in Postfix 2.8 and later. </p>
9319 </DD>
9321 <DT><b><a name="smtp_enforce_tls">smtp_enforce_tls</a>
9322 (default: no)</b></DT><DD>
9324 <p> Enforcement mode: require that remote SMTP servers use TLS
9325 encryption, and never send mail in the clear. This also requires
9326 that the remote SMTP server hostname matches the information in
9327 the remote server certificate, and that the remote SMTP server
9328 certificate was issued by a CA that is trusted by the Postfix SMTP
9329 client. If the certificate doesn't verify or the hostname doesn't
9330 match, delivery is deferred and mail stays in the queue. </p>
9332 <p> The server hostname is matched against all names provided as
9333 dNSNames in the SubjectAlternativeName. If no dNSNames are specified,
9334 the CommonName is checked. The behavior may be changed with the
9335 <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> option. </p>
9337 <p> This option is useful only if you are definitely sure that you
9338 will only connect to servers that support <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> _and_ that
9339 provide valid server certificates. Typical use is for clients that
9340 send all their email to a dedicated mailhub. </p>
9342 <p> This feature is available in Postfix 2.2 and later. With
9343 Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
9346 </DD>
9348 <DT><b><a name="smtp_fallback_relay">smtp_fallback_relay</a>
9349 (default: $<a href="postconf.5.html#fallback_relay">fallback_relay</a>)</b></DT><DD>
9352 Optional list of relay hosts for SMTP destinations that can't be
9353 found or that are unreachable. With Postfix 2.2 and earlier this
9354 parameter is called <a href="postconf.5.html#fallback_relay">fallback_relay</a>. </p>
9357 By default, mail is returned to the sender when a destination is
9358 not found, and delivery is deferred when a destination is unreachable.
9359 </p>
9361 <p> The fallback relays must be SMTP destinations. Specify a domain,
9362 host, host:port, [host]:port, [address] or [address]:port; the form
9363 [host] turns off MX lookups. If you specify multiple SMTP
9364 destinations, Postfix will try them in the specified order. </p>
9366 <p> To prevent mailer loops between MX hosts and fall-back hosts,
9367 Postfix version 2.2 and later will not use the fallback relays for
9368 destinations that it is MX host for (assuming DNS lookup is turned on).
9369 </p>
9372 </DD>
9374 <DT><b><a name="smtp_generic_maps">smtp_generic_maps</a>
9375 (default: empty)</b></DT><DD>
9377 <p> Optional lookup tables that perform address rewriting in the
9378 SMTP client, typically to transform a locally valid address into
9379 a globally valid address when sending mail across the Internet.
9380 This is needed when the local machine does not have its own Internet
9381 domain name, but uses something like <i>localdomain.local</i>
9382 instead. </p>
9384 <p> The table format and lookups are documented in <a href="generic.5.html">generic(5)</a>;
9385 examples are shown in the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> and
9386 <a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> documents. </p>
9388 <p> This feature is available in Postfix 2.2 and later. </p>
9391 </DD>
9393 <DT><b><a name="smtp_header_checks">smtp_header_checks</a>
9394 (default: empty)</b></DT><DD>
9396 <p> Restricted <a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP client.
9397 These tables are searched while mail is being delivered. Actions
9398 that change the delivery time or destination are not available.
9399 </p>
9401 <p> This feature is available in Postfix 2.5 and later. </p>
9404 </DD>
9406 <DT><b><a name="smtp_helo_name">smtp_helo_name</a>
9407 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
9410 The hostname to send in the SMTP EHLO or HELO command.
9411 </p>
9414 The default value is the machine hostname. Specify a hostname or
9415 [ip.add.re.ss].
9416 </p>
9419 This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP
9420 clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific
9421 client, for example:
9422 </p>
9424 <blockquote>
9425 <pre>
9426 /etc/postfix/<a href="master.5.html">master.cf</a>:
9427 mysmtp ... smtp -o <a href="postconf.5.html#smtp_helo_name">smtp_helo_name</a>=foo.bar.com
9428 </pre>
9429 </blockquote>
9432 This feature is available in Postfix 2.0 and later.
9433 </p>
9436 </DD>
9438 <DT><b><a name="smtp_helo_timeout">smtp_helo_timeout</a>
9439 (default: 300s)</b></DT><DD>
9442 The SMTP client time limit for sending the HELO or EHLO command,
9443 and for receiving the initial server response.
9444 </p>
9447 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9448 The default time unit is s (seconds).
9449 </p>
9452 </DD>
9454 <DT><b><a name="smtp_host_lookup">smtp_host_lookup</a>
9455 (default: dns)</b></DT><DD>
9458 What mechanisms the Postfix SMTP client uses to look up a host's IP
9459 address. This parameter is ignored when DNS lookups are disabled
9460 (see: <a href="postconf.5.html#disable_dns_lookups">disable_dns_lookups</a>).
9461 </p>
9464 Specify one of the following:
9465 </p>
9467 <dl>
9469 <dt><b>dns</b></dt>
9471 <dd>Hosts can be found in the DNS (preferred). </dd>
9473 <dt><b>native</b></dt>
9475 <dd>Use the native naming service only (nsswitch.conf, or equivalent
9476 mechanism). </dd>
9478 <dt><b>dns, native</b></dt>
9480 <dd>Use the native service for hosts not found in the DNS. </dd>
9482 </dl>
9485 This feature is available in Postfix 2.1 and later.
9486 </p>
9489 </DD>
9491 <DT><b><a name="smtp_line_length_limit">smtp_line_length_limit</a>
9492 (default: 990)</b></DT><DD>
9495 The maximal length of message header and body lines that Postfix
9496 will send via SMTP. Longer lines are broken by inserting
9497 "&lt;CR&gt;&lt;LF&gt;&lt;SPACE&gt;". This minimizes the damage to
9498 MIME formatted mail.
9499 </p>
9502 By default, the line length is limited to 990 characters, because
9503 some server implementations cannot receive mail with long lines.
9504 </p>
9507 </DD>
9509 <DT><b><a name="smtp_mail_timeout">smtp_mail_timeout</a>
9510 (default: 300s)</b></DT><DD>
9513 The SMTP client time limit for sending the MAIL FROM command, and
9514 for receiving the server response.
9515 </p>
9518 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9519 The default time unit is s (seconds).
9520 </p>
9523 </DD>
9525 <DT><b><a name="smtp_mime_header_checks">smtp_mime_header_checks</a>
9526 (default: empty)</b></DT><DD>
9528 <p> Restricted mime_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP
9529 client. These tables are searched while mail is being delivered.
9530 Actions that change the delivery time or destination are not
9531 available. </p>
9533 <p> This feature is available in Postfix 2.5 and later. </p>
9536 </DD>
9538 <DT><b><a name="smtp_mx_address_limit">smtp_mx_address_limit</a>
9539 (default: 5)</b></DT><DD>
9542 The maximal number of MX (mail exchanger) IP addresses that can
9543 result from mail exchanger lookups, or zero (no limit). Prior to
9544 Postfix version 2.3, this limit was disabled by default.
9545 </p>
9548 This feature is available in Postfix 2.1 and later.
9549 </p>
9552 </DD>
9554 <DT><b><a name="smtp_mx_session_limit">smtp_mx_session_limit</a>
9555 (default: 2)</b></DT><DD>
9557 <p> The maximal number of SMTP sessions per delivery request before
9558 giving up or delivering to a fall-back <a href="postconf.5.html#relayhost">relay host</a>, or zero (no
9559 limit). This restriction ignores sessions that fail to complete the
9560 SMTP initial handshake (Postfix version 2.2 and earlier) or that fail to
9561 complete the EHLO and TLS handshake (Postfix version 2.3 and later). </p>
9563 <p> This feature is available in Postfix 2.1 and later. </p>
9566 </DD>
9568 <DT><b><a name="smtp_nested_header_checks">smtp_nested_header_checks</a>
9569 (default: empty)</b></DT><DD>
9571 <p> Restricted nested_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP
9572 client. These tables are searched while mail is being delivered.
9573 Actions that change the delivery time or destination are not
9574 available. </p>
9576 <p> This feature is available in Postfix 2.5 and later. </p>
9579 </DD>
9581 <DT><b><a name="smtp_never_send_ehlo">smtp_never_send_ehlo</a>
9582 (default: no)</b></DT><DD>
9584 <p> Never send EHLO at the start of an SMTP session. See also the
9585 <a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> parameter. </p>
9588 </DD>
9590 <DT><b><a name="smtp_per_record_deadline">smtp_per_record_deadline</a>
9591 (default: no)</b></DT><DD>
9593 <p> Change the behavior of the smtp_*_timeout time limits, from a
9594 time limit per read or write system call, to a time limit to send
9595 or receive a complete record (an SMTP command line, SMTP response
9596 line, SMTP message content line, or TLS protocol message). This
9597 limits the impact from hostile peers that trickle data one byte at
9598 a time. </p>
9600 <p> Note: when per-record deadlines are enabled, a short timeout
9601 may cause problems with TLS over very slow network connections.
9602 The reasons are that a TLS protocol message can be up to 16 kbytes
9603 long (with TLSv1), and that an entire TLS protocol message must be
9604 sent or received within the per-record deadline. </p>
9606 <p> This feature is available in Postfix 2.9 and later. With older
9607 Postfix releases, the behavior is as if this parameter is set to
9608 "no". </p>
9611 </DD>
9613 <DT><b><a name="smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a>
9614 (default: 10s)</b></DT><DD>
9617 How long the Postfix SMTP client pauses before sending
9618 ".&lt;CR&gt;&lt;LF&gt;" in order to work around the PIX firewall
9619 "&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;" bug.
9620 </p>
9623 Choosing a too short time makes this workaround ineffective when
9624 sending large messages over slow network connections.
9625 </p>
9628 </DD>
9630 <DT><b><a name="smtp_pix_workaround_maps">smtp_pix_workaround_maps</a>
9631 (default: empty)</b></DT><DD>
9633 <p> Lookup tables, indexed by the remote SMTP server address, with
9634 per-destination workarounds for CISCO PIX firewall bugs. The table
9635 is not indexed by hostname for consistency with
9636 <a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>. </p>
9638 <p> This feature is available in Postfix 2.4 and later. </p>
9641 </DD>
9643 <DT><b><a name="smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a>
9644 (default: 500s)</b></DT><DD>
9646 <p> How long a message must be queued before the Postfix SMTP client
9647 turns on the PIX firewall "&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;"
9648 bug workaround for delivery through firewalls with "smtp fixup"
9649 mode turned on. </p>
9652 By default, the workaround is turned off for mail that is queued
9653 for less than 500 seconds. In other words, the workaround is normally
9654 turned off for the first delivery attempt.
9655 </p>
9658 Specify 0 to enable the PIX firewall
9659 "&lt;CR&gt;&lt;LF&gt;.&lt;CR&gt;&lt;LF&gt;" bug workaround upon the
9660 first delivery attempt.
9661 </p>
9664 </DD>
9666 <DT><b><a name="smtp_pix_workarounds">smtp_pix_workarounds</a>
9667 (default: disable_esmtp, delay_dotcrlf)</b></DT><DD>
9669 <p> A list that specifies zero or more workarounds for CISCO PIX
9670 firewall bugs. These workarounds are implemented by the Postfix
9671 SMTP client. Workaround names are separated by comma or space, and
9672 are case insensitive. This parameter setting can be overruled with
9673 per-destination <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a> settings. </p>
9675 <dl>
9677 <dt><b>delay_dotcrlf</b><dd> Insert a delay before sending
9678 ".&lt;CR&gt;&lt;LF&gt;" after the end of the message content. The
9679 delay is subject to the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a> and
9680 <a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a> parameter settings. </dd>
9682 <dt><b>disable_esmtp</b><dd> Disable all extended SMTP commands:
9683 send HELO instead of EHLO. </dd>
9685 </dl>
9687 <p> This feature is available in Postfix 2.4 and later. The default
9688 settings are backwards compatible with earlier Postfix versions.
9689 </p>
9692 </DD>
9694 <DT><b><a name="smtp_quit_timeout">smtp_quit_timeout</a>
9695 (default: 300s)</b></DT><DD>
9698 The SMTP client time limit for sending the QUIT command, and for
9699 receiving the server response.
9700 </p>
9703 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9704 The default time unit is s (seconds).
9705 </p>
9708 </DD>
9710 <DT><b><a name="smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>
9711 (default: yes)</b></DT><DD>
9714 Quote addresses in SMTP MAIL FROM and RCPT TO commands as required
9715 by <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>. This includes putting quotes around an address localpart
9716 that ends in ".".
9717 </p>
9720 The default is to comply with <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>. If you have to send mail to
9721 a broken SMTP server, configure a special SMTP client in <a href="master.5.html">master.cf</a>:
9722 </p>
9724 <blockquote>
9725 <pre>
9726 /etc/postfix/<a href="master.5.html">master.cf</a>:
9727 broken-smtp . . . smtp -o <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>=no
9728 </pre>
9729 </blockquote>
9732 and route mail for the destination in question to the "broken-smtp"
9733 message delivery with a <a href="transport.5.html">transport(5)</a> table.
9734 </p>
9737 This feature is available in Postfix 2.1 and later.
9738 </p>
9741 </DD>
9743 <DT><b><a name="smtp_randomize_addresses">smtp_randomize_addresses</a>
9744 (default: yes)</b></DT><DD>
9747 Randomize the order of equal-preference MX host addresses. This
9748 is a performance feature of the Postfix SMTP client.
9749 </p>
9752 </DD>
9754 <DT><b><a name="smtp_rcpt_timeout">smtp_rcpt_timeout</a>
9755 (default: 300s)</b></DT><DD>
9758 The SMTP client time limit for sending the SMTP RCPT TO command, and
9759 for receiving the server response.
9760 </p>
9763 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
9764 The default time unit is s (seconds).
9765 </p>
9768 </DD>
9770 <DT><b><a name="smtp_reply_filter">smtp_reply_filter</a>
9771 (default: empty)</b></DT><DD>
9773 <p> A mechanism to transform replies from remote SMTP servers one
9774 line at a time. This is a last-resort tool to work around server
9775 replies that break inter-operability with the Postfix SMTP client.
9776 Other uses involve fault injection to test Postfix's handling of
9777 invalid responses. </p>
9779 <p> Notes: </p>
9781 <ul>
9783 <li> <p> In the case of a multi-line reply, the Postfix SMTP client
9784 uses the final reply line's numerical SMTP reply code and enhanced
9785 status code. </p>
9787 <li> <p> The numerical SMTP reply code (XYZ) takes precedence over
9788 the enhanced status code (X.Y.Z). When the enhanced status code
9789 initial digit differs from the SMTP reply code initial digit, or
9790 when no enhanced status code is present, the Postfix SMTP client
9791 uses a generic enhanced status code (X.0.0) instead. </p>
9793 </ul>
9795 <p> Specify the name of a "<a href="DATABASE_README.html">type:table</a>" lookup table. The search
9796 string is a single SMTP reply line as received from the remote SMTP
9797 server, except that the trailing &lt;CR&gt;&lt;LF&gt; are removed. </p>
9799 <p> Examples: </p>
9801 <pre>
9802 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
9803 <a href="postconf.5.html#smtp_reply_filter">smtp_reply_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/reply_filter
9804 </pre>
9806 <pre>
9807 /etc/postfix/reply_filter:
9808 # Transform garbage into "250-filler..." so that it looks like
9809 # one line from a multi-line reply. It does not matter what we
9810 # substitute here as long it has the right syntax. The Postfix
9811 # SMTP client will use the final line's numerical SMTP reply
9812 # code and enhanced status code.
9813 !/^([2-5][0-9][0-9]($|[- ]))/ 250-filler for garbage
9814 </pre>
9816 <p> This feature is available in Postfix 2.7. </p>
9819 </DD>
9821 <DT><b><a name="smtp_rset_timeout">smtp_rset_timeout</a>
9822 (default: 20s)</b></DT><DD>
9824 <p> The SMTP client time limit for sending the RSET command, and
9825 for receiving the server response. The SMTP client sends RSET in
9826 order to finish a recipient address probe, or to verify that a
9827 cached session is still usable. </p>
9829 <p> This feature is available in Postfix 2.1 and later. </p>
9832 </DD>
9834 <DT><b><a name="smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
9835 (default: empty)</b></DT><DD>
9837 <p> An optional table to prevent repeated SASL authentication
9838 failures with the same remote SMTP server hostname, username and
9839 password. Each table (key, value) pair contains a server name, a
9840 username and password, and the full server response. This information
9841 is stored when a remote SMTP server rejects an authentication attempt
9842 with a 535 reply code. As long as the <a href="postconf.5.html#smtp_sasl_password_maps">smtp_sasl_password_maps</a>
9843 information does no change, and as long as the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a>
9844 information does not expire (see <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>) the
9845 Postfix SMTP client avoids SASL authentication attempts with the
9846 same server, username and password, and instead bounces or defers
9847 mail as controlled with the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> configuration
9848 parameter. </p>
9850 <p> Use a per-destination delivery concurrency of 1 (for example,
9851 "<a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> = 1",
9852 "<a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> = 1", etc.), otherwise multiple
9853 delivery agents may experience a login failure at the same time.
9854 </p>
9856 <p> The table must be accessed via the proxywrite service, i.e. the
9857 map name must start with "<a href="proxymap.8.html">proxy</a>:". The table should be stored under
9858 the directory specified with the <a href="postconf.5.html#data_directory">data_directory</a> parameter. </p>
9860 <p> This feature uses cryptographic hashing to protect plain-text
9861 passwords, and requires that Postfix is compiled with TLS support.
9862 </p>
9864 <p> Example: </p>
9866 <pre>
9867 <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/lib/postfix/sasl_auth_cache
9868 </pre>
9870 <p> This feature is available in Postfix 2.5 and later. </p>
9873 </DD>
9875 <DT><b><a name="smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>
9876 (default: 90d)</b></DT><DD>
9878 <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
9879 is removed. </p>
9881 <p> This feature is available in Postfix 2.5 and later. </p>
9884 </DD>
9886 <DT><b><a name="smtp_sasl_auth_enable">smtp_sasl_auth_enable</a>
9887 (default: no)</b></DT><DD>
9890 Enable SASL authentication in the Postfix SMTP client. By default,
9891 the Postfix SMTP client uses no authentication.
9892 </p>
9895 Example:
9896 </p>
9898 <pre>
9899 <a href="postconf.5.html#smtp_sasl_auth_enable">smtp_sasl_auth_enable</a> = yes
9900 </pre>
9903 </DD>
9905 <DT><b><a name="smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a>
9906 (default: yes)</b></DT><DD>
9908 <p> When a remote SMTP server rejects a SASL authentication request
9909 with a 535 reply code, defer mail delivery instead of returning
9910 mail as undeliverable. The latter behavior was hard-coded prior to
9911 Postfix version 2.5. </p>
9913 <p> Note: the setting "yes" overrides the global <a href="postconf.5.html#soft_bounce">soft_bounce</a>
9914 parameter, but the setting "no" does not. </p>
9916 <p> Example: </p>
9918 <pre>
9919 # Default as of Postfix 2.5
9920 <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = yes
9921 # The old hard-coded default
9922 <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = no
9923 </pre>
9925 <p> This feature is available in Postfix 2.5 and later. </p>
9928 </DD>
9930 <DT><b><a name="smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a>
9931 (default: empty)</b></DT><DD>
9934 If non-empty, a Postfix SMTP client filter for the remote SMTP
9935 server's list of offered SASL mechanisms. Different client and
9936 server implementations may support different mechanism lists. By
9937 default, the Postfix SMTP client will use the intersection of the
9938 two. <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> further restricts what server
9939 mechanisms the client will take into consideration. </p>
9941 <p> Specify mechanism names, "/file/name" patterns or "<a href="DATABASE_README.html">type:table</a>"
9942 lookup tables. The right-hand side result from "<a href="DATABASE_README.html">type:table</a>" lookups
9943 is ignored. Specify "!pattern" to exclude a mechanism name from the
9944 list. The form "!/file/name" is supported only in Postfix version
9945 2.4 and later. </p>
9947 <p> This feature is available in Postfix 2.2 and later. </p>
9950 Examples:
9951 </p>
9953 <pre>
9954 <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = plain, login
9955 <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = /etc/postfix/smtp_mechs
9956 <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = !gssapi, !login, <a href="DATABASE_README.html#types">static</a>:rest
9957 </pre>
9960 </DD>
9962 <DT><b><a name="smtp_sasl_password_maps">smtp_sasl_password_maps</a>
9963 (default: empty)</b></DT><DD>
9966 Optional SMTP client lookup tables with one username:password entry
9967 per remote hostname or domain, or sender address when sender-dependent
9968 authentication is enabled. If no username:password entry is found,
9969 then the Postfix SMTP client will not
9970 attempt to authenticate to the remote host.
9971 </p>
9974 The Postfix SMTP client opens the lookup table before going to
9975 chroot jail, so you can leave the password file in /etc/postfix.
9976 </p>
9979 </DD>
9981 <DT><b><a name="smtp_sasl_path">smtp_sasl_path</a>
9982 (default: empty)</b></DT><DD>
9984 <p> Implementation-specific information that the Postfix SMTP client
9985 passes through to
9986 the SASL plug-in implementation that is selected with
9987 <b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>. Typically this specifies the name of a
9988 configuration file or rendezvous point. </p>
9990 <p> This feature is available in Postfix 2.3 and later. </p>
9993 </DD>
9995 <DT><b><a name="smtp_sasl_security_options">smtp_sasl_security_options</a>
9996 (default: noplaintext, noanonymous)</b></DT><DD>
9998 <p> Postfix SMTP client SASL security options; as of Postfix 2.3
9999 the list of available
10000 features depends on the SASL client implementation that is selected
10001 with <b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>. </p>
10003 <p> The following security features are defined for the <b>cyrus</b>
10004 client SASL implementation: </p>
10007 Specify zero or more of the following:
10008 </p>
10010 <dl>
10012 <dt><b>noplaintext</b></dt>
10014 <dd>Disallow methods that use plaintext passwords. </dd>
10016 <dt><b>noactive</b></dt>
10018 <dd>Disallow methods subject to active (non-dictionary) attack.
10019 </dd>
10021 <dt><b>nodictionary</b></dt>
10023 <dd>Disallow methods subject to passive (dictionary) attack. </dd>
10025 <dt><b>noanonymous</b></dt>
10027 <dd>Disallow methods that allow anonymous authentication. </dd>
10029 <dt><b>mutual_auth</b></dt>
10031 <dd>Only allow methods that provide mutual authentication (not
10032 available with SASL version 1). </dd>
10034 </dl>
10037 Example:
10038 </p>
10040 <pre>
10041 <a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a> = noplaintext
10042 </pre>
10045 </DD>
10047 <DT><b><a name="smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>
10048 (default: $<a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a>)</b></DT><DD>
10050 <p> The SASL authentication security options that the Postfix SMTP
10051 client uses for TLS encrypted SMTP sessions. </p>
10053 <p> This feature is available in Postfix 2.2 and later. </p>
10056 </DD>
10058 <DT><b><a name="smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a>
10059 (default: $<a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>)</b></DT><DD>
10061 <p> The SASL authentication security options that the Postfix SMTP
10062 client uses for TLS encrypted SMTP sessions with a verified server
10063 certificate. </p>
10065 <p> When mail is sent to the public MX host for the recipient's
10066 domain, server certificates are by default optional, and delivery
10067 proceeds even if certificate verification fails. For delivery via
10068 a submission service that requires SASL authentication, it may be
10069 appropriate to send plaintext passwords only when the connection
10070 to the server is strongly encrypted <b>and</b> the server identity
10071 is verified. </p>
10073 <p> The <a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> parameter makes it
10074 possible to only enable plaintext mechanisms when a secure connection
10075 to the server is available. Submission servers subject to this
10076 policy must either have verifiable certificates or offer suitable
10077 non-plaintext SASL mechanisms. </p>
10079 <p> This feature is available in Postfix 2.6 and later. </p>
10082 </DD>
10084 <DT><b><a name="smtp_sasl_type">smtp_sasl_type</a>
10085 (default: cyrus)</b></DT><DD>
10087 <p> The SASL plug-in type that the Postfix SMTP client should use
10088 for authentication. The available types are listed with the
10089 "<b>postconf -A</b>" command. </p>
10091 <p> This feature is available in Postfix 2.3 and later. </p>
10094 </DD>
10096 <DT><b><a name="smtp_send_xforward_command">smtp_send_xforward_command</a>
10097 (default: no)</b></DT><DD>
10100 Send the non-standard XFORWARD command when the Postfix SMTP server
10101 EHLO response announces XFORWARD support.
10102 </p>
10105 This allows an "smtp" delivery agent, used for injecting mail into
10106 a content filter, to forward the name, address, protocol and HELO
10107 name of the original client to the content filter and downstream
10108 queuing SMTP server. This can produce more useful logging than
10109 localhost[127.0.0.1] etc.
10110 </p>
10113 This feature is available in Postfix 2.1 and later.
10114 </p>
10117 </DD>
10119 <DT><b><a name="smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a>
10120 (default: no)</b></DT><DD>
10123 Enable sender-dependent authentication in the Postfix SMTP client; this is
10124 available only with SASL authentication, and disables SMTP connection
10125 caching to ensure that mail from different senders will use the
10126 appropriate credentials. </p>
10129 This feature is available in Postfix 2.3 and later.
10130 </p>
10133 </DD>
10135 <DT><b><a name="smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a>
10136 (default: yes)</b></DT><DD>
10139 Skip SMTP servers that greet with a 4XX status code (go away, try
10140 again later).
10141 </p>
10144 By default, Postfix moves on the next mail exchanger. Specify
10145 "<a href="postconf.5.html#smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a> = no" if Postfix should defer delivery
10146 immediately.
10147 </p>
10149 <p> This feature is available in Postfix 2.0 and earlier.
10150 Later Postfix versions always skip SMTP servers that greet with a
10151 4XX status code. </p>
10154 </DD>
10156 <DT><b><a name="smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a>
10157 (default: yes)</b></DT><DD>
10160 Skip SMTP servers that greet with a 5XX status code (go away, do
10161 not try again later).
10162 </p>
10164 <p> By default, the Postfix SMTP client moves on the next mail
10165 exchanger. Specify "<a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a> = no" if Postfix should
10166 bounce the mail immediately. The default setting is incorrect, but
10167 it is what a lot of people expect to happen. </p>
10170 </DD>
10172 <DT><b><a name="smtp_skip_quit_response">smtp_skip_quit_response</a>
10173 (default: yes)</b></DT><DD>
10176 Do not wait for the response to the SMTP QUIT command.
10177 </p>
10180 </DD>
10182 <DT><b><a name="smtp_starttls_timeout">smtp_starttls_timeout</a>
10183 (default: 300s)</b></DT><DD>
10185 <p> Time limit for Postfix SMTP client write and read operations
10186 during TLS startup and shutdown handshake procedures. </p>
10188 <p> This feature is available in Postfix 2.2 and later. </p>
10191 </DD>
10193 <DT><b><a name="smtp_tls_CAfile">smtp_tls_CAfile</a>
10194 (default: empty)</b></DT><DD>
10196 <p> A file containing CA certificates of root CAs trusted to sign
10197 either remote SMTP server certificates or intermediate CA certificates.
10198 These are loaded into memory before the <a href="smtp.8.html">smtp(8)</a> client enters the
10199 chroot jail. If the number of trusted roots is large, consider using
10200 <a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> instead, but note that the latter directory must be
10201 present in the chroot jail if the <a href="smtp.8.html">smtp(8)</a> client is chrooted. This
10202 file may also be used to augment the client certificate trust chain,
10203 but it is best to include all the required certificates directly in
10204 $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p>
10206 <p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from
10207 appending the system-supplied default CAs and trusting third-party
10208 certificates. </p>
10210 <p> Example: </p>
10212 <pre>
10213 <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a> = /etc/postfix/CAcert.pem
10214 </pre>
10216 <p> This feature is available in Postfix 2.2 and later. </p>
10219 </DD>
10221 <DT><b><a name="smtp_tls_CApath">smtp_tls_CApath</a>
10222 (default: empty)</b></DT><DD>
10224 <p> Directory with PEM format certificate authority certificates
10225 that the Postfix SMTP client uses to verify a remote SMTP server
10226 certificate. Don't forget to create the necessary "hash" links
10227 with, for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs".
10228 </p>
10230 <p> To use this option in chroot mode, this directory (or a copy)
10231 must be inside the chroot jail. </p>
10233 <p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from
10234 appending the system-supplied default CAs and trusting third-party
10235 certificates. </p>
10237 <p> Example: </p>
10239 <pre>
10240 <a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> = /etc/postfix/certs
10241 </pre>
10243 <p> This feature is available in Postfix 2.2 and later. </p>
10246 </DD>
10248 <DT><b><a name="smtp_tls_block_early_mail_reply">smtp_tls_block_early_mail_reply</a>
10249 (default: no)</b></DT><DD>
10251 <p> Try to detect a mail hijacking attack based on a TLS protocol
10252 vulnerability (CVE-2009-3555), where an attacker prepends malicious
10253 HELO, MAIL, RCPT, DATA commands to a Postfix SMTP client TLS session.
10254 The attack would succeed with non-Postfix SMTP servers that reply
10255 to the malicious HELO, MAIL, RCPT, DATA commands after negotiating
10256 the Postfix SMTP client TLS session. </p>
10258 <p> This feature is available in Postfix 2.7. </p>
10261 </DD>
10263 <DT><b><a name="smtp_tls_cert_file">smtp_tls_cert_file</a>
10264 (default: empty)</b></DT><DD>
10266 <p> File with the Postfix SMTP client RSA certificate in PEM format.
10267 This file may also contain the Postfix SMTP client private RSA key,
10268 and these may be the same as the Postfix SMTP server RSA certificate and key
10269 file. </p>
10271 <p> Do not configure client certificates unless you <b>must</b> present
10272 client TLS certificates to one or more servers. Client certificates are
10273 not usually needed, and can cause problems in configurations that work
10274 well without them. The recommended setting is to let the defaults stand: </p>
10276 <blockquote>
10277 <pre>
10278 <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> =
10279 <a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a> =
10280 <a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> =
10281 <a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> =
10282 <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> =
10283 <a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> =
10284 </pre>
10285 </blockquote>
10287 <p> The best way to use the default settings is to comment out the above
10288 parameters in <a href="postconf.5.html">main.cf</a> if present. </p>
10290 <p> To enable remote SMTP servers to verify the Postfix SMTP client
10291 certificate, the issuing CA certificates must be made available to the
10292 server. You should include the required certificates in the client
10293 certificate file, the client certificate first, then the issuing
10294 CA(s) (bottom-up order). </p>
10296 <p> Example: the certificate for "client.example.com" was issued by
10297 "intermediate CA" which itself has a certificate issued by "root CA".
10298 Create the client.pem file with "cat client_cert.pem intermediate_CA.pem
10299 root_CA.pem &gt; client.pem". </p>
10301 <p> If you also want to verify remote SMTP server certificates issued by
10302 these CAs, you can add the CA certificates to the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>, in
10303 which case it is not necessary to have them in the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>,
10304 <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>
10306 <p> A certificate supplied here must be usable as an SSL client certificate
10307 and hence pass the "openssl verify -purpose sslclient ..." test. </p>
10309 <p> Example: </p>
10311 <pre>
10312 <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> = /etc/postfix/client.pem
10313 </pre>
10315 <p> This feature is available in Postfix 2.2 and later. </p>
10318 </DD>
10320 <DT><b><a name="smtp_tls_cipherlist">smtp_tls_cipherlist</a>
10321 (default: empty)</b></DT><DD>
10323 <p> Obsolete Postfix &lt; 2.3 control for the Postfix SMTP client TLS
10324 cipher list. As this feature applies to all TLS security levels, it is easy
10325 to create inter-operability problems by choosing a non-default cipher
10326 list. Do not use a non-default TLS cipher list on hosts that deliver email
10327 to the public Internet: you will be unable to send email to servers that
10328 only support the ciphers you exclude. Using a restricted cipher list
10329 may be more appropriate for an internal MTA, where one can exert some
10330 control over the TLS software and settings of the peer servers. </p>
10332 <p> <b>Note:</b> do not use "" quotes around the parameter value. </p>
10334 <p> This feature is available in Postfix version 2.2. It is not used with
10335 Postfix 2.3 and later; use <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> instead. </p>
10338 </DD>
10340 <DT><b><a name="smtp_tls_ciphers">smtp_tls_ciphers</a>
10341 (default: export)</b></DT><DD>
10343 <p> The minimum TLS cipher grade that the Postfix SMTP client
10344 will use with opportunistic TLS encryption. Cipher types listed in
10345 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> are excluded from the base definition of
10346 the selected cipher grade. The default value "export" ensures maximum
10347 inter-operability. Because encryption is optional, stronger controls
10348 are not appropriate, and this setting SHOULD NOT be changed unless the
10349 change is essential. </p>
10351 <p> When TLS is mandatory the cipher grade is chosen via the
10352 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> configuration parameter, see there for syntax
10353 details. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure
10354 ciphers on a per-destination basis. </p>
10356 <p> Example: </p>
10357 <pre>
10358 <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> = export
10359 </pre>
10361 <p> This feature is available in Postfix 2.6 and later. With earlier Postfix
10362 releases only the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> parameter is implemented,
10363 and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p>
10366 </DD>
10368 <DT><b><a name="smtp_tls_dcert_file">smtp_tls_dcert_file</a>
10369 (default: empty)</b></DT><DD>
10371 <p> File with the Postfix SMTP client DSA certificate in PEM format.
10372 This file may also contain the Postfix SMTP client private DSA key. </p>
10374 <p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details.
10375 </p>
10377 <p> Example: </p>
10379 <pre>
10380 <a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem
10381 </pre>
10383 <p> This feature is available in Postfix 2.2 and later. </p>
10386 </DD>
10388 <DT><b><a name="smtp_tls_dkey_file">smtp_tls_dkey_file</a>
10389 (default: $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>)</b></DT><DD>
10391 <p> File with the Postfix SMTP client DSA private key in PEM format.
10392 This file may be combined with the Postfix SMTP client DSA certificate
10393 file specified with $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>. </p>
10395 <p> The private key must be accessible without a pass-phrase, i.e. it
10396 must not be encrypted. File permissions should grant read-only
10397 access to the system superuser account ("root"), and no access
10398 to anyone else. </p>
10400 <p> This feature is available in Postfix 2.2 and later. </p>
10403 </DD>
10405 <DT><b><a name="smtp_tls_eccert_file">smtp_tls_eccert_file</a>
10406 (default: empty)</b></DT><DD>
10408 <p> File with the Postfix SMTP client ECDSA certificate in PEM format.
10409 This file may also contain the Postfix SMTP client ECDSA private key. </p>
10411 <p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details.
10412 </p>
10414 <p> Example: </p>
10416 <pre>
10417 <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> = /etc/postfix/ecdsa-ccert.pem
10418 </pre>
10420 <p> This feature is available in Postfix 2.6 and later, when Postfix is
10421 compiled and linked with OpenSSL 1.0.0 or later. </p>
10424 </DD>
10426 <DT><b><a name="smtp_tls_eckey_file">smtp_tls_eckey_file</a>
10427 (default: $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>)</b></DT><DD>
10429 <p> File with the Postfix SMTP client ECDSA private key in PEM format.
10430 This file may be combined with the Postfix SMTP client ECDSA
10431 certificate file specified with $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>. </p>
10433 <p> The private key must be accessible without a pass-phrase, i.e. it
10434 must not be encrypted. File permissions should grant read-only
10435 access to the system superuser account ("root"), and no access
10436 to anyone else. </p>
10438 <p> This feature is available in Postfix 2.6 and later, when Postfix is
10439 compiled and linked with OpenSSL 1.0.0 or later. </p>
10442 </DD>
10444 <DT><b><a name="smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
10445 (default: yes)</b></DT><DD>
10447 <p> With mandatory TLS encryption, require that the remote SMTP
10448 server hostname matches the information in the remote SMTP server
10449 certificate. As of <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> the requirements for hostname checking
10450 for MTA clients are not specified. </p>
10452 <p> This option can be set to "no" to disable strict peer name
10453 checking. This setting has no effect on sessions that are controlled
10454 via the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table. </p>
10456 <p> Disabling the hostname verification can make sense in closed
10457 environment where special CAs are created. If not used carefully,
10458 this option opens the danger of a "man-in-the-middle" attack (the
10459 CommonName of this attacker will be logged). </p>
10461 <p> This feature is available in Postfix 2.2 and later. With
10462 Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
10465 </DD>
10467 <DT><b><a name="smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
10468 (default: empty)</b></DT><DD>
10470 <p> List of ciphers or cipher types to exclude from the Postfix
10471 SMTP client cipher
10472 list at all TLS security levels. This is not an OpenSSL cipherlist, it is
10473 a simple list separated by whitespace and/or commas. The elements are a
10474 single cipher, or one or more "+" separated cipher properties, in which
10475 case only ciphers matching <b>all</b> the properties are excluded. </p>
10477 <p> Examples (some of these will cause problems): </p>
10479 <blockquote>
10480 <pre>
10481 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = aNULL
10482 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = MD5, DES
10483 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = DES+MD5
10484 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5
10485 <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = kEDH+aRSA
10486 </pre>
10487 </blockquote>
10489 <p> The first setting, disables anonymous ciphers. The next setting
10490 disables ciphers that use the MD5 digest algorithm or the (single) DES
10491 encryption algorithm. The next setting disables ciphers that use MD5 and
10492 DES together. The next setting disables the two ciphers "AES256-SHA"
10493 and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH"
10494 key exchange with RSA authentication. </p>
10496 <p> This feature is available in Postfix 2.3 and later. </p>
10499 </DD>
10501 <DT><b><a name="smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a>
10502 (default: empty)</b></DT><DD>
10504 <p> List of acceptable remote SMTP server certificate fingerprints
10505 for the "fingerprint" TLS security level (<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> =
10506 fingerprint). At this security level, certificate authorities are
10507 not used, and certificate expiration times are ignored. Instead,
10508 server certificates are verified directly via their "fingerprint". The
10509 fingerprint is a message digest of the server certificate. The digest
10510 algorithm is selected via the <b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b>
10511 parameter. </p>
10513 <p> When an <b><a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a></b> table entry specifies the
10514 "fingerprint" security level, any "match" attributes in that entry specify
10515 the list of valid fingerprints for the corresponding destination. Multiple
10516 fingerprints can be combined with a "|" delimiter in a single match
10517 attribute, or multiple match attributes can be employed. </p>
10519 <p> Example: Certificate fingerprint verification with internal mailhub.
10520 Two matching fingerprints are listed. The <a href="postconf.5.html#relayhost">relayhost</a> may be multiple
10521 physical hosts behind a load-balancer, each with its own private/public
10522 key and self-signed certificate. Alternatively, a single <a href="postconf.5.html#relayhost">relayhost</a> may
10523 be in the process of switching from one set of private/public keys to
10524 another, and both keys are trusted just prior to the transition. </p>
10526 <blockquote>
10527 <pre>
10528 <a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com]
10529 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint
10530 <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
10531 <a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> =
10532 3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
10533 EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
10534 </pre>
10535 </blockquote>
10537 <p> Example: Certificate fingerprint verification with selected destinations.
10538 As in the example above, we show two matching fingerprints: </p>
10540 <blockquote>
10541 <pre>
10542 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
10543 <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = hash:/etc/postfix/tls_policy
10544 <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
10545 </pre>
10546 </blockquote>
10548 <blockquote>
10549 <pre>
10550 /etc/postfix/tls_policy:
10551 example.com fingerprint
10552 match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
10553 match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
10554 </pre>
10555 </blockquote>
10557 <p> This feature is available in Postfix 2.5 and later. </p>
10560 </DD>
10562 <DT><b><a name="smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a>
10563 (default: md5)</b></DT><DD>
10565 <p> The message digest algorithm used to construct remote SMTP server
10566 certificate fingerprints. At the "fingerprint" TLS security level
10567 (<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> = fingerprint), the server certificate is
10568 verified by directly matching its <i>fingerprint</i>. The fingerprint
10569 is the message digest of the server certificate using the selected
10570 algorithm. With a digest algorithm resistant to "second pre-image"
10571 attacks, it is not feasible to create a new public key and a matching
10572 certificate that has the same fingerprint. </p>
10574 <p> The default algorithm is <b>md5</b>; this is consistent with
10575 the backwards compatible setting of the digest used to verify client
10576 certificates in the SMTP server. </p>
10578 <p> The best practice algorithm is now <b>sha1</b>. Recent advances in hash
10579 function cryptanalysis have led to md5 being deprecated in favor of sha1.
10580 However, as long as there are no known "second pre-image" attacks
10581 against md5, its use in this context can still be considered safe.
10582 </p>
10584 <p> While additional digest algorithms are often available with OpenSSL's
10585 libcrypto, only those used by libssl in SSL cipher suites are available to
10586 Postfix. For now this means just md5 or sha1. </p>
10588 <p> To find the fingerprint of a specific certificate file, with a
10589 specific digest algorithm, run:
10590 </p>
10592 <blockquote>
10593 <pre>
10594 $ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem
10595 </pre>
10596 </blockquote>
10598 <p> The text to the right of "=" sign is the desired fingerprint.
10599 For example: </p>
10601 <blockquote>
10602 <pre>
10603 $ openssl x509 -noout -fingerprint -sha1 -in cert.pem
10604 SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A
10605 </pre>
10606 </blockquote>
10608 <p> This feature is available in Postfix 2.5 and later. </p>
10611 </DD>
10613 <DT><b><a name="smtp_tls_key_file">smtp_tls_key_file</a>
10614 (default: $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>)</b></DT><DD>
10616 <p> File with the Postfix SMTP client RSA private key in PEM format.
10617 This file may be combined with the Postfix SMTP client RSA certificate
10618 file specified with $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p>
10620 <p> The private key must be accessible without a pass-phrase, i.e. it
10621 must not be encrypted. File permissions should grant read-only
10622 access to the system superuser account ("root"), and no access
10623 to anyone else. </p>
10625 <p> Example: </p>
10627 <pre>
10628 <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>
10629 </pre>
10631 <p> This feature is available in Postfix 2.2 and later. </p>
10634 </DD>
10636 <DT><b><a name="smtp_tls_loglevel">smtp_tls_loglevel</a>
10637 (default: 0)</b></DT><DD>
10639 <p> Enable additional Postfix SMTP client logging of TLS activity.
10640 Each logging level also includes the information that is logged at
10641 a lower logging level. </p>
10643 <dl compact>
10645 <dt> </dt> <dd> 0 Disable logging of TLS activity. </dd>
10647 <dt> </dt> <dd> 1 Log TLS handshake and certificate information. </dd>
10649 <dt> </dt> <dd> 2 Log levels during TLS negotiation. </dd>
10651 <dt> </dt> <dd> 3 Log hexadecimal and ASCII dump of TLS negotiation
10652 process. </dd>
10654 <dt> </dt> <dd> 4 Log hexadecimal and ASCII dump of complete
10655 transmission after STARTTLS. </dd>
10657 </dl>
10659 <p> Use "<a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a> = 3" only in case of problems. Use of
10660 loglevel 4 is strongly discouraged. </p>
10662 <p> This feature is available in Postfix 2.2 and later. </p>
10665 </DD>
10667 <DT><b><a name="smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>
10668 (default: medium)</b></DT><DD>
10670 <p> The minimum TLS cipher grade that the Postfix SMTP client will
10671 use with
10672 mandatory TLS encryption. The default value "medium" is suitable
10673 for most destinations with which you may want to enforce TLS, and
10674 is beyond the reach of today's cryptanalytic methods. See
10675 <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure ciphers
10676 on a per-destination basis. </p>
10678 <p> The following cipher grades are supported: </p>
10680 <dl>
10681 <dt><b>export</b></dt>
10682 <dd> Enable "EXPORT" grade or better OpenSSL
10683 ciphers. This is the default for opportunistic encryption. It is
10684 not recommended for mandatory encryption unless you must enforce TLS
10685 with "crippled" peers. The underlying cipherlist is specified via the
10686 <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> configuration parameter, which you are strongly
10687 encouraged to not change. </dd>
10689 <dt><b>low</b></dt>
10690 <dd> Enable "LOW" grade or better OpenSSL ciphers. This
10691 setting is only appropriate for internal mail servers. The underlying
10692 cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> configuration
10693 parameter, which you are strongly encouraged to not change. </dd>
10695 <dt><b>medium</b></dt>
10696 <dd> Enable "MEDIUM" grade or better OpenSSL ciphers.
10697 The underlying cipherlist is specified via the <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a>
10698 configuration parameter, which you are strongly encouraged to not change.
10699 </dd>
10701 <dt><b>high</b></dt>
10702 <dd> Enable only "HIGH" grade OpenSSL ciphers. This setting may
10703 be appropriate when all mandatory TLS destinations (e.g. when all
10704 mail is routed to a suitably capable <a href="postconf.5.html#relayhost">relayhost</a>) support at least one
10705 "HIGH" grade cipher. The underlying cipherlist is specified via the
10706 <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> configuration parameter, which you are strongly
10707 encouraged to not change. </dd>
10709 <dt><b>null</b></dt>
10710 <dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication
10711 without encryption. This setting is only appropriate in the rare case
10712 that all servers are prepared to use NULL ciphers (not normally enabled
10713 in TLS servers). A plausible use-case is an LMTP server listening on a
10714 UNIX-domain socket that is configured to support "NULL" ciphers. The
10715 underlying cipherlist is specified via the <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a>
10716 configuration parameter, which you are strongly encouraged to not
10717 change. </dd>
10719 </dl>
10721 <p> The underlying cipherlists for grades other than "null" include
10722 anonymous ciphers, but these are automatically filtered out if the
10723 Postfix SMTP client is configured to verify server certificates.
10724 You are very unlikely to need to take any steps to exclude anonymous
10725 ciphers, they are excluded automatically as necessary. If you must
10726 exclude anonymous ciphers at the "may" or "encrypt" security levels,
10727 when the Postfix SMTP client does not need or use peer certificates, set
10728 "<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = aNULL". To exclude anonymous ciphers only when
10729 TLS is enforced, set "<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> = aNULL". </p>
10731 <p> This feature is available in Postfix 2.3 and later. </p>
10734 </DD>
10736 <DT><b><a name="smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a>
10737 (default: empty)</b></DT><DD>
10739 <p> Additional list of ciphers or cipher types to exclude from the
10740 SMTP client cipher list at mandatory TLS security levels. This list
10741 works in addition to the exclusions listed with <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a>
10742 (see there for syntax details). </p>
10744 <p> Starting with Postfix 2.6, the mandatory cipher exclusions can be
10745 specified on a per-destination basis via the TLS policy "exclude"
10746 attribute. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for notes and examples. </p>
10748 <p> This feature is available in Postfix 2.3 and later. </p>
10751 </DD>
10753 <DT><b><a name="smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a>
10754 (default: SSLv3, TLSv1)</b></DT><DD>
10756 <p> List of SSL/TLS protocols that the Postfix SMTP client will use with
10757 mandatory TLS encryption. In <a href="postconf.5.html">main.cf</a> the values are separated by
10758 whitespace, commas or colons. In the policy table "protocols" attribute
10759 (see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid separator is colon. An
10760 empty value means allow all protocols. The valid protocol names, (see
10761 <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" and "TLSv1". </p>
10763 <p> With Postfix &ge; 2.5 the parameter syntax is expanded to support
10764 protocol exclusions. One can now explicitly exclude SSLv2 by setting
10765 "<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2". To exclude both SSLv2 and
10766 SSLv3 set "<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing
10767 the protocols to include, rather than protocols to exclude, is still
10768 supported; use the form you find more intuitive. </p>
10770 <p> Since SSL version 2 has known protocol weaknesses and is now
10771 deprecated, the default setting excludes "SSLv2". This means that by
10772 default, SSL version 2 will not be used at the "encrypt" security level
10773 and higher. </p>
10775 <p> See the documentation of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> parameter and
10776 <a href="TLS_README.html">TLS_README</a> for more information about security levels. </p>
10778 <p> Example: </p>
10780 <pre>
10781 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1
10782 # Alternative form with Postfix &ge; 2.5:
10783 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
10784 </pre>
10786 <p> This feature is available in Postfix 2.3 and later. </p>
10789 </DD>
10791 <DT><b><a name="smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a>
10792 (default: no)</b></DT><DD>
10794 <p> Log the hostname of a remote SMTP server that offers STARTTLS,
10795 when TLS is not already enabled for that server. </p>
10797 <p> The logfile record looks like: </p>
10799 <pre>
10800 postfix/smtp[pid]: Host offered STARTTLS: [name.of.host]
10801 </pre>
10803 <p> This feature is available in Postfix 2.2 and later. </p>
10806 </DD>
10808 <DT><b><a name="smtp_tls_per_site">smtp_tls_per_site</a>
10809 (default: empty)</b></DT><DD>
10811 <p> Optional lookup tables with the Postfix SMTP client TLS usage
10812 policy by next-hop destination and by remote SMTP server hostname.
10813 When both lookups succeed, the more specific per-site policy (NONE,
10814 MUST, etc) overrides the less specific one (MAY), and the more secure
10815 per-site policy (MUST, etc) overrides the less secure one (NONE).
10816 With Postfix 2.3 and later <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> is strongly discouraged:
10817 use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p>
10819 <p> Use of the bare hostname as the per-site table lookup key is
10820 discouraged. Always use the full destination nexthop (enclosed in
10821 [] with a possible ":port" suffix). A recipient domain or MX-enabled
10822 transport next-hop with no port suffix may look like a bare hostname,
10823 but is still a suitable <i>destination</i>. </p>
10825 <p> Specify a next-hop destination or server hostname on the left-hand
10826 side; no wildcards are allowed. The next-hop destination is either
10827 the recipient domain, or the destination specified with a <a href="transport.5.html">transport(5)</a>
10828 table, the <a href="postconf.5.html#relayhost">relayhost</a> parameter, or the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter.
10829 On the right hand side specify one of the following keywords: </p>
10831 <dl>
10833 <dt> NONE </dt> <dd> Don't use TLS at all. This overrides a less
10834 specific <b>MAY</b> lookup result from the alternate host or next-hop
10835 lookup 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>,
10836 and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> settings. </dd>
10838 <dt> MAY </dt> <dd> Try to use TLS if the server announces support,
10839 otherwise use the unencrypted connection. This has less precedence
10840 than a more specific result (including <b>NONE</b>) from the alternate
10841 host or next-hop lookup key, and has less precedence than the more
10842 specific 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>
10843 = yes". </dd>
10845 <dt> MUST_NOPEERMATCH </dt> <dd> Require TLS encryption, but do not
10846 require that the remote SMTP server hostname matches the information
10847 in the remote SMTP server certificate, or that the server certificate
10848 was issued by a trusted CA. This overrides a less secure <b>NONE</b>
10849 or a less specific <b>MAY</b> lookup result from the alternate host
10850 or next-hop lookup key, and overrides the global <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>,
10851 <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>
10853 <dt> MUST </dt> <dd> Require TLS encryption, require that the remote
10854 SMTP server hostname matches the information in the remote SMTP
10855 server certificate, and require that the remote SMTP server certificate
10856 was issued by a trusted CA. This overrides a less secure <b>NONE</b>
10857 and <b>MUST_NOPEERMATCH</b> or a less specific <b>MAY</b> lookup
10858 result from the alternate host or next-hop lookup key, and overrides
10859 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> and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a>
10860 settings. </dd>
10862 </dl>
10864 <p> The above keywords correspond to the "none", "may", "encrypt" and
10865 "verify" security levels for the new <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> parameter
10866 introduced in Postfix 2.3. Starting with Postfix 2.3, and independently
10867 of how the policy is specified, the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and
10868 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameters apply when TLS encryption
10869 is mandatory. Connections for which encryption is optional typically
10870 enable all "export" grade and better ciphers (see <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>
10871 and <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>). </p>
10873 <p> As long as no secure DNS lookup mechanism is available, false
10874 hostnames in MX or CNAME responses can change the server hostname
10875 that Postfix uses for TLS policy lookup and server certificate
10876 verification. Even with a perfect match between the server hostname and
10877 the server certificate, there is no guarantee that Postfix is connected
10878 to the right server. See <a href="TLS_README.html">TLS_README</a> (Closing a DNS loophole with obsolete
10879 per-site TLS policies) for a possible work-around. </p>
10881 <p> This feature is available in Postfix 2.2 and later. With
10882 Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p>
10885 </DD>
10887 <DT><b><a name="smtp_tls_policy_maps">smtp_tls_policy_maps</a>
10888 (default: empty)</b></DT><DD>
10890 <p> Optional lookup tables with the Postfix SMTP client TLS security
10891 policy by next-hop destination; when a non-empty value is specified,
10892 this overrides the obsolete <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> parameter. See
10893 <a href="TLS_README.html">TLS_README</a> for a more detailed discussion of TLS security levels.
10894 </p>
10896 <p> The TLS policy table is indexed by the full next-hop destination,
10897 which is either the recipient domain, or the verbatim next-hop
10898 specified in the transport table, $<a href="postconf.5.html#local_transport">local_transport</a>, $<a href="postconf.5.html#virtual_transport">virtual_transport</a>,
10899 $<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
10900 square brackets and any non-default destination server port suffix. The
10901 LMTP socket type prefix (inet: or unix:) is not included in the lookup
10902 key. </p>
10904 <p> Only the next-hop domain, or $<a href="postconf.5.html#myhostname">myhostname</a> with LMTP over UNIX-domain
10905 sockets, is used as the nexthop name for certificate verification. The
10906 port and any enclosing square brackets are used in the table lookup key,
10907 but are not used for server name verification. </p>
10909 <p> When the lookup key is a domain name without enclosing square brackets
10910 or any <i>:port</i> suffix (typically the recipient domain), and the full
10911 domain is not found in the table, just as with the <a href="transport.5.html">transport(5)</a> table,
10912 the parent domain starting with a leading "." is matched recursively. This
10913 allows one to specify a security policy for a recipient domain and all
10914 its sub-domains. </p>
10916 <p> The lookup result is a security level, followed by an optional list
10917 of whitespace and/or comma separated name=value attributes that override
10918 related <a href="postconf.5.html">main.cf</a> settings. The TLS security levels in order of increasing
10919 security are: </p>
10921 <dl>
10923 <dt><b>none</b></dt>
10924 <dd>No TLS. No additional attributes are supported at this level. </dd>
10926 <dt><b>may</b></dt>
10927 <dd>Opportunistic TLS. Since sending in the clear is acceptable,
10928 demanding stronger than default TLS security merely reduces
10929 inter-operability. The optional "ciphers", "exclude" and "protocols"
10930 attributes (available for opportunistic TLS with Postfix &ge; 2.6)
10931 override 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
10932 "<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>" configuration parameters. When opportunistic TLS
10933 handshakes fail, Postfix retries the connection with TLS disabled.
10934 This allows mail delivery to sites with non-interoperable TLS
10935 implementations.</dd>
10937 <dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption. At this level
10938 and higher, the optional "protocols" attribute overrides the <a href="postconf.5.html">main.cf</a>
10939 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameter, the optional "ciphers" attribute
10940 overrides 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
10941 optional "exclude" attribute (Postfix &ge; 2.6) overrides the <a href="postconf.5.html">main.cf</a>
10942 <a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> parameter. In the policy table,
10943 multiple protocols or excluded ciphers must be separated by colons,
10944 as attribute values may not contain whitespace or commas. </dd>
10946 <dt><b>fingerprint</b></dt> <dd>Certificate fingerprint
10947 verification. Available with Postfix 2.5 and later. At this security
10948 level, there are no trusted certificate authorities. The certificate
10949 trust chain, expiration date, ... are not checked. Instead,
10950 the optional <b>match</b> attribute, or else the <a href="postconf.5.html">main.cf</a>
10951 <b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> parameter, lists the
10952 valid "fingerprints" of the server certificate. The digest
10953 algorithm used to calculate the fingerprint is selected by the
10954 <b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. Multiple fingerprints can
10955 be combined with a "|" delimiter in a single match attribute, or multiple
10956 match attributes can be employed. The ":" character is not used as a
10957 delimiter as it occurs between each pair of fingerprint (hexadecimal)
10958 digits. </dd>
10960 <dt><b>verify</b></dt> <dd>Mandatory TLS verification. At this security
10961 level, DNS MX lookups are trusted to be secure enough, and the name
10962 verified in the server certificate is usually obtained indirectly via
10963 unauthenticated DNS MX lookups. The optional "match" attribute overrides
10964 the <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,
10965 multiple match patterns and strategies must be separated by colons.
10966 In practice explicit control over matching is more common with the
10967 "secure" policy, described below. </dd>
10969 <dt><b>secure</b></dt> <dd>Secure-channel TLS. At this security level, DNS
10970 MX lookups, though potentially used to determine the candidate next-hop
10971 gateway IP addresses, are <b>not</b> trusted to be secure enough for TLS
10972 peername verification. Instead, the default name verified in the server
10973 certificate is obtained directly from the next-hop, or is explicitly
10974 specified via the optional <b>match</b> attribute which overrides the
10975 <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,
10976 multiple match patterns and strategies must be separated by colons.
10977 The match attribute is most useful when multiple domains are supported by
10978 common server, the policy entries for additional domains specify matching
10979 rules for the primary domain certificate. While transport table overrides
10980 routing the secondary domains to the primary nexthop also allow secure
10981 verification, they risk delivery to the wrong destination when domains
10982 change hands or are re-assigned to new gateways. With the "match"
10983 attribute approach, routing is not perturbed, and mail is deferred if
10984 verification of a new MX host fails. </dd>
10986 </dl>
10989 Example:
10990 </p>
10992 <pre>
10993 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
10994 <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = hash:/etc/postfix/tls_policy
10995 # Postfix 2.5 and later
10996 <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5
10997 </pre>
10999 <pre>
11000 /etc/postfix/tls_policy:
11001 example.edu none
11002 example.mil may
11003 example.gov encrypt protocols=TLSv1
11004 example.com verify ciphers=high
11005 example.net secure
11006 .example.net secure match=.example.net:example.net
11007 [mail.example.org]:587 secure match=nexthop
11008 # Postfix 2.5 and later
11009 [thumb.example.org] fingerprint
11010 match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
11011 match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
11012 </pre>
11014 <p> <b>Note:</b> The <b>hostname</b> strategy if listed in a non-default
11015 setting of <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> or in the <b>match</b> attribute
11016 in the policy table can render the <b>secure</b> level vulnerable to
11017 DNS forgery. Do not use the <b>hostname</b> strategy for secure-channel
11018 configurations in environments where DNS security is not assured. </p>
11020 <p> This feature is available in Postfix 2.3 and later. </p>
11023 </DD>
11025 <DT><b><a name="smtp_tls_protocols">smtp_tls_protocols</a>
11026 (default: !SSLv2)</b></DT><DD>
11028 <p> List of TLS protocols that the Postfix SMTP client will exclude or
11029 include with opportunistic TLS encryption. Starting with Postfix 2.6,
11030 the Postfix SMTP client will by default not use the obsolete SSLv2
11031 protocol. </p>
11033 <p> In <a href="postconf.5.html">main.cf</a> the values are separated by whitespace, commas or
11034 colons. In the policy table (see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid
11035 separator is colon. An empty value means allow all protocols. The valid
11036 protocol names, (see <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3"
11037 and "TLSv1". </p>
11039 <p> To include a protocol list its name, to exclude it, prefix the name
11040 with a "!" character. To exclude SSLv2 even for opportunistic TLS set
11041 "<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set
11042 "<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to
11043 include, is supported, but not recommended. OpenSSL provides no mechanisms
11044 for excluding protocols not known at compile-time. If Postfix is linked
11045 against an OpenSSL library that supports additional protocol versions,
11046 they cannot be excluded using either syntax. </p>
11048 <p> Example: </p>
11049 <pre>
11050 # TLSv1 only!
11051 <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3
11052 </pre>
11054 <p> This feature is available in Postfix 2.6 and later. </p>
11057 </DD>
11059 <DT><b><a name="smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a>
11060 (default: 9)</b></DT><DD>
11062 <p> The verification depth for remote SMTP server certificates. A depth
11063 of 1 is sufficient if the issuing CA is listed in a local CA file. </p>
11065 <p> The default verification depth is 9 (the OpenSSL default) for
11066 compatibility with earlier Postfix behavior. Prior to Postfix 2.5,
11067 the default value was 5, but the limit was not actually enforced. If
11068 you have set this to a lower non-default value, certificates with longer
11069 trust chains may now fail to verify. Certificate chains with 1 or 2
11070 CAs are common, deeper chains are more rare and any number between 5
11071 and 9 should suffice in practice. You can choose a lower number if,
11072 for example, you trust certificates directly signed by an issuing CA
11073 but not any CAs it delegates to. </p>
11075 <p> This feature is available in Postfix 2.2 and later. </p>
11078 </DD>
11080 <DT><b><a name="smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a>
11081 (default: nexthop, dot-nexthop)</b></DT><DD>
11083 <p> The server certificate peername verification method for the
11084 "secure" TLS security level. In a "secure" TLS policy table
11085 ($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute
11086 overrides this <a href="postconf.5.html">main.cf</a> setting. </p>
11088 <p> This parameter specifies one or more patterns or strategies separated
11089 by commas, whitespace or colons. In the policy table the only valid
11090 separator is the colon character. </p>
11092 <p> For a description of the pattern and strategy syntax see the
11093 <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> parameter. The "hostname" strategy should
11094 be avoided in this context, as in the absence of a secure global DNS, using
11095 the results of MX lookups in certificate verification is not immune to active
11096 (man-in-the-middle) attacks on DNS. </p>
11099 Sample <a href="postconf.5.html">main.cf</a> setting:
11100 </p>
11102 <blockquote>
11103 <pre>
11104 <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop
11105 </pre>
11106 </blockquote>
11109 Sample policy table override:
11110 </p>
11112 <blockquote>
11113 <pre>
11114 example.net secure match=example.com:.example.com
11115 .example.net secure match=example.com:.example.com
11116 </pre>
11117 </blockquote>
11119 <p> This feature is available in Postfix 2.3 and later. </p>
11122 </DD>
11124 <DT><b><a name="smtp_tls_security_level">smtp_tls_security_level</a>
11125 (default: empty)</b></DT><DD>
11127 <p> The default SMTP TLS security level for the Postfix SMTP client;
11128 when a non-empty value is specified, this overrides the obsolete
11129 parameters <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>.
11130 </p>
11132 <p> Specify one of the following security levels: </p>
11134 <dl>
11136 <dt><b>none</b></dt> <dd> TLS will not be used unless enabled for specific
11137 destinations via <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>. </dd>
11139 <dt><b>may</b></dt>
11140 <dd> Opportunistic TLS. Use TLS if this is supported by the remote
11141 SMTP server, otherwise use plaintext. Since
11142 sending in the clear is acceptable, demanding stronger than default TLS
11143 security merely reduces inter-operability.
11144 The "<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)
11145 configuration parameters provide control over the protocols and
11146 cipher grade used with opportunistic TLS. With earlier releases the
11147 opportunistic TLS cipher grade is always "export" and no protocols
11148 are disabled.
11149 When TLS handshakes fail, the connection is retried with TLS disabled.
11150 This allows mail delivery to sites with non-interoperable TLS
11151 implementations. </dd>
11153 <dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption. Since a minimum
11154 level of security is intended, it is reasonable to be specific about
11155 sufficiently secure protocol versions and ciphers. At this security level
11156 and 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
11157 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> specify the TLS protocols and minimum
11158 cipher grade which the administrator considers secure enough for
11159 mandatory encrypted sessions. This security level is not an appropriate
11160 default for systems delivering mail to the Internet. </dd>
11162 <dt><b>fingerprint</b></dt> <dd>Certificate fingerprint
11163 verification. Available with Postfix 2.5 and later. At this security
11164 level, there are no trusted certificate authorities. The certificate
11165 trust chain, expiration date, ... are not checked. Instead,
11166 the <b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> parameter lists
11167 the valid "fingerprints" of the server certificate. The digest
11168 algorithm used to calculate the fingerprint is selected by the
11169 <b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. </dd>
11171 <dt><b>verify</b></dt> <dd>Mandatory TLS verification. At this security
11172 level, DNS MX lookups are trusted to be secure enough, and the name
11173 verified in the server certificate is usually obtained indirectly
11174 via unauthenticated DNS MX lookups. The <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
11175 parameter controls how the server name is verified. In practice explicit
11176 control over matching is more common at the "secure" level, described
11177 below. This security level is not an appropriate default for systems
11178 delivering mail to the Internet. </dd>
11180 <dt><b>secure</b></dt> <dd>Secure-channel TLS. At this security level,
11181 DNS MX lookups, though potentially used to determine the candidate
11182 next-hop gateway IP addresses, are <b>not</b> trusted to be secure enough
11183 for TLS peername verification. Instead, the default name verified in
11184 the server certificate is obtained from the next-hop domain as specified
11185 in the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> configuration parameter. The default
11186 matching rule is that a server certificate matches when its name is equal
11187 to or is a sub-domain of the nexthop domain. This security level is not
11188 an appropriate default for systems delivering mail to the Internet. </dd>
11190 </dl>
11193 Examples:
11194 </p>
11196 <pre>
11197 # 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.
11198 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = none
11199 </pre>
11201 <pre>
11202 # Opportunistic TLS.
11203 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = may
11204 # Postfix &ge; 2.6:
11205 # Do not tweak opportunistic ciphers or protocol unless it is essential
11206 # to do so (if a security vulnerability is found in the SSL library that
11207 # can be mitigated by disabling a particular protocol or raising the
11208 # cipher grade from "export" to "low" or "medium").
11209 <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> = export
11210 <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2
11211 </pre>
11213 <pre>
11214 # Mandatory (high-grade) TLS encryption.
11215 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = encrypt
11216 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
11217 </pre>
11219 <pre>
11220 # Mandatory TLS verification of hostname or nexthop domain.
11221 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = verify
11222 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
11223 <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop
11224 </pre>
11226 <pre>
11227 # Secure channel TLS with exact nexthop name match.
11228 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = secure
11229 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1
11230 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
11231 <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop
11232 </pre>
11234 <pre>
11235 # Certificate fingerprint verification (Postfix &ge; 2.5).
11236 # The CA-less "fingerprint" security level only scales to a limited
11237 # number of destinations. As a global default rather than a per-site
11238 # setting, this is practical when mail for all recipients is sent
11239 # to a central mail hub.
11240 <a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com]
11241 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint
11242 <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
11243 <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high
11244 <a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> =
11245 3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1
11246 EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35
11247 </pre>
11249 <p> This feature is available in Postfix 2.3 and later. </p>
11252 </DD>
11254 <DT><b><a name="smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>
11255 (default: empty)</b></DT><DD>
11257 <p> Name of the file containing the optional Postfix SMTP client
11258 TLS session cache. Specify a database type that supports enumeration,
11259 such as <b>btree</b> or <b>sdbm</b>; there is no need to support
11260 concurrent access. The file is created if it does not exist. The <a href="smtp.8.html">smtp(8)</a>
11261 daemon does not use this parameter directly, rather the cache is
11262 implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that
11263 per-smtp-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not effective.
11264 Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon:
11265 $<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>
11266 (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
11267 be stored separately. It is not at this time possible to store multiple
11268 caches in a single database. </p>
11270 <p> Note: <b>dbm</b> databases are not suitable. TLS
11271 session objects are too large. </p>
11273 <p> As of version 2.5, Postfix no longer uses root privileges when
11274 opening this file. The file should now be stored under the Postfix-owned
11275 <a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file
11276 under a non-Postfix directory is redirected to the Postfix-owned
11277 <a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p>
11279 <p> Example: </p>
11281 <pre>
11282 <a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a> = btree:/var/lib/postfix/smtp_scache
11283 </pre>
11285 <p> This feature is available in Postfix 2.2 and later. </p>
11288 </DD>
11290 <DT><b><a name="smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a>
11291 (default: 3600s)</b></DT><DD>
11293 <p> The expiration time of Postfix SMTP client TLS session cache
11294 information. A cache cleanup is performed periodically
11295 every $<a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a> seconds. As with
11296 $<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>, this parameter is implemented in the
11297 <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtp-instance <a href="master.5.html">master.cf</a> overrides
11298 are not possible. </p>
11300 <p> This feature is available in Postfix 2.2 and later. </p>
11303 </DD>
11305 <DT><b><a name="smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a>
11306 (default: hostname)</b></DT><DD>
11308 <p> The server certificate peername verification method for the
11309 "verify" TLS security level. In a "verify" TLS policy table
11310 ($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute
11311 overrides this <a href="postconf.5.html">main.cf</a> setting. </p>
11313 <p> This parameter specifies one or more patterns or strategies separated
11314 by commas, whitespace or colons. In the policy table the only valid
11315 separator is the colon character. </p>
11317 <p> Patterns specify domain names, or domain name suffixes: </p>
11319 <dl>
11321 <dt><i>example.com</i></dt> <dd> Match the <i>example.com</i> domain,
11322 i.e. one of the names the server certificate must be <i>example.com</i>,
11323 upper and lower case distinctions are ignored. </dd>
11325 <dt><i>.example.com</i></dt>
11326 <dd> Match subdomains of the <i>example.com</i> domain, i.e. match
11327 a name in the server certificate that consists of a non-zero number of
11328 labels followed by a <i>.example.com</i> suffix. Case distinctions are
11329 ignored.</dd>
11331 </dl>
11333 <p> Strategies specify a transformation from the next-hop domain
11334 to the expected name in the server certificate: </p>
11336 <dl>
11338 <dt>nexthop</dt>
11339 <dd> Match against the next-hop domain, which is either the recipient
11340 domain, or the transport next-hop configured for the domain stripped of
11341 any optional socket type prefix, enclosing square brackets and trailing
11342 port. When MX lookups are not suppressed, this is the original nexthop
11343 domain prior to the MX lookup, not the result of the MX lookup. For
11344 LMTP delivery via UNIX-domain sockets, the verified next-hop name is
11345 $<a href="postconf.5.html#myhostname">myhostname</a>. This strategy is suitable for use with the "secure"
11346 policy. Case is ignored.</dd>
11348 <dt>dot-nexthop</dt>
11349 <dd> As above, but match server certificate names that are subdomains
11350 of the next-hop domain. Case is ignored.</dd>
11352 <dt>hostname</dt> <dd> Match against the hostname of the server, often
11353 obtained via an unauthenticated DNS MX lookup. For LMTP delivery via
11354 UNIX-domain sockets, the verified name is $<a href="postconf.5.html#myhostname">myhostname</a>. This matches
11355 the verification strategy of the "MUST" keyword in the obsolete
11356 <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table, and is suitable for use with the "verify"
11357 security level. When the next-hop name is enclosed in square brackets
11358 to suppress MX lookups, the "hostname" strategy is the same as the
11359 "nexthop" strategy. Case is ignored.</dd>
11361 </dl>
11364 Sample <a href="postconf.5.html">main.cf</a> setting:
11365 </p>
11367 <pre>
11368 <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop
11369 </pre>
11372 Sample policy table override:
11373 </p>
11375 <pre>
11376 example.com verify match=hostname:nexthop
11377 .example.com verify match=example.com:.example.com:hostname
11378 </pre>
11380 <p> This feature is available in Postfix 2.3 and later. </p>
11383 </DD>
11385 <DT><b><a name="smtp_use_tls">smtp_use_tls</a>
11386 (default: no)</b></DT><DD>
11388 <p> Opportunistic mode: use TLS when a remote SMTP server announces
11389 STARTTLS support, otherwise send the mail in the clear. Beware:
11390 some SMTP servers offer STARTTLS even if it is not configured. With
11391 Postfix &lt; 2.3, if the TLS handshake fails, and no other server is
11392 available, delivery is deferred and mail stays in the queue. If this
11393 is a concern for you, use the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> feature instead. </p>
11395 <p> This feature is available in Postfix 2.2 and later. With
11396 Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p>
11399 </DD>
11401 <DT><b><a name="smtp_xforward_timeout">smtp_xforward_timeout</a>
11402 (default: 300s)</b></DT><DD>
11405 The SMTP client time limit for sending the XFORWARD command, and
11406 for receiving the server response.
11407 </p>
11410 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
11411 The default time unit is s (seconds).
11412 </p>
11415 This feature is available in Postfix 2.1 and later.
11416 </p>
11419 </DD>
11421 <DT><b><a name="smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a>
11422 (default: $<a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a>)</b></DT><DD>
11424 <p> What SMTP clients are allowed to specify the XVERP command.
11425 This command requests that mail be delivered one recipient at a
11426 time with a per recipient return address. </p>
11428 <p> By default, no clients are allowed to specify XVERP. </p>
11430 <p> This parameter was renamed with Postfix version 2.1. The default value
11431 is backwards compatible with Postfix version 2.0. </p>
11433 <p> Specify a list of network/netmask patterns, separated by commas
11434 and/or whitespace. The mask specifies the number of bits in the
11435 network part of a host address. You can also specify hostnames or
11436 .domain names (the initial dot causes the domain to match any name
11437 below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name"
11438 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
11439 is matched when a table entry matches a lookup string (the lookup
11440 result is ignored). Continue long lines by starting the next line
11441 with whitespace. Specify "!pattern" to exclude an address or network
11442 block from the list. The form "!/file/name" is supported only in
11443 Postfix version 2.4 and later. </p>
11445 <p> Note: IP version 6 address information must be specified inside
11446 <tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a> value, and in
11447 files specified with "/file/name". IP version 6 addresses contain
11448 the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
11449 pattern. </p>
11452 </DD>
11454 <DT><b><a name="smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a>
11455 (default: empty)</b></DT><DD>
11458 What SMTP clients are allowed to use the XCLIENT feature. This
11459 command overrides SMTP client information that is used for access
11460 control. Typical use is for SMTP-based content filters, fetchmail-like
11461 programs, or SMTP server access rule testing. See the <a href="XCLIENT_README.html">XCLIENT_README</a>
11462 document for details.
11463 </p>
11466 This feature is available in Postfix 2.1 and later.
11467 </p>
11470 By default, no clients are allowed to specify XCLIENT.
11471 </p>
11474 Specify a list of network/netmask patterns, separated by commas
11475 and/or whitespace. The mask specifies the number of bits in the
11476 network part of a host address. You can also specify hostnames or
11477 .domain names (the initial dot causes the domain to match any name
11478 below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name"
11479 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
11480 is matched when a table entry matches a lookup string (the lookup
11481 result is ignored). Continue long lines by starting the next line
11482 with whitespace. Specify "!pattern" to exclude an address or network
11483 block from the list. The form "!/file/name" is supported only in
11484 Postfix version 2.4 and later. </p>
11486 <p> Note: IP version 6 address information must be specified inside
11487 <tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a> value, and in
11488 files specified with "/file/name". IP version 6 addresses contain
11489 the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
11490 pattern. </p>
11493 </DD>
11495 <DT><b><a name="smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a>
11496 (default: empty)</b></DT><DD>
11499 What SMTP clients are allowed to use the XFORWARD feature. This
11500 command forwards information that is used to improve logging after
11501 SMTP-based content filters. See the <a href="XFORWARD_README.html">XFORWARD_README</a> document for
11502 details.
11503 </p>
11506 This feature is available in Postfix 2.1 and later.
11507 </p>
11510 By default, no clients are allowed to specify XFORWARD.
11511 </p>
11514 Specify a list of network/netmask patterns, separated by commas
11515 and/or whitespace. The mask specifies the number of bits in the
11516 network part of a host address. You can also specify hostnames or
11517 .domain names (the initial dot causes the domain to match any name
11518 below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name"
11519 pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table
11520 is matched when a table entry matches a lookup string (the lookup
11521 result is ignored). Continue long lines by starting the next line
11522 with whitespace. Specify "!pattern" to exclude an address or network
11523 block from the list. The form "!/file/name" is supported only in
11524 Postfix version 2.4 and later. </p>
11526 <p> Note: IP version 6 address information must be specified inside
11527 <tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a> value, and in
11528 files specified with "/file/name". IP version 6 addresses contain
11529 the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
11530 pattern. </p>
11533 </DD>
11535 <DT><b><a name="smtpd_banner">smtpd_banner</a>
11536 (default: $<a href="postconf.5.html#myhostname">myhostname</a> ESMTP $<a href="postconf.5.html#mail_name">mail_name</a>)</b></DT><DD>
11539 The text that follows the 220 status code in the SMTP greeting
11540 banner. Some people like to see the mail version advertised. By
11541 default, Postfix shows no version.
11542 </p>
11545 You MUST specify $<a href="postconf.5.html#myhostname">myhostname</a> at the start of the text. This is
11546 required by the SMTP protocol.
11547 </p>
11550 Example:
11551 </p>
11553 <pre>
11554 <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>)
11555 </pre>
11558 </DD>
11560 <DT><b><a name="smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a>
11561 (default: 50)</b></DT><DD>
11564 How many simultaneous connections any client is allowed to
11565 make to this service. By default, the limit is set to half
11566 the default process limit value.
11567 </p>
11570 To disable this feature, specify a limit of 0.
11571 </p>
11574 WARNING: The purpose of this feature is to limit abuse. It must
11575 not be used to regulate legitimate mail traffic.
11576 </p>
11579 This feature is available in Postfix 2.2 and later.
11580 </p>
11583 </DD>
11585 <DT><b><a name="smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a>
11586 (default: 0)</b></DT><DD>
11589 The maximal number of connection attempts any client is allowed to
11590 make to this service per time unit. The time unit is specified
11591 with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
11592 </p>
11595 By default, a client can make as many connections per time unit as
11596 Postfix can accept.
11597 </p>
11600 To disable this feature, specify a limit of 0.
11601 </p>
11604 WARNING: The purpose of this feature is to limit abuse. It must
11605 not be used to regulate legitimate mail traffic.
11606 </p>
11609 This feature is available in Postfix 2.2 and later.
11610 </p>
11613 Example:
11614 </p>
11616 <pre>
11617 <a href="postconf.5.html#smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a> = 1000
11618 </pre>
11621 </DD>
11623 <DT><b><a name="smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a>
11624 (default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD>
11627 Clients that are excluded from smtpd_client_*_count/rate_limit
11628 restrictions. See the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter
11629 description for the parameter value syntax.
11630 </p>
11633 By default, clients in trusted networks are excluded. Specify a
11634 list of network blocks, hostnames or .domain names (the initial
11635 dot causes the domain to match any name below it).
11636 </p>
11638 <p> Note: IP version 6 address information must be specified inside
11639 <tt>[]</tt> in the <a href="postconf.5.html#smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a> value, and
11640 in files specified with "/file/name". IP version 6 addresses
11641 contain the ":" character, and would otherwise be confused with a
11642 "<a href="DATABASE_README.html">type:table</a>" pattern. </p>
11645 This feature is available in Postfix 2.2 and later.
11646 </p>
11649 </DD>
11651 <DT><b><a name="smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a>
11652 (default: 0)</b></DT><DD>
11655 The maximal number of message delivery requests that any client is
11656 allowed to make to this service per time unit, regardless of whether
11657 or not Postfix actually accepts those messages. The time unit is
11658 specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
11659 </p>
11662 By default, a client can send as many message delivery requests
11663 per time unit as Postfix can accept.
11664 </p>
11667 To disable this feature, specify a limit of 0.
11668 </p>
11671 WARNING: The purpose of this feature is to limit abuse. It must
11672 not be used to regulate legitimate mail traffic.
11673 </p>
11676 This feature is available in Postfix 2.2 and later.
11677 </p>
11680 Example:
11681 </p>
11683 <pre>
11684 <a href="postconf.5.html#smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a> = 1000
11685 </pre>
11688 </DD>
11690 <DT><b><a name="smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a>
11691 (default: 0)</b></DT><DD>
11694 The maximal number of new (i.e., uncached) TLS sessions that a
11695 remote SMTP client is allowed to negotiate with this service per
11696 time unit. The time unit is specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a>
11697 configuration parameter.
11698 </p>
11701 By default, a remote SMTP client can negotiate as many new TLS
11702 sessions per time unit as Postfix can accept.
11703 </p>
11706 To disable this feature, specify a limit of 0. Otherwise, specify
11707 a limit that is at least the per-client concurrent session limit,
11708 or else legitimate client sessions may be rejected.
11709 </p>
11712 WARNING: The purpose of this feature is to limit abuse. It must
11713 not be used to regulate legitimate mail traffic.
11714 </p>
11717 This feature is available in Postfix 2.3 and later.
11718 </p>
11721 Example:
11722 </p>
11724 <pre>
11725 <a href="postconf.5.html#smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a> = 100
11726 </pre>
11729 </DD>
11731 <DT><b><a name="smtpd_client_port_logging">smtpd_client_port_logging</a>
11732 (default: no)</b></DT><DD>
11734 <p> Enable logging of the remote SMTP client port in addition to
11735 the hostname and IP address. The logging format is "host[address]:port".
11736 </p>
11738 <p> This feature is available in Postfix 2.5 and later. </p>
11741 </DD>
11743 <DT><b><a name="smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a>
11744 (default: 0)</b></DT><DD>
11747 The maximal number of recipient addresses that any client is allowed
11748 to send to this service per time unit, regardless of whether or not
11749 Postfix actually accepts those recipients. The time unit is specified
11750 with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter.
11751 </p>
11754 By default, a client can send as many recipient addresses per time
11755 unit as Postfix can accept.
11756 </p>
11759 To disable this feature, specify a limit of 0.
11760 </p>
11763 WARNING: The purpose of this feature is to limit abuse. It must
11764 not be used to regulate legitimate mail traffic.
11765 </p>
11768 This feature is available in Postfix 2.2 and later.
11769 </p>
11772 Example:
11773 </p>
11775 <pre>
11776 <a href="postconf.5.html#smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a> = 1000
11777 </pre>
11780 </DD>
11782 <DT><b><a name="smtpd_client_restrictions">smtpd_client_restrictions</a>
11783 (default: empty)</b></DT><DD>
11786 Optional SMTP server access restrictions in the context of a client
11787 SMTP connection request.
11788 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
11789 restriction lists" for a discussion of evaluation context and time.
11790 </p>
11793 The default is to allow all connection requests.
11794 </p>
11797 Specify a list of restrictions, separated by commas and/or whitespace.
11798 Continue long lines by starting the next line with whitespace.
11799 Restrictions are applied in the order as specified; the first
11800 restriction that matches wins.
11801 </p>
11804 The following restrictions are specific to client hostname or
11805 client network address information.
11806 </p>
11808 <dl>
11810 <dt><b><a name="check_ccert_access">check_ccert_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11812 <dd> Use the client certificate fingerprint as lookup key for the
11813 specified <a href="access.5.html">access(5)</a> database; with Postfix version 2.2, also require that
11814 the SMTP client certificate is verified successfully.
11815 The fingerprint digest algorithm is configurable via the
11816 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
11817 Postfix version 2.5). This feature is available with Postfix version
11818 2.2 and later. </dd>
11820 <dt><b><a name="check_client_access">check_client_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11822 <dd>Search the specified access database for the client hostname,
11823 parent domains, client IP address, or networks obtained by stripping
11824 least significant octets. See the <a href="access.5.html">access(5)</a> manual page for details. </dd>
11826 <dt><b><a name="check_client_mx_access">check_client_mx_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11828 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for the
11829 client hostname, and execute the corresponding action. Note: a result
11830 of "OK" is not allowed for safety reasons. Instead, use DUNNO in order
11831 to exclude specific hosts from blacklists. This feature is available
11832 in Postfix 2.7 and later. </dd>
11834 <dt><b><a name="check_client_ns_access">check_client_ns_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11836 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers for
11837 the client hostname, and execute the corresponding action. Note: a
11838 result of "OK" is not allowed for safety reasons. Instead, use DUNNO
11839 in order to exclude specific hosts from blacklists. This feature is
11840 available in Postfix 2.7 and later. </dd>
11842 <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>
11844 <dd>Search the specified access database for the unverified reverse
11845 client hostname, parent domains, client IP address, or networks
11846 obtained by stripping least significant octets. See the <a href="access.5.html">access(5)</a>
11847 manual page for details. Note: a result of "OK" is not allowed for
11848 safety reasons. Instead, use DUNNO in order to exclude specific
11849 hosts from blacklists. This feature is available in Postfix 2.6
11850 and later.</dd>
11852 <dt><b><a name="check_reverse_client_hostname_mx_access">check_reverse_client_hostname_mx_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11854 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for the
11855 unverified reverse client hostname, and execute the corresponding
11856 action. Note: a result of "OK" is not allowed for safety reasons.
11857 Instead, use DUNNO in order to exclude specific hosts from blacklists.
11858 This feature is available in Postfix 2.7 and later. </dd>
11860 <dt><b><a name="check_reverse_client_hostname_ns_access">check_reverse_client_hostname_ns_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
11862 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers for
11863 the unverified reverse client hostname, and execute the corresponding
11864 action. Note: a result of "OK" is not allowed for safety reasons.
11865 Instead, use DUNNO in order to exclude specific hosts from blacklists.
11866 This feature is available in Postfix 2.7 and later. </dd>
11868 <dt><b><a name="permit_inet_interfaces">permit_inet_interfaces</a></b></dt>
11870 <dd>Permit the request when the client IP address matches
11871 $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. </dd>
11873 <dt><b><a name="permit_mynetworks">permit_mynetworks</a></b></dt>
11875 <dd>Permit the request when the client IP address matches any
11876 network or network address listed in $<a href="postconf.5.html#mynetworks">mynetworks</a>. </dd>
11878 <dt><b><a name="permit_sasl_authenticated">permit_sasl_authenticated</a></b></dt>
11880 <dd> Permit the request when the client is successfully
11881 authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH) protocol. </dd>
11883 <dt><b><a name="permit_tls_all_clientcerts">permit_tls_all_clientcerts</a></b></dt>
11885 <dd> Permit the request when the remote SMTP client certificate is
11886 verified successfully. This option must be used only if a special
11887 CA issues the certificates and only this CA is listed as trusted
11888 CA. Otherwise, clients with a third-party certificate would also
11889 be allowed to relay. Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" when the
11890 trusted CA is specified with <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> or <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>,
11891 to prevent Postfix from appending the system-supplied default CAs.
11892 This feature is available with Postfix version 2.2.</dd>
11894 <dt><b><a name="permit_tls_clientcerts">permit_tls_clientcerts</a></b></dt>
11896 <dd>Permit the request when the remote SMTP client certificate
11897 fingerprint is listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>.
11898 The fingerprint digest algorithm is configurable via the
11899 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to
11900 Postfix version 2.5). This feature is available with Postfix version
11901 2.2. </dd>
11903 <dt><b><a name="reject_rbl_client">reject_rbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt>
11905 <dd>Reject the request when the reversed client network address is
11906 listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>
11907 (Postfix version 2.1 and later only). Each "<i>d</i>" is a number,
11908 or a pattern inside "[]" that contains one or more ";"-separated
11909 numbers or number..number ranges (Postfix version 2.8 and later).
11910 If no "<i>=d.d.d.d</i>" is specified, reject the request when the
11911 reversed client network address is listed with any A record under
11912 <i>rbl_domain</i>. <br>
11913 The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for
11914 rejected requests (default: 554), the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter
11915 specifies the default server reply, and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter
11916 specifies tables with server replies indexed by <i>rbl_domain</i>.
11917 This feature is available in Postfix 2.0 and later. </dd>
11919 <dt><b><a name="permit_dnswl_client">permit_dnswl_client <i>dnswl_domain=d.d.d.d</i></a></b></dt>
11921 <dd>Accept the request when the reversed client network address is
11922 listed with the A record "<i>d.d.d.d</i>" under <i>dnswl_domain</i>.
11923 Each "<i>d</i>" is a number, or a pattern inside "[]" that contains
11924 one or more ";"-separated numbers or number..number ranges.
11925 If no "<i>=d.d.d.d</i>" is specified, accept the request when the
11926 reversed client network address is listed with any A record under
11927 <i>dnswl_domain</i>. <br> For safety, <a href="postconf.5.html#permit_dnswl_client">permit_dnswl_client</a> is silently
11928 ignored when it would override <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>. The
11929 result is DEFER_IF_REJECT when whitelist lookup fails. This feature
11930 is available in Postfix 2.8 and later. </dd>
11932 <dt><b><a name="reject_rhsbl_client">reject_rhsbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt>
11934 <dd>Reject the request when the client hostname is listed with the
11935 A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version
11936 2.1 and later only). Each "<i>d</i>" is a number, or a pattern
11937 inside "[]" that contains one or more ";"-separated numbers or
11938 number..number ranges (Postfix version 2.8 and later). If no
11939 "<i>=d.d.d.d</i>" is specified, reject the request when the client
11940 hostname is listed with
11941 any A record under <i>rbl_domain</i>. See the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a>
11942 description above for additional RBL related configuration parameters.
11943 This feature is available in Postfix 2.0 and later; with Postfix
11944 version 2.8 and later, <a href="postconf.5.html#reject_rhsbl_reverse_client">reject_rhsbl_reverse_client</a> will usually
11945 produce better results. </dd>
11947 <dt><b><a name="permit_rhswl_client">permit_rhswl_client <i>rhswl_domain=d.d.d.d</i></a></b></dt>
11949 <dd>Accept the request when the client hostname is listed with the
11950 A record "<i>d.d.d.d</i>" under <i>rhswl_domain</i>. Each "<i>d</i>"
11951 is a number, or a pattern inside "[]" that contains one or more
11952 ";"-separated numbers or number..number ranges. If no
11953 "<i>=d.d.d.d</i>" is specified, accept the request when the client
11954 hostname is listed with any A record under <i>rhswl_domain</i>.
11955 <br> Caution: client name whitelisting is fragile, since the client
11956 name lookup can fail due to temporary outages. Client name
11957 whitelisting should be used only to reduce false positives in e.g.
11958 DNS-based blocklists, and not for making access rule exceptions.
11959 <br> For safety, <a href="postconf.5.html#permit_rhswl_client">permit_rhswl_client</a> is silently ignored when it
11960 would override <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>. The result is DEFER_IF_REJECT
11961 when whitelist lookup fails. This feature is available in Postfix
11962 2.8 and later. </dd>
11964 <dt><b><a name="reject_rhsbl_reverse_client">reject_rhsbl_reverse_client <i>rbl_domain=d.d.d.d</i></a></b></dt>
11966 <dd>Reject the request when the unverified reverse client hostname
11967 is listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>.
11968 Each "<i>d</i>" is a number, or a pattern inside "[]" that contains
11969 one or more ";"-separated numbers or number..number ranges.
11970 If no "<i>=d.d.d.d</i>" is specified, reject the request when the
11971 unverified reverse client hostname is listed with any A record under
11972 <i>rbl_domain</i>. See the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> description above for
11973 additional RBL related configuration parameters. This feature is
11974 available in Postfix 2.8 and later. </dd>
11976 <dt><b><a name="reject_unknown_client_hostname">reject_unknown_client_hostname</a></b> (with Postfix &lt; 2.3: reject_unknown_client)</dt>
11978 <dd>Reject the request when 1) the client IP address-&gt;name mapping
11979 fails, 2) the name-&gt;address mapping fails, or 3) the name-&gt;address
11980 mapping does not match the client IP address. <br> This is a
11981 stronger restriction than the <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a>
11982 feature, which triggers only under condition 1) above. <br> The
11983 <a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response code
11984 for rejected requests (default: 450). The reply is always 450 in
11985 case the address-&gt;name or name-&gt;address lookup failed due to
11986 a temporary problem. </dd>
11988 <dt><b><a name="reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a></b></dt>
11990 <dd>Reject the request when the client IP address has no address-&gt;name
11991 mapping. <br> This is a weaker restriction than the
11992 <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> feature, which requires not only
11993 that the address-&gt;name and name-&gt;address mappings exist, but
11994 also that the two mappings reproduce the client IP address. <br>
11995 The <a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response
11996 code for rejected requests (default: 450). The reply is always 450
11997 in case the address-&gt;name lookup failed due to a temporary
11998 problem. <br> This feature is available in Postfix 2.3 and
11999 later. </dd>
12001 </dl>
12004 In addition, you can use any of the following <a name="generic">
12005 generic</a> restrictions. These restrictions are applicable in
12006 any SMTP command context.
12007 </p>
12009 <dl>
12011 <dt><b><a name="check_policy_service">check_policy_service <i>servername</i></a></b></dt>
12013 <dd>Query the specified policy server. See the <a href="SMTPD_POLICY_README.html">SMTPD_POLICY_README</a>
12014 document for details. This feature is available in Postfix 2.1
12015 and later. </dd>
12017 <dt><b><a name="defer">defer</a></b></dt>
12019 <dd>Defer the request. The client is told to try again later. This
12020 restriction is useful at the end of a restriction list, to make
12021 the default policy explicit. <br> The <a href="postconf.5.html#defer_code">defer_code</a> parameter specifies
12022 the SMTP server reply code (default: 450).</dd>
12024 <dt><b><a name="defer_if_permit">defer_if_permit</a></b></dt>
12026 <dd>Defer the request if some later restriction would result in an
12027 explicit or implicit PERMIT action. This is useful when a blacklisting
12028 feature fails due to a temporary problem. This feature is available
12029 in Postfix version 2.1 and later. </dd>
12031 <dt><b><a name="defer_if_reject">defer_if_reject</a></b></dt>
12033 <dd>Defer the request if some later restriction would result in a
12034 REJECT action. This is useful when a whitelisting feature fails
12035 due to a temporary problem. This feature is available in Postfix
12036 version 2.1 and later. </dd>
12038 <dt><b><a name="permit">permit</a></b></dt>
12040 <dd>Permit the request. This restriction is useful at the end of
12041 a restriction list, to make the default policy explicit.</dd>
12043 <dt><b><a name="reject_multi_recipient_bounce">reject_multi_recipient_bounce</a></b></dt>
12045 <dd>Reject the request when the envelope sender is the null address,
12046 and the message has multiple envelope recipients. This usage has
12047 rare but legitimate applications: under certain conditions,
12048 multi-recipient mail that was posted with the DSN option NOTIFY=NEVER
12049 may be forwarded with the null sender address.
12050 <br> Note: this restriction can only work reliably
12051 when used in <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> or
12052 <a href="postconf.5.html#smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a>, because the total number of
12053 recipients is not known at an earlier stage of the SMTP conversation.
12054 Use at the RCPT stage will only reject the second etc. recipient.
12055 <br>
12056 The <a href="postconf.5.html#multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a> parameter specifies the
12057 response code for rejected requests (default: 550). This feature
12058 is available in Postfix 2.1 and later. </dd>
12060 <dt><b><a name="reject_plaintext_session">reject_plaintext_session</a></b></dt>
12062 <dd>Reject the request when the connection is not encrypted. This
12063 restriction should not be used before the client has had a chance
12064 to negotiate encryption with the AUTH or STARTTLS commands.
12065 <br>
12066 The <a href="postconf.5.html#plaintext_reject_code">plaintext_reject_code</a> parameter specifies the response
12067 code for rejected requests (default: 450). This feature is available
12068 in Postfix 2.3 and later. </dd>
12070 <dt><b><a name="reject_unauth_pipelining">reject_unauth_pipelining</a></b></dt>
12072 <dd>Reject the request when the client sends SMTP commands ahead
12073 of time where it is not allowed, or when the client sends SMTP
12074 commands ahead of time without knowing that Postfix actually supports
12075 ESMTP command pipelining. This stops mail from bulk mail software
12076 that improperly uses ESMTP command pipelining in order to speed up
12077 deliveries.
12078 <br> With Postfix 2.6 and later, the SMTP server sets a per-session
12079 flag whenever it detects illegal pipelining, including pipelined
12080 EHLO or HELO commands. The <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> feature simply
12081 tests whether the flag was set at any point in time during the
12082 session.
12083 <br> With older Postfix versions, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> checks
12084 the current status of the input read queue, and its usage is not
12085 recommended in contexts other than <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a>. </dd>
12087 <dt><b><a name="reject">reject</a></b></dt>
12089 <dd>Reject the request. This restriction is useful at the end of
12090 a restriction list, to make the default policy explicit. The
12091 <a href="postconf.5.html#reject_code">reject_code</a> configuration parameter specifies the response code for
12092 rejected requests (default: 554).</dd>
12094 <dt><b><a name="sleep">sleep <i>seconds</i></a></b></dt>
12096 <dd>Pause for the specified number of seconds and proceed with
12097 the next restriction in the list, if any. This may stop zombie
12098 mail when used as:
12099 <pre>
12100 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
12101 <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> =
12102 sleep 1, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a>
12103 <a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = no
12104 </pre>
12105 This feature is available in Postfix 2.3. </dd>
12107 <dt><b><a name="warn_if_reject">warn_if_reject</a></b></dt>
12109 <dd>Change the meaning of the next restriction, so that it logs
12110 a warning instead of rejecting a request (look for logfile records
12111 that contain "reject_warning"). This is useful for testing new
12112 restrictions in a "live" environment without risking unnecessary
12113 loss of mail. </dd>
12115 </dl>
12118 Other restrictions that are valid in this context:
12119 </p>
12121 <ul>
12123 <li> SMTP command specific restrictions that are described under
12124 the <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
12125 <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameters. When helo, sender or
12126 recipient restrictions are listed under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>,
12127 they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that
12128 $<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> is evaluated at the time of the RCPT TO
12129 command.
12131 </ul>
12134 Example:
12135 </p>
12137 <pre>
12138 <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>
12139 </pre>
12142 </DD>
12144 <DT><b><a name="smtpd_command_filter">smtpd_command_filter</a>
12145 (default: empty)</b></DT><DD>
12147 <p> A mechanism to transform commands from remote SMTP clients.
12148 This is a last-resort tool to work around client commands that break
12149 inter-operability with the Postfix SMTP server. Other uses involve
12150 fault injection to test Postfix's handling of invalid commands.
12151 </p>
12153 <p> Specify the name of a "<a href="DATABASE_README.html">type:table</a>" lookup table. The search
12154 string is the SMTP command as received from the remote SMTP client,
12155 except that initial whitespace and the trailing &lt;CR&gt;&lt;LF&gt;
12156 are removed. The result value is executed by the Postfix SMTP
12157 server. </p>
12159 <p> There is no need to use <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> for the following
12160 cases: </p>
12162 <ul>
12164 <li> <p> Use "<a href="postconf.5.html#resolve_numeric_domain">resolve_numeric_domain</a> = yes" to accept
12165 "<i>user@ipaddress</i>". </p>
12167 <li> <p> Postfix already accepts the correct form
12168 "<i>user@[ipaddress]</i>". Use <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> or <a href="postconf.5.html#canonical_maps">canonical_maps</a>
12169 to translate these into domain names if necessary. </p>
12171 <li> <p> Use "<a href="postconf.5.html#strict_rfc821_envelopes">strict_rfc821_envelopes</a> = no" to accept "RCPT TO:&lt;<i>User
12172 Name &lt;user@example.com&gt;&gt;</i>". Postfix will ignore the "<i>User
12173 Name</i>" part and deliver to the <i>&lt;user@example.com&gt;</i> address.
12174 </p>
12176 </ul>
12178 <p> Examples of problems that can be solved with the <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a>
12179 feature: </p>
12181 <pre>
12182 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
12183 <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/command_filter
12184 </pre>
12186 <pre>
12187 /etc/postfix/command_filter:
12188 # Work around clients that send malformed HELO commands.
12189 /^HELO\s*$/ HELO domain.invalid
12190 </pre>
12192 <pre>
12193 # Work around clients that send empty lines.
12194 /^\s*$/ NOOP
12195 </pre>
12197 <pre>
12198 # Work around clients that send RCPT TO:&lt;'user@domain'&gt;.
12199 # WARNING: do not lose the parameters that follow the address.
12200 /^RCPT\s+TO:\s*&lt;'([^[:space:]]+)'&gt;(.*)/ RCPT TO:&lt;$1&gt;$2
12201 </pre>
12203 <pre>
12204 # Bounce-never mail sink. Use <a href="postconf.5.html#notify_classes">notify_classes</a>=bounce,resource,software
12205 # to send bounced mail to the postmaster (with message body removed).
12206 /^(RCPT\s+TO:.*?)\bNOTIFY=\S+\b(.*)/ $1 NOTIFY=NEVER $2
12207 /^(RCPT\s+TO:.*)/ $1 NOTIFY=NEVER
12208 </pre>
12210 <p> This feature is available in Postfix 2.7. </p>
12213 </DD>
12215 <DT><b><a name="smtpd_data_restrictions">smtpd_data_restrictions</a>
12216 (default: empty)</b></DT><DD>
12219 Optional access restrictions that the Postfix SMTP server applies
12220 in the context of the SMTP DATA command.
12221 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
12222 restriction lists" for a discussion of evaluation context and time.
12223 </p>
12226 This feature is available in Postfix 2.0 and later.
12227 </p>
12230 Specify a list of restrictions, separated by commas and/or whitespace.
12231 Continue long lines by starting the next line with whitespace.
12232 Restrictions are applied in the order as specified; the first
12233 restriction that matches wins.
12234 </p>
12237 The following restrictions are valid in this context:
12238 </p>
12240 <ul>
12242 <li><a href="#generic">Generic</a> restrictions that can be used
12243 in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
12245 <li>SMTP command specific restrictions described under
12246 <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>,
12247 <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>.
12249 <li>However, no recipient information is available in the case of
12250 multi-recipient mail. Acting on only one recipient would be misleading,
12251 because any decision will affect all recipients equally. Acting on
12252 all recipients would require a possibly very large amount of memory,
12253 and would also be misleading for the reasons mentioned before.
12255 </ul>
12258 Examples:
12259 </p>
12261 <pre>
12262 <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> = <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a>
12263 <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>
12264 </pre>
12267 </DD>
12269 <DT><b><a name="smtpd_delay_open_until_valid_rcpt">smtpd_delay_open_until_valid_rcpt</a>
12270 (default: yes)</b></DT><DD>
12272 <p> Postpone the start of an SMTP mail transaction until a valid
12273 RCPT TO command is received. Specify "no" to create a mail transaction
12274 as soon as the SMTP server receives a valid MAIL FROM command. </p>
12276 <p> With sites that reject lots of mail, the default setting reduces
12277 the use of
12278 disk, CPU and memory resources. The downside is that rejected
12279 recipients are logged with NOQUEUE instead of a mail transaction
12280 ID. This complicates the logfile analysis of multi-recipient mail.
12281 </p>
12283 <p> This feature is available in Postfix 2.3 and later. </p>
12286 </DD>
12288 <DT><b><a name="smtpd_delay_reject">smtpd_delay_reject</a>
12289 (default: yes)</b></DT><DD>
12292 Wait until the RCPT TO command before evaluating
12293 $<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
12294 $<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, or wait until the ETRN command before
12295 evaluating $<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>.
12296 </p>
12299 This feature is turned on by default because some clients apparently
12300 mis-behave when the Postfix SMTP server rejects commands before
12301 RCPT TO.
12302 </p>
12305 The default setting has one major benefit: it allows Postfix to log
12306 recipient address information when rejecting a client name/address
12307 or sender address, so that it is possible to find out whose mail
12308 is being rejected.
12309 </p>
12312 </DD>
12314 <DT><b><a name="smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>
12315 (default: empty)</b></DT><DD>
12317 <p> Lookup tables, indexed by the remote SMTP client address, with
12318 case insensitive lists of EHLO keywords (pipelining, starttls, auth,
12319 etc.) that the SMTP server will not send in the EHLO response to a
12320 remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details.
12321 The table is not searched by hostname for robustness reasons. </p>
12323 <p> This feature is available in Postfix 2.2 and later. </p>
12326 </DD>
12328 <DT><b><a name="smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a>
12329 (default: empty)</b></DT><DD>
12331 <p> A case insensitive list of EHLO keywords (pipelining, starttls,
12332 auth, etc.) that the SMTP server will not send in the EHLO response
12333 to a remote SMTP client. </p>
12335 <p> This feature is available in Postfix 2.2 and later. </p>
12337 <p> Notes: </p>
12339 <ul>
12341 <li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent
12342 this action from being logged. </p>
12344 <li> <p> Use the <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a> feature
12345 to discard EHLO keywords selectively. </p>
12347 </ul>
12350 </DD>
12352 <DT><b><a name="smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a>
12353 (default: empty)</b></DT><DD>
12355 <p> Optional access restrictions that the Postfix SMTP server
12356 applies in the context of the SMTP END-OF-DATA command.
12357 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
12358 restriction lists" for a discussion of evaluation context and time.
12359 </p>
12361 <p> This feature is available in Postfix 2.2 and later. </p>
12363 <p> See <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> for details and limitations. </p>
12366 </DD>
12368 <DT><b><a name="smtpd_enforce_tls">smtpd_enforce_tls</a>
12369 (default: no)</b></DT><DD>
12371 <p> Mandatory TLS: announce STARTTLS support to SMTP clients,
12372 and require that clients use TLS encryption. According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a>
12373 this MUST NOT be applied in case of a publicly-referenced SMTP
12374 server. This option is off by default and should be used only on
12375 dedicated servers. </p>
12377 <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>
12379 <p> Note 2: when invoked via "<b>sendmail -bs</b>", Postfix will never offer
12380 STARTTLS due to insufficient privileges to access the server private
12381 key. This is intended behavior. </p>
12383 <p> This feature is available in Postfix 2.2 and later. With
12384 Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p>
12387 </DD>
12389 <DT><b><a name="smtpd_error_sleep_time">smtpd_error_sleep_time</a>
12390 (default: 1s)</b></DT><DD>
12392 <p>With Postfix version 2.1 and later: the SMTP server response delay after
12393 a client has made more than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors, and
12394 fewer than $<a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a> errors, without delivering mail.
12395 </p>
12397 <p>With Postfix version 2.0 and earlier: the SMTP server delay before
12398 sending a reject (4xx or 5xx) response, when the client has made
12399 fewer than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors without delivering
12400 mail. </p>
12403 </DD>
12405 <DT><b><a name="smtpd_etrn_restrictions">smtpd_etrn_restrictions</a>
12406 (default: empty)</b></DT><DD>
12409 Optional SMTP server access restrictions in the context of a client
12410 ETRN request.
12411 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
12412 restriction lists" for a discussion of evaluation context and time.
12413 </p>
12416 The Postfix ETRN implementation accepts only destinations that are
12417 eligible for the Postfix "fast flush" service. See the <a href="ETRN_README.html">ETRN_README</a>
12418 file for details.
12419 </p>
12422 Specify a list of restrictions, separated by commas and/or whitespace.
12423 Continue long lines by starting the next line with whitespace.
12424 Restrictions are applied in the order as specified; the first
12425 restriction that matches wins.
12426 </p>
12429 The following restrictions are specific to the domain name information
12430 received with the ETRN command.
12431 </p>
12433 <dl>
12435 <dt><b><a name="check_etrn_access">check_etrn_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
12437 <dd>Search the specified access database for the ETRN domain name
12438 or its parent domains. See the <a href="access.5.html">access(5)</a> manual page for details.
12439 </dd>
12441 </dl>
12444 Other restrictions that are valid in this context:
12445 </p>
12447 <ul>
12449 <li><a href="#generic">Generic</a> restrictions that can be used
12450 in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
12452 <li>SMTP command specific restrictions described under
12453 <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>.
12455 </ul>
12458 Example:
12459 </p>
12461 <pre>
12462 <a href="postconf.5.html#smtpd_etrn_restrictions">smtpd_etrn_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, reject
12463 </pre>
12466 </DD>
12468 <DT><b><a name="smtpd_expansion_filter">smtpd_expansion_filter</a>
12469 (default: see "postconf -d" output)</b></DT><DD>
12472 What characters are allowed in $name expansions of RBL reply
12473 templates. Characters not in the allowed set are replaced by "_".
12474 Use C like escapes to specify special characters such as whitespace.
12475 </p>
12478 This parameter is not subjected to $parameter expansion.
12479 </p>
12482 This feature is available in Postfix 2.0 and later.
12483 </p>
12486 </DD>
12488 <DT><b><a name="smtpd_forbidden_commands">smtpd_forbidden_commands</a>
12489 (default: CONNECT, GET, POST)</b></DT><DD>
12492 List of commands that cause the Postfix SMTP server to immediately
12493 terminate the session with a 221 code. This can be used to disconnect
12494 clients that obviously attempt to abuse the system. In addition to the
12495 commands listed in this parameter, commands that follow the "Label:"
12496 format of message headers will also cause a disconnect.
12497 </p>
12500 This feature is available in Postfix 2.2 and later.
12501 </p>
12504 </DD>
12506 <DT><b><a name="smtpd_hard_error_limit">smtpd_hard_error_limit</a>
12507 (default: normal: 20, overload: 1)</b></DT><DD>
12510 The maximal number of errors a remote SMTP client is allowed to
12511 make without delivering mail. The Postfix SMTP server disconnects
12512 when the limit is exceeded. Normally the default limit is 20, but
12513 it changes under overload to just 1. With Postfix 2.5 and earlier,
12514 the SMTP server always allows up to 20 errors by default.
12516 </p>
12519 </DD>
12521 <DT><b><a name="smtpd_helo_required">smtpd_helo_required</a>
12522 (default: no)</b></DT><DD>
12525 Require that a remote SMTP client introduces itself with the HELO
12526 or EHLO command before sending the MAIL command or other commands
12527 that require EHLO negotiation.
12528 </p>
12531 Example:
12532 </p>
12534 <pre>
12535 <a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes
12536 </pre>
12539 </DD>
12541 <DT><b><a name="smtpd_helo_restrictions">smtpd_helo_restrictions</a>
12542 (default: empty)</b></DT><DD>
12545 Optional restrictions that the Postfix SMTP server applies in the
12546 context of the SMTP HELO command.
12547 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
12548 restriction lists" for a discussion of evaluation context and time.
12549 </p>
12552 The default is to permit everything.
12553 </p>
12555 <p> Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this
12556 restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can
12557 simply skip <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> by not sending HELO or EHLO).
12558 </p>
12561 Specify a list of restrictions, separated by commas and/or whitespace.
12562 Continue long lines by starting the next line with whitespace.
12563 Restrictions are applied in the order as specified; the first
12564 restriction that matches wins.
12565 </p>
12568 The following restrictions are specific to the hostname information
12569 received with the HELO or EHLO command.
12570 </p>
12572 <dl>
12574 <dt><b><a name="check_helo_access">check_helo_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
12576 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the HELO or EHLO
12577 hostname or parent domains, and execute the corresponding action.
12578 Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this
12579 restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can
12580 simply skip <a href="postconf.5.html#check_helo_access">check_helo_access</a> by not sending HELO or EHLO). </dd>
12582 <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>
12584 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
12585 the HELO or EHLO hostname, and execute the corresponding action.
12586 Note 1: a result of "OK" is not allowed for safety reasons. Instead,
12587 use DUNNO in order to exclude specific hosts from blacklists. Note
12588 2: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this
12589 restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can
12590 simply skip <a href="postconf.5.html#check_helo_mx_access">check_helo_mx_access</a> by not sending HELO or EHLO). This
12591 feature is available in Postfix 2.1 and later.
12592 </dd>
12594 <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>
12596 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
12597 for the HELO or EHLO hostname, and execute the corresponding action.
12598 Note 1: a result of "OK" is not allowed for safety reasons. Instead,
12599 use DUNNO in order to exclude specific hosts from blacklists. Note
12600 2: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this
12601 restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can
12602 simply skip <a href="postconf.5.html#check_helo_ns_access">check_helo_ns_access</a> by not sending HELO or EHLO). This
12603 feature is available in Postfix 2.1 and later.
12604 </dd>
12606 <dt><b><a name="reject_invalid_helo_hostname">reject_invalid_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_invalid_hostname)</dt>
12608 <dd>Reject the request when the HELO or EHLO hostname syntax is
12609 invalid. Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce
12610 this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can simply
12611 skip <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a> by not sending HELO or EHLO).
12612 <br> The <a href="postconf.5.html#invalid_hostname_reject_code">invalid_hostname_reject_code</a> specifies the response code
12613 for rejected requests (default: 501).</dd>
12615 <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>
12617 <dd>Reject the request when the HELO or EHLO hostname is not in
12618 fully-qualified domain form, as required by the RFC. Note: specify
12619 "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this restriction
12620 (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can simply skip
12621 <a href="postconf.5.html#reject_non_fqdn_helo_hostname">reject_non_fqdn_helo_hostname</a> by not sending HELO or EHLO). <br>
12622 The <a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
12623 rejected requests (default: 504).</dd>
12625 <dt><b><a name="reject_rhsbl_helo">reject_rhsbl_helo <i>rbl_domain=d.d.d.d</i></a></b></dt>
12627 <dd>Reject the request when the HELO or EHLO hostname hostname is
12628 listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>
12629 (Postfix version 2.1 and later only). Each "<i>d</i>" is a number,
12630 or a pattern inside "[]" that contains one or more ";"-separated
12631 numbers or number..number ranges (Postfix version 2.8 and later).
12632 If no "<i>=d.d.d.d</i>" is
12633 specified, reject the request when the HELO or EHLO hostname is
12634 listed with any A record under <i>rbl_domain</i>. See the
12635 <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> description for additional RBL related configuration
12636 parameters. Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully
12637 enforce this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a
12638 client can simply skip <a href="postconf.5.html#reject_rhsbl_helo">reject_rhsbl_helo</a> by not sending HELO or
12639 EHLO). This feature is available in Postfix 2.0
12640 and later. </dd>
12642 <dt><b><a name="reject_unknown_helo_hostname">reject_unknown_helo_hostname</a></b> (with Postfix &lt; 2.3: reject_unknown_hostname)</dt>
12644 <dd>Reject the request when the HELO or EHLO hostname has no DNS A
12645 or MX record. <br> The <a href="postconf.5.html#unknown_hostname_reject_code">unknown_hostname_reject_code</a> parameter
12646 specifies the numerical response code for rejected requests (default:
12647 450). <br> The <a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a> parameter
12648 specifies the action after a temporary DNS error (default:
12649 <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully
12650 enforce this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a
12651 client can simply skip <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> by not sending
12652 HELO or EHLO). </dd>
12654 </dl>
12657 Other restrictions that are valid in this context:
12658 </p>
12660 <ul>
12662 <li> <a href="#generic">Generic</a> restrictions that can be used
12663 in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
12665 <li> Client hostname or network address specific restrictions
12666 described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
12668 <li> SMTP command specific restrictions described under
12669 <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
12670 sender or recipient restrictions are listed under <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>,
12671 they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that
12672 $<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> is evaluated at the time of the RCPT TO
12673 command.
12675 </ul>
12678 Examples:
12679 </p>
12681 <pre>
12682 <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>
12683 <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>
12684 </pre>
12687 </DD>
12689 <DT><b><a name="smtpd_history_flush_threshold">smtpd_history_flush_threshold</a>
12690 (default: 100)</b></DT><DD>
12693 The maximal number of lines in the Postfix SMTP server command history
12694 before it is flushed upon receipt of EHLO, RSET, or end of DATA.
12695 </p>
12698 </DD>
12700 <DT><b><a name="smtpd_junk_command_limit">smtpd_junk_command_limit</a>
12701 (default: normal: 100, overload: 1)</b></DT><DD>
12704 The number of junk commands (NOOP, VRFY, ETRN or RSET) that a remote
12705 SMTP client can send before the Postfix SMTP server starts to
12706 increment the error counter with each junk command. The junk
12707 command count is reset after mail is delivered. See also the
12708 <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
12709 parameters. Normally the default limit is 100, but it changes under
12710 overload to just 1. With Postfix 2.5 and earlier, the SMTP server
12711 always allows up to 100 junk commands by default. </p>
12714 </DD>
12716 <DT><b><a name="smtpd_milters">smtpd_milters</a>
12717 (default: empty)</b></DT><DD>
12719 <p> A list of Milter (mail filter) applications for new mail that
12720 arrives via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server. Specify space or comma as
12721 separator. See the <a href="MILTER_README.html">MILTER_README</a> document for details. </p>
12723 <p> This feature is available in Postfix 2.3 and later. </p>
12726 </DD>
12728 <DT><b><a name="smtpd_noop_commands">smtpd_noop_commands</a>
12729 (default: empty)</b></DT><DD>
12732 List of commands that the Postfix SMTP server replies to with "250
12733 Ok", without doing any syntax checks and without changing state.
12734 This list overrides any commands built into the Postfix SMTP server.
12735 </p>
12738 </DD>
12740 <DT><b><a name="smtpd_null_access_lookup_key">smtpd_null_access_lookup_key</a>
12741 (default: &lt;&gt;)</b></DT><DD>
12744 The lookup key to be used in SMTP <a href="access.5.html">access(5)</a> tables instead of the
12745 null sender address.
12746 </p>
12749 </DD>
12751 <DT><b><a name="smtpd_peername_lookup">smtpd_peername_lookup</a>
12752 (default: yes)</b></DT><DD>
12754 <p> Attempt to look up the remote SMTP client hostname, and verify that
12755 the name matches the client IP address. A client name is set to
12756 "unknown" when it cannot be looked up or verified, or when name
12757 lookup is disabled. Turning off name lookup reduces delays due to
12758 DNS lookup and increases the maximal inbound delivery rate. </p>
12760 <p> This feature is available in Postfix 2.3 and later. </p>
12763 </DD>
12765 <DT><b><a name="smtpd_per_record_deadline">smtpd_per_record_deadline</a>
12766 (default: normal: no, overload: yes)</b></DT><DD>
12768 <p> Change the behavior of the <a href="postconf.5.html#smtpd_timeout">smtpd_timeout</a> time limit, from a
12769 time limit per read or write system call, to a time limit to send
12770 or receive a complete record (an SMTP command line, SMTP response
12771 line, SMTP message content line, or TLS protocol message). This
12772 limits the impact from hostile peers that trickle data one byte at
12773 a time. </p>
12775 <p> Note: when per-record deadlines are enabled, a short timeout
12776 may cause problems with TLS over very slow network connections.
12777 The reasons are that a TLS protocol message can be up to 16 kbytes
12778 long (with TLSv1), and that an entire TLS protocol message must be
12779 sent or received within the per-record deadline. </p>
12781 <p> This feature is available in Postfix 2.9 and later. With older
12782 Postfix releases, the behavior is as if this parameter is set to
12783 "no". </p>
12786 </DD>
12788 <DT><b><a name="smtpd_policy_service_max_idle">smtpd_policy_service_max_idle</a>
12789 (default: 300s)</b></DT><DD>
12792 The time after which an idle SMTPD policy service connection is
12793 closed.
12794 </p>
12797 This feature is available in Postfix 2.1 and later.
12798 </p>
12801 </DD>
12803 <DT><b><a name="smtpd_policy_service_max_ttl">smtpd_policy_service_max_ttl</a>
12804 (default: 1000s)</b></DT><DD>
12807 The time after which an active SMTPD policy service connection is
12808 closed.
12809 </p>
12812 This feature is available in Postfix 2.1 and later.
12813 </p>
12816 </DD>
12818 <DT><b><a name="smtpd_policy_service_timeout">smtpd_policy_service_timeout</a>
12819 (default: 100s)</b></DT><DD>
12822 The time limit for connecting to, writing to or receiving from a
12823 delegated SMTPD policy server.
12824 </p>
12827 This feature is available in Postfix 2.1 and later.
12828 </p>
12831 </DD>
12833 <DT><b><a name="smtpd_proxy_ehlo">smtpd_proxy_ehlo</a>
12834 (default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD>
12837 How the Postfix SMTP server announces itself to the proxy filter.
12838 By default, the Postfix hostname is used.
12839 </p>
12842 This feature is available in Postfix 2.1 and later.
12843 </p>
12846 </DD>
12848 <DT><b><a name="smtpd_proxy_filter">smtpd_proxy_filter</a>
12849 (default: empty)</b></DT><DD>
12851 <p> The hostname and TCP port of the mail filtering proxy server.
12852 The proxy receives all mail from the Postfix SMTP server, and is
12853 supposed to give the result to another Postfix SMTP server process.
12854 </p>
12856 <p> Specify "host:port" or "inet:host:port" for a TCP endpoint, or
12857 "unix:pathname" for a UNIX-domain endpoint. The host can be specified
12858 as an IP address or as a symbolic name; no MX lookups are done.
12859 When no "host" or "host:" are specified, the local machine is
12860 assumed. Pathname interpretation is relative to the Postfix queue
12861 directory. </p>
12863 <p> This feature is available in Postfix 2.1 and later. </p>
12865 <p> The "inet:" and "unix:" prefixes are available in Postfix 2.3
12866 and later. </p>
12869 </DD>
12871 <DT><b><a name="smtpd_proxy_options">smtpd_proxy_options</a>
12872 (default: empty)</b></DT><DD>
12875 List of options that control how the Postfix SMTP server
12876 communicates with a before-queue content filter. Specify zero or
12877 more of the following, separated by comma or whitespace. </p>
12879 <dl>
12881 <dt><b>speed_adjust</b></dt>
12883 <dd> <p> Do not connect to a before-queue content filter until an entire
12884 message has been received. This reduces the number of simultaneous
12885 before-queue content filter processes. </p>
12887 <p> NOTE 1: A filter must not <i>selectively</i> reject recipients
12888 of a multi-recipient message. Rejecting all recipients is OK, as
12889 is accepting all recipients. </p>
12891 <p> NOTE 2: This feature increases the minimum amount of free queue
12892 space by $<a href="postconf.5.html#message_size_limit">message_size_limit</a>. The extra space is needed to save the
12893 message to a temporary file. </p> </dd>
12895 </dl>
12898 This feature is available in Postfix 2.7 and later.
12899 </p>
12902 </DD>
12904 <DT><b><a name="smtpd_proxy_timeout">smtpd_proxy_timeout</a>
12905 (default: 100s)</b></DT><DD>
12908 The time limit for connecting to a proxy filter and for sending or
12909 receiving information. When a connection fails the client gets a
12910 generic error message while more detailed information is logged to
12911 the maillog file.
12912 </p>
12915 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
12916 The default time unit is s (seconds).
12917 </p>
12920 This feature is available in Postfix 2.1 and later.
12921 </p>
12924 </DD>
12926 <DT><b><a name="smtpd_recipient_limit">smtpd_recipient_limit</a>
12927 (default: 1000)</b></DT><DD>
12930 The maximal number of recipients that the Postfix SMTP server
12931 accepts per message delivery request.
12932 </p>
12935 </DD>
12937 <DT><b><a name="smtpd_recipient_overshoot_limit">smtpd_recipient_overshoot_limit</a>
12938 (default: 1000)</b></DT><DD>
12940 <p> The number of recipients that a remote SMTP client can send in
12941 excess of the limit specified with $<a href="postconf.5.html#smtpd_recipient_limit">smtpd_recipient_limit</a>, before
12942 the Postfix SMTP server increments the per-session error count
12943 for each excess recipient. </p>
12946 </DD>
12948 <DT><b><a name="smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>
12949 (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>
12952 The access restrictions that the Postfix SMTP server applies in
12953 the context of the RCPT TO command.
12954 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
12955 restriction lists" for a discussion of evaluation context and time.
12956 </p>
12959 By default, the Postfix SMTP server accepts:
12960 </p>
12962 <ul>
12964 <li> Mail from clients whose IP address matches $<a href="postconf.5.html#mynetworks">mynetworks</a>, or:
12966 <li> Mail to remote destinations that match $<a href="postconf.5.html#relay_domains">relay_domains</a>, except
12967 for addresses that contain sender-specified routing
12968 (user@elsewhere@domain), or:
12970 <li> Mail to local destinations that match $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
12971 or $<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
12972 $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
12974 </ul>
12977 IMPORTANT: If you change this parameter setting, you must specify
12978 at least one of the following restrictions. Otherwise Postfix will
12979 refuse to receive mail:
12980 </p>
12982 <blockquote>
12983 <pre>
12984 reject, 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>
12985 </pre>
12986 </blockquote>
12989 Specify a list of restrictions, separated by commas and/or whitespace.
12990 Continue long lines by starting the next line with whitespace.
12991 Restrictions are applied in the order as specified; the first
12992 restriction that matches wins.
12993 </p>
12996 The following restrictions are specific to the recipient address
12997 that is received with the RCPT TO command.
12998 </p>
13000 <dl>
13002 <dt><b><a name="check_recipient_access">check_recipient_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
13004 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the resolved RCPT
13005 TO address, domain, parent domains, or localpart@, and execute the
13006 corresponding action. </dd>
13008 <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>
13010 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
13011 the RCPT TO domain, and execute the corresponding action. Note:
13012 a result of "OK" is not allowed for safety reasons. Instead, use
13013 DUNNO in order to exclude specific hosts from blacklists. This
13014 feature is available in Postfix 2.1 and later. </dd>
13016 <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>
13018 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
13019 for the RCPT TO domain, and execute the corresponding action.
13020 Note: a result of "OK" is not allowed for safety reasons. Instead,
13021 use DUNNO in order to exclude specific hosts from blacklists. This
13022 feature is available in Postfix 2.1 and later. </dd>
13024 <dt><b><a name="permit_auth_destination">permit_auth_destination</a></b></dt>
13026 <dd>Permit the request when one of the following is true:
13028 <ul>
13030 <li> Postfix is mail forwarder: the resolved RCPT TO domain matches
13031 $<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and the address contains no
13032 sender-specified routing (user@elsewhere@domain),
13034 <li> Postfix is the final destination: the resolved RCPT TO domain
13035 matches $<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>,
13036 $<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
13037 contains no sender-specified routing (user@elsewhere@domain).
13039 </ul></dd>
13041 <dt><b><a name="permit_mx_backup">permit_mx_backup</a></b></dt>
13043 <dd>Permit the request when the local mail system is backup MX for
13044 the RCPT TO domain, or when the domain is an authorized destination
13045 (see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> for definition).
13047 <ul>
13049 <li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> does not accept addresses that have
13050 sender-specified routing information (example: user@elsewhere@domain).
13052 <li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> can be vulnerable to mis-use when
13053 access is not restricted with <a href="postconf.5.html#permit_mx_backup_networks">permit_mx_backup_networks</a>.
13055 <li> Safety: as of Postfix version 2.3, <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> no longer
13056 accepts the address when the local mail system is primary MX for
13057 the recipient domain. Exception: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> accepts the address
13058 when it specifies an authorized destination (see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a>
13059 for definition).
13061 <li> Limitation: mail may be rejected in case of a temporary DNS
13062 lookup problem with Postfix prior to version 2.0.
13064 </ul></dd>
13066 <dt><b><a name="reject_non_fqdn_recipient">reject_non_fqdn_recipient</a></b></dt>
13068 <dd>Reject the request when the RCPT TO address is not in
13069 fully-qualified domain form, as required by the RFC. <br> The
13070 <a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
13071 rejected requests (default: 504). </dd>
13073 <dt><b><a name="reject_rhsbl_recipient">reject_rhsbl_recipient <i>rbl_domain=d.d.d.d</i></a></b></dt>
13075 <dd>Reject the request when the RCPT TO domain is listed with the
13076 A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version
13077 2.1 and later only). Each "<i>d</i>" is a number, or a pattern
13078 inside "[]" that contains one or more ";"-separated numbers or
13079 number..number ranges (Postfix version 2.8 and later). If no
13080 "<i>=d.d.d.d</i>" is specified, reject
13081 the request when the RCPT TO domain is listed with
13082 any A record under <i>rbl_domain</i>. <br> The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a>
13083 parameter specifies the response code for rejected requests (default:
13084 554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter specifies the default server
13085 reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter specifies tables with server
13086 replies indexed by <i>rbl_domain</i>. This feature is available
13087 in Postfix version 2.0 and later.</dd>
13089 <dt><b><a name="reject_unauth_destination">reject_unauth_destination</a></b></dt>
13091 <dd>Reject the request unless one of the following is true:
13093 <ul>
13095 <li> Postfix is mail forwarder: the resolved RCPT TO domain matches
13096 $<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and contains no sender-specified
13097 routing (user@elsewhere@domain),
13099 <li> Postfix is the final destination: the resolved RCPT TO domain
13100 matches $<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>,
13101 $<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
13102 no sender-specified routing (user@elsewhere@domain).
13104 </ul> The <a href="postconf.5.html#relay_domains_reject_code">relay_domains_reject_code</a> parameter specifies the response
13105 code for rejected requests (default: 554). </dd>
13107 <dt><b><a name="reject_unknown_recipient_domain">reject_unknown_recipient_domain</a></b></dt>
13109 <dd>Reject the request when Postfix is not final destination for
13110 the recipient domain, and the RCPT TO domain has no DNS A or MX
13111 record, or when it has a malformed MX record such as a record with
13112 a zero-length MX hostname (Postfix version 2.3 and later). <br> The
13113 <a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter specifies the numerical
13114 response code for rejected requests (default: 450). The response
13115 is always 450 in case of a temporary DNS error. <br> The
13116 <a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> parameter specifies the action
13117 after a temporary DNS error (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). </dd>
13119 <dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b> (with Postfix version 2.0: check_recipient_maps)</dt>
13121 <dd> Reject the request when the RCPT TO address is not listed in
13122 the list of valid recipients for its domain class. See the
13123 <a href="postconf.5.html#smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a> parameter description for details.
13124 This feature is available in Postfix 2.1 and later.</dd>
13126 <dt><b><a name="reject_unverified_recipient">reject_unverified_recipient</a></b></dt>
13128 <dd>Reject the request when mail to the RCPT TO address is known
13129 to bounce, or when the recipient address destination is not reachable.
13130 Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server;
13131 see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details. <br> The
13132 <a href="postconf.5.html#unverified_recipient_reject_code">unverified_recipient_reject_code</a> parameter specifies the numerical
13133 response code when an address is known to bounce (default: 450,
13134 change into 550 when you are confident that it is safe to do so).
13135 <br>The <a href="postconf.5.html#unverified_recipient_defer_code">unverified_recipient_defer_code</a> parameter specifies the
13136 numerical response code when an address probe failed due to a
13137 temporary problem (default: 450). <br> The
13138 <a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a> parameter specifies the action
13139 after addres probe failure due to a temporary problem (default:
13140 <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). <br> This feature is available in Postfix 2.1
13141 and later. </dd>
13143 </dl>
13146 Other restrictions that are valid in this context:
13147 </p>
13149 <ul>
13151 <li><a href="#generic">Generic</a> restrictions that can be used
13152 in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
13154 <li>SMTP command specific restrictions described under
13155 <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
13156 <a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>.
13158 </ul>
13161 Example:
13162 </p>
13164 <pre>
13165 <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>
13166 </pre>
13169 </DD>
13171 <DT><b><a name="smtpd_reject_footer">smtpd_reject_footer</a>
13172 (default: empty)</b></DT><DD>
13174 <p> Optional information that is appended after each SMTP server
13175 4XX or 5XX response. </p>
13177 <p> Example: </p>
13179 <pre>
13180 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
13181 <a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a> = For assistance, call 800-555-0101.
13182 Please provide the following information in your problem report:
13183 time ($localtime), client ($client_address) and server
13184 ($server_name).
13185 </pre>
13187 <p> Server response: </p>
13189 <pre>
13190 550-5.5.1 &lt;user@example&gt; Recipient address rejected: User unknown
13191 550 5.5.1 For assistance, call 800-555-0101. Please provide the
13192 following information in your problem report: time (Jan 4 15:42:00),
13193 client (192.168.1.248) and server (mail1.example.com).
13194 </pre>
13196 <p> Note: the above text is meant to make it easier to find the
13197 Postfix logfile records for a failed SMTP session. The text itself
13198 is not logged to the Postfix SMTP server's maillog file. </p>
13200 <p> Be sure to keep the text as short as possible. Long text may
13201 be truncated before it is logged to the remote SMTP client's maillog
13202 file, or before it is returned to the sender in a delivery status
13203 notification. </p>
13205 <p> This feature supports a limited number of $name attributes in
13206 the footer text. These are replaced by their current value for the
13207 SMTP session: </p>
13209 <dl>
13211 <dt> <b>client_address</b> </dt> <dd> The Client IP address that
13212 is logged in the maillog file. </dd>
13214 <dt> <b>client_port</b> </dt> <dd> The client TCP port that is
13215 logged in the maillog file. </dd>
13217 <dt> <b>localtime</b> </dt> <dd> The server local time (Mmm dd
13218 hh:mm:ss) that is logged in the maillog file. </dd>
13220 <dt> <b>server_name</b> </dt> <dd> The server's <a href="postconf.5.html#myhostname">myhostname</a> value.
13221 This attribute is made available for sites with multiple MTAs
13222 (perhaps behind a load-balancer), where the server name can help
13223 the server support team to quickly find the right log files. </dd>
13225 </dl>
13227 <p> Notes: </p>
13229 <ul>
13231 <li> <p> NOT SUPPORTED are other attributes such as sender, recipient,
13232 or <a href="postconf.5.html">main.cf</a> parameters. </p>
13234 <li> <p> For safety reasons, text that does not match
13235 $<a href="postconf.5.html#smtpd_expansion_filter">smtpd_expansion_filter</a> is censored. </p>
13237 </ul>
13239 <p> This feature supports the two-character sequence \n as a request
13240 for a line break in the footer text. Postfix automatically inserts
13241 after each line break the three-digit SMTP reply code (and optional
13242 enhanced status code) from the original Postfix reject message.
13243 </p>
13245 <p> This feature is available in Postfix 2.8 and later. </p>
13248 </DD>
13250 <DT><b><a name="smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a>
13251 (default: yes)</b></DT><DD>
13254 Request that the Postfix SMTP server rejects mail for unknown
13255 recipient addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_recipient">reject_unlisted_recipient</a>
13256 access restriction is specified. This prevents the Postfix queue
13257 from filling up with undeliverable MAILER-DAEMON messages.
13258 </p>
13260 <p> An address is always considered "known" when it matches a
13261 <a href="virtual.5.html">virtual(5)</a> alias or a <a href="canonical.5.html">canonical(5)</a> mapping.
13263 <ul>
13265 <li> The recipient domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>
13266 or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the recipient is not listed in
13267 $<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.
13269 <li> The recipient domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the
13270 recipient is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>.
13272 <li> The recipient domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the
13273 recipient 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>
13274 is not null.
13276 <li> The recipient domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the recipient
13277 is 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>
13278 is not null.
13280 </ul>
13283 This feature is available in Postfix 2.1 and later.
13284 </p>
13287 </DD>
13289 <DT><b><a name="smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a>
13290 (default: no)</b></DT><DD>
13292 <p> Request that the Postfix SMTP server rejects mail from unknown
13293 sender addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_sender">reject_unlisted_sender</a>
13294 access restriction is specified. This can slow down an explosion
13295 of forged mail from worms or viruses. </p>
13297 <p> An address is always considered "known" when it matches a
13298 <a href="virtual.5.html">virtual(5)</a> alias or a <a href="canonical.5.html">canonical(5)</a> mapping.
13300 <ul>
13302 <li> The sender domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or
13303 $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the sender is not listed in
13304 $<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.
13306 <li> The sender domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the sender
13307 is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>.
13309 <li> The sender domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the
13310 sender 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>
13311 is not null.
13313 <li> The sender domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the sender is
13314 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> is
13315 not null.
13317 </ul>
13320 This feature is available in Postfix 2.1 and later.
13321 </p>
13324 </DD>
13326 <DT><b><a name="smtpd_restriction_classes">smtpd_restriction_classes</a>
13327 (default: empty)</b></DT><DD>
13330 User-defined aliases for groups of access restrictions. The aliases
13331 can be specified in <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> etc., and on the
13332 right-hand side of a Postfix <a href="access.5.html">access(5)</a> table.
13333 </p>
13336 One major application is for implementing per-recipient UCE control.
13337 See the <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a> document for other examples.
13338 </p>
13341 </DD>
13343 <DT><b><a name="smtpd_sasl_application_name">smtpd_sasl_application_name</a>
13344 (default: smtpd)</b></DT><DD>
13347 The application name that the Postfix SMTP server uses for SASL
13348 server initialization. This
13349 controls the name of the SASL configuration file. The default value
13350 is <b>smtpd</b>, corresponding to a SASL configuration file named
13351 <b>smtpd.conf</b>.
13352 </p>
13355 This feature is available in Postfix 2.1 and 2.2. With Postfix 2.3
13356 it was renamed to <a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>.
13357 </p>
13360 </DD>
13362 <DT><b><a name="smtpd_sasl_auth_enable">smtpd_sasl_auth_enable</a>
13363 (default: no)</b></DT><DD>
13366 Enable SASL authentication in the Postfix SMTP server. By default,
13367 the Postfix SMTP server does not use authentication.
13368 </p>
13371 If a remote SMTP client is authenticated, the <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>
13372 access restriction can be used to permit relay access, like this:
13373 </p>
13375 <blockquote>
13376 <pre>
13377 <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> =
13378 <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, ...
13379 </pre>
13380 </blockquote>
13382 <p> To reject all SMTP connections from unauthenticated clients,
13383 specify "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes" (which is the default) and use:
13384 </p>
13386 <blockquote>
13387 <pre>
13388 <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
13389 </pre>
13390 </blockquote>
13393 See the <a href="SASL_README.html">SASL_README</a> file for SASL configuration and operation details.
13394 </p>
13397 </DD>
13399 <DT><b><a name="smtpd_sasl_authenticated_header">smtpd_sasl_authenticated_header</a>
13400 (default: no)</b></DT><DD>
13402 <p> Report the SASL authenticated user name in the <a href="smtpd.8.html">smtpd(8)</a> Received
13403 message header. </p>
13405 <p> This feature is available in Postfix 2.3 and later. </p>
13408 </DD>
13410 <DT><b><a name="smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a>
13411 (default: empty)</b></DT><DD>
13414 What remote SMTP clients the Postfix SMTP server will not offer
13415 AUTH support to.
13416 </p>
13419 Some clients (Netscape 4 at least) have a bug that causes them to
13420 require a login and password whenever AUTH is offered, whether it's
13421 necessary or not. To work around this, specify, for example,
13422 $<a href="postconf.5.html#mynetworks">mynetworks</a> to prevent Postfix from offering AUTH to local clients.
13423 </p>
13426 Specify a list of network/netmask patterns, separated by commas
13427 and/or whitespace. The mask specifies the number of bits in the
13428 network part of a host address. You can also "/file/name" or
13429 "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" pattern is replaced by its
13430 contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry
13431 matches a lookup string (the lookup result is ignored). Continue
13432 long lines by starting the next line with whitespace. Specify
13433 "!pattern" to exclude an address or network block from the list.
13434 The form "!/file/name" is supported only in Postfix version 2.4 and
13435 later. </p>
13437 <p> Note: IP version 6 address information must be specified inside
13438 <tt>[]</tt> in the <a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> value, and in
13439 files specified with "/file/name". IP version 6 addresses contain
13440 the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>"
13441 pattern. </p>
13444 Example:
13445 </p>
13447 <pre>
13448 <a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> = $<a href="postconf.5.html#mynetworks">mynetworks</a>
13449 </pre>
13452 This feature is available in Postfix 2.1 and later.
13453 </p>
13456 </DD>
13458 <DT><b><a name="smtpd_sasl_local_domain">smtpd_sasl_local_domain</a>
13459 (default: empty)</b></DT><DD>
13462 The name of the Postfix SMTP server's local SASL authentication
13463 realm.
13464 </p>
13467 By default, the local authentication realm name is the null string.
13468 </p>
13471 Examples:
13472 </p>
13474 <pre>
13475 <a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#mydomain">mydomain</a>
13476 <a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#myhostname">myhostname</a>
13477 </pre>
13480 </DD>
13482 <DT><b><a name="smtpd_sasl_path">smtpd_sasl_path</a>
13483 (default: smtpd)</b></DT><DD>
13485 <p> Implementation-specific information that the Postfix SMTP server
13486 passes through to
13487 the SASL plug-in implementation that is selected with
13488 <b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>. Typically this specifies the name of a
13489 configuration file or rendezvous point. </p>
13491 <p> This feature is available in Postfix 2.3 and later. In earlier
13492 releases it was called <b><a href="postconf.5.html#smtpd_sasl_application_name">smtpd_sasl_application_name</a></b>. </p>
13495 </DD>
13497 <DT><b><a name="smtpd_sasl_security_options">smtpd_sasl_security_options</a>
13498 (default: noanonymous)</b></DT><DD>
13500 <p> Postfix SMTP server SASL security options; as of Postfix 2.3
13501 the list of available
13502 features depends on the SASL server implementation that is selected
13503 with <b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>. </p>
13505 <p> The following security features are defined for the <b>cyrus</b>
13506 server SASL implementation: </p>
13509 Restrict what authentication mechanisms the Postfix SMTP server
13510 will offer to the client. The list of available authentication
13511 mechanisms is system dependent.
13512 </p>
13515 Specify zero or more of the following:
13516 </p>
13518 <dl>
13520 <dt><b>noplaintext</b></dt>
13522 <dd>Disallow methods that use plaintext passwords. </dd>
13524 <dt><b>noactive</b></dt>
13526 <dd>Disallow methods subject to active (non-dictionary) attack. </dd>
13528 <dt><b>nodictionary</b></dt>
13530 <dd>Disallow methods subject to passive (dictionary) attack. </dd>
13532 <dt><b>noanonymous</b></dt>
13534 <dd>Disallow methods that allow anonymous authentication. </dd>
13536 <dt><b>forward_secrecy</b></dt>
13538 <dd>Only allow methods that support forward secrecy (Dovecot only).
13539 </dd>
13541 <dt><b>mutual_auth</b></dt>
13543 <dd>Only allow methods that provide mutual authentication (not available
13544 with Cyrus SASL version 1). </dd>
13546 </dl>
13549 By default, the Postfix SMTP server accepts plaintext passwords but
13550 not anonymous logins.
13551 </p>
13554 Warning: it appears that clients try authentication methods in the
13555 order as advertised by the server (e.g., PLAIN ANONYMOUS CRAM-MD5)
13556 which means that if you disable plaintext passwords, clients will
13557 log in anonymously, even when they should be able to use CRAM-MD5.
13558 So, if you disable plaintext logins, disable anonymous logins too.
13559 Postfix treats anonymous login as no authentication.
13560 </p>
13563 Example:
13564 </p>
13566 <pre>
13567 <a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a> = noanonymous, noplaintext
13568 </pre>
13571 </DD>
13573 <DT><b><a name="smtpd_sasl_tls_security_options">smtpd_sasl_tls_security_options</a>
13574 (default: $<a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a>)</b></DT><DD>
13576 <p> The SASL authentication security options that the Postfix SMTP
13577 server uses for TLS encrypted SMTP sessions. </p>
13579 <p> This feature is available in Postfix 2.2 and later. </p>
13582 </DD>
13584 <DT><b><a name="smtpd_sasl_type">smtpd_sasl_type</a>
13585 (default: cyrus)</b></DT><DD>
13587 <p> The SASL plug-in type that the Postfix SMTP server should use
13588 for authentication. The available types are listed with the
13589 "<b>postconf -a</b>" command. </p>
13591 <p> This feature is available in Postfix 2.3 and later. </p>
13594 </DD>
13596 <DT><b><a name="smtpd_sender_login_maps">smtpd_sender_login_maps</a>
13597 (default: empty)</b></DT><DD>
13600 Optional lookup table with the SASL login names that own sender
13601 (MAIL FROM) addresses.
13602 </p>
13605 Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup tables. With lookups from
13606 indexed files such as DB or DBM, or from networked tables such as
13607 NIS, LDAP or SQL, the following search operations are done with a
13608 sender address of <i>user@domain</i>: </p>
13610 <dl>
13612 <dt> 1) <i>user@domain</i> </dt>
13614 <dd>This table lookup is always done and has the highest precedence. </dd>
13616 <dt> 2) <i>user</i> </dt>
13618 <dd>This table lookup is done only when the <i>domain</i> part of the
13619 sender 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>
13620 or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>. </dd>
13622 <dt> 3) <i>@domain</i> </dt>
13624 <dd>This table lookup is done last and has the lowest precedence. </dd>
13626 </dl>
13629 In all cases the result of table lookup must be either "not found"
13630 or a list of SASL login names separated by comma and/or whitespace.
13631 </p>
13634 </DD>
13636 <DT><b><a name="smtpd_sender_restrictions">smtpd_sender_restrictions</a>
13637 (default: empty)</b></DT><DD>
13640 Optional restrictions that the Postfix SMTP server applies in the
13641 context of the MAIL FROM command.
13642 See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access
13643 restriction lists" for a discussion of evaluation context and time.
13644 </p>
13647 The default is to permit everything.
13648 </p>
13651 Specify a list of restrictions, separated by commas and/or whitespace.
13652 Continue long lines by starting the next line with whitespace.
13653 Restrictions are applied in the order as specified; the first
13654 restriction that matches wins.
13655 </p>
13658 The following restrictions are specific to the sender address
13659 received with the MAIL FROM command.
13660 </p>
13662 <dl>
13664 <dt><b><a name="check_sender_access">check_sender_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt>
13666 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MAIL FROM
13667 address, domain, parent domains, or localpart@, and execute the
13668 corresponding action. </dd>
13670 <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>
13672 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for
13673 the MAIL FROM address, and execute the corresponding action. Note:
13674 a result of "OK" is not allowed for safety reasons. Instead, use
13675 DUNNO in order to exclude specific hosts from blacklists. This
13676 feature is available in Postfix 2.1 and later. </dd>
13678 <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>
13680 <dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers
13681 for the MAIL FROM address, and execute the corresponding action.
13682 Note: a result of "OK" is not allowed for safety reasons. Instead,
13683 use DUNNO in order to exclude specific hosts from blacklists. This
13684 feature is available in Postfix 2.1 and later. </dd>
13686 <dt><b><a name="reject_authenticated_sender_login_mismatch">reject_authenticated_sender_login_mismatch</a></b></dt>
13688 <dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for
13689 authenticated clients only. This feature is available in
13690 Postfix version 2.1 and later. </dd>
13692 <dt><b><a name="reject_non_fqdn_sender">reject_non_fqdn_sender</a></b></dt>
13694 <dd>Reject the request when the MAIL FROM address is not in
13695 fully-qualified domain form, as required by the RFC. <br> The
13696 <a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for
13697 rejected requests (default: 504). </dd>
13699 <dt><b><a name="reject_rhsbl_sender">reject_rhsbl_sender <i>rbl_domain=d.d.d.d</i></a></b></dt>
13701 <dd>Reject the request when the MAIL FROM domain is listed with
13702 the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix
13703 version 2.1 and later only). Each "<i>d</i>" is a number, or a
13704 pattern inside "[]" that contains one or more ";"-separated numbers
13705 or number..number ranges (Postfix version 2.8 and later). If no
13706 "<i>=d.d.d.d</i>" is specified,
13707 reject the request when the MAIL FROM domain is
13708 listed with any A record under <i>rbl_domain</i>. <br> The
13709 <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for
13710 rejected requests (default: 554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter
13711 specifies the default server reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter
13712 specifies tables with server replies indexed by <i>rbl_domain</i>.
13713 This feature is available in Postfix 2.0 and later.</dd>
13715 <dt><b><a name="reject_sender_login_mismatch">reject_sender_login_mismatch</a></b></dt>
13717 <dd>Reject the request when $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a> specifies an
13718 owner for the MAIL FROM address, but the client is not (SASL) logged
13719 in as that MAIL FROM address owner; or when the client is (SASL)
13720 logged in, but the client login name doesn't own the MAIL FROM
13721 address according to $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a>.</dd>
13723 <dt><b><a name="reject_unauthenticated_sender_login_mismatch">reject_unauthenticated_sender_login_mismatch</a></b></dt>
13725 <dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for
13726 unauthenticated clients only. This feature is available in
13727 Postfix version 2.1 and later. </dd>
13729 <dt><b><a name="reject_unknown_sender_domain">reject_unknown_sender_domain</a></b></dt>
13731 <dd>Reject the request when Postfix is not final destination for
13732 the sender address, and the MAIL FROM address has no DNS A or MX
13733 record, or when it has a malformed MX record such as a record with
13734 a zero-length MX hostname (Postfix version 2.3 and later). <br> The
13735 <a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter specifies the numerical
13736 response code for rejected requests (default: 450). The response
13737 is always 450 in case of a temporary DNS error. <br> The
13738 <a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> parameter specifies the action
13739 after a temporary DNS error (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). </dd>
13741 <dt><b><a name="reject_unlisted_sender">reject_unlisted_sender</a></b></dt>
13743 <dd>Reject the request when the MAIL FROM address is not listed in
13744 the list of valid recipients for its domain class. See the
13745 <a href="postconf.5.html#smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a> parameter description for details.
13746 This feature is available in Postfix 2.1 and later.</dd>
13748 <dt><b><a name="reject_unverified_sender">reject_unverified_sender</a></b></dt>
13750 <dd>Reject the request when mail to the MAIL FROM address is known to
13751 bounce, or when the sender address destination is not reachable.
13752 Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server;
13753 see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details. <br> The
13754 <a href="postconf.5.html#unverified_sender_reject_code">unverified_sender_reject_code</a> parameter specifies the numerical
13755 response code when an address is known to bounce (default: 450,
13756 change into 550 when you are confident that it is safe to do so).
13757 <br>The <a href="postconf.5.html#unverified_sender_defer_code">unverified_sender_defer_code</a> specifies the numerical response
13758 code when an address address probe failed due to a temporary problem
13759 (default: 450). <br> The <a href="postconf.5.html#unverified_sender_tempfail_action">unverified_sender_tempfail_action</a> parameter
13760 specifies the action after address probe failure due to a temporary
13761 problem (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). <br> This feature is available
13762 in Postfix 2.1 and later. </dd>
13764 </dl>
13767 Other restrictions that are valid in this context:
13768 </p>
13770 <ul>
13772 <li> <a href="#generic">Generic</a> restrictions that can be used
13773 in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>.
13775 <li> SMTP command specific restrictions described under
13776 <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>.
13778 <li> SMTP command specific restrictions described under
13779 <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. When recipient restrictions are listed
13780 under <a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, they have effect only with
13781 "<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
13782 evaluated at the time of the RCPT TO command.
13784 </ul>
13787 Examples:
13788 </p>
13790 <pre>
13791 <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>
13792 <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>,
13793 <a href="postconf.5.html#check_sender_access">check_sender_access</a> hash:/etc/postfix/access
13794 </pre>
13797 </DD>
13799 <DT><b><a name="smtpd_service_name">smtpd_service_name</a>
13800 (default: smtpd)</b></DT><DD>
13802 <p> The internal service that <a href="postscreen.8.html">postscreen(8)</a> forwards allowed
13803 connections to. In a future version there may be different
13804 classes of SMTP service. </p>
13806 <p> This feature is available in Postfix 2.8. </p>
13809 </DD>
13811 <DT><b><a name="smtpd_soft_error_limit">smtpd_soft_error_limit</a>
13812 (default: 10)</b></DT><DD>
13815 The number of errors a remote SMTP client is allowed to make without
13816 delivering mail before the Postfix SMTP server slows down all its
13817 responses.
13818 </p>
13820 <ul>
13822 <li><p>With Postfix version 2.1 and later, the Postfix SMTP server
13823 delays all responses by $<a href="postconf.5.html#smtpd_error_sleep_time">smtpd_error_sleep_time</a> seconds. </p>
13825 <li><p>With Postfix versions 2.0 and earlier, the Postfix SMTP
13826 server delays all responses by (number of errors) seconds. </p>
13828 </ul>
13831 </DD>
13833 <DT><b><a name="smtpd_starttls_timeout">smtpd_starttls_timeout</a>
13834 (default: see "postconf -d" output)</b></DT><DD>
13836 <p> The time limit for Postfix SMTP server write and read operations
13837 during TLS startup and shutdown handshake procedures. The current
13838 default value is stress-dependent. Before Postfix version 2.8, it
13839 was fixed at 300s. </p>
13841 <p> This feature is available in Postfix 2.2 and later. </p>
13844 </DD>
13846 <DT><b><a name="smtpd_timeout">smtpd_timeout</a>
13847 (default: normal: 300s, overload: 10s)</b></DT><DD>
13850 The time limit for sending a Postfix SMTP server response and for
13851 receiving a remote SMTP client request. Normally the default limit
13852 is 300s, but it changes under overload to just 10s. With Postfix
13853 2.5 and earlier, the SMTP server always uses a time limit of 300s
13854 by default.
13855 </p>
13858 Note: if you set SMTP time limits to very large values you may have
13859 to update the global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter.
13860 </p>
13863 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
13864 The default time unit is s (seconds).
13865 </p>
13868 </DD>
13870 <DT><b><a name="smtpd_tls_CAfile">smtpd_tls_CAfile</a>
13871 (default: empty)</b></DT><DD>
13873 <p> A file containing (PEM format) CA certificates of root CAs trusted
13874 to sign either remote SMTP client certificates or intermediate CA
13875 certificates. These are loaded into memory before the <a href="smtpd.8.html">smtpd(8)</a> server
13876 enters the chroot jail. If the number of trusted roots is large, consider
13877 using <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> instead, but note that the latter directory must
13878 be present in the chroot jail if the <a href="smtpd.8.html">smtpd(8)</a> server is chrooted. This
13879 file may also be used to augment the server certificate trust chain,
13880 but it is best to include all the required certificates directly in the
13881 server certificate file. </p>
13883 <p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from
13884 appending the system-supplied default CAs and trusting third-party
13885 certificates. </p>
13887 <p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are not
13888 requested, and <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> should remain empty. If you do make use
13889 of client certificates, the distinguished names (DNs) of the certificate
13890 authorities listed in <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> are sent to the remote SMTP client
13891 in the client certificate request message. MUAs with multiple client
13892 certificates may use the list of preferred certificate authorities
13893 to select the correct client certificate. You may want to put your
13894 "preferred" CA or CAs in this file, and install other trusted CAs in
13895 $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p>
13897 <p> Example: </p>
13899 <pre>
13900 <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> = /etc/postfix/CAcert.pem
13901 </pre>
13903 <p> This feature is available in Postfix 2.2 and later. </p>
13906 </DD>
13908 <DT><b><a name="smtpd_tls_CApath">smtpd_tls_CApath</a>
13909 (default: empty)</b></DT><DD>
13911 <p> A directory containing (PEM format) CA certificates of root CAs
13912 trusted to sign either remote SMTP client certificates or intermediate CA
13913 certificates. Do not forget to create the necessary "hash" links with,
13914 for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs". To use
13915 <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> in chroot mode, this directory (or a copy) must be
13916 inside the chroot jail. </p>
13918 <p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from
13919 appending the system-supplied default CAs and trusting third-party
13920 certificates. </p>
13922 <p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are
13923 not requested, and <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> should remain empty. In contrast
13924 to <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, DNs of certificate authorities installed
13925 in $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> are not included in the client certificate
13926 request message. MUAs with multiple client certificates may use the
13927 list of preferred certificate authorities to select the correct
13928 client certificate. You may want to put your "preferred" CA or
13929 CAs in $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, and install the remaining trusted CAs in
13930 $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p>
13932 <p> Example: </p>
13934 <pre>
13935 <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> = /etc/postfix/certs
13936 </pre>
13938 <p> This feature is available in Postfix 2.2 and later. </p>
13941 </DD>
13943 <DT><b><a name="smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a>
13944 (default: yes)</b></DT><DD>
13946 <p> Force the Postfix SMTP server to issue a TLS session id, even
13947 when TLS session caching is turned off (<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>
13948 is empty). This behavior is compatible with Postfix &lt; 2.3. </p>
13950 <p> With Postfix 2.3 and later the Postfix SMTP server can disable
13951 session id generation when TLS session caching is turned off. This
13952 keeps clients from caching sessions that almost certainly cannot
13953 be re-used. </p>
13955 <p> By default, the Postfix SMTP server always generates TLS session
13956 ids. This works around a known defect in mail client applications
13957 such as MS Outlook, and may also prevent interoperability issues
13958 with other MTAs. </p>
13960 <p> Example: </p>
13962 <pre>
13963 <a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> = no
13964 </pre>
13966 <p> This feature is available in Postfix 2.3 and later. </p>
13969 </DD>
13971 <DT><b><a name="smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>
13972 (default: no)</b></DT><DD>
13974 <p> Ask a remote SMTP client for a client certificate. This
13975 information is needed for certificate based mail relaying with,
13976 for example, the <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> feature. </p>
13978 <p> Some clients such as Netscape will either complain if no
13979 certificate is available (for the list of CAs in $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>)
13980 or will offer multiple client certificates to choose from. This
13981 may be annoying, so this option is "off" by default. </p>
13983 <p> This feature is available in Postfix 2.2 and later. </p>
13986 </DD>
13988 <DT><b><a name="smtpd_tls_auth_only">smtpd_tls_auth_only</a>
13989 (default: no)</b></DT><DD>
13991 <p> When TLS encryption is optional in the Postfix SMTP server, do
13992 not announce or accept SASL authentication over unencrypted
13993 connections. </p>
13995 <p> This feature is available in Postfix 2.2 and later. </p>
13998 </DD>
14000 <DT><b><a name="smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a>
14001 (default: 9)</b></DT><DD>
14003 <p> The verification depth for remote SMTP client certificates. A
14004 depth of 1 is sufficient if the issuing CA is listed in a local CA
14005 file. </p>
14007 <p> The default verification depth is 9 (the OpenSSL default) for
14008 compatibility with earlier Postfix behavior. Prior to Postfix 2.5,
14009 the default value was 5, but the limit was not actually enforced. If
14010 you have set this to a lower non-default value, certificates with longer
14011 trust chains may now fail to verify. Certificate chains with 1 or 2
14012 CAs are common, deeper chains are more rare and any number between 5
14013 and 9 should suffice in practice. You can choose a lower number if,
14014 for example, you trust certificates directly signed by an issuing CA
14015 but not any CAs it delegates to. </p>
14017 <p> This feature is available in Postfix 2.2 and later. </p>
14020 </DD>
14022 <DT><b><a name="smtpd_tls_cert_file">smtpd_tls_cert_file</a>
14023 (default: empty)</b></DT><DD>
14025 <p> File with the Postfix SMTP server RSA certificate in PEM format.
14026 This file may also contain the Postfix SMTP server private RSA key. </p>
14028 <p> Public Internet MX hosts without certificates signed by a "reputable"
14029 CA must generate, and be prepared to present to most clients, a
14030 self-signed or private-CA signed certificate. The client will not be
14031 able to authenticate the server, but unless it is running Postfix 2.3 or
14032 similar software, it will still insist on a server certificate. </p>
14034 <p> For servers that are <b>not</b> public Internet MX hosts, Postfix
14035 2.3 supports configurations with no certificates. This entails the
14036 use of just the anonymous TLS ciphers, which are not supported by
14037 typical SMTP clients. Since such clients will not, as a rule, fall
14038 back to plain text after a TLS handshake failure, the server will
14039 be unable to receive email from TLS enabled clients. To avoid
14040 accidental configurations with no certificates, Postfix 2.3 enables
14041 certificate-less operation only when the administrator explicitly
14042 sets "<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = none". This ensures that new Postfix
14043 configurations will not accidentally run with no certificates. </p>
14045 <p> Both RSA and DSA certificates are supported. When both types
14046 are present, the cipher used determines which certificate will be
14047 presented to the client. For Netscape and OpenSSL clients without
14048 special cipher choices the RSA certificate is preferred. </p>
14050 <p> To enable a remote SMTP client to verify the Postfix SMTP server
14051 certificate, the issuing CA certificates must be made available to the
14052 client. You should include the required certificates in the server
14053 certificate file, the server certificate first, then the issuing
14054 CA(s) (bottom-up order). </p>
14056 <p> Example: the certificate for "server.example.com" was issued by
14057 "intermediate CA" which itself has a certificate of "root CA".
14058 Create the server.pem file with "cat server_cert.pem intermediate_CA.pem
14059 root_CA.pem &gt; server.pem". </p>
14061 <p> If you also want to verify client certificates issued by these
14062 CAs, you can add the CA certificates to the <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, in which
14063 case it is not necessary to have them in the <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> or
14064 <a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p>
14066 <p> A certificate supplied here must be usable as an SSL server certificate
14067 and hence pass the "openssl verify -purpose sslserver ..." test. </p>
14069 <p> Example: </p>
14071 <pre>
14072 <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = /etc/postfix/server.pem
14073 </pre>
14075 <p> This feature is available in Postfix 2.2 and later. </p>
14078 </DD>
14080 <DT><b><a name="smtpd_tls_cipherlist">smtpd_tls_cipherlist</a>
14081 (default: empty)</b></DT><DD>
14083 <p> Obsolete Postfix &lt; 2.3 control for the Postfix SMTP server TLS
14084 cipher list. It is easy to create inter-operability problems by choosing
14085 a non-default cipher list. Do not use a non-default TLS cipherlist for
14086 MX hosts on the public Internet. Clients that begin the TLS handshake,
14087 but are unable to agree on a common cipher, may not be able to send any
14088 email to the SMTP server. Using a restricted cipher list may be more
14089 appropriate for a dedicated MSA or an internal mailhub, where one can
14090 exert some control over the TLS software and settings of the connecting
14091 clients. </p>
14093 <p> <b>Note:</b> do not use "" quotes around the parameter value. </p>
14095 <p>This feature is available with Postfix version 2.2. It is not used with
14096 Postfix 2.3 and later; use <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> instead. </p>
14099 </DD>
14101 <DT><b><a name="smtpd_tls_ciphers">smtpd_tls_ciphers</a>
14102 (default: export)</b></DT><DD>
14104 <p> The minimum TLS cipher grade that the Postfix SMTP server
14105 will use with opportunistic TLS encryption. Cipher types listed in
14106 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> are excluded from the base definition of
14107 the selected cipher grade. The default value "export" ensures maximum
14108 inter-operability. Because encryption is optional, stronger controls
14109 are not appropriate, and this setting SHOULD NOT be changed unless the
14110 change is essential. </p>
14112 <p> When TLS is mandatory the cipher grade is chosen via the
14113 <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> configuration parameter, see there for syntax
14114 details. </p>
14116 <p> Example: </p>
14117 <pre>
14118 <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> = export
14119 </pre>
14121 <p> This feature is available in Postfix 2.6 and later. With earlier Postfix
14122 releases only the <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> parameter is implemented,
14123 and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p>
14126 </DD>
14128 <DT><b><a name="smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>
14129 (default: empty)</b></DT><DD>
14131 <p> File with the Postfix SMTP server DSA certificate in PEM format.
14132 This file may also contain the Postfix SMTP server private DSA key. </p>
14134 <p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details.
14135 </p>
14137 <p> Example: </p>
14139 <pre>
14140 <a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> = /etc/postfix/server-dsa.pem
14141 </pre>
14143 <p> This feature is available in Postfix 2.2 and later. </p>
14146 </DD>
14148 <DT><b><a name="smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>
14149 (default: empty)</b></DT><DD>
14151 <p> File with DH parameters that the Postfix SMTP server should
14152 use with EDH ciphers. </p>
14154 <p> Instead of using the exact same parameter sets as distributed
14155 with other TLS packages, it is more secure to generate your own
14156 set of parameters with something like the following command: </p>
14158 <blockquote>
14159 <pre>
14160 openssl gendh -out /etc/postfix/dh_1024.pem -2 1024
14161 </pre>
14162 </blockquote>
14164 <p> Your actual source for entropy may differ. Some systems have
14165 /dev/random; on other system you may consider using the "Entropy
14166 Gathering Daemon EGD", available at <a href="http://egd.sourceforge.net/">http://egd.sourceforge.net/</a>
14167 </p>
14169 <p> Example: </p>
14171 <pre>
14172 <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> = /etc/postfix/dh_1024.pem
14173 </pre>
14175 <p>This feature is available with Postfix version 2.2.</p>
14178 </DD>
14180 <DT><b><a name="smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a>
14181 (default: empty)</b></DT><DD>
14183 <p> File with DH parameters that the Postfix SMTP server should
14184 use with EDH ciphers. </p>
14186 <p> See also the discussion under the <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>
14187 configuration parameter. </p>
14189 <p> Example: </p>
14191 <pre>
14192 <a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> = /etc/postfix/dh_512.pem
14193 </pre>
14195 <p>This feature is available with Postfix version 2.2.</p>
14198 </DD>
14200 <DT><b><a name="smtpd_tls_dkey_file">smtpd_tls_dkey_file</a>
14201 (default: $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>)</b></DT><DD>
14203 <p> File with the Postfix SMTP server DSA private key in PEM format.
14204 This file may be combined with the Postfix SMTP server DSA certificate
14205 file specified with $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p>
14207 <p> The private key must be accessible without a pass-phrase, i.e. it
14208 must not be encrypted. File permissions should grant read-only
14209 access to the system superuser account ("root"), and no access
14210 to anyone else. </p>
14212 <p> This feature is available in Postfix 2.2 and later. </p>
14215 </DD>
14217 <DT><b><a name="smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>
14218 (default: empty)</b></DT><DD>
14220 <p> File with the Postfix SMTP server ECDSA certificate in PEM format.
14221 This file may also contain the Postfix SMTP server private ECDSA key. </p>
14223 <p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details. </p>
14225 <p> Example: </p>
14227 <pre>
14228 <a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> = /etc/postfix/ecdsa-scert.pem
14229 </pre>
14231 <p> This feature is available in Postfix 2.6 and later, when Postfix is
14232 compiled and linked with OpenSSL 1.0.0 or later. </p>
14235 </DD>
14237 <DT><b><a name="smtpd_tls_eckey_file">smtpd_tls_eckey_file</a>
14238 (default: $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>)</b></DT><DD>
14240 <p> File with the Postfix SMTP server ECDSA private key in PEM format.
14241 This file may be combined with the Postfix SMTP server ECDSA certificate
14242 file specified with $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>. </p>
14244 <p> The private key must be accessible without a pass-phrase, i.e. it
14245 must not be encrypted. File permissions should grant read-only
14246 access to the system superuser account ("root"), and no access
14247 to anyone else. </p>
14249 <p> This feature is available in Postfix 2.6 and later, when Postfix is
14250 compiled and linked with OpenSSL 1.0.0 or later. </p>
14253 </DD>
14255 <DT><b><a name="smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a>
14256 (default: see "postconf -d" output)</b></DT><DD>
14258 <p> The Postfix SMTP server security grade for ephemeral elliptic-curve
14259 Diffie-Hellman (EECDH) key exchange. </p>
14261 <p> The available choices are: </p>
14263 <dl>
14265 <dt><b>none</b></dt> <dd> Don't use EECDH. Ciphers based on EECDH key
14266 exchange will be disabled. This is the default in Postfix versions
14267 2.6 and 2.7. </dd>
14269 <dt><b>strong</b></dt> <dd> Use EECDH with approximately 128
14270 bits of security at a reasonable computational cost. This is the
14271 current best-practice trade-off between security and computational
14272 efficiency. This is the default in Postfix version 2.8 and later.
14273 </dd>
14275 <dt><b>ultra</b></dt> <dd> Use EECDH with approximately 192 bits of
14276 security at computational cost that is approximately twice as high
14277 as 128 bit strength ECC. Barring significant progress in attacks on
14278 elliptic curve crypto-systems, the "strong" curve is sufficient for most
14279 users. </dd>
14281 </dl>
14283 <p> This feature is available in Postfix 2.6 and later, when it is
14284 compiled and linked with OpenSSL 1.0.0 or later. </p>
14287 </DD>
14289 <DT><b><a name="smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>
14290 (default: empty)</b></DT><DD>
14292 <p> List of ciphers or cipher types to exclude from the SMTP server
14293 cipher list at all TLS security levels. Excluding valid ciphers
14294 can create interoperability problems. DO NOT exclude ciphers unless it
14295 is essential to do so. This is not an OpenSSL cipherlist; it is a simple
14296 list separated by whitespace and/or commas. The elements are a single
14297 cipher, or one or more "+" separated cipher properties, in which case
14298 only ciphers matching <b>all</b> the properties are excluded. </p>
14300 <p> Examples (some of these will cause problems): </p>
14302 <blockquote>
14303 <pre>
14304 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL
14305 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = MD5, DES
14306 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = DES+MD5
14307 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5
14308 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = kEDH+aRSA
14309 </pre>
14310 </blockquote>
14312 <p> The first setting disables anonymous ciphers. The next setting
14313 disables ciphers that use the MD5 digest algorithm or the (single) DES
14314 encryption algorithm. The next setting disables ciphers that use MD5 and
14315 DES together. The next setting disables the two ciphers "AES256-SHA"
14316 and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH"
14317 key exchange with RSA authentication. </p>
14319 <p> This feature is available in Postfix 2.3 and later. </p>
14322 </DD>
14324 <DT><b><a name="smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a>
14325 (default: md5)</b></DT><DD>
14327 <p> The message digest algorithm used to construct client-certificate
14328 fingerprints for <b><a href="postconf.5.html#check_ccert_access">check_ccert_access</a></b> and
14329 <b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a></b>. The default algorithm is <b>md5</b>,
14330 for backwards compatibility with Postfix releases prior to 2.5.
14331 </p>
14333 <p> The best practice algorithm is now <b>sha1</b>. Recent advances in hash
14334 function cryptanalysis have led to md5 being deprecated in favor of sha1.
14335 However, as long as there are no known "second pre-image" attacks
14336 against md5, its use in this context can still be considered safe.
14337 </p>
14339 <p> While additional digest algorithms are often available with OpenSSL's
14340 libcrypto, only those used by libssl in SSL cipher suites are available to
14341 Postfix. For now this means just md5 or sha1. </p>
14343 <p> To find the fingerprint of a specific certificate file, with a
14344 specific digest algorithm, run: </p>
14346 <blockquote>
14347 <pre>
14348 $ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem
14349 </pre>
14350 </blockquote>
14352 <p> The text to the right of "=" sign is the desired fingerprint.
14353 For example: </p>
14355 <blockquote>
14356 <pre>
14357 $ openssl x509 -noout -fingerprint -sha1 -in cert.pem
14358 SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A
14359 </pre>
14360 </blockquote>
14362 <p> Example: client-certificate access table, with sha1 fingerprints: </p>
14364 <blockquote>
14365 <pre>
14366 /etc/postfix/<a href="postconf.5.html">main.cf</a>:
14367 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> = sha1
14368 <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> =
14369 <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> hash:/etc/postfix/access,
14370 reject
14371 </pre>
14372 <pre>
14373 /etc/postfix/access:
14374 # Action folded to next line...
14375 AF:88:7C:AD:51:95:6F:36:96:F6:01:FB:2E:48:CD:AB:49:25:A2:3B
14377 85:16:78:FD:73:6E:CE:70:E0:31:5F:0D:3C:C8:6D:C4:2C:24:59:E1
14378 <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a>
14379 </pre>
14380 </blockquote>
14382 <p> This feature is available in Postfix 2.5 and later. </p>
14385 </DD>
14387 <DT><b><a name="smtpd_tls_key_file">smtpd_tls_key_file</a>
14388 (default: $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>)</b></DT><DD>
14390 <p> File with the Postfix SMTP server RSA private key in PEM format.
14391 This file may be combined with the Postfix SMTP server RSA certificate
14392 file specified with $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>. </p>
14394 <p> The private key must be accessible without a pass-phrase, i.e. it
14395 must not be encrypted. File permissions should grant read-only
14396 access to the system superuser account ("root"), and no access
14397 to anyone else. </p>
14400 </DD>
14402 <DT><b><a name="smtpd_tls_loglevel">smtpd_tls_loglevel</a>
14403 (default: 0)</b></DT><DD>
14405 <p> Enable additional Postfix SMTP server logging of TLS activity.
14406 Each logging level also includes the information that is logged at
14407 a lower logging level. </p>
14409 <dl compact>
14411 <dt> </dt> <dd> 0 Disable logging of TLS activity. </dd>
14413 <dt> </dt> <dd> 1 Log TLS handshake and certificate information. </dd>
14415 <dt> </dt> <dd> 2 Log levels during TLS negotiation. </dd>
14417 <dt> </dt> <dd> 3 Log hexadecimal and ASCII dump of TLS negotiation
14418 process. </dd>
14420 <dt> </dt> <dd> 4 Also log hexadecimal and ASCII dump of complete
14421 transmission after STARTTLS. </dd>
14423 </dl>
14425 <p> Use "<a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a> = 3" only in case of problems. Use of
14426 loglevel 4 is strongly discouraged. </p>
14428 <p> This feature is available in Postfix 2.2 and later. </p>
14431 </DD>
14433 <DT><b><a name="smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>
14434 (default: medium)</b></DT><DD>
14436 <p> The minimum TLS cipher grade that the Postfix SMTP server will
14437 use with mandatory TLS encryption. The default grade ("medium") is
14438 sufficiently strong that any benefit from globally restricting TLS
14439 sessions to a more stringent grade is likely negligible, especially
14440 given the fact that many implementations still do not offer any stronger
14441 ("high" grade) ciphers, while those that do, will always use "high"
14442 grade ciphers. So insisting on "high" grade ciphers is generally
14443 counter-productive. Allowing "export" or "low" ciphers is typically
14444 not a good idea, as systems limited to just these are limited to
14445 obsolete browsers. No known SMTP clients fail to support at least
14446 one "medium" or "high" grade cipher. </p>
14448 <p> The following cipher grades are supported: </p>
14450 <dl>
14451 <dt><b>export</b></dt>
14452 <dd> Enable "EXPORT" grade or stronger OpenSSL ciphers.
14453 This is the most appropriate setting for public MX hosts, and is always
14454 used with opportunistic TLS encryption. The underlying cipherlist
14455 is specified via the <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> configuration parameter,
14456 which you are strongly encouraged to not change. </dd>
14458 <dt><b>low</b></dt>
14459 <dd> Enable "LOW" grade or stronger OpenSSL ciphers. The
14460 underlying cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a>
14461 configuration parameter, which you are strongly encouraged to
14462 not change. </dd>
14464 <dt><b>medium</b></dt>
14465 <dd> Enable "MEDIUM" grade or stronger OpenSSL ciphers. These use 128-bit
14466 or longer symmetric bulk-encryption keys. This is the default minimum
14467 strength for mandatory TLS encryption. The underlying cipherlist is
14468 specified via the <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a> configuration parameter, which
14469 you are strongly encouraged to not change. </dd>
14471 <dt><b>high</b></dt>
14472 <dd> Enable only "HIGH" grade OpenSSL ciphers. The
14473 underlying cipherlist is specified via the <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a>
14474 configuration parameter, which you are strongly encouraged to
14475 not change. </dd>
14477 <dt><b>null</b></dt>
14478 <dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication
14479 without encryption. This setting is only appropriate in the rare
14480 case that all clients are prepared to use NULL ciphers (not normally
14481 enabled in TLS clients). The underlying cipherlist is specified via the
14482 <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a> configuration parameter, which you are strongly
14483 encouraged to not change. </dd>
14485 </dl>
14487 <p> Cipher types listed in
14488 <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
14489 excluded from the base definition of the selected cipher grade. See
14490 <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> for cipher controls that apply to opportunistic
14491 TLS. </p>
14493 <p> The underlying cipherlists for grades other than "null" include
14494 anonymous ciphers, but these are automatically filtered out if the
14495 server is configured to ask for client certificates. You are very
14496 unlikely to need to take any steps to exclude anonymous ciphers, they
14497 are excluded automatically as required. If you must exclude anonymous
14498 ciphers even when Postfix does not need or use peer certificates, set
14499 "<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL". To exclude anonymous ciphers only
14500 when TLS is enforced, set "<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> = aNULL". </p>
14502 <p> This feature is available in Postfix 2.3 and later. </p>
14505 </DD>
14507 <DT><b><a name="smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a>
14508 (default: empty)</b></DT><DD>
14510 <p> Additional list of ciphers or cipher types to exclude from the
14511 SMTP server cipher list at mandatory TLS security levels. This list
14512 works in addition to the exclusions listed with <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>
14513 (see there for syntax details). </p>
14515 <p> This feature is available in Postfix 2.3 and later. </p>
14518 </DD>
14520 <DT><b><a name="smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a>
14521 (default: SSLv3, TLSv1)</b></DT><DD>
14523 <p> The SSL/TLS protocols accepted by the Postfix SMTP server with
14524 mandatory TLS encryption. If the list is empty, the server supports all
14525 available SSL/TLS protocol versions. A non-empty value is a list
14526 of protocol
14527 names separated by whitespace, commas or colons. The supported protocol
14528 names are "SSLv2", "SSLv3" and "TLSv1", and are not case sensitive. </p>
14530 <p> With Postfix &ge; 2.5 the parameter syntax is expanded to support
14531 protocol exclusions. One can now explicitly exclude SSLv2 by setting
14532 "<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2". To exclude both SSLv2 and
14533 SSLv3 set "<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing
14534 the protocols to include, rather than protocols to exclude, is still
14535 supported, use the form you find more intuitive. </p>
14537 <p> Since SSL version 2 has known protocol weaknesses and is now
14538 deprecated, the default setting excludes "SSLv2". This means that
14539 by default, SSL version 2 will not be used at the "encrypt" security
14540 level. </p>
14542 <p> Example: </p>
14544 <pre>
14545 <a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = TLSv1
14546 # Alternative form with Postfix &ge; 2.5:
14547 <a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3
14548 </pre>
14550 <p> This feature is available in Postfix 2.3 and later. </p>
14553 </DD>
14555 <DT><b><a name="smtpd_tls_protocols">smtpd_tls_protocols</a>
14556 (default: empty)</b></DT><DD>
14558 <p> List of TLS protocols that the Postfix SMTP server will exclude
14559 or include with opportunistic TLS encryption. This parameter SHOULD be
14560 left at its default empty value, allowing all protocols to be used with
14561 opportunistic TLS. </p>
14563 <p> In <a href="postconf.5.html">main.cf</a> the values are separated by whitespace, commas or
14564 colons. An empty value means allow all protocols. The valid protocol
14565 names, (see <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" and
14566 "TLSv1". In <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> table entries, "protocols" attribute
14567 values are separated by a colon. </p>
14569 <p> To include a protocol list its name, to exclude it, prefix the name
14570 with a "!" character. To exclude SSLv2 even for opportunistic TLS set
14571 "<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set
14572 "<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to
14573 include, is supported, but not recommended. OpenSSL provides no mechanisms
14574 for excluding protocols not known at compile-time. If Postfix is linked
14575 against an OpenSSL library that supports additional protocol versions,
14576 they cannot be excluded using either syntax. </p>
14578 <p> Example: </p>
14579 <pre>
14580 <a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2
14581 </pre>
14583 <p> This feature is available in Postfix 2.6 and later. </p>
14586 </DD>
14588 <DT><b><a name="smtpd_tls_received_header">smtpd_tls_received_header</a>
14589 (default: no)</b></DT><DD>
14591 <p> Request that the Postfix SMTP server produces Received: message
14592 headers that include information about the protocol and cipher used,
14593 as well as the client CommonName and client certificate issuer
14594 CommonName. This is disabled by default, as the information may
14595 be modified in transit through other mail servers. Only information
14596 that was recorded by the final destination can be trusted. </p>
14598 <p> This feature is available in Postfix 2.2 and later. </p>
14601 </DD>
14603 <DT><b><a name="smtpd_tls_req_ccert">smtpd_tls_req_ccert</a>
14604 (default: no)</b></DT><DD>
14606 <p> With mandatory TLS encryption, require a trusted remote SMTP client
14607 certificate in order to allow TLS connections to proceed. This
14608 option implies "<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> = yes". </p>
14610 <p> When TLS encryption is optional, this setting is ignored with
14611 a warning written to the mail log. </p>
14613 <p> This feature is available in Postfix 2.2 and later. </p>
14616 </DD>
14618 <DT><b><a name="smtpd_tls_security_level">smtpd_tls_security_level</a>
14619 (default: empty)</b></DT><DD>
14621 <p> The SMTP TLS security level for the Postfix SMTP server; when
14622 a non-empty value is specified, this overrides the obsolete parameters
14623 <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
14624 "<a href="postconf.5.html#smtpd_tls_wrappermode">smtpd_tls_wrappermode</a> = yes". </p>
14626 <p> Specify one of the following security levels: </p>
14628 <dl>
14630 <dt><b>none</b></dt> <dd> TLS will not be used. </dd>
14632 <dt><b>may</b></dt> <dd> Opportunistic TLS: announce STARTTLS support
14633 to SMTP clients, but do not require that clients use TLS encryption.
14634 </dd>
14636 <dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption: announce
14637 STARTTLS support to SMTP clients, and require that clients use TLS
14638 encryption. According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> this MUST NOT be applied in case
14639 of a publicly-referenced SMTP server. Instead, this option should
14640 be used only on dedicated servers. </dd>
14642 </dl>
14644 <p> Note 1: the "fingerprint", "verify" and "secure" levels are not
14645 supported here.
14646 The Postfix SMTP server logs a warning and uses "encrypt" instead.
14647 To verify SMTP client certificates, see <a href="TLS_README.html">TLS_README</a> for a discussion
14648 of 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>
14649 features. </p>
14651 <p> Note 2: The parameter setting "<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> =
14652 encrypt" implies "<a href="postconf.5.html#smtpd_tls_auth_only">smtpd_tls_auth_only</a> = yes".</p>
14654 <p> Note 3: when invoked via "sendmail -bs", Postfix will never
14655 offer STARTTLS due to insufficient privileges to access the server
14656 private key. This is intended behavior.</p>
14658 <p> This feature is available in Postfix 2.3 and later. </p>
14661 </DD>
14663 <DT><b><a name="smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>
14664 (default: empty)</b></DT><DD>
14666 <p> Name of the file containing the optional Postfix SMTP server
14667 TLS session cache. Specify a database type that supports enumeration,
14668 such as <b>btree</b> or <b>sdbm</b>; there is no need to support
14669 concurrent access. The file is created if it does not exist. The <a href="smtpd.8.html">smtpd(8)</a>
14670 daemon does not use this parameter directly, rather the cache is
14671 implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that
14672 per-smtpd-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not
14673 effective. Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a>
14674 daemon: $<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>
14675 (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
14676 stored separately. It is not at this time possible to store multiple
14677 caches in a single database. </p>
14679 <p> Note: <b>dbm</b> databases are not suitable. TLS
14680 session objects are too large. </p>
14682 <p> As of version 2.5, Postfix no longer uses root privileges when
14683 opening this file. The file should now be stored under the Postfix-owned
14684 <a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file
14685 under a non-Postfix directory is redirected to the Postfix-owned
14686 <a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p>
14688 <p> Example: </p>
14690 <pre>
14691 <a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a> = btree:/var/lib/postfix/smtpd_scache
14692 </pre>
14694 <p> This feature is available in Postfix 2.2 and later. </p>
14697 </DD>
14699 <DT><b><a name="smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>
14700 (default: 3600s)</b></DT><DD>
14702 <p> The expiration time of Postfix SMTP server TLS session cache
14703 information. A cache cleanup is performed periodically
14704 every $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> seconds. As with
14705 $<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>, this parameter is implemented in the
14706 <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtpd-instance <a href="master.5.html">master.cf</a> overrides
14707 are not possible. </p>
14709 <p> This feature is available in Postfix 2.2 and later. </p>
14712 </DD>
14714 <DT><b><a name="smtpd_tls_wrappermode">smtpd_tls_wrappermode</a>
14715 (default: no)</b></DT><DD>
14717 <p> Run the Postfix SMTP server in the non-standard "wrapper" mode,
14718 instead of using the STARTTLS command. </p>
14720 <p> If you want to support this service, enable a special port in
14721 <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
14722 server's command line. Port 465 (smtps) was once chosen for this
14723 purpose. </p>
14725 <p> This feature is available in Postfix 2.2 and later. </p>
14728 </DD>
14730 <DT><b><a name="smtpd_use_tls">smtpd_use_tls</a>
14731 (default: no)</b></DT><DD>
14733 <p> Opportunistic TLS: announce STARTTLS support to SMTP clients,
14734 but do not require that clients use TLS encryption. </p>
14736 <p> Note: when invoked via "<b>sendmail -bs</b>", Postfix will never offer
14737 STARTTLS due to insufficient privileges to access the server private
14738 key. This is intended behavior. </p>
14740 <p> This feature is available in Postfix 2.2 and later. With
14741 Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p>
14744 </DD>
14746 <DT><b><a name="soft_bounce">soft_bounce</a>
14747 (default: no)</b></DT><DD>
14750 Safety net to keep mail queued that would otherwise be returned to
14751 the sender. This parameter disables locally-generated bounces,
14752 and prevents the Postfix SMTP server from rejecting mail permanently,
14753 by changing 5xx reply codes into 4xx. However, <a href="postconf.5.html#soft_bounce">soft_bounce</a> is no
14754 cure for address rewriting mistakes or mail routing mistakes.
14755 </p>
14758 Example:
14759 </p>
14761 <pre>
14762 <a href="postconf.5.html#soft_bounce">soft_bounce</a> = yes
14763 </pre>
14766 </DD>
14768 <DT><b><a name="stale_lock_time">stale_lock_time</a>
14769 (default: 500s)</b></DT><DD>
14772 The time after which a stale exclusive mailbox lockfile is removed.
14773 This is used for delivery to file or mailbox.
14774 </p>
14777 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
14778 The default time unit is s (seconds).
14779 </p>
14782 </DD>
14784 <DT><b><a name="stress">stress</a>
14785 (default: empty)</b></DT><DD>
14787 <p> This feature is documented in the <a href="STRESS_README.html">STRESS_README</a> document. </p>
14789 <p> This feature is available in Postfix 2.5 and later. </p>
14792 </DD>
14794 <DT><b><a name="strict_7bit_headers">strict_7bit_headers</a>
14795 (default: no)</b></DT><DD>
14798 Reject mail with 8-bit text in message headers. This blocks mail
14799 from poorly written applications.
14800 </p>
14803 This feature should not be enabled on a general purpose mail server,
14804 because it is likely to reject legitimate email.
14805 </p>
14808 This feature is available in Postfix 2.0 and later.
14809 </p>
14812 </DD>
14814 <DT><b><a name="strict_8bitmime">strict_8bitmime</a>
14815 (default: no)</b></DT><DD>
14818 Enable 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>.
14819 </p>
14822 This feature should not be enabled on a general purpose mail server,
14823 because it is likely to reject legitimate email.
14824 </p>
14827 This feature is available in Postfix 2.0 and later.
14828 </p>
14831 </DD>
14833 <DT><b><a name="strict_8bitmime_body">strict_8bitmime_body</a>
14834 (default: no)</b></DT><DD>
14837 Reject 8-bit message body text without 8-bit MIME content encoding
14838 information. This blocks mail from poorly written applications.
14839 </p>
14842 Unfortunately, this also rejects majordomo approval requests when
14843 the included request contains valid 8-bit MIME mail, and it rejects
14844 bounces from mailers that do not MIME encapsulate 8-bit content
14845 (for example, bounces from qmail or from old versions of Postfix).
14846 </p>
14849 This feature should not be enabled on a general purpose mail server,
14850 because it is likely to reject legitimate email.
14851 </p>
14854 This feature is available in Postfix 2.0 and later.
14855 </p>
14858 </DD>
14860 <DT><b><a name="strict_mailbox_ownership">strict_mailbox_ownership</a>
14861 (default: yes)</b></DT><DD>
14863 <p> Defer delivery when a mailbox file is not owned by its recipient.
14864 The default setting is not backwards compatible. </p>
14866 <p> This feature is available in Postfix 2.5.3 and later. </p>
14869 </DD>
14871 <DT><b><a name="strict_mime_encoding_domain">strict_mime_encoding_domain</a>
14872 (default: no)</b></DT><DD>
14875 Reject mail with invalid Content-Transfer-Encoding: information
14876 for the message/* or multipart/* MIME content types. This blocks
14877 mail from poorly written software.
14878 </p>
14881 This feature should not be enabled on a general purpose mail server,
14882 because it will reject mail after a single violation.
14883 </p>
14886 This feature is available in Postfix 2.0 and later.
14887 </p>
14890 </DD>
14892 <DT><b><a name="strict_rfc821_envelopes">strict_rfc821_envelopes</a>
14893 (default: no)</b></DT><DD>
14896 Require that addresses received in SMTP MAIL FROM and RCPT TO
14897 commands are enclosed with &lt;&gt;, and that those addresses do
14898 not contain <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> style comments or phrases. This stops mail
14899 from poorly written software.
14900 </p>
14903 By default, the Postfix SMTP server accepts <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> syntax in MAIL
14904 FROM and RCPT TO addresses.
14905 </p>
14908 </DD>
14910 <DT><b><a name="sun_mailtool_compatibility">sun_mailtool_compatibility</a>
14911 (default: no)</b></DT><DD>
14914 Obsolete SUN mailtool compatibility feature. Instead, use
14915 "<a href="postconf.5.html#mailbox_delivery_lock">mailbox_delivery_lock</a> = dotlock".
14916 </p>
14919 </DD>
14921 <DT><b><a name="swap_bangpath">swap_bangpath</a>
14922 (default: yes)</b></DT><DD>
14925 Enable the rewriting of "site!user" into "user@site". This is
14926 necessary if your machine is connected to UUCP networks. It is
14927 enabled by default.
14928 </p>
14930 <p> Note: with Postfix version 2.2, message header address rewriting
14931 happens only when one of the following conditions is true: </p>
14933 <ul>
14935 <li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command,
14937 <li> The message is received from a network client that matches
14938 $<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>,
14940 <li> The message is received from the network, and the
14941 <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value.
14943 </ul>
14945 <p> To get the behavior before Postfix version 2.2, specify
14946 "<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p>
14949 Example:
14950 </p>
14952 <pre>
14953 <a href="postconf.5.html#swap_bangpath">swap_bangpath</a> = no
14954 </pre>
14957 </DD>
14959 <DT><b><a name="syslog_facility">syslog_facility</a>
14960 (default: mail)</b></DT><DD>
14963 The syslog facility of Postfix logging. Specify a facility as
14964 defined in syslog.conf(5). The default facility is "mail".
14965 </p>
14968 Warning: a non-default <a href="postconf.5.html#syslog_facility">syslog_facility</a> setting takes effect only
14969 after a Postfix process has completed initialization. Errors during
14970 process initialization will be logged with the default facility.
14971 Examples are errors while parsing the command line arguments, and
14972 errors while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file.
14973 </p>
14976 </DD>
14978 <DT><b><a name="syslog_name">syslog_name</a>
14979 (default: see "postconf -d" output)</b></DT><DD>
14982 The mail system name that is prepended to the process name in syslog
14983 records, so that "smtpd" becomes, for example, "postfix/smtpd".
14984 </p>
14987 Warning: a non-default <a href="postconf.5.html#syslog_name">syslog_name</a> setting takes effect only after
14988 a Postfix process has completed initialization. Errors during
14989 process initialization will be logged with the default name. Examples
14990 are errors while parsing the command line arguments, and errors
14991 while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file.
14992 </p>
14995 </DD>
14997 <DT><b><a name="tcp_windowsize">tcp_windowsize</a>
14998 (default: 0)</b></DT><DD>
15000 <p> An optional workaround for routers that break TCP window scaling.
15001 Specify a value &gt; 0 and &lt; 65536 to enable this feature. With
15002 Postfix TCP servers (<a href="smtpd.8.html">smtpd(8)</a>, <a href="qmqpd.8.html">qmqpd(8)</a>), this feature is implemented
15003 by the Postfix <a href="master.8.html">master(8)</a> daemon. </p>
15005 <p> To change this parameter without stopping Postfix, you need to
15006 first terminate all Postfix TCP servers: </p>
15008 <blockquote>
15009 <pre>
15010 # postconf -e <a href="postconf.5.html#master_service_disable">master_service_disable</a>=inet
15011 # postfix reload
15012 </pre>
15013 </blockquote>
15015 <p> This immediately terminates all processes that accept network
15016 connections. Next, you enable Postfix TCP servers with the updated
15017 <a href="postconf.5.html#tcp_windowsize">tcp_windowsize</a> setting: </p>
15019 <blockquote>
15020 <pre>
15021 # 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>=
15022 # postfix reload
15023 </pre>
15024 </blockquote>
15026 <p> If you skip these steps with a running Postfix system, then the
15027 <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>,
15028 <a href="lmtp.8.html">lmtp(8)</a>). </p>
15030 <p> This feature is available in Postfix 2.6 and later. </p>
15033 </DD>
15035 <DT><b><a name="tls_append_default_CA">tls_append_default_CA</a>
15036 (default: no)</b></DT><DD>
15038 <p> Append the system-supplied default certificate authority
15039 certificates to the ones specified with *_tls_CApath or *_tls_CAfile.
15040 The default is "no"; this prevents Postfix from trusting third-party
15041 certificates and giving them relay permission with
15042 <a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a>. </p>
15044 <p> This feature is available in Postfix 2.4.15, 2.5.11, 2.6.8,
15045 2.7.2 and later versions. Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = yes" for
15046 backwards compatibility, to avoid breaking certificate verification
15047 with sites that don't use <a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a>. </p>
15050 </DD>
15052 <DT><b><a name="tls_daemon_random_bytes">tls_daemon_random_bytes</a>
15053 (default: 32)</b></DT><DD>
15055 <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>
15056 process requests from the <a href="tlsmgr.8.html">tlsmgr(8)</a> server in order to seed its
15057 internal pseudo random number generator (PRNG). The default of 32
15058 bytes (equivalent to 256 bits) is sufficient to generate a 128bit
15059 (or 168bit) session key. </p>
15061 <p> This feature is available in Postfix 2.2 and later. </p>
15064 </DD>
15066 <DT><b><a name="tls_disable_workarounds">tls_disable_workarounds</a>
15067 (default: see "postconf -d" output)</b></DT><DD>
15069 <p> List or bit-mask of OpenSSL bug work-arounds to disable. </p>
15071 <p> The OpenSSL toolkit includes a set of work-arounds for buggy SSL/TLS
15072 implementations. Applications, such as Postfix, that want to maximize
15073 interoperability ask the OpenSSL library to enable the full set of
15074 recommended work-arounds. </p>
15076 <p> From time to time, it is discovered that a work-around creates a
15077 security issue, and should no longer be used. If upgrading OpenSSL
15078 to a fixed version is not an option or an upgrade is not available
15079 in a timely manner, or in closed environments where no buggy clients
15080 or servers exist, it may be appropriate to disable some or all of the
15081 OpenSSL interoperability work-arounds. This parameter specifies which
15082 bug work-arounds to disable. </p>
15084 <p> If the value of the parameter is a hexadecimal long integer starting
15085 with "0x", the bug work-arounds corresponding to the bits specified in
15086 its value are removed from the <b>SSL_OP_ALL</b> work-around bit-mask
15087 (see openssl/ssl.h and SSL_CTX_set_options(3)). You can specify more
15088 bits than are present in SSL_OP_ALL, excess bits are ignored. Specifying
15089 0xFFFFFFFF disables all bug-workarounds on a 32-bit system. This should
15090 also be sufficient on 64-bit systems, until OpenSSL abandons support
15091 for 32-bit systems and starts using the high 32 bits of a 64-bit
15092 bug-workaround mask. </p>
15094 <p> Otherwise, the parameter is a white-space or comma separated list
15095 of specific named bug work-arounds chosen from the list below. It
15096 is possible that your OpenSSL version includes new bug work-arounds
15097 added after your Postfix source code was last updated, in that case
15098 you can only disable one of these via the hexadecimal syntax above. </p>
15100 <dl>
15102 <dt><b>MICROSOFT_SESS_ID_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd>
15104 <dt><b>NETSCAPE_CHALLENGE_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd>
15106 <dt><b>LEGACY_SERVER_CONNECT</b></dt> <dd>See SSL_CTX_set_options(3)</dd>
15108 <dt><b>NETSCAPE_REUSE_CIPHER_CHANGE_BUG</b></dt> <dd> also aliased
15109 as <b>CVE-2010-4180</b>. Postfix 2.8 disables this work-around by
15110 default with OpenSSL versions that may predate the fix. Fixed in
15111 OpenSSL 0.9.8q and OpenSSL 1.0.0c.</dd>
15113 <dt><b>SSLREF2_REUSE_CERT_TYPE_BUG</b></dt> <dd>See
15114 SSL_CTX_set_options(3)</dd>
15116 <dt><b>MICROSOFT_BIG_SSLV3_BUFFER</b></dt> <dd>See
15117 SSL_CTX_set_options(3)</dd>
15119 <dt><b>MSIE_SSLV2_RSA_PADDING</b></dt> <dd> also aliased as
15120 <b>CVE-2005-2969</b>. Postfix 2.8 disables this work-around by
15121 default with OpenSSL versions that may predate the fix. Fixed in
15122 OpenSSL 0.9.7h and OpenSSL 0.9.8a.</dd>
15124 <dt><b>SSLEAY_080_CLIENT_DH_BUG</b></dt> <dd>See
15125 SSL_CTX_set_options(3)</dd>
15127 <dt><b>TLS_D5_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd>
15129 <dt><b>TLS_BLOCK_PADDING_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd>
15131 <dt><b>TLS_ROLLBACK_BUG</b></dt> <dd>See SSL_CTX_set_options(3).
15132 This is disabled in OpenSSL 0.9.7 and later. Nobody should still
15133 be using 0.9.6! </dd>
15135 <dt><b>DONT_INSERT_EMPTY_FRAGMENTS</b></dt> <dd>See
15136 SSL_CTX_set_options(3)</dd>
15138 <dt><b>CRYPTOPRO_TLSEXT_BUG</b></dt> <dd>New with GOST support in
15139 OpenSSL 1.0.0.</dd>
15141 </dl>
15143 <p> This feature is available in Postfix 2.8 and later. </p>
15146 </DD>
15148 <DT><b><a name="tls_eecdh_strong_curve">tls_eecdh_strong_curve</a>
15149 (default: prime256v1)</b></DT><DD>
15151 <p> The elliptic curve used by the SMTP server for sensibly strong
15152 ephemeral ECDH key exchange. This curve is used by the Postfix SMTP
15153 server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong". The phrase "sensibly
15154 strong" means approximately 128-bit security based on best known
15155 attacks. The selected curve must be implemented by OpenSSL (as
15156 reported by ecparam(1) with the "-list_curves" option) and be one
15157 of the curves listed in Section 5.1.1 of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not
15158 generally change this setting. </p>
15160 <p> This default curve is specified in NSA "Suite B" Cryptography
15161 (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
15162 information classified as SECRET. </p>
15164 <p> Note: elliptic curve names are poorly standardized; different
15165 standards groups are assigning different names to the same underlying
15166 curves. The curve with the X9.62 name "prime256v1" is also known
15167 under the SECG name "secp256r1", but OpenSSL does not recognize the
15168 latter name. </p>
15170 <p> This feature is available in Postfix 2.6 and later, when it is
15171 compiled and linked with OpenSSL 1.0.0 or later. </p>
15174 </DD>
15176 <DT><b><a name="tls_eecdh_ultra_curve">tls_eecdh_ultra_curve</a>
15177 (default: secp384r1)</b></DT><DD>
15179 <p> The elliptic curve used by the SMTP server for maximally strong
15180 ephemeral ECDH key exchange. This curve is used by the Postfix SMTP
15181 server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = ultra". The phrase "maximally
15182 strong" means approximately 192-bit security based on best known attacks.
15183 This additional strength comes at a significant computational cost, most
15184 users should instead set "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong". The selected
15185 curve must be implemented by OpenSSL (as reported by ecparam(1) with the
15186 "-list_curves" option) and be one of the curves listed in Section 5.1.1
15187 of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not generally change this setting. </p>
15189 <p> This default "ultra" curve is specified in NSA "Suite B" Cryptography
15190 (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
15191 classified as TOP SECRET. </p>
15193 <p> This feature is available in Postfix 2.6 and later, when it is
15194 compiled and linked with OpenSSL 1.0.0 or later. </p>
15197 </DD>
15199 <DT><b><a name="tls_export_cipherlist">tls_export_cipherlist</a>
15200 (default: ALL:+RC4:@STRENGTH)</b></DT><DD>
15202 <p> The OpenSSL cipherlist for "EXPORT" or higher grade ciphers. This
15203 defines the meaning of the "export" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
15204 <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
15205 the cipherlist for the opportunistic ("may") TLS client security
15206 level and is the default cipherlist for the SMTP server. You are
15207 strongly encouraged to not change this setting. With OpenSSL 1.0.0 and
15208 later the cipherlist may start with an "aNULL:" prefix, which restores
15209 the 0.9.8-compatible ordering of the aNULL ciphers to the top of the
15210 list when they are enabled. This prefix is not needed with previous
15211 OpenSSL releases. </p>
15213 <p> This feature is available in Postfix 2.3 and later. </p>
15216 </DD>
15218 <DT><b><a name="tls_high_cipherlist">tls_high_cipherlist</a>
15219 (default: ALL:!EXPORT:!LOW:!MEDIUM:+RC4:@STRENGTH)</b></DT><DD>
15221 <p> The OpenSSL cipherlist for "HIGH" grade ciphers. This defines
15222 the meaning of the "high" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
15223 <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
15224 strongly encouraged to not change this setting. With OpenSSL 1.0.0 and
15225 later the cipherlist may start with an "aNULL:" prefix, which restores
15226 the 0.9.8-compatible ordering of the aNULL ciphers to the top of the
15227 list when they are enabled. This prefix is not needed with previous
15228 OpenSSL releases. </p>
15230 <p> This feature is available in Postfix 2.3 and later. </p>
15233 </DD>
15235 <DT><b><a name="tls_low_cipherlist">tls_low_cipherlist</a>
15236 (default: ALL:!EXPORT:+RC4:@STRENGTH)</b></DT><DD>
15238 <p> The OpenSSL cipherlist for "LOW" or higher grade ciphers. This defines
15239 the meaning of the "low" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
15240 <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
15241 strongly encouraged to not change this setting. With OpenSSL 1.0.0 and
15242 later the cipherlist may start with an "aNULL:" prefix, which restores
15243 the 0.9.8-compatible ordering of the aNULL ciphers to the top of the
15244 list when they are enabled. This prefix is not needed with previous
15245 OpenSSL releases. </p>
15247 <p> This feature is available in Postfix 2.3 and later. </p>
15250 </DD>
15252 <DT><b><a name="tls_medium_cipherlist">tls_medium_cipherlist</a>
15253 (default: ALL:!EXPORT:!LOW:+RC4:@STRENGTH)</b></DT><DD>
15255 <p> The OpenSSL cipherlist for "MEDIUM" or higher grade ciphers. This
15256 defines the meaning of the "medium" setting in <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>,
15257 <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
15258 the default cipherlist for mandatory TLS encryption in the TLS
15259 client (with anonymous ciphers disabled when verifying server
15260 certificates). You are strongly encouraged to not change this
15261 setting. With OpenSSL 1.0.0 and later the cipherlist may start with an
15262 "aNULL:" prefix, which restores the 0.9.8-compatible ordering of the
15263 aNULL ciphers to the top of the list when they are enabled. This prefix
15264 is not needed with previous OpenSSL releases. </p>
15266 <p> This feature is available in Postfix 2.3 and later. </p>
15269 </DD>
15271 <DT><b><a name="tls_null_cipherlist">tls_null_cipherlist</a>
15272 (default: eNULL:!aNULL)</b></DT><DD>
15274 <p> The OpenSSL cipherlist for "NULL" grade ciphers that provide
15275 authentication without encryption. This defines the meaning of the "null"
15276 setting in smtpd_mandatory_tls_ciphers, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and
15277 <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are strongly encouraged to not
15278 change this setting. </p>
15280 <p> This feature is available in Postfix 2.3 and later. </p>
15283 </DD>
15285 <DT><b><a name="tls_preempt_cipherlist">tls_preempt_cipherlist</a>
15286 (default: no)</b></DT><DD>
15288 <p> With SSLv3 and later, use the server's cipher preference order
15289 instead of the client's cipher preference order. </p>
15291 <p> By default, the OpenSSL server selects the client's most preferred
15292 cipher that the server supports. With SSLv3 and later, the server may
15293 choose its own most preferred cipher that is supported (offered) by
15294 the client. Setting "<a href="postconf.5.html#tls_preempts_cipherlist">tls_preempt_cipherlist</a> = yes" enables server cipher
15295 preferences. </p>
15297 <p> While server cipher selection may in some cases lead to a more secure
15298 or performant cipher choice, there is some risk of interoperability
15299 issues. In the past, some SSL clients have listed lower priority ciphers
15300 that they did not implement correctly. If the server chooses a cipher
15301 that the client prefers less, it may select a cipher whose client
15302 implementation is flawed. </p>
15304 <p> This feature is available in Postfix 2.8 and later, in combination
15305 with OpenSSL 0.9.7 and later. </p>
15308 </DD>
15310 <DT><b><a name="tls_random_bytes">tls_random_bytes</a>
15311 (default: 32)</b></DT><DD>
15313 <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>
15314 when (re)seeding the in-memory pseudo random number generator (PRNG)
15315 pool. The default of 32 bytes (256 bits) is good enough for 128bit
15316 symmetric keys. If using EGD or a device file, a maximum of 255
15317 bytes is read. </p>
15319 <p> This feature is available in Postfix 2.2 and later. </p>
15322 </DD>
15324 <DT><b><a name="tls_random_exchange_name">tls_random_exchange_name</a>
15325 (default: see "postconf -d" output)</b></DT><DD>
15327 <p> Name of the pseudo random number generator (PRNG) state file
15328 that is maintained by <a href="tlsmgr.8.html">tlsmgr(8)</a>. The file is created when it does
15329 not exist, and its length is fixed at 1024 bytes. </p>
15331 <p> As of version 2.5, Postfix no longer uses root privileges when
15332 opening this file, and the default file location was changed from
15333 ${<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
15334 a migration aid, an attempt to open the file under a non-Postfix
15335 directory is redirected to the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>, and a
15336 warning is logged. </p>
15338 <p> This feature is available in Postfix 2.2 and later. </p>
15341 </DD>
15343 <DT><b><a name="tls_random_prng_update_period">tls_random_prng_update_period</a>
15344 (default: 3600s)</b></DT><DD>
15346 <p> The time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to save the state of
15347 the pseudo random number generator (PRNG) to the file specified
15348 with $<a href="postconf.5.html#tls_random_exchange_name">tls_random_exchange_name</a>. </p>
15350 <p> This feature is available in Postfix 2.2 and later. </p>
15353 </DD>
15355 <DT><b><a name="tls_random_reseed_period">tls_random_reseed_period</a>
15356 (default: 3600s)</b></DT><DD>
15358 <p> The maximal time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to re-seed the
15359 in-memory pseudo random number generator (PRNG) pool from external
15360 sources. The actual time between re-seeding attempts is calculated
15361 using the PRNG, and is between 0 and the time specified. </p>
15363 <p> This feature is available in Postfix 2.2 and later. </p>
15366 </DD>
15368 <DT><b><a name="tls_random_source">tls_random_source</a>
15369 (default: see "postconf -d" output)</b></DT><DD>
15371 <p> The external entropy source for the in-memory <a href="tlsmgr.8.html">tlsmgr(8)</a> pseudo
15372 random number generator (PRNG) pool. Be sure to specify a non-blocking
15373 source. If this source is not a regular file, the entropy source
15374 type must be prepended: egd:/path/to/egd_socket for a source with
15375 EGD compatible socket interface, or dev:/path/to/device for a
15376 device file. </p>
15378 <p> Note: on OpenBSD systems specify /dev/arandom when /dev/urandom
15379 gives timeout errors. </p>
15381 <p> This feature is available in Postfix 2.2 and later. </p>
15384 </DD>
15386 <DT><b><a name="tlsproxy_enforce_tls">tlsproxy_enforce_tls</a>
15387 (default: $<a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a>)</b></DT><DD>
15389 <p> Mandatory TLS: announce STARTTLS support to SMTP clients, and
15390 require that clients use TLS encryption. See <a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a> for
15391 further details. </p>
15393 <p> This feature is available in Postfix 2.8 and later. </p>
15396 </DD>
15398 <DT><b><a name="tlsproxy_service_name">tlsproxy_service_name</a>
15399 (default: tlsproxy)</b></DT><DD>
15401 <p> The name of the <a href="tlsproxy.8.html">tlsproxy(8)</a> service entry in <a href="master.5.html">master.cf</a>. This
15402 service performs plaintext &lt;=&gt; TLS ciphertext conversion. <p>
15404 <p> This feature is available in Postfix 2.8 and later. </p>
15407 </DD>
15409 <DT><b><a name="tlsproxy_tls_CAfile">tlsproxy_tls_CAfile</a>
15410 (default: $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>)</b></DT><DD>
15412 <p> A file containing (PEM format) CA certificates of root CAs
15413 trusted to sign either remote SMTP client certificates or intermediate
15414 CA certificates. See <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> for further details. </p>
15416 <p> This feature is available in Postfix 2.8 and later. </p>
15419 </DD>
15421 <DT><b><a name="tlsproxy_tls_CApath">tlsproxy_tls_CApath</a>
15422 (default: $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>)</b></DT><DD>
15424 <p> A directory containing (PEM format) CA certificates of root CAs
15425 trusted to sign either remote SMTP client certificates or intermediate
15426 CA certificates. See <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> for further details. </p>
15428 <p> This feature is available in Postfix 2.8 and later. </p>
15431 </DD>
15433 <DT><b><a name="tlsproxy_tls_always_issue_session_ids">tlsproxy_tls_always_issue_session_ids</a>
15434 (default: $<a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a>)</b></DT><DD>
15436 <p> Force the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server to issue a TLS session id,
15437 even when TLS session caching is turned off. See
15438 <a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> for further details. </p>
15440 <p> This feature is available in Postfix 2.8 and later. </p>
15443 </DD>
15445 <DT><b><a name="tlsproxy_tls_ask_ccert">tlsproxy_tls_ask_ccert</a>
15446 (default: $<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>)</b></DT><DD>
15448 <p> Ask a remote SMTP client for a client certificate. See
15449 <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> for further details. </p>
15451 <p> This feature is available in Postfix 2.8 and later. </p>
15454 </DD>
15456 <DT><b><a name="tlsproxy_tls_ccert_verifydepth">tlsproxy_tls_ccert_verifydepth</a>
15457 (default: $<a href="postconf.5.html#smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a>)</b></DT><DD>
15459 <p> The verification depth for remote SMTP client certificates. A
15460 depth of 1 is sufficient if the issuing CA is listed in a local CA
15461 file. See <a href="postconf.5.html#smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a> for further details. </p>
15463 <p> This feature is available in Postfix 2.8 and later. </p>
15466 </DD>
15468 <DT><b><a name="tlsproxy_tls_cert_file">tlsproxy_tls_cert_file</a>
15469 (default: $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>)</b></DT><DD>
15471 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server RSA certificate in PEM
15472 format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15473 private RSA key. See <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for further details. </p>
15475 <p> This feature is available in Postfix 2.8 and later. </p>
15478 </DD>
15480 <DT><b><a name="tlsproxy_tls_ciphers">tlsproxy_tls_ciphers</a>
15481 (default: $<a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>)</b></DT><DD>
15483 <p> The minimum TLS cipher grade that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15484 will use with opportunistic TLS encryption. See <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>
15485 for further details. </p>
15487 <p> This feature is available in Postfix 2.8 and later. </p>
15490 </DD>
15492 <DT><b><a name="tlsproxy_tls_dcert_file">tlsproxy_tls_dcert_file</a>
15493 (default: $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>)</b></DT><DD>
15495 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server DSA certificate in PEM
15496 format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15497 private DSA key. See <a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> for further details.
15498 </p>
15500 <p> This feature is available in Postfix 2.8 and later. </p>
15503 </DD>
15505 <DT><b><a name="tlsproxy_tls_dh1024_param_file">tlsproxy_tls_dh1024_param_file</a>
15506 (default: $<a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>)</b></DT><DD>
15508 <p> File with DH parameters that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15509 should use with EDH ciphers. See <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> for
15510 further details. </p>
15512 <p> This feature is available in Postfix 2.8 and later. </p>
15515 </DD>
15517 <DT><b><a name="tlsproxy_tls_dh512_param_file">tlsproxy_tls_dh512_param_file</a>
15518 (default: $<a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a>)</b></DT><DD>
15520 <p> File with DH parameters that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15521 should use with EDH ciphers. See <a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> for
15522 further details. </p>
15524 <p> This feature is available in Postfix 2.8 and later. </p>
15527 </DD>
15529 <DT><b><a name="tlsproxy_tls_dkey_file">tlsproxy_tls_dkey_file</a>
15530 (default: $<a href="postconf.5.html#smtpd_tls_dkey_file">smtpd_tls_dkey_file</a>)</b></DT><DD>
15532 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server DSA private key in PEM
15533 format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a>
15534 server DSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>.
15535 See <a href="postconf.5.html#smtpd_tls_dkey_file">smtpd_tls_dkey_file</a> for further details. </p>
15537 <p> This feature is available in Postfix 2.8 and later. </p>
15540 </DD>
15542 <DT><b><a name="tlsproxy_tls_eccert_file">tlsproxy_tls_eccert_file</a>
15543 (default: $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>)</b></DT><DD>
15545 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server ECDSA certificate in
15546 PEM format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a>
15547 server private ECDSA key. See <a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> for further
15548 details. </p>
15550 <p> This feature is available in Postfix 2.8 and later. </p>
15553 </DD>
15555 <DT><b><a name="tlsproxy_tls_eckey_file">tlsproxy_tls_eckey_file</a>
15556 (default: $<a href="postconf.5.html#smtpd_tls_eckey_file">smtpd_tls_eckey_file</a>)</b></DT><DD>
15558 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server ECDSA private key in
15559 PEM format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a>
15560 server ECDSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>.
15561 See <a href="postconf.5.html#smtpd_tls_eckey_file">smtpd_tls_eckey_file</a> for further details. </p>
15563 <p> This feature is available in Postfix 2.8 and later. </p>
15566 </DD>
15568 <DT><b><a name="tlsproxy_tls_eecdh_grade">tlsproxy_tls_eecdh_grade</a>
15569 (default: $<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a>)</b></DT><DD>
15571 <p> The Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server security grade for ephemeral
15572 elliptic-curve Diffie-Hellman (EECDH) key exchange. See
15573 <a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> for further details. </p>
15575 <p> This feature is available in Postfix 2.8 and later. </p>
15578 </DD>
15580 <DT><b><a name="tlsproxy_tls_exclude_ciphers">tlsproxy_tls_exclude_ciphers</a>
15581 (default: $<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>)</b></DT><DD>
15583 <p> List of ciphers or cipher types to exclude from the <a href="tlsproxy.8.html">tlsproxy(8)</a>
15584 server cipher list at all TLS security levels. See
15585 <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> for further details. </p>
15587 <p> This feature is available in Postfix 2.8 and later. </p>
15590 </DD>
15592 <DT><b><a name="tlsproxy_tls_fingerprint_digest">tlsproxy_tls_fingerprint_digest</a>
15593 (default: $<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a>)</b></DT><DD>
15595 <p> The message digest algorithm used to construct client-certificate
15596 fingerprints. See <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> for further details.
15597 </p>
15599 <p> This feature is available in Postfix 2.8 and later. </p>
15602 </DD>
15604 <DT><b><a name="tlsproxy_tls_key_file">tlsproxy_tls_key_file</a>
15605 (default: $<a href="postconf.5.html#smtpd_tls_key_file">smtpd_tls_key_file</a>)</b></DT><DD>
15607 <p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server RSA private key in PEM
15608 format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a>
15609 server RSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>.
15610 See <a href="postconf.5.html#smtpd_tls_key_file">smtpd_tls_key_file</a> for further details. </p>
15612 <p> This feature is available in Postfix 2.8 and later. </p>
15615 </DD>
15617 <DT><b><a name="tlsproxy_tls_loglevel">tlsproxy_tls_loglevel</a>
15618 (default: $<a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a>)</b></DT><DD>
15620 <p> Enable additional Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server logging of TLS
15621 activity. Each logging level also includes the information that
15622 is logged at a lower logging level. See <a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a> for
15623 further details. </p>
15625 <p> This feature is available in Postfix 2.8 and later. </p>
15628 </DD>
15630 <DT><b><a name="tlsproxy_tls_mandatory_ciphers">tlsproxy_tls_mandatory_ciphers</a>
15631 (default: $<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>)</b></DT><DD>
15633 <p> The minimum TLS cipher grade that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15634 will use with mandatory TLS encryption. See <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>
15635 for further details. </p>
15637 <p> This feature is available in Postfix 2.8 and later. </p>
15640 </DD>
15642 <DT><b><a name="tlsproxy_tls_mandatory_exclude_ciphers">tlsproxy_tls_mandatory_exclude_ciphers</a>
15643 (default: $<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a>)</b></DT><DD>
15645 <p> Additional list of ciphers or cipher types to exclude from the
15646 <a href="tlsproxy.8.html">tlsproxy(8)</a> server cipher list at mandatory TLS security levels.
15647 See <a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> for further details. </p>
15649 <p> This feature is available in Postfix 2.8 and later. </p>
15652 </DD>
15654 <DT><b><a name="tlsproxy_tls_mandatory_protocols">tlsproxy_tls_mandatory_protocols</a>
15655 (default: $<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a>)</b></DT><DD>
15657 <p> The SSL/TLS protocols accepted by the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server
15658 with mandatory TLS encryption. If the list is empty, the server
15659 supports all available SSL/TLS protocol versions. See
15660 <a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> for further details. </p>
15662 <p> This feature is available in Postfix 2.8 and later. </p>
15665 </DD>
15667 <DT><b><a name="tlsproxy_tls_protocols">tlsproxy_tls_protocols</a>
15668 (default: $<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a>)</b></DT><DD>
15670 <p> List of TLS protocols that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server will
15671 exclude or include with opportunistic TLS encryption. See
15672 <a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> for further details. </p>
15674 <p> This feature is available in Postfix 2.8 and later. </p>
15677 </DD>
15679 <DT><b><a name="tlsproxy_tls_req_ccert">tlsproxy_tls_req_ccert</a>
15680 (default: $<a href="postconf.5.html#smtpd_tls_req_ccert">smtpd_tls_req_ccert</a>)</b></DT><DD>
15682 <p> With mandatory TLS encryption, require a trusted remote SMTP
15683 client certificate in order to allow TLS connections to proceed.
15684 See <a href="postconf.5.html#smtpd_tls_req_ccert">smtpd_tls_req_ccert</a> for further details. </p>
15686 <p> This feature is available in Postfix 2.8 and later. </p>
15689 </DD>
15691 <DT><b><a name="tlsproxy_tls_security_level">tlsproxy_tls_security_level</a>
15692 (default: $<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a>)</b></DT><DD>
15694 <p> The SMTP TLS security level for the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server;
15695 when a non-empty value is specified, this overrides the obsolete
15696 parameters <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>. See
15697 <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> for further details. </p>
15699 <p> This feature is available in Postfix 2.8 and later. </p>
15702 </DD>
15704 <DT><b><a name="tlsproxy_tls_session_cache_timeout">tlsproxy_tls_session_cache_timeout</a>
15705 (default: $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>)</b></DT><DD>
15707 <p> The expiration time of Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server TLS session
15708 cache information. A cache cleanup is performed periodically every
15709 $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> seconds. See
15710 <a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> for further details. </p>
15712 <p> This feature is available in Postfix 2.8 and later. </p>
15715 </DD>
15717 <DT><b><a name="tlsproxy_use_tls">tlsproxy_use_tls</a>
15718 (default: $<a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a>)</b></DT><DD>
15720 <p> Opportunistic TLS: announce STARTTLS support to SMTP clients,
15721 but do not require that clients use TLS encryption. See <a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a>
15722 for further details. </p>
15724 <p> This feature is available in Postfix 2.8 and later. </p>
15727 </DD>
15729 <DT><b><a name="tlsproxy_watchdog_timeout">tlsproxy_watchdog_timeout</a>
15730 (default: 10s)</b></DT><DD>
15732 <p> How much time a <a href="tlsproxy.8.html">tlsproxy(8)</a> process may take to process local
15733 or remote I/O before it is terminated by a built-in watchdog timer.
15734 This is a safety mechanism that prevents <a href="tlsproxy.8.html">tlsproxy(8)</a> from becoming
15735 non-responsive due to a bug in Postfix itself or in system software.
15736 To avoid false alarms and unnecessary cache corruption this limit
15737 cannot be set under 10s. </p>
15739 <p> Specify a non-zero time value (an integral value plus an optional
15740 one-letter suffix that specifies the time unit). Time units: s
15741 (seconds), m (minutes), h (hours), d (days), w (weeks). </p>
15743 <p> This feature is available in Postfix 2.8. </p>
15746 </DD>
15748 <DT><b><a name="trace_service_name">trace_service_name</a>
15749 (default: trace)</b></DT><DD>
15752 The name of the trace service. This service is implemented by the
15753 <a href="bounce.8.html">bounce(8)</a> daemon and maintains a record
15754 of mail deliveries and produces a mail delivery report when verbose
15755 delivery is requested with "<b>sendmail -v</b>".
15756 </p>
15759 This feature is available in Postfix 2.1 and later.
15760 </p>
15763 </DD>
15765 <DT><b><a name="transport_delivery_slot_cost">transport_delivery_slot_cost</a>
15766 (default: $<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>)</b></DT><DD>
15768 <p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>
15769 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15770 the message delivery transport. </p>
15773 </DD>
15775 <DT><b><a name="transport_delivery_slot_discount">transport_delivery_slot_discount</a>
15776 (default: $<a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>)</b></DT><DD>
15778 <p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>
15779 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15780 the message delivery transport. </p>
15783 </DD>
15785 <DT><b><a name="transport_delivery_slot_loan">transport_delivery_slot_loan</a>
15786 (default: $<a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>)</b></DT><DD>
15788 <p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>
15789 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15790 the message delivery transport. </p>
15793 </DD>
15795 <DT><b><a name="transport_destination_concurrency_failed_cohort_limit">transport_destination_concurrency_failed_cohort_limit</a>
15796 (default: $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>)</b></DT><DD>
15798 <p> A transport-specific override for the
15799 <a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> parameter value,
15800 where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
15801 transport. </p>
15803 <p> This feature is available in Postfix 2.5 and later. </p>
15806 </DD>
15808 <DT><b><a name="transport_destination_concurrency_limit">transport_destination_concurrency_limit</a>
15809 (default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
15811 <p> A transport-specific override for the
15812 <a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> parameter value, where
15813 <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
15814 transport. </p>
15817 </DD>
15819 <DT><b><a name="transport_destination_concurrency_negative_feedback">transport_destination_concurrency_negative_feedback</a>
15820 (default: $<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a>)</b></DT><DD>
15822 <p> A transport-specific override for the
15823 <a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> parameter value,
15824 where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
15825 transport. </p>
15827 <p> This feature is available in Postfix 2.5 and later. </p>
15830 </DD>
15832 <DT><b><a name="transport_destination_concurrency_positive_feedback">transport_destination_concurrency_positive_feedback</a>
15833 (default: $<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a>)</b></DT><DD>
15835 <p> A transport-specific override for the
15836 <a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> parameter value,
15837 where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
15838 transport. </p>
15840 <p> This feature is available in Postfix 2.5 and later. </p>
15843 </DD>
15845 <DT><b><a name="transport_destination_rate_delay">transport_destination_rate_delay</a>
15846 (default: $<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b></DT><DD>
15848 <p> A transport-specific override for the <a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>
15849 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15850 the message delivery transport. </p>
15852 <p> This feature is available in Postfix 2.5 and later. </p>
15855 </DD>
15857 <DT><b><a name="transport_destination_recipient_limit">transport_destination_recipient_limit</a>
15858 (default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
15860 <p> A transport-specific override for the
15861 <a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> parameter value, where
15862 <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery
15863 transport. </p>
15866 </DD>
15868 <DT><b><a name="transport_extra_recipient_limit">transport_extra_recipient_limit</a>
15869 (default: $<a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>)</b></DT><DD>
15871 <p> A transport-specific override for the <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>
15872 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15873 the message delivery transport. </p>
15876 </DD>
15878 <DT><b><a name="transport_initial_destination_concurrency">transport_initial_destination_concurrency</a>
15879 (default: $<a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a>)</b></DT><DD>
15881 <p> A transport-specific override for the <a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a>
15882 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15883 the message delivery transport. </p>
15885 <p> This feature is available in Postfix 2.5 and later. </p>
15888 </DD>
15890 <DT><b><a name="transport_maps">transport_maps</a>
15891 (default: empty)</b></DT><DD>
15894 Optional lookup tables with mappings from recipient address to
15895 (message delivery transport, next-hop destination). See <a href="transport.5.html">transport(5)</a>
15896 for details.
15897 </p>
15900 Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup tables. If you use this
15901 feature with local files, run "<b>postmap /etc/postfix/transport</b>"
15902 after making a change. </p>
15904 <p> For safety reasons, as of Postfix 2.3 this feature does not
15905 allow $number substitutions in regular expression maps. </p>
15908 Examples:
15909 </p>
15911 <pre>
15912 <a href="postconf.5.html#transport_maps">transport_maps</a> = dbm:/etc/postfix/transport
15913 <a href="postconf.5.html#transport_maps">transport_maps</a> = hash:/etc/postfix/transport
15914 </pre>
15917 </DD>
15919 <DT><b><a name="transport_minimum_delivery_slots">transport_minimum_delivery_slots</a>
15920 (default: $<a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>)</b></DT><DD>
15922 <p> A transport-specific override for the <a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>
15923 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15924 the message delivery transport. </p>
15927 </DD>
15929 <DT><b><a name="transport_recipient_limit">transport_recipient_limit</a>
15930 (default: $<a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>)</b></DT><DD>
15932 <p> A transport-specific override for the <a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>
15933 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15934 the message delivery transport. </p>
15937 </DD>
15939 <DT><b><a name="transport_recipient_refill_delay">transport_recipient_refill_delay</a>
15940 (default: $<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>)</b></DT><DD>
15942 <p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>
15943 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15944 the message delivery transport. </p>
15946 <p> This feature is available in Postfix 2.4 and later. </p>
15949 </DD>
15951 <DT><b><a name="transport_recipient_refill_limit">transport_recipient_refill_limit</a>
15952 (default: $<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>)</b></DT><DD>
15954 <p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>
15955 parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of
15956 the message delivery transport. </p>
15958 <p> This feature is available in Postfix 2.4 and later. </p>
15961 </DD>
15963 <DT><b><a name="transport_retry_time">transport_retry_time</a>
15964 (default: 60s)</b></DT><DD>
15967 The time between attempts by the Postfix queue manager to contact
15968 a malfunctioning message delivery transport.
15969 </p>
15972 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
15973 The default time unit is s (seconds).
15974 </p>
15977 </DD>
15979 <DT><b><a name="transport_time_limit">transport_time_limit</a>
15980 (default: $<a href="postconf.5.html#command_time_limit">command_time_limit</a>)</b></DT><DD>
15982 <p> A transport-specific override for the <a href="postconf.5.html#command_time_limit">command_time_limit</a> parameter
15983 value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message
15984 delivery transport. </p>
15987 </DD>
15989 <DT><b><a name="trigger_timeout">trigger_timeout</a>
15990 (default: 10s)</b></DT><DD>
15993 The time limit for sending a trigger to a Postfix daemon (for
15994 example, the <a href="pickup.8.html">pickup(8)</a> or <a href="qmgr.8.html">qmgr(8)</a> daemon). This time limit prevents
15995 programs from getting stuck when the mail system is under heavy
15996 load.
15997 </p>
16000 Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks).
16001 The default time unit is s (seconds).
16002 </p>
16005 </DD>
16007 <DT><b><a name="undisclosed_recipients_header">undisclosed_recipients_header</a>
16008 (default: see "postconf -d" output)</b></DT><DD>
16011 Message header that the Postfix <a href="cleanup.8.html">cleanup(8)</a> server inserts when a
16012 message contains no To: or Cc: message header. With Postfix 2.8
16013 and later, the default value is empty. With Postfix 2.4-2.7,
16014 specify an empty value to disable this feature. </p>
16016 <p> Example: </p>
16018 <pre>
16019 # Default value before Postfix 2.8.
16020 # Note: the ":" and ";" are both required.
16021 <a href="postconf.5.html#undisclosed_recipients_header">undisclosed_recipients_header</a> = To: undisclosed-recipients:;
16022 </pre>
16025 </DD>
16027 <DT><b><a name="unknown_address_reject_code">unknown_address_reject_code</a>
16028 (default: 450)</b></DT><DD>
16031 The numerical Postfix SMTP server response code when a sender or
16032 recipient address is rejected by the <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>
16033 or <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> restriction. The response is
16034 always 450 in case of a temporary DNS error.
16035 </p>
16038 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16039 </p>
16042 </DD>
16044 <DT><b><a name="unknown_address_tempfail_action">unknown_address_tempfail_action</a>
16045 (default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
16047 <p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>
16048 or <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> fail due to a temporary error
16049 condition. Specify "defer" to defer the remote SMTP client request
16050 immediately. With the default "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix
16051 SMTP server continues to look for opportunities to reject mail, and
16052 defers the client request only if it would otherwise be accepted.
16053 </p>
16055 <p> This feature is available in Postfix 2.6 and later. </p>
16058 </DD>
16060 <DT><b><a name="unknown_client_reject_code">unknown_client_reject_code</a>
16061 (default: 450)</b></DT><DD>
16064 The numerical Postfix SMTP server response code when a client
16065 without valid address &lt;=&gt; name mapping is rejected by the
16066 <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> restriction. The SMTP server always replies
16067 with 450 when the mapping failed due to a temporary error condition.
16068 </p>
16071 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16072 </p>
16075 </DD>
16077 <DT><b><a name="unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a>
16078 (default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
16080 <p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a>
16081 fails due to an temporary error condition. Specify "defer" to defer
16082 the remote SMTP client request immediately. With the default
16083 "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
16084 for opportunities to reject mail, and defers the client request
16085 only if it would otherwise be accepted. </p>
16087 <p> This feature is available in Postfix 2.6 and later. </p>
16090 </DD>
16092 <DT><b><a name="unknown_hostname_reject_code">unknown_hostname_reject_code</a>
16093 (default: 450)</b></DT><DD>
16096 The numerical Postfix SMTP server response code when the hostname
16097 specified with the HELO or EHLO command is rejected by the
16098 <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> restriction.
16099 </p>
16102 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16103 </p>
16106 </DD>
16108 <DT><b><a name="unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a>
16109 (default: 550)</b></DT><DD>
16112 The numerical Postfix SMTP server response code when a recipient
16113 address is local, and $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> specifies a list of
16114 lookup tables that does not match the recipient. A recipient
16115 address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>,
16116 $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> or $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>.
16117 </p>
16120 The default setting is 550 (reject mail) but it is safer to initially
16121 use 450 (try again later) so you have time to find out if your
16122 <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> settings are OK.
16123 </p>
16126 Example:
16127 </p>
16129 <pre>
16130 <a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> = 450
16131 </pre>
16134 This feature is available in Postfix 2.0 and later.
16135 </p>
16138 </DD>
16140 <DT><b><a name="unknown_relay_recipient_reject_code">unknown_relay_recipient_reject_code</a>
16141 (default: 550)</b></DT><DD>
16144 The numerical Postfix SMTP server reply code when a recipient
16145 address 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
16146 a list of lookup tables that does not match the recipient address.
16147 </p>
16150 This feature is available in Postfix 2.0 and later.
16151 </p>
16154 </DD>
16156 <DT><b><a name="unknown_virtual_alias_reject_code">unknown_virtual_alias_reject_code</a>
16157 (default: 550)</b></DT><DD>
16160 The SMTP server reply code when a recipient address matches
16161 $<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
16162 of lookup tables that does not match the recipient address.
16163 </p>
16166 This feature is available in Postfix 2.0 and later.
16167 </p>
16170 </DD>
16172 <DT><b><a name="unknown_virtual_mailbox_reject_code">unknown_virtual_mailbox_reject_code</a>
16173 (default: 550)</b></DT><DD>
16176 The SMTP server reply code when a recipient address matches
16177 $<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
16178 of lookup tables that does not match the recipient address.
16179 </p>
16182 This feature is available in Postfix 2.0 and later.
16183 </p>
16186 </DD>
16188 <DT><b><a name="unverified_recipient_defer_code">unverified_recipient_defer_code</a>
16189 (default: 450)</b></DT><DD>
16192 The numerical Postfix SMTP server response when a recipient address
16193 probe fails due to a temporary error condition.
16194 </p>
16197 Unlike elsewhere in Postfix, you can specify 250 in order to
16198 accept the address anyway.
16199 </p>
16202 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16203 </p>
16206 This feature is available in Postfix 2.6 and later.
16207 </p>
16210 </DD>
16212 <DT><b><a name="unverified_recipient_reject_code">unverified_recipient_reject_code</a>
16213 (default: 450)</b></DT><DD>
16216 The numerical Postfix SMTP server response when a recipient address
16217 is rejected by the <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> restriction.
16218 </p>
16221 Unlike elsewhere in Postfix, you can specify 250 in order to
16222 accept the address anyway.
16223 </p>
16226 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16227 </p>
16230 This feature is available in Postfix 2.1 and later.
16231 </p>
16234 </DD>
16236 <DT><b><a name="unverified_recipient_reject_reason">unverified_recipient_reject_reason</a>
16237 (default: empty)</b></DT><DD>
16239 <p> The Postfix SMTP server's reply when rejecting mail with
16240 <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>. Do not include the numeric SMTP reply
16241 code or the enhanced status code. By default, the response includes
16242 actual address verification details.
16244 <p> Example: </p>
16246 <pre>
16247 <a href="postconf.5.html#unverified_recipient_reject_reason">unverified_recipient_reject_reason</a> = Recipient address lookup failed
16248 </pre>
16250 <p> This feature is available in Postfix 2.6 and later. </p>
16253 </DD>
16255 <DT><b><a name="unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a>
16256 (default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
16258 <p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>
16259 fails due to a temporary error condition. Specify "defer" to defer
16260 the remote SMTP client request immediately. With the default
16261 "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
16262 for opportunities to reject mail, and defers the client request
16263 only if it would otherwise be accepted. </p>
16265 <p> This feature is available in Postfix 2.6 and later. </p>
16268 </DD>
16270 <DT><b><a name="unverified_sender_defer_code">unverified_sender_defer_code</a>
16271 (default: 450)</b></DT><DD>
16274 The numerical Postfix SMTP server response code when a sender address
16275 probe fails due to a temporary error condition.
16276 </p>
16279 Unlike elsewhere in Postfix, you can specify 250 in order to
16280 accept the address anyway.
16281 </p>
16284 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16285 </p>
16288 This feature is available in Postfix 2.6 and later.
16289 </p>
16292 </DD>
16294 <DT><b><a name="unverified_sender_reject_code">unverified_sender_reject_code</a>
16295 (default: 450)</b></DT><DD>
16298 The numerical Postfix SMTP server response code when a recipient
16299 address is rejected by the <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> restriction.
16300 </p>
16303 Unlike elsewhere in Postfix, you can specify 250 in order to
16304 accept the address anyway.
16305 </p>
16308 Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>.
16309 </p>
16312 This feature is available in Postfix 2.1 and later.
16313 </p>
16316 </DD>
16318 <DT><b><a name="unverified_sender_reject_reason">unverified_sender_reject_reason</a>
16319 (default: empty)</b></DT><DD>
16321 <p> The Postfix SMTP server's reply when rejecting mail with
16322 <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>. Do not include the numeric SMTP reply
16323 code or the enhanced status code. By default, the response includes
16324 actual address verification details.
16326 <p> Example: </p>
16328 <pre>
16329 <a href="postconf.5.html#unverified_sender_reject_reason">unverified_sender_reject_reason</a> = Sender address lookup failed
16330 </pre>
16332 <p> This feature is available in Postfix 2.6 and later. </p>
16335 </DD>
16337 <DT><b><a name="unverified_sender_tempfail_action">unverified_sender_tempfail_action</a>
16338 (default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD>
16340 <p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>
16341 fails due to a temporary error condition. Specify "defer" to defer
16342 the remote SMTP client request immediately. With the default
16343 "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look
16344 for opportunities to reject mail, and defers the client request
16345 only if it would otherwise be accepted. </p>
16347 <p> This feature is available in Postfix 2.6 and later. </p>
16350 </DD>
16352 <DT><b><a name="verp_delimiter_filter">verp_delimiter_filter</a>
16353 (default: -=+)</b></DT><DD>
16356 The characters Postfix accepts as VERP delimiter characters on the
16357 Postfix <a href="sendmail.1.html">sendmail(1)</a> command line and in SMTP commands.
16358 </p>
16361 This feature is available in Postfix 1.1 and later.
16362 </p>
16365 </DD>
16367 <DT><b><a name="virtual_alias_domains">virtual_alias_domains</a>
16368 (default: $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)</b></DT><DD>
16370 <p> Postfix is final destination for the specified list of virtual
16371 alias domains, that is, domains for which all addresses are aliased
16372 to addresses in other local or remote domains. The SMTP server
16373 validates recipient addresses with $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> and rejects
16374 non-existent recipients. See also the <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> class
16375 in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file </p>
16378 This feature is available in Postfix 2.0 and later. The default
16379 value is backwards compatible with Postfix version 1.1.
16380 </p>
16383 The default value is $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> so that you can keep all
16384 information about <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domains</a> in one place. If you have
16385 many users, it is better to separate information that changes more
16386 frequently (virtual address -&gt; local or remote address mapping)
16387 from information that changes less frequently (the list of virtual
16388 domain names).
16389 </p>
16391 <p> Specify a list of host or domain names, "/file/name" or
16392 "<a href="DATABASE_README.html">type:table</a>" patterns, separated by commas and/or whitespace. A
16393 "/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>"
16394 lookup table is matched when a table entry matches a lookup string
16395 (the lookup result is ignored). Continue long lines by starting
16396 the next line with whitespace. Specify "!pattern" to exclude a host
16397 or domain name from the list. The form "!/file/name" is supported
16398 only in Postfix version 2.4 and later. </p>
16401 See also the <a href="VIRTUAL_README.html">VIRTUAL_README</a> and <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> documents
16402 for further information.
16403 </p>
16406 Example:
16407 </p>
16409 <pre>
16410 <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = virtual1.tld virtual2.tld
16411 </pre>
16414 </DD>
16416 <DT><b><a name="virtual_alias_expansion_limit">virtual_alias_expansion_limit</a>
16417 (default: 1000)</b></DT><DD>
16420 The maximal number of addresses that virtual alias expansion produces
16421 from each original recipient.
16422 </p>
16425 This feature is available in Postfix 2.1 and later.
16426 </p>
16429 </DD>
16431 <DT><b><a name="virtual_alias_maps">virtual_alias_maps</a>
16432 (default: $<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b></DT><DD>
16435 Optional lookup tables that alias specific mail addresses or domains
16436 to other local or remote address. The table format and lookups
16437 are documented in <a href="virtual.5.html">virtual(5)</a>. For an overview of Postfix address
16438 manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document.
16439 </p>
16442 This feature is available in Postfix 2.0 and later. The default
16443 value is backwards compatible with Postfix version 1.1.
16444 </p>
16447 If you use this feature with indexed files, run "<b>postmap
16448 /etc/postfix/virtual</b>" after changing the file.
16449 </p>
16452 Examples:
16453 </p>
16455 <pre>
16456 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = dbm:/etc/postfix/virtual
16457 <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = hash:/etc/postfix/virtual
16458 </pre>
16461 </DD>
16463 <DT><b><a name="virtual_alias_recursion_limit">virtual_alias_recursion_limit</a>
16464 (default: 1000)</b></DT><DD>
16467 The maximal nesting depth of virtual alias expansion. Currently
16468 the recursion limit is applied only to the left branch of the
16469 expansion graph, so the depth of the tree can in the worst case
16470 reach the sum of the expansion and recursion limits. This may
16471 change in the future.
16472 </p>
16475 This feature is available in Postfix 2.1 and later.
16476 </p>
16479 </DD>
16481 <DT><b><a name="virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a>
16482 (default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD>
16484 <p> The maximal number of parallel deliveries to the same destination
16485 via the virtual message delivery transport. This limit is enforced
16486 by the queue manager. The message delivery transport name is the
16487 first field in the entry in the <a href="master.5.html">master.cf</a> file. </p>
16490 </DD>
16492 <DT><b><a name="virtual_destination_recipient_limit">virtual_destination_recipient_limit</a>
16493 (default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD>
16495 <p> The maximal number of recipients per message for the virtual
16496 message delivery transport. This limit is enforced by the queue
16497 manager. The message delivery transport name is the first field in
16498 the entry in the <a href="master.5.html">master.cf</a> file. </p>
16500 <p> Setting this parameter to a value of 1 changes the meaning of
16501 <a href="postconf.5.html#virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a> from concurrency per domain
16502 into concurrency per recipient. </p>
16505 </DD>
16507 <DT><b><a name="virtual_gid_maps">virtual_gid_maps</a>
16508 (default: empty)</b></DT><DD>
16511 Lookup tables with the per-recipient group ID for <a href="virtual.8.html">virtual(8)</a> mailbox
16512 delivery.
16513 </p>
16516 In a lookup table, specify a left-hand side of "@domain.tld" to
16517 match any user in the specified domain that does not have a specific
16518 "user@domain.tld" entry.
16519 </p>
16522 When a recipient address has an optional address extension
16523 (user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
16524 the full address first, and when the lookup fails, it looks up the
16525 unextended address (user@domain.tld).
16526 </p>
16529 Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
16530 regular expression substitution of $1 etc. in regular expression
16531 lookup tables, because that would open a security hole.
16532 </p>
16535 Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
16536 silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
16537 it will open the table directly. Before Postfix version 2.2, the
16538 <a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
16539 </p>
16542 </DD>
16544 <DT><b><a name="virtual_mailbox_base">virtual_mailbox_base</a>
16545 (default: empty)</b></DT><DD>
16548 A prefix that the <a href="virtual.8.html">virtual(8)</a> delivery agent prepends to all pathname
16549 results from $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> table lookups. This is a safety
16550 measure to ensure that an out of control map doesn't litter the
16551 file system with mailboxes. While <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> could be
16552 set to "/", this setting isn't recommended.
16553 </p>
16556 Example:
16557 </p>
16559 <pre>
16560 <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> = /var/mail
16561 </pre>
16564 </DD>
16566 <DT><b><a name="virtual_mailbox_domains">virtual_mailbox_domains</a>
16567 (default: $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>)</b></DT><DD>
16569 <p> Postfix is final destination for the specified list of domains;
16570 mail is delivered via the $<a href="postconf.5.html#virtual_transport">virtual_transport</a> mail delivery transport.
16571 By default this is the Postfix <a href="virtual.8.html">virtual(8)</a> delivery agent. The SMTP
16572 server validates recipient addresses with $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>
16573 and rejects mail for non-existent recipients. See also the virtual
16574 mailbox domain class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file. </p>
16576 <p> This parameter expects the same syntax as the <a href="postconf.5.html#mydestination">mydestination</a>
16577 configuration parameter. </p>
16580 This feature is available in Postfix 2.0 and later. The default
16581 value is backwards compatible with Postfix version 1.1.
16582 </p>
16585 </DD>
16587 <DT><b><a name="virtual_mailbox_limit">virtual_mailbox_limit</a>
16588 (default: 51200000)</b></DT><DD>
16591 The maximal size in bytes of an individual <a href="virtual.8.html">virtual(8)</a> mailbox or
16592 maildir file, or zero (no limit). </p>
16595 </DD>
16597 <DT><b><a name="virtual_mailbox_lock">virtual_mailbox_lock</a>
16598 (default: see "postconf -d" output)</b></DT><DD>
16601 How to lock a UNIX-style <a href="virtual.8.html">virtual(8)</a> mailbox before attempting
16602 delivery. For a list of available file locking methods, use the
16603 "<b>postconf -l</b>" command.
16604 </p>
16607 This setting is ignored with <b>maildir</b> style delivery, because
16608 such deliveries are safe without application-level locks.
16609 </p>
16612 Note 1: the <b>dotlock</b> method requires that the recipient UID
16613 or GID has write access to the parent directory of the recipient's
16614 mailbox file.
16615 </p>
16618 Note 2: the default setting of this parameter is system dependent.
16619 </p>
16622 </DD>
16624 <DT><b><a name="virtual_mailbox_maps">virtual_mailbox_maps</a>
16625 (default: empty)</b></DT><DD>
16628 Optional lookup tables with all valid addresses in the domains that
16629 match $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
16630 </p>
16633 In a lookup table, specify a left-hand side of "@domain.tld" to
16634 match any user in the specified domain that does not have a specific
16635 "user@domain.tld" entry.
16636 </p>
16639 The <a href="virtual.8.html">virtual(8)</a> delivery agent uses this table to look up the
16640 per-recipient mailbox or maildir pathname. If the lookup result
16641 ends in a slash ("/"), maildir-style delivery is carried out,
16642 otherwise the path is assumed to specify a UNIX-style mailbox file.
16643 Note that $<a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> is unconditionally prepended to
16644 this path.
16645 </p>
16648 When a recipient address has an optional address extension
16649 (user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
16650 the full address first, and when the lookup fails, it looks up the
16651 unextended address (user@domain.tld).
16652 </p>
16655 Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
16656 regular expression substitution of $1 etc. in regular expression
16657 lookup tables, because that would open a security hole.
16658 </p>
16661 Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
16662 silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
16663 it will open the table directly. Before Postfix version 2.2, the
16664 <a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
16665 </p>
16668 </DD>
16670 <DT><b><a name="virtual_maps">virtual_maps</a>
16671 (default: empty)</b></DT><DD>
16673 <p> Optional lookup tables with a) names of domains for which all
16674 addresses are aliased to addresses in other local or remote domains,
16675 and b) addresses that are aliased to addresses in other local or
16676 remote domains. Available before Postfix version 2.0. With Postfix
16677 version 2.0 and later, this is replaced by separate controls: <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a>
16678 and <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>. </p>
16681 </DD>
16683 <DT><b><a name="virtual_minimum_uid">virtual_minimum_uid</a>
16684 (default: 100)</b></DT><DD>
16687 The minimum user ID value that the <a href="virtual.8.html">virtual(8)</a> delivery agent accepts
16688 as a result from $<a href="postconf.5.html#virtual_uid_maps">virtual_uid_maps</a> table lookup. Returned
16689 values less than this will be rejected, and the message will be
16690 deferred.
16691 </p>
16694 </DD>
16696 <DT><b><a name="virtual_transport">virtual_transport</a>
16697 (default: virtual)</b></DT><DD>
16700 The default mail delivery transport and next-hop destination for
16701 final delivery to domains listed with $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>.
16702 This information can be overruled with the <a href="transport.5.html">transport(5)</a> table.
16703 </p>
16706 Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i>
16707 is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>.
16708 The <i>:nexthop</i> destination is optional; its syntax is documented
16709 in the manual page of the corresponding delivery agent.
16710 </p>
16713 This feature is available in Postfix 2.0 and later.
16714 </p>
16717 </DD>
16719 <DT><b><a name="virtual_uid_maps">virtual_uid_maps</a>
16720 (default: empty)</b></DT><DD>
16723 Lookup tables with the per-recipient user ID that the <a href="virtual.8.html">virtual(8)</a>
16724 delivery agent uses while writing to the recipient's mailbox.
16725 </p>
16728 In a lookup table, specify a left-hand side of "@domain.tld"
16729 to match any user in the specified domain that does not have a
16730 specific "user@domain.tld" entry.
16731 </p>
16734 When a recipient address has an optional address extension
16735 (user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up
16736 the full address first, and when the lookup fails, it looks up the
16737 unextended address (user@domain.tld).
16738 </p>
16741 Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows
16742 regular expression substitution of $1 etc. in regular expression
16743 lookup tables, because that would open a security hole.
16744 </p>
16747 Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will
16748 silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead
16749 it will open the table directly. Before Postfix version 2.2, the
16750 <a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error.
16751 </p>
16754 </DD>
16756 </dl>
16758 </body>
16760 </html>