1<!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN" 2 "http://www.w3.org/TR/html4/loose.dtd"> 3 4<html> 5 6<head> 7 8<title>Postfix Configuration Parameters </title> 9 10<meta http-equiv="Content-Type" content="text/html; charset=us-ascii"> 11 12</head> 13 14<body> 15 16<h1><img src="postfix-logo.jpg" width="203" height="98" alt="">Postfix Configuration Parameters </h1> 17 18<hr> 19 20<h2> Postfix main.cf file format </h2> 21 22<p> The Postfix main.cf configuration file specifies a very small 23subset of all the parameters that control the operation of the 24Postfix mail system. Parameters not explicitly specified are left 25at their default values. </p> 26 27<p> The general format of the main.cf file is as follows: </p> 28 29<ul> 30 31<li> <p> Each logical line is in the form "parameter = value". 32Whitespace around the "=" is ignored, as is whitespace at the end 33of a logical line. </p> 34 35<li> <p> Empty lines and whitespace-only lines are ignored, as are 36lines whose first non-whitespace character is a `#'. </p> 37 38<li> <p> A logical line starts with non-whitespace text. A line 39that starts with whitespace continues a logical line. </p> 40 41<li> <p> A parameter value may refer to other parameters. </p> 42 43<ul> 44 45<li> <p> The expressions "$name" and "${name}" are recursively 46replaced with the value of the named parameter, except where noted. 47An undefined parameter value is replaced with the empty value. </p> 48 49<li> <p> The expressions "${name?value}" and "${name?{value}}" are 50replaced with "value" when "$name" is non-empty. These forms are 51supported with Postfix versions ≥ 2.2 and ≥ 3.0, respectively. 52</p> 53 54<li> <p> The expressions "${name:value}" and "${name?{value}}" are 55replaced with "value" when "$name" is empty. These forms are supported 56with Postfix versions ≥ 2.2 and ≥ 3.0, respectively. </p> 57 58<li> <p> The expression "${name?{value1}:{value2}}" is replaced 59with "value1" when "$name" is non-empty, and with "value2" when 60"$name" is empty. The "{}" is required for "value1", optional for 61"value2". This form is supported with Postfix versions ≥ 3.0. 62</p> 63 64<li> <p> The first item inside "${...}" may be a logical expression 65of the form: "{value3} == {value4}". Besides the "==" (equality) 66operator Postfix supports "!=" (inequality), "<", "≤", "≥", 67and ">". The comparison is numerical when both operands are all 68digits, otherwise the comparison is lexicographical. These forms 69are supported with Postfix versions ≥ 3.0. </p> 70 71<li> <p> Each "value" is subject to recursive named parameter and 72logical expression evaluation, except where noted. </p> 73 74<li> <p> Whitespace before or after each "{value}" is ignored. </p> 75 76<li> <p> Specify "$$" to produce a single "$" character. </p> 77 78<li> <p> The legacy form "$(...)" is equivalent to the preferred 79form "${...}". </p> 80 81</ul> 82 83<li> <p> When the same parameter is defined multiple times, only 84the last instance is remembered. </p> 85 86<li> <p> Otherwise, the order of main.cf parameter definitions does 87not matter. </p> 88 89</ul> 90 91<p> The remainder of this document is a description of all Postfix 92configuration parameters. Default values are shown after the 93parameter name in parentheses, and can be looked up with the 94"<b>postconf -d</b>" command. </p> 95 96<p> Note: this is not an invitation to make changes to Postfix 97configuration parameters. Unnecessary changes are likely to impair 98the operation of the mail system. </p> 99 100<dl> 101<DT><b><a name="2bounce_notice_recipient">2bounce_notice_recipient</a> 102(default: postmaster)</b></DT><DD> 103 104<p> The recipient of undeliverable mail that cannot be returned to 105the sender. This feature is enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a> 106parameter. </p> 107 108 109</DD> 110 111<DT><b><a name="access_map_defer_code">access_map_defer_code</a> 112(default: 450)</b></DT><DD> 113 114<p> 115The numerical Postfix SMTP server response code for 116an <a href="access.5.html">access(5)</a> map "defer" action, including "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" 117or "<a href="postconf.5.html#defer_if_reject">defer_if_reject</a>". Prior to Postfix 2.6, the response 118is hard-coded as "450". 119</p> 120 121<p> 122Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 123</p> 124 125<p> 126This feature is available in Postfix 2.6 and later. 127</p> 128 129 130</DD> 131 132<DT><b><a name="access_map_reject_code">access_map_reject_code</a> 133(default: 554)</b></DT><DD> 134 135<p> 136The numerical Postfix SMTP server response code for 137an <a href="access.5.html">access(5)</a> map "reject" action. 138</p> 139 140<p> 141Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 142</p> 143 144 145</DD> 146 147<DT><b><a name="address_verify_cache_cleanup_interval">address_verify_cache_cleanup_interval</a> 148(default: 12h)</b></DT><DD> 149 150<p> The amount of time between <a href="verify.8.html">verify(8)</a> address verification 151database cleanup runs. This feature requires that the database 152supports the "delete" and "sequence" operators. Specify a zero 153interval to disable database cleanup. </p> 154 155<p> After each database cleanup run, the <a href="verify.8.html">verify(8)</a> daemon logs the 156number of entries that were retained and dropped. A cleanup run is 157logged as "partial" when the daemon terminates early after "<b>postfix 158reload</b>", "<b>postfix stop</b>", or no requests for $<a href="postconf.5.html#max_idle">max_idle</a> 159seconds. </p> 160 161<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 162(weeks). </p> 163 164<p> This feature is available in Postfix 2.7. </p> 165 166 167</DD> 168 169<DT><b><a name="address_verify_default_transport">address_verify_default_transport</a> 170(default: $<a href="postconf.5.html#default_transport">default_transport</a>)</b></DT><DD> 171 172<p> 173Overrides the <a href="postconf.5.html#default_transport">default_transport</a> parameter setting for address 174verification probes. 175</p> 176 177<p> 178This feature is available in Postfix 2.1 and later. 179</p> 180 181 182</DD> 183 184<DT><b><a name="address_verify_local_transport">address_verify_local_transport</a> 185(default: $<a href="postconf.5.html#local_transport">local_transport</a>)</b></DT><DD> 186 187<p> 188Overrides the <a href="postconf.5.html#local_transport">local_transport</a> parameter setting for address 189verification probes. 190</p> 191 192<p> 193This feature is available in Postfix 2.1 and later. 194</p> 195 196 197</DD> 198 199<DT><b><a name="address_verify_map">address_verify_map</a> 200(default: see "postconf -d" output)</b></DT><DD> 201 202<p> 203Lookup table for persistent address verification status 204storage. The table is maintained by the <a href="verify.8.html">verify(8)</a> service, and 205is opened before the process releases privileges. 206</p> 207 208<p> 209The lookup table is persistent by default (Postfix 2.7 and later). 210Specify an empty table name to keep the information in volatile 211memory which is lost after "<b>postfix reload</b>" or "<b>postfix 212stop</b>". This is the default with Postfix version 2.6 and earlier. 213</p> 214 215<p> 216Specify a location in a file system that will not fill up. If the 217database becomes corrupted, the world comes to an end. To recover 218delete (NOT: truncate) the file and do "<b>postfix reload</b>". 219</p> 220 221<p> Postfix daemon processes do not use root privileges when opening 222this file (Postfix 2.5 and later). The file must therefore be 223stored under a Postfix-owned directory such as the <a href="postconf.5.html#data_directory">data_directory</a>. 224As a migration aid, an attempt to open the file under a non-Postfix 225directory is redirected to the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>, and a 226warning is logged. </p> 227 228<p> 229Examples: 230</p> 231 232<pre> 233<a href="postconf.5.html#address_verify_map">address_verify_map</a> = <a href="DATABASE_README.html#types">hash</a>:/var/db/postfix/verify 234<a href="postconf.5.html#address_verify_map">address_verify_map</a> = <a href="DATABASE_README.html#types">btree</a>:/var/db/postfix/verify 235</pre> 236 237<p> 238This feature is available in Postfix 2.1 and later. 239</p> 240 241 242</DD> 243 244<DT><b><a name="address_verify_negative_cache">address_verify_negative_cache</a> 245(default: yes)</b></DT><DD> 246 247<p> 248Enable caching of failed address verification probe results. When 249this feature is enabled, the cache may pollute quickly with garbage. 250When this feature is disabled, Postfix will generate an address 251probe for every lookup. 252</p> 253 254<p> 255This feature is available in Postfix 2.1 and later. 256</p> 257 258 259</DD> 260 261<DT><b><a name="address_verify_negative_expire_time">address_verify_negative_expire_time</a> 262(default: 3d)</b></DT><DD> 263 264<p> 265The time after which a failed probe expires from the address 266verification cache. 267</p> 268 269<p> 270Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 271</p> 272 273<p> 274This feature is available in Postfix 2.1 and later. 275</p> 276 277 278</DD> 279 280<DT><b><a name="address_verify_negative_refresh_time">address_verify_negative_refresh_time</a> 281(default: 3h)</b></DT><DD> 282 283<p> 284The time after which a failed address verification probe needs to 285be refreshed. 286</p> 287 288<p> 289Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 290</p> 291 292<p> 293This feature is available in Postfix 2.1 and later. 294</p> 295 296 297</DD> 298 299<DT><b><a name="address_verify_pending_request_limit">address_verify_pending_request_limit</a> 300(default: see "postconf -d" output)</b></DT><DD> 301 302<p> A safety limit that prevents address verification requests from 303overwhelming the Postfix queue. By default, the number of pending 304requests is limited to 1/4 of the <a href="QSHAPE_README.html#active_queue">active queue</a> maximum size 305(<a href="postconf.5.html#qmgr_message_active_limit">qmgr_message_active_limit</a>). The queue manager enforces the limit 306by tempfailing requests that exceed the limit. This affects only 307unknown addresses and inactive addresses that have expired, because 308the <a href="verify.8.html">verify(8)</a> daemon automatically refreshes an active address 309before it expires. </p> 310 311<p> This feature is available in Postfix 3.1 and later. </p> 312 313 314</DD> 315 316<DT><b><a name="address_verify_poll_count">address_verify_poll_count</a> 317(default: normal: 3, overload: 1)</b></DT><DD> 318 319<p> 320How many times to query the <a href="verify.8.html">verify(8)</a> service for the completion 321of an address verification request in progress. 322</p> 323 324<p> By default, the Postfix SMTP server polls the <a href="verify.8.html">verify(8)</a> service 325up to three times under non-overload conditions, and only once when 326under overload. With Postfix version 2.5 and earlier, the SMTP 327server always polls the <a href="verify.8.html">verify(8)</a> service up to three times by 328default. </p> 329 330<p> 331Specify 1 to implement a crude form of greylisting, that is, always 332defer the first delivery request for a new address. 333</p> 334 335<p> 336Examples: 337</p> 338 339<pre> 340# Postfix ≤ 2.6 default 341<a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> = 3 342# Poor man's greylisting 343<a href="postconf.5.html#address_verify_poll_count">address_verify_poll_count</a> = 1 344</pre> 345 346<p> 347This feature is available in Postfix 2.1 and later. 348</p> 349 350 351</DD> 352 353<DT><b><a name="address_verify_poll_delay">address_verify_poll_delay</a> 354(default: 3s)</b></DT><DD> 355 356<p> 357The delay between queries for the completion of an address 358verification request in progress. 359</p> 360 361<p> 362The default polling delay is 3 seconds. 363</p> 364 365<p> 366Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 367</p> 368 369<p> 370This feature is available in Postfix 2.1 and later. 371</p> 372 373 374</DD> 375 376<DT><b><a name="address_verify_positive_expire_time">address_verify_positive_expire_time</a> 377(default: 31d)</b></DT><DD> 378 379<p> 380The time after which a successful probe expires from the address 381verification cache. 382</p> 383 384<p> 385Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 386</p> 387 388<p> 389This feature is available in Postfix 2.1 and later. 390</p> 391 392 393</DD> 394 395<DT><b><a name="address_verify_positive_refresh_time">address_verify_positive_refresh_time</a> 396(default: 7d)</b></DT><DD> 397 398<p> 399The time after which a successful address verification probe needs 400to be refreshed. The address verification status is not updated 401when the probe fails (optimistic caching). 402</p> 403 404<p> 405Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 406</p> 407 408<p> 409This feature is available in Postfix 2.1 and later. 410</p> 411 412 413</DD> 414 415<DT><b><a name="address_verify_relay_transport">address_verify_relay_transport</a> 416(default: $<a href="postconf.5.html#relay_transport">relay_transport</a>)</b></DT><DD> 417 418<p> 419Overrides the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter setting for address 420verification probes. 421</p> 422 423<p> 424This feature is available in Postfix 2.1 and later. 425</p> 426 427 428</DD> 429 430<DT><b><a name="address_verify_relayhost">address_verify_relayhost</a> 431(default: $<a href="postconf.5.html#relayhost">relayhost</a>)</b></DT><DD> 432 433<p> 434Overrides the <a href="postconf.5.html#relayhost">relayhost</a> parameter setting for address verification 435probes. This information can be overruled with the <a href="transport.5.html">transport(5)</a> table. 436</p> 437 438<p> 439This feature is available in Postfix 2.1 and later. 440</p> 441 442 443</DD> 444 445<DT><b><a name="address_verify_sender">address_verify_sender</a> 446(default: $<a href="postconf.5.html#double_bounce_sender">double_bounce_sender</a>)</b></DT><DD> 447 448<p> The sender address to use in address verification probes; prior 449to Postfix 2.5 the default was "postmaster". To 450avoid problems with address probes that are sent in response to 451address probes, the Postfix SMTP server excludes the probe sender 452address from all SMTPD access blocks. </p> 453 454<p> 455Specify an empty value (<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> =) or <> if you want 456to use the null sender address. Beware, some sites reject mail from 457<>, even though RFCs require that such addresses be accepted. 458</p> 459 460<p> 461Examples: 462</p> 463 464<pre> 465<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = <> 466<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> = postmaster@my.domain 467</pre> 468 469<p> 470This feature is available in Postfix 2.1 and later. 471</p> 472 473 474</DD> 475 476<DT><b><a name="address_verify_sender_dependent_default_transport_maps">address_verify_sender_dependent_default_transport_maps</a> 477(default: $<a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a>)</b></DT><DD> 478 479<p> Overrides the <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> parameter 480setting for address verification probes. </p> 481 482<p> This feature is available in Postfix 2.7 and later. </p> 483 484 485</DD> 486 487<DT><b><a name="address_verify_sender_dependent_relayhost_maps">address_verify_sender_dependent_relayhost_maps</a> 488(default: $<a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a>)</b></DT><DD> 489 490<p> 491Overrides the <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> parameter setting for address 492verification probes. 493</p> 494 495<p> 496This feature is available in Postfix 2.3 and later. 497</p> 498 499 500</DD> 501 502<DT><b><a name="address_verify_sender_ttl">address_verify_sender_ttl</a> 503(default: 0s)</b></DT><DD> 504 505<p> The time between changes in the time-dependent portion of address 506verification probe sender addresses. The time-dependent portion is 507appended to the localpart of the address specified with the 508<a href="postconf.5.html#address_verify_sender">address_verify_sender</a> parameter. This feature is ignored when the 509probe sender addresses is the null sender, i.e. the <a href="postconf.5.html#address_verify_sender">address_verify_sender</a> 510value is empty or <>. </p> 511 512<p> Historically, the probe sender address was fixed. This has 513caused such addresses to end up on spammer mailing lists, and has 514resulted in wasted network and processing resources. </p> 515 516<p> To enable time-dependent probe sender addresses, specify a 517non-zero time value (an integral value plus an optional one-letter 518suffix that specifies the time unit). Specify a value of at least 519several hours, to avoid problems with senders that use greylisting. 520Avoid nice TTL values, to make the result less predictable. Time 521units are: s (seconds), m (minutes), h (hours), d (days), w (weeks). 522</p> 523 524<p> This feature is available in Postfix 2.9 and later. </p> 525 526 527</DD> 528 529<DT><b><a name="address_verify_service_name">address_verify_service_name</a> 530(default: verify)</b></DT><DD> 531 532<p> 533The name of the <a href="verify.8.html">verify(8)</a> address verification service. This service 534maintains the status of sender and/or recipient address verification 535probes, and generates probes on request by other Postfix processes. 536</p> 537 538 539</DD> 540 541<DT><b><a name="address_verify_transport_maps">address_verify_transport_maps</a> 542(default: $<a href="postconf.5.html#transport_maps">transport_maps</a>)</b></DT><DD> 543 544<p> 545Overrides the <a href="postconf.5.html#transport_maps">transport_maps</a> parameter setting for address verification 546probes. 547</p> 548 549<p> 550This feature is available in Postfix 2.1 and later. 551</p> 552 553 554</DD> 555 556<DT><b><a name="address_verify_virtual_transport">address_verify_virtual_transport</a> 557(default: $<a href="postconf.5.html#virtual_transport">virtual_transport</a>)</b></DT><DD> 558 559<p> 560Overrides the <a href="postconf.5.html#virtual_transport">virtual_transport</a> parameter setting for address 561verification probes. 562</p> 563 564<p> 565This feature is available in Postfix 2.1 and later. 566</p> 567 568 569</DD> 570 571<DT><b><a name="alias_database">alias_database</a> 572(default: see "postconf -d" output)</b></DT><DD> 573 574<p> 575The alias databases for <a href="local.8.html">local(8)</a> delivery that are updated with 576"<b>newaliases</b>" or with "<b>sendmail -bi</b>". 577</p> 578 579<p> 580This is a separate configuration parameter because not all the 581tables specified with $<a href="postconf.5.html#alias_maps">alias_maps</a> have to be local files. 582</p> 583 584<p> 585Examples: 586</p> 587 588<pre> 589<a href="postconf.5.html#alias_database">alias_database</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/aliases 590<a href="postconf.5.html#alias_database">alias_database</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/mail/aliases 591</pre> 592 593 594</DD> 595 596<DT><b><a name="alias_maps">alias_maps</a> 597(default: see "postconf -d" output)</b></DT><DD> 598 599<p> 600The alias databases that are used for <a href="local.8.html">local(8)</a> delivery. See 601<a href="aliases.5.html">aliases(5)</a> for syntax details. 602Specify zero or more "type:name" lookup tables, separated by 603whitespace or comma. Tables will be searched in the specified order 604until a match is found. 605Note: these lookups are recursive. 606</p> 607 608<p> 609The default list is system dependent. On systems with NIS, the 610default is to search the local alias database, then the NIS alias 611database. 612</p> 613 614<p> 615If you change the alias database, run "<b>postalias /etc/aliases</b>" 616(or wherever your system stores the mail alias file), or simply 617run "<b>newaliases</b>" to build the necessary DBM or DB file. 618</p> 619 620<p> 621The <a href="local.8.html">local(8)</a> delivery agent disallows regular expression substitution 622of $1 etc. in <a href="postconf.5.html#alias_maps">alias_maps</a>, because that would open a security hole. 623</p> 624 625<p> 626The <a href="local.8.html">local(8)</a> delivery agent will silently ignore requests to use 627the <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 628table directly. Before Postfix version 2.2, the <a href="local.8.html">local(8)</a> delivery 629agent will terminate with a fatal error. 630</p> 631 632<p> 633Examples: 634</p> 635 636<pre> 637<a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/aliases, nis:mail.aliases 638<a href="postconf.5.html#alias_maps">alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/aliases 639</pre> 640 641 642</DD> 643 644<DT><b><a name="allow_mail_to_commands">allow_mail_to_commands</a> 645(default: alias, forward)</b></DT><DD> 646 647<p> 648Restrict <a href="local.8.html">local(8)</a> mail delivery to external commands. The default 649is to disallow delivery to "|command" in :include: files (see 650<a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology). 651</p> 652 653<p> 654Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>, 655in order to allow commands in <a href="aliases.5.html">aliases(5)</a>, .forward files or in 656:include: files, respectively. 657</p> 658 659<p> 660Example: 661</p> 662 663<pre> 664<a href="postconf.5.html#allow_mail_to_commands">allow_mail_to_commands</a> = alias,forward,include 665</pre> 666 667 668</DD> 669 670<DT><b><a name="allow_mail_to_files">allow_mail_to_files</a> 671(default: alias, forward)</b></DT><DD> 672 673<p> 674Restrict <a href="local.8.html">local(8)</a> mail delivery to external files. The default is 675to disallow "/file/name" destinations in :include: files (see 676<a href="aliases.5.html">aliases(5)</a> for the text that defines this terminology). 677</p> 678 679<p> 680Specify zero or more of: <b>alias</b>, <b>forward</b> or <b>include</b>, 681in order to allow "/file/name" destinations in <a href="aliases.5.html">aliases(5)</a>, .forward 682files and in :include: files, respectively. 683</p> 684 685<p> 686Example: 687</p> 688 689<pre> 690<a href="postconf.5.html#allow_mail_to_files">allow_mail_to_files</a> = alias,forward,include 691</pre> 692 693 694</DD> 695 696<DT><b><a name="allow_min_user">allow_min_user</a> 697(default: no)</b></DT><DD> 698 699<p> 700Allow a sender or recipient address to have `-' as the first 701character. By 702default, this is not allowed, to avoid accidents with software that 703passes email addresses via the command line. Such software 704would not be able to distinguish a malicious address from a 705bona fide command-line option. Although this can be prevented by 706inserting a "--" option terminator into the command line, this is 707difficult to enforce consistently and globally. </p> 708 709<p> As of Postfix version 2.5, this feature is implemented by 710<a href="trivial-rewrite.8.html">trivial-rewrite(8)</a>. With earlier versions this feature was implemented 711by <a href="qmgr.8.html">qmgr(8)</a> and was limited to recipient addresses only. </p> 712 713 714</DD> 715 716<DT><b><a name="allow_percent_hack">allow_percent_hack</a> 717(default: yes)</b></DT><DD> 718 719<p> 720Enable the rewriting of the form "user%domain" to "user@domain". 721This is enabled by default. 722</p> 723 724<p> Note: as of Postfix version 2.2, message header address rewriting 725happens only when one of the following conditions is true: </p> 726 727<ul> 728 729<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 730 731<li> The message is received from a network client that matches 732$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 733 734<li> The message is received from the network, and the 735<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 736 737</ul> 738 739<p> To get the behavior before Postfix version 2.2, specify 740"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 741 742<p> 743Example: 744</p> 745 746<pre> 747<a href="postconf.5.html#allow_percent_hack">allow_percent_hack</a> = no 748</pre> 749 750 751</DD> 752 753<DT><b><a name="allow_untrusted_routing">allow_untrusted_routing</a> 754(default: no)</b></DT><DD> 755 756<p> 757Forward mail with sender-specified routing (user[@%!]remote[@%!]site) 758from untrusted clients to destinations matching $<a href="postconf.5.html#relay_domains">relay_domains</a>. 759</p> 760 761<p> 762By default, this feature is turned off. This closes a nasty open 763relay loophole where a backup MX host can be tricked into forwarding 764junk mail to a primary MX host which then spams it out to the world. 765</p> 766 767<p> 768This parameter also controls if non-local addresses with sender-specified 769routing can match Postfix access tables. By default, such addresses 770cannot match Postfix access tables, because the address is ambiguous. 771</p> 772 773 774</DD> 775 776<DT><b><a name="alternate_config_directories">alternate_config_directories</a> 777(default: empty)</b></DT><DD> 778 779<p> 780A list of non-default Postfix configuration directories that may 781be specified with "-c <a href="postconf.5.html#config_directory">config_directory</a>" on the command line, or 782via the MAIL_CONFIG environment parameter. 783</p> 784 785<p> 786This list must be specified in the default Postfix configuration 787directory, and is used by set-gid Postfix commands such as <a href="postqueue.1.html">postqueue(1)</a> 788and <a href="postdrop.1.html">postdrop(1)</a>. 789</p> 790 791 792</DD> 793 794<DT><b><a name="always_add_missing_headers">always_add_missing_headers</a> 795(default: no)</b></DT><DD> 796 797<p> Always add (Resent-) From:, To:, Date: or Message-ID: headers 798when not present. Postfix 2.6 and later add these headers only 799when clients match the <a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter 800setting. Earlier Postfix versions always add these headers; this 801may break DKIM signatures that cover non-existent headers. 802The <a href="postconf.5.html#undisclosed_recipients_header">undisclosed_recipients_header</a> parameter setting determines 803whether a To: header will be added. </p> 804 805 806</DD> 807 808<DT><b><a name="always_bcc">always_bcc</a> 809(default: empty)</b></DT><DD> 810 811<p> 812Optional address that receives a "blind carbon copy" of each message 813that is received by the Postfix mail system. 814</p> 815 816<p> 817Note: with Postfix 2.3 and later the BCC address is added as if it 818was specified with NOTIFY=NONE. The sender will not be notified 819when the BCC address is undeliverable, as long as all down-stream 820software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>. 821</p> 822 823<p> 824Note: with Postfix 2.2 and earlier the sender will be notified 825when the BCC address is undeliverable. 826</p> 827 828<p> Note: automatic BCC recipients are produced only for new mail. 829To avoid mailer loops, automatic BCC recipients are not generated 830after Postfix forwards mail internally, or after Postfix generates 831mail itself. </p> 832 833 834</DD> 835 836<DT><b><a name="anvil_rate_time_unit">anvil_rate_time_unit</a> 837(default: 60s)</b></DT><DD> 838 839<p> 840The time unit over which client connection rates and other rates 841are calculated. 842</p> 843 844<p> 845This feature is implemented by the <a href="anvil.8.html">anvil(8)</a> service which is available 846in Postfix version 2.2 and later. 847</p> 848 849<p> 850The default interval is relatively short. Because of the high 851frequency of updates, the <a href="anvil.8.html">anvil(8)</a> server uses volatile memory 852only. Thus, information is lost whenever the process terminates. 853</p> 854 855<p> 856Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 857The default time unit is s (seconds). 858</p> 859 860 861</DD> 862 863<DT><b><a name="anvil_status_update_time">anvil_status_update_time</a> 864(default: 600s)</b></DT><DD> 865 866<p> 867How frequently the <a href="anvil.8.html">anvil(8)</a> connection and rate limiting server 868logs peak usage information. 869</p> 870 871<p> 872This feature is available in Postfix 2.2 and later. 873</p> 874 875<p> 876Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 877The default time unit is s (seconds). 878</p> 879 880 881</DD> 882 883<DT><b><a name="append_at_myorigin">append_at_myorigin</a> 884(default: yes)</b></DT><DD> 885 886<p> 887With locally submitted mail, append the string "@$<a href="postconf.5.html#myorigin">myorigin</a>" to mail 888addresses without domain information. With remotely submitted mail, 889append the string "@$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>" instead. 890</p> 891 892<p> 893Note 1: this feature is enabled by default and must not be turned off. 894Postfix does not support domain-less addresses. 895</p> 896 897<p> Note 2: with Postfix version 2.2, message header address rewriting 898happens only when one of the following conditions is true: </p> 899 900<ul> 901 902<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 903 904<li> The message is received from a network client that matches 905$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 906 907<li> The message is received from the network, and the 908<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 909 910</ul> 911 912<p> To get the behavior before Postfix version 2.2, specify 913"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 914 915 916</DD> 917 918<DT><b><a name="append_dot_mydomain">append_dot_mydomain</a> 919(default: Postfix ≥ 3.0: no, Postfix < 3.0: yes)</b></DT><DD> 920 921<p> 922With locally submitted mail, append the string ".$<a href="postconf.5.html#mydomain">mydomain</a>" to 923addresses that have no ".domain" information. With remotely submitted 924mail, append the string ".$<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a>" 925instead. 926</p> 927 928<p> 929Note 1: this feature is enabled by default. If disabled, users will not be 930able to send mail to "user@partialdomainname" but will have to 931specify full domain names instead. 932</p> 933 934<p> Note 2: with Postfix version 2.2, message header address rewriting 935happens only when one of the following conditions is true: </p> 936 937<ul> 938 939<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 940 941<li> The message is received from a network client that matches 942$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 943 944<li> The message is received from the network, and the 945<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 946 947</ul> 948 949<p> To get the behavior before Postfix version 2.2, specify 950"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 951 952 953</DD> 954 955<DT><b><a name="application_event_drain_time">application_event_drain_time</a> 956(default: 100s)</b></DT><DD> 957 958<p> 959How long the <a href="postkick.1.html">postkick(1)</a> command waits for a request to enter the 960Postfix daemon process input buffer before giving up. 961</p> 962 963<p> 964Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 965The default time unit is s (seconds). 966</p> 967 968<p> 969This feature is available in Postfix 2.1 and later. 970</p> 971 972 973</DD> 974 975<DT><b><a name="authorized_flush_users">authorized_flush_users</a> 976(default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD> 977 978<p> 979List of users who are authorized to flush the queue. 980</p> 981 982<p> 983By default, all users are allowed to flush the queue. Access is 984always granted if the invoking user is the super-user or the 985$<a href="postconf.5.html#mail_owner">mail_owner</a> user. Otherwise, the real UID of the process is looked 986up in the system password file, and access is granted only if the 987corresponding login name is on the access list. The username 988"unknown" is used for processes whose real UID is not found in the 989password file. </p> 990 991<p> 992Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns, 993separated by commas and/or whitespace. The list is matched left to 994right, and the search stops on the first match. A "/file/name" 995pattern is replaced 996by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name 997matches a lookup key (the lookup result is ignored). Continue long 998lines by starting the next line with whitespace. Specify "!pattern" 999to exclude a name from the list. The form "!/file/name" is supported 1000only in Postfix version 2.4 and later. </p> 1001 1002<p> 1003This feature is available in Postfix 2.2 and later. 1004</p> 1005 1006 1007</DD> 1008 1009<DT><b><a name="authorized_mailq_users">authorized_mailq_users</a> 1010(default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD> 1011 1012<p> 1013List of users who are authorized to view the queue. 1014</p> 1015 1016<p> 1017By default, all users are allowed to view the queue. Access is 1018always granted if the invoking user is the super-user or the 1019$<a href="postconf.5.html#mail_owner">mail_owner</a> user. Otherwise, the real UID of the process is looked 1020up in the system password file, and access is granted only if the 1021corresponding login name is on the access list. The username 1022"unknown" is used for processes whose real UID is not found in the 1023password file. </p> 1024 1025<p> 1026Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns, 1027separated by commas and/or whitespace. The list is matched left to 1028right, and the search stops on the first match. A "/file/name" 1029pattern is replaced 1030by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name 1031matches a lookup key (the lookup result is ignored). Continue long 1032lines by starting the next line with whitespace. Specify "!pattern" 1033to exclude a user name from the list. The form "!/file/name" is 1034supported only in Postfix version 2.4 and later. </p> 1035 1036<p> 1037This feature is available in Postfix 2.2 and later. 1038</p> 1039 1040 1041</DD> 1042 1043<DT><b><a name="authorized_submit_users">authorized_submit_users</a> 1044(default: <a href="DATABASE_README.html#types">static</a>:anyone)</b></DT><DD> 1045 1046<p> 1047List of users who are authorized to submit mail with the <a href="sendmail.1.html">sendmail(1)</a> 1048command (and with the privileged <a href="postdrop.1.html">postdrop(1)</a> helper command). 1049</p> 1050 1051<p> 1052By default, all users are allowed to submit mail. Otherwise, the 1053real UID of the process is looked up in the system password file, 1054and access is granted only if the corresponding login name is on 1055the access list. The username "unknown" is used for processes 1056whose real UID is not found in the password file. To deny mail 1057submission access to all users specify an empty list. </p> 1058 1059<p> 1060Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns, 1061separated by commas and/or whitespace. The list is matched left to right, 1062and the search stops on the first match. A "/file/name" pattern is 1063replaced by its contents; 1064a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name matches a lookup key 1065(the lookup result is ignored). Continue long lines by starting the 1066next line with whitespace. Specify "!pattern" to exclude a user 1067name from the list. The form "!/file/name" is supported only in 1068Postfix version 2.4 and later. </p> 1069 1070<p> 1071Example: 1072</p> 1073 1074<pre> 1075<a href="postconf.5.html#authorized_submit_users">authorized_submit_users</a> = !www, <a href="DATABASE_README.html#types">static</a>:all 1076</pre> 1077 1078<p> 1079This feature is available in Postfix 2.2 and later. 1080</p> 1081 1082 1083</DD> 1084 1085<DT><b><a name="authorized_verp_clients">authorized_verp_clients</a> 1086(default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD> 1087 1088<p> What remote SMTP clients are allowed to specify the XVERP command. 1089This command requests that mail be delivered one recipient at a 1090time with a per recipient return address. </p> 1091 1092<p> By default, only trusted clients are allowed to specify XVERP. 1093</p> 1094 1095<p> This parameter was introduced with Postfix version 1.1. Postfix 1096version 2.1 renamed this parameter to <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a> 1097and changed the default to none. </p> 1098 1099<p> Specify a list of network/netmask patterns, separated by commas 1100and/or whitespace. The mask specifies the number of bits in the 1101network part of a host address. You can also specify hostnames or 1102.domain names (the initial dot causes the domain to match any name 1103below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" 1104pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table 1105is matched when a table entry matches a lookup string (the lookup 1106result is ignored). Continue long lines by starting the next line 1107with whitespace. Specify "!pattern" to exclude an address or network 1108block from the list. The form "!/file/name" is supported only in 1109Postfix version 2.4 and later. </p> 1110 1111<p> Note: IP version 6 address information must be specified inside 1112<tt>[]</tt> in the <a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a> value, and in files 1113specified with "/file/name". IP version 6 addresses contain the 1114":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 1115pattern. </p> 1116 1117 1118</DD> 1119 1120<DT><b><a name="backwards_bounce_logfile_compatibility">backwards_bounce_logfile_compatibility</a> 1121(default: yes)</b></DT><DD> 1122 1123<p> 1124Produce additional <a href="bounce.8.html">bounce(8)</a> logfile records that can be read by 1125Postfix versions before 2.0. The current and more extensible "name = 1126value" format is needed in order to implement more sophisticated 1127functionality. 1128</p> 1129 1130<p> 1131This feature is available in Postfix 2.1 and later. 1132</p> 1133 1134 1135</DD> 1136 1137<DT><b><a name="berkeley_db_create_buffer_size">berkeley_db_create_buffer_size</a> 1138(default: 16777216)</b></DT><DD> 1139 1140<p> 1141The per-table I/O buffer size for programs that create Berkeley DB 1142hash or btree tables. Specify a byte count. 1143</p> 1144 1145<p> 1146This feature is available in Postfix 2.0 and later. 1147</p> 1148 1149 1150</DD> 1151 1152<DT><b><a name="berkeley_db_read_buffer_size">berkeley_db_read_buffer_size</a> 1153(default: 131072)</b></DT><DD> 1154 1155<p> 1156The per-table I/O buffer size for programs that read Berkeley DB 1157hash or btree tables. Specify a byte count. 1158</p> 1159 1160<p> 1161This feature is available in Postfix 2.0 and later. 1162</p> 1163 1164 1165</DD> 1166 1167<DT><b><a name="best_mx_transport">best_mx_transport</a> 1168(default: empty)</b></DT><DD> 1169 1170<p> 1171Where the Postfix SMTP client should deliver mail when it detects 1172a "mail loops back to myself" error condition. This happens when 1173the local MTA is the best SMTP mail exchanger for a destination 1174not 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>, 1175$<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, 1176the Postfix SMTP client returns such mail as undeliverable. 1177</p> 1178 1179<p> 1180Specify, for example, "<a href="postconf.5.html#best_mx_transport">best_mx_transport</a> = local" to pass the mail 1181from the Postfix SMTP client to the <a href="local.8.html">local(8)</a> delivery agent. You 1182can specify 1183any message delivery "transport" or "transport:nexthop" that is 1184defined in the <a href="master.5.html">master.cf</a> file. See the <a href="transport.5.html">transport(5)</a> manual page 1185for the syntax and meaning of "transport" or "transport:nexthop". 1186</p> 1187 1188<p> 1189However, this feature is expensive because it ties up a Postfix 1190SMTP client process while the <a href="local.8.html">local(8)</a> delivery agent is doing its 1191work. It is more efficient (for Postfix) to list all <a href="VIRTUAL_README.html#canonical">hosted domains</a> 1192in a table or database. 1193</p> 1194 1195 1196</DD> 1197 1198<DT><b><a name="biff">biff</a> 1199(default: yes)</b></DT><DD> 1200 1201<p> 1202Whether or not to use the local <a href="postconf.5.html#biff">biff</a> service. This service sends 1203"new mail" notifications to users who have requested new mail 1204notification with the UNIX command "<a href="postconf.5.html#biff">biff</a> y". 1205</p> 1206 1207<p> 1208For compatibility reasons this feature is on by default. On systems 1209with lots of interactive users, the <a href="postconf.5.html#biff">biff</a> service can be a performance 1210drain. Specify "<a href="postconf.5.html#biff">biff</a> = no" in <a href="postconf.5.html">main.cf</a> to disable. 1211</p> 1212 1213 1214</DD> 1215 1216<DT><b><a name="body_checks">body_checks</a> 1217(default: empty)</b></DT><DD> 1218 1219<p> Optional lookup tables for content inspection as specified in 1220the <a href="header_checks.5.html">body_checks(5)</a> manual page. </p> 1221 1222<p> Note: with Postfix versions before 2.0, these rules inspect 1223all content after the primary message headers. </p> 1224 1225 1226</DD> 1227 1228<DT><b><a name="body_checks_size_limit">body_checks_size_limit</a> 1229(default: 51200)</b></DT><DD> 1230 1231<p> 1232How much text in a message body segment (or attachment, if you 1233prefer to use that term) is subjected to <a href="postconf.5.html#body_checks">body_checks</a> inspection. 1234The amount of text is limited to avoid scanning huge attachments. 1235</p> 1236 1237<p> 1238This feature is available in Postfix 2.0 and later. 1239</p> 1240 1241 1242</DD> 1243 1244<DT><b><a name="bounce_notice_recipient">bounce_notice_recipient</a> 1245(default: postmaster)</b></DT><DD> 1246 1247<p> 1248The recipient of postmaster notifications with the message headers 1249of mail that Postfix did not deliver and of SMTP conversation 1250transcripts of mail that Postfix did not receive. This feature is 1251enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a> parameter. </p> 1252 1253 1254</DD> 1255 1256<DT><b><a name="bounce_queue_lifetime">bounce_queue_lifetime</a> 1257(default: 5d)</b></DT><DD> 1258 1259<p> 1260Consider a bounce message as undeliverable, when delivery fails 1261with a temporary error, and the time in the queue has reached the 1262<a href="postconf.5.html#bounce_queue_lifetime">bounce_queue_lifetime</a> limit. By default, this limit is the same 1263as for regular mail. 1264</p> 1265 1266<p> 1267Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 1268The default time unit is d (days). 1269</p> 1270 1271<p> 1272Specify 0 when mail delivery should be tried only once. 1273</p> 1274 1275<p> 1276This feature is available in Postfix 2.1 and later. 1277</p> 1278 1279 1280</DD> 1281 1282<DT><b><a name="bounce_service_name">bounce_service_name</a> 1283(default: bounce)</b></DT><DD> 1284 1285<p> 1286The name of the <a href="bounce.8.html">bounce(8)</a> service. This service maintains a record 1287of failed delivery attempts and generates non-delivery notifications. 1288</p> 1289 1290<p> 1291This feature is available in Postfix 2.0 and later. 1292</p> 1293 1294 1295</DD> 1296 1297<DT><b><a name="bounce_size_limit">bounce_size_limit</a> 1298(default: 50000)</b></DT><DD> 1299 1300<p> The maximal amount of original message text that is sent in a 1301non-delivery notification. Specify a byte count. A message is 1302returned as either message/rfc822 (the complete original) or as 1303text/rfc822-headers (the headers only). With Postfix version 2.4 1304and earlier, a message is always returned as message/rfc822 and is 1305truncated when it exceeds the size limit. 1306</p> 1307 1308<p> Notes: </p> 1309 1310<ul> 1311 1312<li> <p> If you increase this limit, then you should increase the 1313<a href="postconf.5.html#mime_nesting_limit">mime_nesting_limit</a> value proportionally. </p> 1314 1315<li> <p> Be careful when making changes. Excessively large values 1316will result in the loss of non-delivery notifications, when a bounce 1317message size exceeds a local or remote MTA's message size limit. 1318</p> 1319 1320</ul> 1321 1322 1323</DD> 1324 1325<DT><b><a name="bounce_template_file">bounce_template_file</a> 1326(default: empty)</b></DT><DD> 1327 1328<p> Pathname of a configuration file with bounce message templates. 1329These override the built-in templates of delivery status notification 1330(DSN) messages for undeliverable mail, for delayed mail, successful 1331delivery, or delivery verification. The <a href="bounce.5.html">bounce(5)</a> manual page 1332describes how to edit and test template files. </p> 1333 1334<p> Template message body text may contain $name references to 1335Postfix configuration parameters. The result of $name expansion can 1336be previewed with "<b>postconf -b <i>file_name</i></b>" before the file 1337is placed into the Postfix configuration directory. </p> 1338 1339<p> This feature is available in Postfix 2.3 and later. </p> 1340 1341 1342</DD> 1343 1344<DT><b><a name="broken_sasl_auth_clients">broken_sasl_auth_clients</a> 1345(default: no)</b></DT><DD> 1346 1347<p> 1348Enable interoperability with remote SMTP clients that implement an obsolete 1349version of the AUTH command (<a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a>). Examples of such clients 1350are MicroSoft Outlook Express version 4 and MicroSoft Exchange 1351version 5.0. 1352</p> 1353 1354<p> 1355Specify "<a href="postconf.5.html#broken_sasl_auth_clients">broken_sasl_auth_clients</a> = yes" to have Postfix advertise 1356AUTH support in a non-standard way. 1357</p> 1358 1359 1360</DD> 1361 1362<DT><b><a name="canonical_classes">canonical_classes</a> 1363(default: envelope_sender, envelope_recipient, header_sender, header_recipient)</b></DT><DD> 1364 1365<p> What addresses are subject to <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping. 1366By default, <a href="postconf.5.html#canonical_maps">canonical_maps</a> address mapping is applied to envelope 1367sender and recipient addresses, and to header sender and header 1368recipient addresses. </p> 1369 1370<p> Specify one or more of: envelope_sender, envelope_recipient, 1371header_sender, header_recipient </p> 1372 1373<p> This feature is available in Postfix 2.2 and later. </p> 1374 1375 1376</DD> 1377 1378<DT><b><a name="canonical_maps">canonical_maps</a> 1379(default: empty)</b></DT><DD> 1380 1381<p> 1382Optional address mapping lookup tables for message headers and 1383envelopes. The mapping is applied to both sender and recipient 1384addresses, in both envelopes and in headers, as controlled 1385with the <a href="postconf.5.html#canonical_classes">canonical_classes</a> parameter. This is typically used 1386to clean up dirty addresses from legacy mail systems, or to replace 1387login names by Firstname.Lastname. The table format and lookups 1388are documented in <a href="canonical.5.html">canonical(5)</a>. For an overview of Postfix address 1389manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document. 1390</p> 1391 1392<p> 1393Specify zero or more "type:name" lookup tables, separated by 1394whitespace or comma. Tables will be searched in the specified order 1395until a match is found. 1396Note: these lookups are recursive. 1397</p> 1398 1399<p> 1400If you use this feature, run "<b>postmap /etc/postfix/canonical</b>" to 1401build the necessary DBM or DB file after every change. The changes 1402will become visible after a minute or so. Use "<b>postfix reload</b>" 1403to eliminate the delay. 1404</p> 1405 1406<p> Note: with Postfix version 2.2, message header address mapping 1407happens only when message header address rewriting is enabled: </p> 1408 1409<ul> 1410 1411<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 1412 1413<li> The message is received from a network client that matches 1414$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 1415 1416<li> The message is received from the network, and the 1417<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 1418 1419</ul> 1420 1421<p> To get the behavior before Postfix version 2.2, specify 1422"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 1423 1424<p> 1425Examples: 1426</p> 1427 1428<pre> 1429<a href="postconf.5.html#canonical_maps">canonical_maps</a> = <a href="DATABASE_README.html#types">dbm</a>:/etc/postfix/canonical 1430<a href="postconf.5.html#canonical_maps">canonical_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/canonical 1431</pre> 1432 1433 1434</DD> 1435 1436<DT><b><a name="cleanup_service_name">cleanup_service_name</a> 1437(default: cleanup)</b></DT><DD> 1438 1439<p> 1440The name of the <a href="cleanup.8.html">cleanup(8)</a> service. This service rewrites addresses 1441into the standard form, and performs <a href="canonical.5.html">canonical(5)</a> address mapping 1442and <a href="virtual.5.html">virtual(5)</a> aliasing. 1443</p> 1444 1445<p> 1446This feature is available in Postfix 2.0 and later. 1447</p> 1448 1449 1450</DD> 1451 1452<DT><b><a name="command_directory">command_directory</a> 1453(default: see "postconf -d" output)</b></DT><DD> 1454 1455<p> 1456The location of all postfix administrative commands. 1457</p> 1458 1459 1460</DD> 1461 1462<DT><b><a name="command_execution_directory">command_execution_directory</a> 1463(default: empty)</b></DT><DD> 1464 1465<p> The <a href="local.8.html">local(8)</a> delivery agent working directory for delivery to 1466external command. Failure to change directory causes the delivery 1467to be deferred. </p> 1468 1469<p> The following $name expansions are done on <a href="postconf.5.html#command_execution_directory">command_execution_directory</a> 1470before the directory is changed. Expansion happens in the context 1471of the delivery request. The result of $name expansion is filtered 1472with the character set that is specified with the 1473<a href="postconf.5.html#execution_directory_expansion_filter">execution_directory_expansion_filter</a> parameter. </p> 1474 1475<dl> 1476 1477<dt><b>$user</b></dt> 1478 1479<dd>The recipient's username. </dd> 1480 1481<dt><b>$shell</b></dt> 1482 1483<dd>The recipient's login shell pathname. </dd> 1484 1485<dt><b>$home</b></dt> 1486 1487<dd>The recipient's home directory. </dd> 1488 1489<dt><b>$recipient</b></dt> 1490 1491<dd>The full recipient address. </dd> 1492 1493<dt><b>$extension</b></dt> 1494 1495<dd>The optional recipient address extension. </dd> 1496 1497<dt><b>$domain</b></dt> 1498 1499<dd>The recipient domain. </dd> 1500 1501<dt><b>$local</b></dt> 1502 1503<dd>The entire recipient localpart. </dd> 1504 1505<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt> 1506 1507<dd>The address extension delimiter that was found in the recipient 1508address (Postfix 2.11 and later), or the system-wide recipient 1509address extension delimiter (Postfix 2.10 and earlier). </dd> 1510 1511<dt><b>${name?value}</b></dt> 1512 1513<dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd> 1514 1515<dt><b>${name:value}</b></dt> 1516 1517<dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd> 1518 1519</dl> 1520 1521<p> 1522Instead of $name you can also specify ${name} or $(name). 1523</p> 1524 1525<p> This feature is available in Postfix 2.2 and later. </p> 1526 1527 1528</DD> 1529 1530<DT><b><a name="command_expansion_filter">command_expansion_filter</a> 1531(default: see "postconf -d" output)</b></DT><DD> 1532 1533<p> 1534Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in 1535$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>. 1536Characters outside the 1537allowed set are replaced by underscores. 1538</p> 1539 1540 1541</DD> 1542 1543<DT><b><a name="command_time_limit">command_time_limit</a> 1544(default: 1000s)</b></DT><DD> 1545 1546<p> 1547Time limit for delivery to external commands. This limit is used 1548by the <a href="local.8.html">local(8)</a> delivery agent, and is the default time limit for 1549delivery by the <a href="pipe.8.html">pipe(8)</a> delivery agent. 1550</p> 1551 1552<p> 1553Note: if you set this time limit to a large value you must update the 1554global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter as well. 1555</p> 1556 1557 1558</DD> 1559 1560<DT><b><a name="compatibility_level">compatibility_level</a> 1561(default: 0)</b></DT><DD> 1562 1563<p> A safety net that causes Postfix to run with backwards-compatible 1564default settings after an upgrade to a newer Postfix version. </p> 1565 1566<p> With backwards compatibility turned on (the <a href="postconf.5.html">main.cf</a> <a href="postconf.5.html#compatibility_level">compatibility_level</a> 1567value is less than the Postfix built-in value), Postfix looks for 1568settings that are left at their implicit default value, and logs a 1569message when a backwards-compatible default setting is required. 1570</p> 1571 1572<blockquote> 1573<pre> 1574using backwards-compatible default setting <i>name=value</i> 1575 to [accept a specific client request] 1576 1577using backwards-compatible default setting <i>name=value</i> 1578 to [enable specific Postfix behavior] 1579</pre> 1580</blockquote> 1581 1582<p> See <a href="COMPATIBILITY_README.html">COMPATIBILITY_README</a> for specific message details. If such 1583a message is logged in the context of a legitimate request, the 1584system administrator should make the backwards-compatible setting 1585permanent in <a href="postconf.5.html">main.cf</a> or <a href="master.5.html">master.cf</a>, for example: </p> 1586 1587<blockquote> 1588<pre> 1589# <b>postconf</b> <i>name=value</i> 1590# <b>postfix reload</b> 1591</pre> 1592</blockquote> 1593 1594<p> When no more backwards-compatible settings need to be made 1595permanent, the administrator should turn off backwards compatibility 1596by updating the <a href="postconf.5.html#compatibility_level">compatibility_level</a> setting in <a href="postconf.5.html">main.cf</a>:</p> 1597 1598<blockquote> 1599<pre> 1600# <b>postconf <a href="postconf.5.html#compatibility_level">compatibility_level</a>=<i>N</i></b> 1601# <b>postfix reload</b> 1602</pre> 1603</blockquote> 1604 1605<p> For <i>N</i> specify the number that is logged in your <a href="postfix.1.html">postfix(1)</a> 1606warning message: </p> 1607 1608<blockquote> 1609<pre> 1610warning: To disable backwards compatibility use "postconf 1611 <a href="postconf.5.html#compatibility_level">compatibility_level</a>=<i>N</i>" and "postfix reload" 1612</pre> 1613</blockquote> 1614 1615<p> This feature is available in Postfix 3.0 and later. </p> 1616 1617 1618</DD> 1619 1620<DT><b><a name="config_directory">config_directory</a> 1621(default: see "postconf -d" output)</b></DT><DD> 1622 1623<p> The default location of the Postfix <a href="postconf.5.html">main.cf</a> and <a href="master.5.html">master.cf</a> 1624configuration files. This can be overruled via the following 1625mechanisms: </p> 1626 1627<ul> 1628 1629<li> <p> The MAIL_CONFIG environment variable (daemon processes 1630and commands). </p> 1631 1632<li> <p> The "-c" command-line option (commands only). </p> 1633 1634</ul> 1635 1636<p> With Postfix command that run with set-gid privileges, a 1637<a href="postconf.5.html#config_directory">config_directory</a> override requires either root privileges, or it 1638requires that the directory is listed with the <a href="postconf.5.html#alternate_config_directories">alternate_config_directories</a> 1639parameter in the default <a href="postconf.5.html">main.cf</a> file. </p> 1640 1641 1642</DD> 1643 1644<DT><b><a name="confirm_delay_cleared">confirm_delay_cleared</a> 1645(default: no)</b></DT><DD> 1646 1647<p> After sending a "your message is delayed" notification, inform 1648the sender when the delay clears up. This can result in a sudden 1649burst of notifications at the end of a prolonged network outage, 1650and is therefore disabled by default. </p> 1651 1652<p> See also: <a href="postconf.5.html#delay_warning_time">delay_warning_time</a>. </p> 1653 1654<p> This feature is available in Postfix 3.0 and later. </p> 1655 1656 1657</DD> 1658 1659<DT><b><a name="connection_cache_protocol_timeout">connection_cache_protocol_timeout</a> 1660(default: 5s)</b></DT><DD> 1661 1662<p> Time limit for connection cache connect, send or receive 1663operations. The time limit is enforced in the client. </p> 1664 1665<p> This feature is available in Postfix 2.3 and later. </p> 1666 1667 1668</DD> 1669 1670<DT><b><a name="connection_cache_service_name">connection_cache_service_name</a> 1671(default: scache)</b></DT><DD> 1672 1673<p> The name of the <a href="scache.8.html">scache(8)</a> connection cache service. This service 1674maintains a limited pool of cached sessions. </p> 1675 1676<p> This feature is available in Postfix 2.2 and later. </p> 1677 1678 1679</DD> 1680 1681<DT><b><a name="connection_cache_status_update_time">connection_cache_status_update_time</a> 1682(default: 600s)</b></DT><DD> 1683 1684<p> How frequently the <a href="scache.8.html">scache(8)</a> server logs usage statistics with 1685connection cache hit and miss rates for logical destinations and for 1686physical endpoints. </p> 1687 1688 1689</DD> 1690 1691<DT><b><a name="connection_cache_ttl_limit">connection_cache_ttl_limit</a> 1692(default: 2s)</b></DT><DD> 1693 1694<p> The maximal time-to-live value that the <a href="scache.8.html">scache(8)</a> connection 1695cache server 1696allows. Requests that specify a larger TTL will be stored with the 1697maximum allowed TTL. The purpose of this additional control is to 1698protect the infrastructure against careless people. The cache TTL 1699is already bounded by $<a href="postconf.5.html#max_idle">max_idle</a>. </p> 1700 1701 1702</DD> 1703 1704<DT><b><a name="content_filter">content_filter</a> 1705(default: empty)</b></DT><DD> 1706 1707<p> After the message is queued, send the entire message to the 1708specified <i>transport:destination</i>. The <i>transport</i> name 1709specifies the first field of a mail delivery agent definition in 1710<a href="master.5.html">master.cf</a>; the syntax of the next-hop <i>destination</i> is described 1711in the manual page of the corresponding delivery agent. More 1712information about external content filters is in the Postfix 1713<a href="FILTER_README.html">FILTER_README</a> file. </p> 1714 1715<p> Notes: </p> 1716 1717<ul> 1718 1719<li> <p> This setting has lower precedence than a FILTER action 1720that 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> 1721table. </p> 1722 1723<li> <p> The meaning of an empty next-hop filter <i>destination</i> 1724is version dependent. Postfix 2.7 and later will use the recipient 1725domain; earlier versions will use $<a href="postconf.5.html#myhostname">myhostname</a>. Specify 1726"<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility with Postfix 17272.6 or earlier, or specify a <a href="postconf.5.html#content_filter">content_filter</a> value with an explicit 1728next-hop <i>destination</i>. </p> 1729 1730</ul> 1731 1732 1733</DD> 1734 1735<DT><b><a name="cyrus_sasl_config_path">cyrus_sasl_config_path</a> 1736(default: empty)</b></DT><DD> 1737 1738<p> Search path for Cyrus SASL application configuration files, 1739currently used only to locate the $<a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>.conf file. 1740Specify zero or more directories separated by a colon character, 1741or an empty value to use Cyrus SASL's built-in search path. </p> 1742 1743<p> This feature is available in Postfix 2.5 and later when compiled 1744with Cyrus SASL 2.1.22 or later. </p> 1745 1746 1747</DD> 1748 1749<DT><b><a name="daemon_directory">daemon_directory</a> 1750(default: see "postconf -d" output)</b></DT><DD> 1751 1752<p> 1753The directory with Postfix support programs and daemon programs. 1754These should not be invoked directly by humans. The directory must 1755be owned by root. 1756</p> 1757 1758 1759</DD> 1760 1761<DT><b><a name="daemon_table_open_error_is_fatal">daemon_table_open_error_is_fatal</a> 1762(default: no)</b></DT><DD> 1763 1764<p> How a Postfix daemon process handles errors while opening lookup 1765tables: gradual degradation or immediate termination. </p> 1766 1767<dl> 1768 1769<dt> <b> no </b> (default) </dt> <dd> <p> Gradual degradation: a 1770daemon process logs a message of type "error" and continues execution 1771with reduced functionality. Features that do not depend on the 1772unavailable table will work normally, while features that depend 1773on the table will result in a type "warning" message. <br> When 1774the <a href="postconf.5.html#notify_classes">notify_classes</a> parameter value contains the "data" class, the 1775Postfix SMTP server and client will report transcripts of sessions 1776with an error because a table is unavailable. </p> </dd> 1777 1778<dt> <b> yes </b> (historical behavior) </dt> <dd> <p> Immediate 1779termination: a daemon process logs a type "fatal" message and 1780terminates immediately. This option reduces the number of possible 1781code paths through Postfix, and may therefore be slightly more 1782secure than the default. </p> </dd> 1783 1784</dl> 1785 1786<p> For the sake of sanity, the number of type "error" messages is 1787limited to 13 over the lifetime of a daemon process. </p> 1788 1789<p> This feature is available in Postfix 2.9 and later. </p> 1790 1791 1792</DD> 1793 1794<DT><b><a name="daemon_timeout">daemon_timeout</a> 1795(default: 18000s)</b></DT><DD> 1796 1797<p> How much time a Postfix daemon process may take to handle a 1798request before it is terminated by a built-in watchdog timer. </p> 1799 1800<p> 1801Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 1802The default time unit is s (seconds). 1803</p> 1804 1805 1806</DD> 1807 1808<DT><b><a name="data_directory">data_directory</a> 1809(default: see "postconf -d" output)</b></DT><DD> 1810 1811<p> The directory with Postfix-writable data files (for example: 1812caches, pseudo-random numbers). This directory must be owned by 1813the <a href="postconf.5.html#mail_owner">mail_owner</a> account, and must not be shared with non-Postfix 1814software. </p> 1815 1816<p> This feature is available in Postfix 2.5 and later. </p> 1817 1818 1819</DD> 1820 1821<DT><b><a name="debug_peer_level">debug_peer_level</a> 1822(default: 2)</b></DT><DD> 1823 1824<p> The increment in verbose logging level when a remote client or 1825server matches a pattern in the <a href="postconf.5.html#debug_peer_list">debug_peer_list</a> parameter. </p> 1826 1827 1828</DD> 1829 1830<DT><b><a name="debug_peer_list">debug_peer_list</a> 1831(default: empty)</b></DT><DD> 1832 1833<p> Optional list of remote client or server hostname or network 1834address patterns that cause the verbose logging level to increase 1835by the amount specified in $<a href="postconf.5.html#debug_peer_level">debug_peer_level</a>. </p> 1836 1837<p> Specify domain names, network/netmask patterns, "/file/name" 1838patterns or "<a href="DATABASE_README.html">type:table</a>" lookup tables. The right-hand side result 1839from "<a href="DATABASE_README.html">type:table</a>" lookups is ignored. </p> 1840 1841<p> Pattern matching of domain names is controlled by the presence 1842or absence of "<a href="postconf.5.html#debug_peer_list">debug_peer_list</a>" in the <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 1843parameter value. </p> 1844 1845<p> 1846Examples: 1847</p> 1848 1849<pre> 1850<a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = 127.0.0.1 1851<a href="postconf.5.html#debug_peer_list">debug_peer_list</a> = example.com 1852</pre> 1853 1854 1855</DD> 1856 1857<DT><b><a name="debugger_command">debugger_command</a> 1858(default: empty)</b></DT><DD> 1859 1860<p> 1861The external command to execute when a Postfix daemon program is 1862invoked with the -D option. 1863</p> 1864 1865<p> 1866Use "command .. & sleep 5" so that the debugger can attach before 1867the process marches on. If you use an X-based debugger, be sure to 1868set up your XAUTHORITY environment variable before starting Postfix. 1869</p> 1870 1871<p> 1872Note: the command is subject to $name expansion, before it is 1873passed to the default command interpreter. Specify "$$" to 1874produce a single "$" character. 1875</p> 1876 1877<p> 1878Example: 1879</p> 1880 1881<pre> 1882<a href="postconf.5.html#debugger_command">debugger_command</a> = 1883 PATH=/usr/bin:/usr/X11R6/bin 1884 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> & sleep 5 1885</pre> 1886 1887 1888</DD> 1889 1890<DT><b><a name="default_database_type">default_database_type</a> 1891(default: see "postconf -d" output)</b></DT><DD> 1892 1893<p> 1894The default database type for use in <a href="newaliases.1.html">newaliases(1)</a>, <a href="postalias.1.html">postalias(1)</a> 1895and <a href="postmap.1.html">postmap(1)</a> commands. On many UNIX systems the default type is 1896either <b>dbm</b> or <b>hash</b>. The default setting is frozen 1897when the Postfix system is built. 1898</p> 1899 1900<p> 1901Examples: 1902</p> 1903 1904<pre> 1905<a href="postconf.5.html#default_database_type">default_database_type</a> = hash 1906<a href="postconf.5.html#default_database_type">default_database_type</a> = dbm 1907</pre> 1908 1909 1910</DD> 1911 1912<DT><b><a name="default_delivery_slot_cost">default_delivery_slot_cost</a> 1913(default: 5)</b></DT><DD> 1914 1915<p> 1916How often the Postfix queue manager's scheduler is allowed to 1917preempt delivery of one message with another. 1918</p> 1919 1920<p> 1921Each transport maintains a so-called "available delivery slot counter" 1922for each message. One message can be preempted by another one when 1923the other message can be delivered using no more delivery slots 1924(i.e., invocations of delivery agents) than the current message 1925counter has accumulated (or will eventually accumulate - see about 1926slot loans below). This parameter controls how often is the counter 1927incremented - it happens after each <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> 1928recipients have been delivered. 1929</p> 1930 1931<p> 1932The cost of 0 is used to disable the preempting scheduling completely. 1933The minimum value the scheduling algorithm can use is 2 - use it 1934if you want to maximize the message throughput rate. Although there 1935is no maximum, it doesn't make much sense to use values above say 193650. 1937</p> 1938 1939<p> 1940The only reason why the value of 2 is not the default is the way 1941this parameter affects the delivery of mailing-list mail. In the 1942worst case, their delivery can take somewhere between (cost+1/cost) 1943and (cost/cost-1) times more than if the preemptive scheduler was 1944disabled. The default value of 5 turns out to provide reasonable 1945message response times while making sure the mailing-list deliveries 1946are not extended by more than 20-25 percent even in the worst case. 1947</p> 1948 1949<p> Use <a href="postconf.5.html#transport_delivery_slot_cost"><i>transport</i>_delivery_slot_cost</a> to specify a 1950transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 1951name of the message delivery transport. 1952</p> 1953 1954<p> 1955Examples: 1956</p> 1957 1958<pre> 1959<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 0 1960<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> = 2 1961</pre> 1962 1963 1964</DD> 1965 1966<DT><b><a name="default_delivery_slot_discount">default_delivery_slot_discount</a> 1967(default: 50)</b></DT><DD> 1968 1969<p> 1970The default value for transport-specific _delivery_slot_discount 1971settings. 1972</p> 1973 1974<p> 1975This parameter speeds up the moment when a message preemption can 1976happen. Instead of waiting until the full amount of delivery slots 1977required is available, the preemption can happen when 1978transport_delivery_slot_discount percent of the required amount 1979plus transport_delivery_slot_loan still remains to be accumulated. 1980Note that the full amount will still have to be accumulated before 1981another preemption can take place later. 1982</p> 1983 1984<p> Use <a href="postconf.5.html#transport_delivery_slot_discount"><i>transport</i>_delivery_slot_discount</a> to specify a 1985transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 1986name of the message delivery transport. 1987</p> 1988 1989 1990</DD> 1991 1992<DT><b><a name="default_delivery_slot_loan">default_delivery_slot_loan</a> 1993(default: 3)</b></DT><DD> 1994 1995<p> 1996The default value for transport-specific _delivery_slot_loan 1997settings. 1998</p> 1999 2000<p> 2001This parameter speeds up the moment when a message preemption can 2002happen. Instead of waiting until the full amount of delivery slots 2003required is available, the preemption can happen when 2004transport_delivery_slot_discount percent of the required amount 2005plus transport_delivery_slot_loan still remains to be accumulated. 2006Note that the full amount will still have to be accumulated before 2007another preemption can take place later. 2008</p> 2009 2010<p> Use <a href="postconf.5.html#transport_delivery_slot_loan"><i>transport</i>_delivery_slot_loan</a> to specify a 2011transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2012name of the message delivery transport. 2013</p> 2014 2015 2016</DD> 2017 2018<DT><b><a name="default_delivery_status_filter">default_delivery_status_filter</a> 2019(default: empty)</b></DT><DD> 2020 2021<p> Optional filter to replace the delivery status code or explanatory 2022text of successful or unsuccessful deliveries. This does not allow 2023the replacement of a successful status code (2.X.X) with an 2024unsuccessful status code (4.X.X or 5.X.X) or vice versa. </p> 2025 2026<p> The following parameters can be used to implement a filter for 2027specific delivery agents: <a href="postconf.5.html#lmtp_delivery_status_filter">lmtp_delivery_status_filter</a>, 2028<a href="postconf.5.html#local_delivery_status_filter">local_delivery_status_filter</a>, <a href="postconf.5.html#pipe_delivery_status_filter">pipe_delivery_status_filter</a>, 2029<a href="postconf.5.html#smtp_delivery_status_filter">smtp_delivery_status_filter</a> or <a href="postconf.5.html#virtual_delivery_status_filter">virtual_delivery_status_filter</a>. These 2030parameters support the same filter syntax as described here. </p> 2031 2032<p> Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup table names, separated 2033by comma or whitespace. For each successful or unsuccessful delivery 2034to a recipient, the tables are queried in the specified order with 2035one line of text that is structured as follows: </p> 2036 2037<blockquote> 2038enhanced-status-code SPACE explanatory-text 2039</blockquote> 2040 2041<p> The first table match wins. The lookup result must have the 2042same structure as the query, a successful status code (2.X.X) must 2043be replaced with a successful status code, an unsuccessful status 2044code (4.X.X or 5.X.X) must be replaced with an unsuccessful status 2045code, and the explanatory text field must be non-empty. Other results 2046will result in a warning. </p> 2047 2048<p> Example 1: convert specific soft TLS errors into hard errors, 2049by overriding the first number in the enhanced status code. </p> 2050 2051<blockquote> 2052<pre> 2053/etc/postfix/<a href="postconf.5.html">main.cf</a>: 2054 <a href="postconf.5.html#smtp_delivery_status_filter">smtp_delivery_status_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/smtp_dsn_filter 2055</pre> 2056</blockquote> 2057 2058<blockquote> 2059<pre> 2060/etc/postfix/smtp_dsn_filter: 2061 /^4(\.\d+\.\d+ TLS is required, but host \S+ refused to start TLS: .+)/ 2062 5$1 2063 /^4(\.\d+\.\d+ TLS is required, but was not offered by host .+)/ 2064 5$1 2065 # Do not change the following into hard bounces. They may 2066 # result from a local configuration problem. 2067 # 4.\d+.\d+ TLS is required, but our TLS engine is unavailable 2068 # 4.\d+.\d+ TLS is required, but unavailable 2069 # 4.\d+.\d+ Cannot start TLS: handshake failure 2070</pre> 2071</blockquote> 2072 2073<p> Example 2: censor the per-recipient delivery status text so 2074that it does not reveal the destination command or filename 2075when a remote sender requests confirmation of successful delivery. 2076</p> 2077 2078<blockquote> 2079<pre> 2080/etc/postfix/<a href="postconf.5.html">main.cf</a>: 2081 <a href="postconf.5.html#local_delivery_status_filter">local_delivery_status_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/local_dsn_filter 2082</pre> 2083</blockquote> 2084 2085<blockquote> 2086<pre> 2087/etc/postfix/local_dsn_filter: 2088 /^(2\S+ delivered to file).+/ $1 2089 /^(2\S+ delivered to command).+/ $1 2090</pre> 2091</blockquote> 2092 2093<p> Notes: </p> 2094 2095<ul> 2096 2097<li> <p> This feature will NOT override the <a href="postconf.5.html#soft_bounce">soft_bounce</a> safety net. </p> 2098 2099<li> <p> This feature will change the enhanced status code and text 2100that is logged to the maillog file, and that is reported to the 2101sender in delivery confirmation or non-delivery notifications. 2102</p> 2103 2104</ul> 2105 2106<p> This feature is available in Postfix 3.0 and later. </p> 2107 2108 2109</DD> 2110 2111<DT><b><a name="default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> 2112(default: 1)</b></DT><DD> 2113 2114<p> How many pseudo-cohorts must suffer connection or handshake 2115failure before a specific destination is considered unavailable 2116(and further delivery is suspended). Specify zero to disable this 2117feature. A destination's pseudo-cohort failure count is reset each 2118time a delivery completes without connection or handshake failure 2119for that specific destination. </p> 2120 2121<p> A pseudo-cohort is the number of deliveries equal to a destination's 2122delivery concurrency. </p> 2123 2124<p> Use <a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> to specify 2125a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2126name of the message delivery transport. </p> 2127 2128<p> This feature is available in Postfix 2.5. The default setting 2129is compatible with earlier Postfix versions. </p> 2130 2131 2132</DD> 2133 2134<DT><b><a name="default_destination_concurrency_limit">default_destination_concurrency_limit</a> 2135(default: 20)</b></DT><DD> 2136 2137<p> 2138The default maximal number of parallel deliveries to the same 2139destination. This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>, 2140<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. 2141With per-destination recipient limit > 1, a destination is a domain, 2142otherwise it is a recipient. 2143</p> 2144 2145<p> Use <a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> to specify a 2146transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2147name of the message delivery transport. 2148</p> 2149 2150 2151</DD> 2152 2153<DT><b><a name="default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> 2154(default: 1)</b></DT><DD> 2155 2156<p> The per-destination amount of delivery concurrency negative 2157feedback, after a delivery completes with a connection or handshake 2158failure. Feedback values are in the range 0..1 inclusive. With 2159negative feedback, concurrency is decremented at the beginning of 2160a sequence of length 1/feedback. This is unlike positive feedback, 2161where concurrency is incremented at the end of a sequence of length 21621/feedback. </p> 2163 2164<p> As of Postfix version 2.5, negative feedback cannot reduce 2165delivery concurrency to zero. Instead, a destination is marked 2166dead (further delivery suspended) after the failed pseudo-cohort 2167count reaches $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> 2168(or $<a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a>). 2169To make the scheduler completely immune to connection or handshake 2170failures, specify a zero feedback value and a zero failed pseudo-cohort 2171limit. </p> 2172 2173<p> Specify one of the following forms: </p> 2174 2175<dl> 2176 2177<dt> <b><i>number</i> </b> </dt> 2178 2179<dt> <b><i>number</i> / <i>number</i> </b> </dt> 2180 2181<dd> Constant feedback. The value must be in the range 0..1 inclusive. 2182The default setting of "1" is compatible with Postfix versions 2183before 2.5, where a destination's delivery concurrency is throttled 2184down to zero (and further delivery suspended) after a single failed 2185pseudo-cohort. </dd> 2186 2187<dt> <b><i>number</i> / concurrency </b> </dt> 2188 2189<dd> Variable feedback of "<i>number</i> / (delivery concurrency)". 2190The <i>number</i> must be in the range 0..1 inclusive. With 2191<i>number</i> equal to "1", a destination's delivery concurrency 2192is decremented by 1 after each failed pseudo-cohort. </dd> 2193 2194</dl> 2195 2196<p> A pseudo-cohort is the number of deliveries equal to a destination's 2197delivery concurrency. </p> 2198 2199<p> Use <a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a> 2200to specify a transport-specific override, where <i>transport</i> 2201is the <a href="master.5.html">master.cf</a> 2202name of the message delivery transport. </p> 2203 2204<p> This feature is available in Postfix 2.5. The default setting 2205is compatible with earlier Postfix versions. </p> 2206 2207 2208</DD> 2209 2210<DT><b><a name="default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> 2211(default: 1)</b></DT><DD> 2212 2213<p> The per-destination amount of delivery concurrency positive 2214feedback, after a delivery completes without connection or handshake 2215failure. Feedback values are in the range 0..1 inclusive. The 2216concurrency increases until it reaches the per-destination maximal 2217concurrency limit. With positive feedback, concurrency is incremented 2218at the end of a sequence with length 1/feedback. This is unlike 2219negative feedback, where concurrency is decremented at the start 2220of a sequence of length 1/feedback. </p> 2221 2222<p> Specify one of the following forms: </p> 2223 2224<dl> 2225 2226<dt> <b><i>number</i> </b> </dt> 2227 2228<dt> <b><i>number</i> / <i>number</i> </b> </dt> 2229 2230<dd> Constant feedback. The value must be in the range 0..1 2231inclusive. The default setting of "1" is compatible with Postfix 2232versions before 2.5, where a destination's delivery concurrency 2233doubles after each successful pseudo-cohort. </dd> 2234 2235<dt> <b><i>number</i> / concurrency </b> </dt> 2236 2237<dd> Variable feedback of "<i>number</i> / (delivery concurrency)". 2238The <i>number</i> must be in the range 0..1 inclusive. With 2239<i>number</i> equal to "1", a destination's delivery concurrency 2240is incremented by 1 after each successful pseudo-cohort. </dd> 2241 2242</dl> 2243 2244<p> A pseudo-cohort is the number of deliveries equal to a destination's 2245delivery concurrency. </p> 2246 2247<p> Use <a href="postconf.5.html#transport_destination_concurrency_positive_feedback"><i>transport</i>_destination_concurrency_positive_feedback</a> 2248to specify a transport-specific override, where <i>transport</i> 2249is the <a href="master.5.html">master.cf</a> name of the message delivery transport. </p> 2250 2251<p> This feature is available in Postfix 2.5 and later. </p> 2252 2253 2254</DD> 2255 2256<DT><b><a name="default_destination_rate_delay">default_destination_rate_delay</a> 2257(default: 0s)</b></DT><DD> 2258 2259<p> The default amount of delay that is inserted between individual 2260deliveries to the same destination; the resulting behavior depends 2261on the value of the corresponding per-destination recipient limit. 2262</p> 2263 2264<ul> 2265 2266<li> <p> With a corresponding per-destination recipient limit > 22671, the rate delay specifies the time between deliveries to the 2268<i>same domain</i>. Different domains are delivered in parallel, 2269subject to the process limits specified in <a href="master.5.html">master.cf</a>. </p> 2270 2271<li> <p> With a corresponding per-destination recipient limit equal 2272to 1, the rate delay specifies the time between deliveries to the 2273<i>same recipient</i>. Different recipients are delivered in 2274parallel, subject to the process limits specified in <a href="master.5.html">master.cf</a>. 2275</p> 2276 2277</ul> 2278 2279<p> To enable the delay, specify a non-zero time value (an integral 2280value plus an optional one-letter suffix that specifies the time 2281unit). </p> 2282 2283<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 2284(weeks). The default time unit is s (seconds). </p> 2285 2286<p> NOTE: the delay is enforced by the queue manager. The delay 2287timer state does not survive "<b>postfix reload</b>" or "<b>postfix 2288stop</b>". 2289</p> 2290 2291<p> Use <a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a> to specify a 2292transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2293name of the message delivery transport. 2294</p> 2295 2296<p> NOTE: with a non-zero _destination_rate_delay, specify a 2297<a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> of 10 2298or more to prevent Postfix from deferring all mail for the same 2299destination after only one connection or handshake error. </p> 2300 2301<p> This feature is available in Postfix 2.5 and later. </p> 2302 2303 2304</DD> 2305 2306<DT><b><a name="default_destination_recipient_limit">default_destination_recipient_limit</a> 2307(default: 50)</b></DT><DD> 2308 2309<p> 2310The default maximal number of recipients per message delivery. 2311This is the default limit for delivery via the <a href="lmtp.8.html">lmtp(8)</a>, <a href="pipe.8.html">pipe(8)</a>, 2312<a href="smtp.8.html">smtp(8)</a> and <a href="virtual.8.html">virtual(8)</a> delivery agents. 2313</p> 2314 2315<p> Setting this parameter to a value of 1 affects email deliveries 2316as follows:</p> 2317 2318<ul> 2319 2320<li> <p> It changes the meaning of the corresponding per-destination 2321concurrency limit, from concurrency of deliveries to the <i>same 2322domain</i> into concurrency of deliveries to the <i>same recipient</i>. 2323Different recipients are delivered in parallel, subject to the 2324process limits specified in <a href="master.5.html">master.cf</a>. </p> 2325 2326<li> <p> It changes the meaning of the corresponding per-destination 2327rate delay, from the delay between deliveries to the <i>same 2328domain</i> into the delay between deliveries to the <i>same 2329recipient</i>. Again, different recipients are delivered in parallel, 2330subject to the process limits specified in <a href="master.5.html">master.cf</a>. </p> 2331 2332<li> <p> It changes the meaning of other corresponding per-destination 2333settings in a similar manner, from settings for delivery to the 2334<i>same domain</i> into settings for delivery to the <i>same 2335recipient</i>. 2336 2337</ul> 2338 2339<p> Use <a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a> to specify a 2340transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2341name of the message delivery transport. 2342</p> 2343 2344 2345</DD> 2346 2347<DT><b><a name="default_extra_recipient_limit">default_extra_recipient_limit</a> 2348(default: 1000)</b></DT><DD> 2349 2350<p> 2351The default value for the extra per-transport limit imposed on the 2352number of in-memory recipients. This extra recipient space is 2353reserved for the cases when the Postfix queue manager's scheduler 2354preempts one message with another and suddenly needs some extra 2355recipients slots for the chosen message in order to avoid performance 2356degradation. 2357</p> 2358 2359<p> Use <a href="postconf.5.html#transport_extra_recipient_limit"><i>transport</i>_extra_recipient_limit</a> to specify a 2360transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2361name of the message delivery transport. 2362</p> 2363 2364 2365</DD> 2366 2367<DT><b><a name="default_filter_nexthop">default_filter_nexthop</a> 2368(default: empty)</b></DT><DD> 2369 2370<p> When a <a href="postconf.5.html#content_filter">content_filter</a> or FILTER request specifies no explicit 2371next-hop destination, use $<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> instead; when 2372that value is empty, use the domain in the recipient address. 2373Specify "<a href="postconf.5.html#default_filter_nexthop">default_filter_nexthop</a> = $<a href="postconf.5.html#myhostname">myhostname</a>" for compatibility 2374with Postfix version 2.6 and earlier, or specify an explicit next-hop 2375destination with each <a href="postconf.5.html#content_filter">content_filter</a> value or FILTER action. </p> 2376 2377<p> This feature is available in Postfix 2.7 and later. </p> 2378 2379 2380</DD> 2381 2382<DT><b><a name="default_minimum_delivery_slots">default_minimum_delivery_slots</a> 2383(default: 3)</b></DT><DD> 2384 2385<p> 2386How many recipients a message must have in order to invoke the 2387Postfix queue manager's scheduling algorithm at all. Messages 2388which would never accumulate at least this many delivery slots 2389(subject to slot cost parameter as well) are never preempted. 2390</p> 2391 2392<p> Use <a href="postconf.5.html#transport_minimum_delivery_slots"><i>transport</i>_minimum_delivery_slots</a> to specify a 2393transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2394name of the message delivery transport. 2395</p> 2396 2397 2398</DD> 2399 2400<DT><b><a name="default_privs">default_privs</a> 2401(default: nobody)</b></DT><DD> 2402 2403<p> 2404The default rights used by the <a href="local.8.html">local(8)</a> delivery agent for delivery 2405to external file or command. These rights are used when delivery 2406is requested from an <a href="aliases.5.html">aliases(5)</a> file that is owned by <b>root</b>, or 2407when delivery is done on behalf of <b>root</b>. <b>DO NOT SPECIFY A 2408PRIVILEGED USER OR THE POSTFIX OWNER</b>. 2409</p> 2410 2411 2412</DD> 2413 2414<DT><b><a name="default_process_limit">default_process_limit</a> 2415(default: 100)</b></DT><DD> 2416 2417<p> 2418The default maximal number of Postfix child processes that provide 2419a given service. This limit can be overruled for specific services 2420in the <a href="master.5.html">master.cf</a> file. 2421</p> 2422 2423 2424</DD> 2425 2426<DT><b><a name="default_rbl_reply">default_rbl_reply</a> 2427(default: see "postconf -d" output)</b></DT><DD> 2428 2429<p> 2430The default Postfix SMTP server response template for a request that is 2431rejected by an RBL-based restriction. This template can be overruled 2432by specific entries in the optional <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> lookup table. 2433</p> 2434 2435<p> 2436This feature is available in Postfix 2.0 and later. 2437</p> 2438 2439<p> 2440The template is subject to exactly one level of $name substitution: 2441</p> 2442 2443<dl> 2444 2445<dt><b>$client</b></dt> 2446 2447<dd>The client hostname and IP address, formatted as name[address]. </dd> 2448 2449<dt><b>$client_address</b></dt> 2450 2451<dd>The client IP address. </dd> 2452 2453<dt><b>$client_name</b></dt> 2454 2455<dd>The client hostname or "unknown". See <a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> 2456for more details. </dd> 2457 2458<dt><b>$reverse_client_name</b></dt> 2459 2460<dd>The client hostname from address->name lookup, or "unknown". 2461See <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a> for more details. </dd> 2462 2463<dt><b>$helo_name</b></dt> 2464 2465<dd>The hostname given in HELO or EHLO command or empty string. </dd> 2466 2467<dt><b>$rbl_class</b></dt> 2468 2469<dd>The blacklisted entity type: Client host, Helo command, Sender 2470address, or Recipient address. </dd> 2471 2472<dt><b>$rbl_code</b></dt> 2473 2474<dd>The numerical SMTP response code, as specified with the 2475<a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> configuration parameter. Note: The numerical 2476SMTP response code is required, and must appear at the start of the 2477reply. With Postfix version 2.3 and later this information may be followed 2478by an <a href="http://tools.ietf.org/html/rfc3463">RFC 3463</a> enhanced status code. </dd> 2479 2480<dt><b>$rbl_domain</b></dt> 2481 2482<dd>The RBL domain where $rbl_what is blacklisted. </dd> 2483 2484<dt><b>$rbl_reason</b></dt> 2485 2486<dd>The reason why $rbl_what is blacklisted, or an empty string. </dd> 2487 2488<dt><b>$rbl_what</b></dt> 2489 2490<dd>The entity that is blacklisted (an IP address, a hostname, a domain 2491name, or an email address whose domain was blacklisted). </dd> 2492 2493<dt><b>$recipient</b></dt> 2494 2495<dd>The recipient address or <> in case of the null address. </dd> 2496 2497<dt><b>$recipient_domain</b></dt> 2498 2499<dd>The recipient domain or empty string. </dd> 2500 2501<dt><b>$recipient_name</b></dt> 2502 2503<dd>The recipient address localpart or <> in case of null address. </dd> 2504 2505<dt><b>$sender</b></dt> 2506 2507<dd>The sender address or <> in case of the null address. </dd> 2508 2509<dt><b>$sender_domain</b></dt> 2510 2511<dd>The sender domain or empty string. </dd> 2512 2513<dt><b>$sender_name</b></dt> 2514 2515<dd>The sender address localpart or <> in case of the null address. </dd> 2516 2517<dt><b>${name?text}</b></dt> 2518 2519<dd>Expands to `text' if $name is not empty. </dd> 2520 2521<dt><b>${name:text}</b></dt> 2522 2523<dd>Expands to `text' if $name is empty. </dd> 2524 2525</dl> 2526 2527<p> 2528Instead of $name you can also specify ${name} or $(name). 2529</p> 2530 2531<p> Note: when an enhanced status code is specified in an RBL reply 2532template, it is subject to modification. The following transformations 2533are needed when the same RBL reply template is used for client, 2534helo, sender, or recipient access restrictions. </p> 2535 2536<ul> 2537 2538<li> <p> When rejecting a sender address, the Postfix SMTP server 2539will transform a recipient DSN status (e.g., 4.1.1-4.1.6) into the 2540corresponding sender DSN status, and vice versa. </p> 2541 2542<li> <p> When rejecting non-address information (such as the HELO 2543command argument or the client hostname/address), the Postfix SMTP 2544server will transform a sender or recipient DSN status into a generic 2545non-address DSN status (e.g., 4.0.0). </p> 2546 2547</ul> 2548 2549 2550</DD> 2551 2552<DT><b><a name="default_recipient_limit">default_recipient_limit</a> 2553(default: 20000)</b></DT><DD> 2554 2555<p> 2556The default per-transport upper limit on the number of in-memory 2557recipients. These limits take priority over the global 2558<a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> after the message has been assigned 2559to the respective transports. See also <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a> 2560and <a href="postconf.5.html#qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a>. 2561</p> 2562 2563<p> Use <a href="postconf.5.html#transport_recipient_limit"><i>transport</i>_recipient_limit</a> to specify a 2564transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2565name of the message delivery transport. 2566</p> 2567 2568 2569</DD> 2570 2571<DT><b><a name="default_recipient_refill_delay">default_recipient_refill_delay</a> 2572(default: 5s)</b></DT><DD> 2573 2574<p> 2575The default per-transport maximum delay between recipients refills. 2576When not all message recipients fit into the memory at once, keep loading 2577more of them at least once every this many seconds. This is used to 2578make sure the recipients are refilled in timely manner even when 2579$<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> is too high for too slow deliveries. 2580</p> 2581 2582<p> Use <a href="postconf.5.html#transport_recipient_refill_delay"><i>transport</i>_recipient_refill_delay</a> to specify a 2583transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2584name of the message delivery transport. 2585</p> 2586 2587<p> This feature is available in Postfix 2.4 and later. </p> 2588 2589 2590</DD> 2591 2592<DT><b><a name="default_recipient_refill_limit">default_recipient_refill_limit</a> 2593(default: 100)</b></DT><DD> 2594 2595<p> 2596The default per-transport limit on the number of recipients refilled at 2597once. When not all message recipients fit into the memory at once, keep 2598loading more of them in batches of at least this many at a time. See also 2599$<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>, which may result in recipient batches 2600lower than this when this limit is too high for too slow deliveries. 2601</p> 2602 2603<p> Use <a href="postconf.5.html#transport_recipient_refill_limit"><i>transport</i>_recipient_refill_limit</a> to specify a 2604transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 2605name of the message delivery transport. 2606</p> 2607 2608<p> This feature is available in Postfix 2.4 and later. </p> 2609 2610 2611</DD> 2612 2613<DT><b><a name="default_transport">default_transport</a> 2614(default: smtp)</b></DT><DD> 2615 2616<p> 2617The default mail delivery transport and next-hop destination for 2618destinations that do not match $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>, 2619$<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>, 2620or $<a href="postconf.5.html#relay_domains">relay_domains</a>. This information can be overruled with the 2621<a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> parameter and with the 2622<a href="transport.5.html">transport(5)</a> table. </p> 2623 2624<p> 2625In order of decreasing precedence, the nexthop destination is taken 2626from $<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>, 2627$<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 2628domain. 2629</p> 2630 2631<p> 2632Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i> 2633is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>. 2634The <i>:nexthop</i> destination is optional; its syntax is documented 2635in the manual page of the corresponding delivery agent. 2636</p> 2637 2638<p> 2639Example: 2640</p> 2641 2642<pre> 2643<a href="postconf.5.html#default_transport">default_transport</a> = uucp:relayhostname 2644</pre> 2645 2646 2647</DD> 2648 2649<DT><b><a name="default_transport_rate_delay">default_transport_rate_delay</a> 2650(default: 0s)</b></DT><DD> 2651 2652<p> The default amount of delay that is inserted between individual 2653deliveries over the same message delivery transport, regardless of 2654destination. If non-zero, all deliveries over the same message 2655delivery transport will happen one at a time. </p> 2656 2657<p>Use <a href="postconf.5.html#transport_transport_rate_delay"><i>transport</i>_transport_rate_delay</a> to specify a 2658transport-specific override, where the initial <i>transport</i> is 2659the <a href="master.5.html">master.cf</a> name of the message delivery transport. </p> 2660 2661<p> Example: throttle outbound SMTP mail to at most 3 deliveries 2662per minute. </p> 2663 2664<pre> 2665/etc/postfix/<a href="postconf.5.html">main.cf</a>: 2666 smtp_transport_rate_delay = 20s 2667</pre> 2668 2669<p> To enable the delay, specify a non-zero time value (an integral 2670value plus an optional one-letter suffix that specifies the time 2671unit). </p> 2672 2673<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 2674(weeks). The default time unit is s (seconds). </p> 2675 2676<p> NOTE: the delay is enforced by the queue manager. </p> 2677 2678<p> This feature is available in Postfix 3.1 and later. </p> 2679 2680 2681</DD> 2682 2683<DT><b><a name="default_verp_delimiters">default_verp_delimiters</a> 2684(default: +=)</b></DT><DD> 2685 2686<p> The two default VERP delimiter characters. These are used when 2687no explicit delimiters are specified with the SMTP XVERP command 2688or with the "<b>sendmail -V</b>" command-line option. Specify 2689characters that are allowed by the <a href="postconf.5.html#verp_delimiter_filter">verp_delimiter_filter</a> setting. 2690</p> 2691 2692<p> 2693This feature is available in Postfix 1.1 and later. 2694</p> 2695 2696 2697</DD> 2698 2699<DT><b><a name="defer_code">defer_code</a> 2700(default: 450)</b></DT><DD> 2701 2702<p> 2703The numerical Postfix SMTP server response code when a remote SMTP 2704client request is rejected by the "defer" restriction. 2705</p> 2706 2707<p> 2708Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 2709</p> 2710 2711 2712</DD> 2713 2714<DT><b><a name="defer_service_name">defer_service_name</a> 2715(default: defer)</b></DT><DD> 2716 2717<p> 2718The name of the defer service. This service is implemented by the 2719<a href="bounce.8.html">bounce(8)</a> daemon and maintains a record 2720of failed delivery attempts and generates non-delivery notifications. 2721</p> 2722 2723<p> 2724This feature is available in Postfix 2.0 and later. 2725</p> 2726 2727 2728</DD> 2729 2730<DT><b><a name="defer_transports">defer_transports</a> 2731(default: empty)</b></DT><DD> 2732 2733<p> 2734The names of message delivery transports that should not deliver mail 2735unless someone issues "<b>sendmail -q</b>" or equivalent. Specify zero 2736or more names of mail delivery transports names that appear in the 2737first field of <a href="master.5.html">master.cf</a>. 2738</p> 2739 2740<p> 2741Example: 2742</p> 2743 2744<pre> 2745<a href="postconf.5.html#defer_transports">defer_transports</a> = smtp 2746</pre> 2747 2748 2749</DD> 2750 2751<DT><b><a name="delay_logging_resolution_limit">delay_logging_resolution_limit</a> 2752(default: 2)</b></DT><DD> 2753 2754<p> The maximal number of digits after the decimal point when logging 2755sub-second delay values. Specify a number in the range 0..6. </p> 2756 2757<p> Large delay values are rounded off to an integral number seconds; 2758delay values below the <a href="postconf.5.html#delay_logging_resolution_limit">delay_logging_resolution_limit</a> are logged 2759as "0", and delay values under 100s are logged with at most two-digit 2760precision. </p> 2761 2762<p> The format of the "delays=a/b/c/d" logging is as follows: </p> 2763 2764<ul> 2765 2766<li> a = time from message arrival to last <a href="QSHAPE_README.html#active_queue">active queue</a> entry 2767 2768<li> b = time from last <a href="QSHAPE_README.html#active_queue">active queue</a> entry to connection setup 2769 2770<li> c = time in connection setup, including DNS, EHLO and STARTTLS 2771 2772<li> d = time in message transmission 2773 2774</ul> 2775 2776<p> This feature is available in Postfix 2.3 and later. </p> 2777 2778 2779</DD> 2780 2781<DT><b><a name="delay_notice_recipient">delay_notice_recipient</a> 2782(default: postmaster)</b></DT><DD> 2783 2784<p> 2785The recipient of postmaster notifications with the message headers 2786of mail that cannot be delivered within $<a href="postconf.5.html#delay_warning_time">delay_warning_time</a> time 2787units. </p> 2788 2789<p> 2790See also: <a href="postconf.5.html#delay_warning_time">delay_warning_time</a>, <a href="postconf.5.html#notify_classes">notify_classes</a>. 2791</p> 2792 2793 2794</DD> 2795 2796<DT><b><a name="delay_warning_time">delay_warning_time</a> 2797(default: 0h)</b></DT><DD> 2798 2799<p> 2800The time after which the sender receives a copy of the message 2801headers of mail that is still queued. The <a href="postconf.5.html#confirm_delay_cleared">confirm_delay_cleared</a> 2802parameter controls sender notification when the delay clears up. 2803</p> 2804 2805<p> 2806To enable this feature, specify a non-zero time value (an integral 2807value plus an optional one-letter suffix that specifies the time 2808unit). 2809</p> 2810 2811<p> 2812Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 2813The default time unit is h (hours). 2814</p> 2815 2816<p> 2817See also: <a href="postconf.5.html#delay_notice_recipient">delay_notice_recipient</a>, <a href="postconf.5.html#notify_classes">notify_classes</a>, <a href="postconf.5.html#confirm_delay_cleared">confirm_delay_cleared</a>. 2818</p> 2819 2820 2821</DD> 2822 2823<DT><b><a name="deliver_lock_attempts">deliver_lock_attempts</a> 2824(default: 20)</b></DT><DD> 2825 2826<p> 2827The maximal number of attempts to acquire an exclusive lock on a 2828mailbox file or <a href="bounce.8.html">bounce(8)</a> logfile. 2829</p> 2830 2831 2832</DD> 2833 2834<DT><b><a name="deliver_lock_delay">deliver_lock_delay</a> 2835(default: 1s)</b></DT><DD> 2836 2837<p> 2838The time between attempts to acquire an exclusive lock on a mailbox 2839file or <a href="bounce.8.html">bounce(8)</a> logfile. 2840</p> 2841 2842<p> 2843Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 2844The default time unit is s (seconds). 2845</p> 2846 2847 2848</DD> 2849 2850<DT><b><a name="destination_concurrency_feedback_debug">destination_concurrency_feedback_debug</a> 2851(default: no)</b></DT><DD> 2852 2853<p> Make the queue manager's feedback algorithm verbose for performance 2854analysis purposes. </p> 2855 2856<p> This feature is available in Postfix 2.5 and later. </p> 2857 2858 2859</DD> 2860 2861<DT><b><a name="detect_8bit_encoding_header">detect_8bit_encoding_header</a> 2862(default: yes)</b></DT><DD> 2863 2864<p> Automatically detect 8BITMIME body content by looking at 2865Content-Transfer-Encoding: message headers; historically, this 2866behavior was hard-coded to be "always on". </p> 2867 2868<p> This feature is available in Postfix 2.5 and later. </p> 2869 2870 2871</DD> 2872 2873<DT><b><a name="disable_dns_lookups">disable_dns_lookups</a> 2874(default: no)</b></DT><DD> 2875 2876<p> 2877Disable DNS lookups in the Postfix SMTP and LMTP clients. When 2878disabled, hosts are looked up with the getaddrinfo() system 2879library routine which normally also looks in /etc/hosts. As of 2880Postfix 2.11, this parameter is deprecated; use <a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a> 2881instead. 2882</p> 2883 2884<p> 2885DNS lookups are enabled by default. 2886</p> 2887 2888 2889</DD> 2890 2891<DT><b><a name="disable_mime_input_processing">disable_mime_input_processing</a> 2892(default: no)</b></DT><DD> 2893 2894<p> 2895Turn off MIME processing while receiving mail. This means that no 2896special treatment is given to Content-Type: message headers, and 2897that all text after the initial message headers is considered to 2898be part of the message body. 2899</p> 2900 2901<p> 2902This feature is available in Postfix 2.0 and later. 2903</p> 2904 2905<p> 2906Mime input processing is enabled by default, and is needed in order 2907to recognize MIME headers in message content. 2908</p> 2909 2910 2911</DD> 2912 2913<DT><b><a name="disable_mime_output_conversion">disable_mime_output_conversion</a> 2914(default: no)</b></DT><DD> 2915 2916<p> 2917Disable the conversion of 8BITMIME format to 7BIT format. Mime 2918output conversion is needed when the destination does not advertise 29198BITMIME support. 2920</p> 2921 2922<p> 2923This feature is available in Postfix 2.0 and later. 2924</p> 2925 2926 2927</DD> 2928 2929<DT><b><a name="disable_verp_bounces">disable_verp_bounces</a> 2930(default: no)</b></DT><DD> 2931 2932<p> 2933Disable sending one bounce report per recipient. 2934</p> 2935 2936<p> 2937The default, one per recipient, is what ezmlm needs. 2938</p> 2939 2940<p> 2941This feature is available in Postfix 1.1 and later. 2942</p> 2943 2944 2945</DD> 2946 2947<DT><b><a name="disable_vrfy_command">disable_vrfy_command</a> 2948(default: no)</b></DT><DD> 2949 2950<p> 2951Disable the SMTP VRFY command. This stops some techniques used to 2952harvest email addresses. 2953</p> 2954 2955<p> 2956Example: 2957</p> 2958 2959<pre> 2960<a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a> = no 2961</pre> 2962 2963 2964</DD> 2965 2966<DT><b><a name="dns_ncache_ttl_fix_enable">dns_ncache_ttl_fix_enable</a> 2967(default: no)</b></DT><DD> 2968 2969<p> Enable a workaround for future libc incompatibility. The Postfix 2970implementation of <a href="http://tools.ietf.org/html/rfc2308">RFC 2308</a> negative reply caching relies on the 2971promise that res_query() and res_search() invoke res_send(), which 2972returns the server response in an application buffer even if the 2973requested record does not exist. If this promise is broken, specify 2974"yes" to enable a workaround for DNS reputation lookups. </p> 2975 2976<p> 2977This feature is available in Postfix 3.1 and later. 2978</p> 2979 2980 2981</DD> 2982 2983<DT><b><a name="dnsblog_reply_delay">dnsblog_reply_delay</a> 2984(default: 0s)</b></DT><DD> 2985 2986<p> A debugging aid to artificially delay DNS responses. </p> 2987 2988<p> This feature is available in Postfix 2.8. </p> 2989 2990 2991</DD> 2992 2993<DT><b><a name="dnsblog_service_name">dnsblog_service_name</a> 2994(default: dnsblog)</b></DT><DD> 2995 2996<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 2997service performs DNS white/blacklist lookups. </p> 2998 2999<p> This feature is available in Postfix 2.8 and later. </p> 3000 3001 3002</DD> 3003 3004<DT><b><a name="dont_remove">dont_remove</a> 3005(default: 0)</b></DT><DD> 3006 3007<p> 3008Don't remove queue files and save them to the "saved" mail queue. 3009This is a debugging aid. To inspect the envelope information and 3010content of a Postfix queue file, use the <a href="postcat.1.html">postcat(1)</a> command. 3011</p> 3012 3013 3014</DD> 3015 3016<DT><b><a name="double_bounce_sender">double_bounce_sender</a> 3017(default: double-bounce)</b></DT><DD> 3018 3019<p> The sender address of postmaster notifications that are generated 3020by the mail system. All mail to this address is silently discarded, 3021in order to terminate mail bounce loops. </p> 3022 3023 3024</DD> 3025 3026<DT><b><a name="duplicate_filter_limit">duplicate_filter_limit</a> 3027(default: 1000)</b></DT><DD> 3028 3029<p> The maximal number of addresses remembered by the address 3030duplicate filter for <a href="aliases.5.html">aliases(5)</a> or <a href="virtual.5.html">virtual(5)</a> alias expansion, or 3031for <a href="showq.8.html">showq(8)</a> queue displays. </p> 3032 3033 3034</DD> 3035 3036<DT><b><a name="empty_address_default_transport_maps_lookup_key">empty_address_default_transport_maps_lookup_key</a> 3037(default: <>)</b></DT><DD> 3038 3039<p> The <a href="postconf.5.html#sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> search string that 3040will be used instead of the null sender address. </p> 3041 3042<p> This feature is available in Postfix 2.7 and later. </p> 3043 3044 3045</DD> 3046 3047<DT><b><a name="empty_address_recipient">empty_address_recipient</a> 3048(default: MAILER-DAEMON)</b></DT><DD> 3049 3050<p> 3051The recipient of mail addressed to the null address. Postfix does 3052not accept such addresses in SMTP commands, but they may still be 3053created locally as the result of configuration or software error. 3054</p> 3055 3056 3057</DD> 3058 3059<DT><b><a name="empty_address_relayhost_maps_lookup_key">empty_address_relayhost_maps_lookup_key</a> 3060(default: <>)</b></DT><DD> 3061 3062<p> The <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> search string that will be 3063used instead of the null sender address. </p> 3064 3065<p> This feature is available in Postfix 2.5 and later. With 3066earlier versions, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> lookups were 3067skipped for the null sender address. </p> 3068 3069 3070</DD> 3071 3072<DT><b><a name="enable_errors_to">enable_errors_to</a> 3073(default: no)</b></DT><DD> 3074 3075<p> Report mail delivery errors to the address specified with the 3076non-standard Errors-To: message header, instead of the envelope 3077sender address (this feature is removed with Postfix version 2.2, is 3078turned off by default with Postfix version 2.1, and is always turned on 3079with older Postfix versions). </p> 3080 3081 3082</DD> 3083 3084<DT><b><a name="enable_long_queue_ids">enable_long_queue_ids</a> 3085(default: no)</b></DT><DD> 3086 3087<p> Enable long, non-repeating, queue IDs (queue file names). The 3088benefit of non-repeating names is simpler logfile analysis and 3089easier queue migration (there is no need to run "postsuper" to 3090change queue file names that don't match their message file inode 3091number). </p> 3092 3093<p> Note: see below for how to convert long queue file names to 3094Postfix ≤ 2.8. </p> 3095 3096<p> Changing the parameter value to "yes" has the following effects: 3097</p> 3098 3099<ul> 3100 3101<li> <p> Existing queue file names are not affected. </p> 3102 3103<li> <p> New queue files are created with names such as 3Pt2mN2VXxznjll. 3104These are encoded in a 52-character alphabet that contains digits 3105(0-9), upper-case letters (B-Z) and lower-case letters (b-z). For 3106safety reasons the vowels (AEIOUaeiou) are excluded from the alphabet. 3107The name format is: 6 or more characters for the time in seconds, 31084 characters for the time in microseconds, the 'z'; the remainder 3109is the file inode number encoded in the first 51 characters of the 311052-character alphabet. </p> 3111 3112<li> <p> New messages have a Message-ID header with 3113<i>queueID</i>@<i><a href="postconf.5.html#myhostname">myhostname</a></i>. </p> 3114 3115<li> <p> The mailq (postqueue -p) output has a wider Queue ID column. 3116The number of whitespace-separated fields is not changed. <p> 3117 3118<li> <p> The <a href="postconf.5.html#hash_queue_depth">hash_queue_depth</a> algorithm uses the first characters 3119of the queue file creation time in microseconds, after conversion 3120into hexadecimal representation. This produces the same queue hashing 3121behavior as if the queue file name was created with "<a href="postconf.5.html#enable_long_queue_ids">enable_long_queue_ids</a> 3122= no". </p> 3123 3124</ul> 3125 3126<p> Changing the parameter value to "no" has the following effects: 3127</p> 3128 3129<ul> 3130 3131<li> <p> Existing long queue file names are renamed to the short 3132form (while running "postfix reload" or "postsuper"). </p> 3133 3134<li> <p> New queue files are created with names such as C3CD21F3E90 3135from a hexadecimal alphabet that contains digits (0-9) and upper-case 3136letters (A-F). The name format is: 5 characters for the time in 3137microseconds; the remainder is the file inode number. </p> 3138 3139<li> <p> New messages have a Message-ID header with 3140<i>YYYYMMDDHHMMSS.queueid</i>@<i><a href="postconf.5.html#myhostname">myhostname</a></i>, where 3141<i>YYYYMMDDHHMMSS</i> are the year, month, day, hour, minute and 3142second. 3143 3144<li> <p> The mailq (postqueue -p) output has the same format as 3145with Postfix ≤ 2.8. <p> 3146 3147<li> <p> The <a href="postconf.5.html#hash_queue_depth">hash_queue_depth</a> algorithm uses the first characters 3148of the queue file name, with the hexadecimal representation of the 3149file creation time in microseconds. </p> 3150 3151</ul> 3152 3153<p> Before migration to Postfix ≤ 2.8, the following commands 3154are required to convert long queue file names into short names: </p> 3155 3156<pre> 3157# postfix stop 3158# postconf <a href="postconf.5.html#enable_long_queue_ids">enable_long_queue_ids</a>=no 3159# postsuper 3160</pre> 3161 3162<p> Repeat the postsuper command until it reports no more queue file 3163name changes. </p> 3164 3165<p> This feature is available in Postfix 2.9 and later. </p> 3166 3167 3168</DD> 3169 3170<DT><b><a name="enable_original_recipient">enable_original_recipient</a> 3171(default: yes)</b></DT><DD> 3172 3173<p> Enable support for the X-Original-To message header. This header 3174is needed for multi-recipient mailboxes. </p> 3175 3176<p> When this parameter is set to yes, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs 3177duplicate elimination on distinct pairs of (original recipient, 3178rewritten recipient), and generates non-empty original recipient 3179queue file records. </p> 3180 3181<p> When this parameter is set to no, the <a href="cleanup.8.html">cleanup(8)</a> daemon performs 3182duplicate elimination on the rewritten recipient address only, and 3183generates empty original recipient queue file records. </p> 3184 3185<p> This feature is available in Postfix 2.1 and later. With Postfix 3186version 2.0, support for the X-Original-To message header is always turned 3187on. Postfix versions before 2.0 have no support for the X-Original-To 3188message header. </p> 3189 3190 3191</DD> 3192 3193<DT><b><a name="error_notice_recipient">error_notice_recipient</a> 3194(default: postmaster)</b></DT><DD> 3195 3196<p> The recipient of postmaster notifications about mail delivery 3197problems that are caused by policy, resource, software or protocol 3198errors. These notifications are enabled with the <a href="postconf.5.html#notify_classes">notify_classes</a> 3199parameter. </p> 3200 3201 3202</DD> 3203 3204<DT><b><a name="error_service_name">error_service_name</a> 3205(default: error)</b></DT><DD> 3206 3207<p> 3208The name of the <a href="error.8.html">error(8)</a> pseudo delivery agent. This service always 3209returns mail as undeliverable. 3210</p> 3211 3212<p> 3213This feature is available in Postfix 2.0 and later. 3214</p> 3215 3216 3217</DD> 3218 3219<DT><b><a name="execution_directory_expansion_filter">execution_directory_expansion_filter</a> 3220(default: see "postconf -d" output)</b></DT><DD> 3221 3222<p> Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows 3223in $name expansions of $<a href="postconf.5.html#command_execution_directory">command_execution_directory</a>. Characters 3224outside the allowed set are replaced by underscores. </p> 3225 3226<p> This feature is available in Postfix 2.2 and later. </p> 3227 3228 3229</DD> 3230 3231<DT><b><a name="expand_owner_alias">expand_owner_alias</a> 3232(default: no)</b></DT><DD> 3233 3234<p> 3235When delivering to an alias "aliasname" that has an "owner-aliasname" 3236companion alias, set the envelope sender address to the expansion 3237of the "owner-aliasname" alias. Normally, Postfix sets the envelope 3238sender address to the name of the "owner-aliasname" alias. 3239</p> 3240 3241 3242</DD> 3243 3244<DT><b><a name="export_environment">export_environment</a> 3245(default: see "postconf -d" output)</b></DT><DD> 3246 3247<p> 3248The list of environment variables that a Postfix process will export 3249to non-Postfix processes. The TZ variable is needed for sane 3250time keeping on System-V-ish systems. 3251</p> 3252 3253<p> 3254Specify a list of names and/or name=value pairs, separated by 3255whitespace or comma. Specify "{ name=value }" to protect whitespace 3256or comma in parameter values (whitespace after "{" and before "}" 3257is ignored). The form name=value is supported with Postfix version 32582.1 and later; the use of {} is supported with Postfix 3.0 and 3259later. </p> 3260 3261<p> 3262Example: 3263</p> 3264 3265<pre> 3266<a href="postconf.5.html#export_environment">export_environment</a> = TZ PATH=/bin:/usr/bin 3267</pre> 3268 3269 3270</DD> 3271 3272<DT><b><a name="extract_recipient_limit">extract_recipient_limit</a> 3273(default: 10240)</b></DT><DD> 3274 3275<p> 3276The maximal number of recipient addresses that Postfix will extract 3277from message headers when mail is submitted with "<b>sendmail -t</b>". 3278</p> 3279 3280<p> 3281This feature was removed in Postfix version 2.1. 3282</p> 3283 3284 3285</DD> 3286 3287<DT><b><a name="fallback_relay">fallback_relay</a> 3288(default: empty)</b></DT><DD> 3289 3290<p> 3291Optional list of relay hosts for SMTP destinations that can't be 3292found or that are unreachable. With Postfix 2.3 this parameter 3293is renamed to <a href="postconf.5.html#smtp_fallback_relay">smtp_fallback_relay</a>. </p> 3294 3295<p> 3296By default, mail is returned to the sender when a destination is 3297not found, and delivery is deferred when a destination is unreachable. 3298</p> 3299 3300<p> The fallback relays must be SMTP destinations. Specify a domain, 3301host, host:port, [host]:port, [address] or [address]:port; the form 3302[host] turns off MX lookups. If you specify multiple SMTP 3303destinations, Postfix will try them in the specified order. </p> 3304 3305<p> Note: before Postfix 2.2, do not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature 3306when relaying mail 3307for a backup or primary MX domain. Mail would loop between the 3308Postfix MX host and the <a href="postconf.5.html#fallback_relay">fallback_relay</a> host when the final destination 3309is unavailable. </p> 3310 3311<ul> 3312 3313<li> In <a href="postconf.5.html">main.cf</a> specify "<a href="postconf.5.html#relay_transport">relay_transport</a> = relay", 3314 3315<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 3316the end of the <tt>relay</tt> entry. 3317 3318<li> In transport maps, specify "relay:<i>nexthop...</i>" 3319as the right-hand side for backup or primary MX domain entries. 3320 3321</ul> 3322 3323<p> Postfix version 2.2 and later will not use the <a href="postconf.5.html#fallback_relay">fallback_relay</a> feature 3324for destinations that it is MX host for. 3325</p> 3326 3327 3328</DD> 3329 3330<DT><b><a name="fallback_transport">fallback_transport</a> 3331(default: empty)</b></DT><DD> 3332 3333<p> 3334Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery 3335agent should use for names that are not found in the <a href="aliases.5.html">aliases(5)</a> 3336or UNIX password database. 3337</p> 3338 3339<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 3340is: 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>, 3341<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>, 3342<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> 3343 3344 3345</DD> 3346 3347<DT><b><a name="fallback_transport_maps">fallback_transport_maps</a> 3348(default: empty)</b></DT><DD> 3349 3350<p> Optional lookup tables with per-recipient message delivery 3351transports for recipients that the <a href="local.8.html">local(8)</a> delivery agent could 3352not find in the <a href="aliases.5.html">aliases(5)</a> or UNIX password database. </p> 3353 3354<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 3355is: 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>, 3356<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>, 3357<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> 3358 3359<p> For safety reasons, this feature does not allow $number 3360substitutions in regular expression maps. </p> 3361 3362<p> This feature is available in Postfix 2.3 and later. </p> 3363 3364 3365</DD> 3366 3367<DT><b><a name="fast_flush_domains">fast_flush_domains</a> 3368(default: $<a href="postconf.5.html#relay_domains">relay_domains</a>)</b></DT><DD> 3369 3370<p> 3371Optional list of destinations that are eligible for per-destination 3372logfiles with mail that is queued to those destinations. 3373</p> 3374 3375<p> 3376By default, Postfix maintains "fast flush" logfiles only for 3377destinations that the Postfix SMTP server is willing to relay to 3378(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 3379the <a href="postconf.5.html#relay_domains">relay_domains</a> parameter in the <a href="postconf.5.html">postconf(5)</a> manual). 3380</p> 3381 3382<p> Specify a list of hosts or domains, "/file/name" patterns or 3383"<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace. 3384Continue long lines by starting the next line with whitespace. A 3385"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" 3386lookup table is matched when the domain or its parent domain appears 3387as lookup key. </p> 3388 3389<p> Pattern matching of domain names is controlled by the presence 3390or absence of "<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a>" in the <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 3391parameter value. </p> 3392 3393<p> 3394Specify "<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a> =" (i.e., empty) to disable the feature 3395altogether. 3396</p> 3397 3398 3399</DD> 3400 3401<DT><b><a name="fast_flush_purge_time">fast_flush_purge_time</a> 3402(default: 7d)</b></DT><DD> 3403 3404<p> 3405The time after which an empty per-destination "fast flush" logfile 3406is deleted. 3407</p> 3408 3409<p> 3410You can specify the time as a number, or as a number followed by 3411a letter that indicates the time unit: s=seconds, m=minutes, h=hours, 3412d=days, w=weeks. The default time unit is days. 3413</p> 3414 3415 3416</DD> 3417 3418<DT><b><a name="fast_flush_refresh_time">fast_flush_refresh_time</a> 3419(default: 12h)</b></DT><DD> 3420 3421<p> 3422The time after which a non-empty but unread per-destination "fast 3423flush" logfile needs to be refreshed. The contents of a logfile 3424are refreshed by requesting delivery of all messages listed in the 3425logfile. 3426</p> 3427 3428<p> 3429You can specify the time as a number, or as a number followed by 3430a letter that indicates the time unit: s=seconds, m=minutes, h=hours, 3431d=days, w=weeks. The default time unit is hours. 3432</p> 3433 3434 3435</DD> 3436 3437<DT><b><a name="fault_injection_code">fault_injection_code</a> 3438(default: 0)</b></DT><DD> 3439 3440<p> 3441Force specific internal tests to fail, to test the handling of 3442errors that are difficult to reproduce otherwise. 3443</p> 3444 3445 3446</DD> 3447 3448<DT><b><a name="flush_service_name">flush_service_name</a> 3449(default: flush)</b></DT><DD> 3450 3451<p> 3452The name of the <a href="flush.8.html">flush(8)</a> service. This service maintains per-destination 3453logfiles with the queue file names of mail that is queued for those 3454destinations. 3455</p> 3456 3457<p> 3458This feature is available in Postfix 2.0 and later. 3459</p> 3460 3461 3462</DD> 3463 3464<DT><b><a name="fork_attempts">fork_attempts</a> 3465(default: 5)</b></DT><DD> 3466 3467<p> The maximal number of attempts to fork() a child process. </p> 3468 3469 3470</DD> 3471 3472<DT><b><a name="fork_delay">fork_delay</a> 3473(default: 1s)</b></DT><DD> 3474 3475<p> The delay between attempts to fork() a child process. </p> 3476 3477<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 3478(weeks). The default time unit is s (seconds). </p> 3479 3480 3481</DD> 3482 3483<DT><b><a name="forward_expansion_filter">forward_expansion_filter</a> 3484(default: see "postconf -d" output)</b></DT><DD> 3485 3486<p> 3487Restrict the characters that the <a href="local.8.html">local(8)</a> delivery agent allows in 3488$name expansions of $<a href="postconf.5.html#forward_path">forward_path</a>. Characters outside the 3489allowed set are replaced by underscores. 3490</p> 3491 3492 3493</DD> 3494 3495<DT><b><a name="forward_path">forward_path</a> 3496(default: see "postconf -d" output)</b></DT><DD> 3497 3498<p> The <a href="local.8.html">local(8)</a> delivery agent search list for finding a .forward 3499file with user-specified delivery methods. The first file that is 3500found is used. </p> 3501 3502<p> The following $name expansions are done on <a href="postconf.5.html#forward_path">forward_path</a> before 3503the search actually happens. The result of $name expansion is 3504filtered with the character set that is specified with the 3505<a href="postconf.5.html#forward_expansion_filter">forward_expansion_filter</a> parameter. </p> 3506 3507<dl> 3508 3509<dt><b>$user</b></dt> 3510 3511<dd>The recipient's username. </dd> 3512 3513<dt><b>$shell</b></dt> 3514 3515<dd>The recipient's login shell pathname. </dd> 3516 3517<dt><b>$home</b></dt> 3518 3519<dd>The recipient's home directory. </dd> 3520 3521<dt><b>$recipient</b></dt> 3522 3523<dd>The full recipient address. </dd> 3524 3525<dt><b>$extension</b></dt> 3526 3527<dd>The optional recipient address extension. </dd> 3528 3529<dt><b>$domain</b></dt> 3530 3531<dd>The recipient domain. </dd> 3532 3533<dt><b>$local</b></dt> 3534 3535<dd>The entire recipient localpart. </dd> 3536 3537<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt> 3538 3539<dd>The address extension delimiter that was found in the recipient 3540address (Postfix 2.11 and later), or the system-wide recipient 3541address extension delimiter (Postfix 2.10 and earlier). </dd> 3542 3543<dt><b>${name?value}</b></dt> 3544 3545<dd>Expands to <i>value</i> when <i>$name</i> is non-empty. </dd> 3546 3547<dt><b>${name:value}</b></dt> 3548 3549<dd>Expands to <i>value</i> when <i>$name</i> is empty. </dd> 3550 3551</dl> 3552 3553<p> 3554Instead of $name you can also specify ${name} or $(name). 3555</p> 3556 3557<p> 3558Examples: 3559</p> 3560 3561<pre> 3562<a href="postconf.5.html#forward_path">forward_path</a> = /var/forward/$user 3563<a href="postconf.5.html#forward_path">forward_path</a> = 3564 /var/forward/$user/.forward$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>$extension, 3565 /var/forward/$user/.forward 3566</pre> 3567 3568 3569</DD> 3570 3571<DT><b><a name="frozen_delivered_to">frozen_delivered_to</a> 3572(default: yes)</b></DT><DD> 3573 3574<p> Update the <a href="local.8.html">local(8)</a> delivery agent's idea of the Delivered-To: 3575address (see <a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a>) only once, at the start of 3576a delivery attempt; do not update the Delivered-To: address while 3577expanding aliases or .forward files. </p> 3578 3579<p> This feature is available in Postfix 2.3 and later. With older 3580Postfix releases, the behavior is as if this parameter is set to 3581"no". The old setting can be expensive with deeply nested aliases 3582or .forward files. When an alias or .forward file changes the 3583Delivered-To: address, it ties up one queue file and one cleanup 3584process instance while mail is being forwarded. </p> 3585 3586 3587</DD> 3588 3589<DT><b><a name="hash_queue_depth">hash_queue_depth</a> 3590(default: 1)</b></DT><DD> 3591 3592<p> 3593The number of subdirectory levels for queue directories listed with 3594the <a href="postconf.5.html#hash_queue_names">hash_queue_names</a> parameter. Queue hashing is implemented by 3595creating one or more levels of directories with one-character names. 3596Originally, these directory names were equal to the first characters 3597of the queue file name, with the hexadecimal representation of the 3598file creation time in microseconds. </p> 3599 3600<p> With long queue file names, queue hashing produces the same 3601results as with short names. The file creation time in microseconds 3602is converted into hexadecimal form before the result is used for 3603queue hashing. The base 16 encoding gives finer control over the 3604number of subdirectories than is possible with the base 52 encoding 3605of long queue file names. </p> 3606 3607<p> 3608After 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, 3609execute the command "<b>postfix reload</b>". 3610</p> 3611 3612 3613</DD> 3614 3615<DT><b><a name="hash_queue_names">hash_queue_names</a> 3616(default: deferred, defer)</b></DT><DD> 3617 3618<p> 3619The names of queue directories that are split across multiple 3620subdirectory levels. 3621</p> 3622 3623<p> Before Postfix version 2.2, the default list of hashed queues 3624was significantly larger. Claims about improvements in file system 3625technology 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> 3626is no longer needed. Fewer hashed directories speed up the time 3627needed to restart Postfix. </p> 3628 3629<p> 3630After 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, 3631execute the command "<b>postfix reload</b>". 3632</p> 3633 3634 3635</DD> 3636 3637<DT><b><a name="header_address_token_limit">header_address_token_limit</a> 3638(default: 10240)</b></DT><DD> 3639 3640<p> 3641The maximal number of address tokens are allowed in an address 3642message header. Information that exceeds the limit is discarded. 3643The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a> server. 3644</p> 3645 3646 3647</DD> 3648 3649<DT><b><a name="header_checks">header_checks</a> 3650(default: empty)</b></DT><DD> 3651 3652<p> 3653Optional lookup tables for content inspection of primary non-MIME 3654message headers, as specified in the <a href="header_checks.5.html">header_checks(5)</a> manual page. 3655</p> 3656 3657 3658</DD> 3659 3660<DT><b><a name="header_size_limit">header_size_limit</a> 3661(default: 102400)</b></DT><DD> 3662 3663<p> 3664The maximal amount of memory in bytes for storing a message header. 3665If a header is larger, the excess is discarded. The limit is 3666enforced by the <a href="cleanup.8.html">cleanup(8)</a> server. 3667</p> 3668 3669 3670</DD> 3671 3672<DT><b><a name="helpful_warnings">helpful_warnings</a> 3673(default: yes)</b></DT><DD> 3674 3675<p> 3676Log warnings about problematic configuration settings, and provide 3677helpful suggestions. 3678</p> 3679 3680<p> 3681This feature is available in Postfix 2.0 and later. 3682</p> 3683 3684 3685</DD> 3686 3687<DT><b><a name="home_mailbox">home_mailbox</a> 3688(default: empty)</b></DT><DD> 3689 3690<p> 3691Optional pathname of a mailbox file relative to a <a href="local.8.html">local(8)</a> user's 3692home directory. 3693</p> 3694 3695<p> 3696Specify a pathname ending in "/" for qmail-style delivery. 3697</p> 3698 3699<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 3700is: 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>, 3701<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>, 3702<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> 3703 3704<p> 3705Examples: 3706</p> 3707 3708<pre> 3709<a href="postconf.5.html#home_mailbox">home_mailbox</a> = Mailbox 3710<a href="postconf.5.html#home_mailbox">home_mailbox</a> = Maildir/ 3711</pre> 3712 3713 3714</DD> 3715 3716<DT><b><a name="hopcount_limit">hopcount_limit</a> 3717(default: 50)</b></DT><DD> 3718 3719<p> 3720The maximal number of Received: message headers that is allowed 3721in the primary message headers. A message that exceeds the limit 3722is bounced, in order to stop a mailer loop. 3723</p> 3724 3725 3726</DD> 3727 3728<DT><b><a name="html_directory">html_directory</a> 3729(default: see "postconf -d" output)</b></DT><DD> 3730 3731<p> 3732The location of Postfix HTML files that describe how to build, 3733configure or operate a specific Postfix subsystem or feature. 3734</p> 3735 3736 3737</DD> 3738 3739<DT><b><a name="ignore_mx_lookup_error">ignore_mx_lookup_error</a> 3740(default: no)</b></DT><DD> 3741 3742<p> Ignore DNS MX lookups that produce no response. By default, 3743the Postfix SMTP client defers delivery and tries again after some 3744delay. This behavior is required by the SMTP standard. </p> 3745 3746<p> 3747Specify "<a href="postconf.5.html#ignore_mx_lookup_error">ignore_mx_lookup_error</a> = yes" to force a DNS A record 3748lookup instead. This violates the SMTP standard and can result in 3749mis-delivery of mail. 3750</p> 3751 3752 3753</DD> 3754 3755<DT><b><a name="import_environment">import_environment</a> 3756(default: see "postconf -d" output)</b></DT><DD> 3757 3758<p> 3759The list of environment parameters that a Postfix process will 3760import from a non-Postfix parent process. Examples of relevant 3761parameters: 3762</p> 3763 3764<dl> 3765 3766<dt><b>TZ</b></dt> 3767 3768<dd>Needed for sane time keeping on most System-V-ish systems. </dd> 3769 3770<dt><b>DISPLAY</b></dt> 3771 3772<dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd> 3773 3774<dt><b>XAUTHORITY</b></dt> 3775 3776<dd>Needed for debugging Postfix daemons with an X-windows debugger. </dd> 3777 3778<dt><b>MAIL_CONFIG</b></dt> 3779 3780<dd>Needed to make "<b>postfix -c</b>" work. </dd> 3781 3782</dl> 3783 3784<p> Specify a list of names and/or name=value pairs, separated by 3785whitespace or comma. Specify "{ name=value }" to protect whitespace 3786or comma in parameter values (whitespace after "{" and before "}" 3787is ignored). The form name=value is supported with Postfix version 37882.1 and later; the use of {} is supported with Postfix 3.0 and 3789later. </p> 3790 3791 3792</DD> 3793 3794<DT><b><a name="in_flow_delay">in_flow_delay</a> 3795(default: 1s)</b></DT><DD> 3796 3797<p> Time to pause before accepting a new message, when the message 3798arrival rate exceeds the message delivery rate. This feature is 3799turned on by default (it's disabled on SCO UNIX due to an SCO bug). 3800</p> 3801 3802<p> 3803With the default 100 Postfix SMTP server process limit, "<a href="postconf.5.html#in_flow_delay">in_flow_delay</a> 3804= 1s" limits the mail inflow to 100 messages per second above the 3805number of messages delivered per second. 3806</p> 3807 3808<p> 3809Specify 0 to disable the feature. Valid delays are 0..10. 3810</p> 3811 3812 3813</DD> 3814 3815<DT><b><a name="inet_interfaces">inet_interfaces</a> 3816(default: all)</b></DT><DD> 3817 3818<p> The network interface addresses that this mail system receives 3819mail on. Specify "all" to receive mail on all network 3820interfaces (default), and "loopback-only" to receive mail 3821on loopback network interfaces only (Postfix version 2.2 and later). The 3822parameter also controls delivery of mail to <tt>user@[ip.address]</tt>. 3823</p> 3824 3825<p> 3826Note 1: you need to stop and start Postfix when this parameter changes. 3827</p> 3828 3829<p> Note 2: address information may be enclosed inside <tt>[]</tt>, 3830but this form is not required here. </p> 3831 3832<p> When <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies just one IPv4 and/or IPv6 address 3833that is not a loopback address, the Postfix SMTP client will use 3834this address as the IP source address for outbound mail. Support 3835for IPv6 is available in Postfix version 2.2 and later. </p> 3836 3837<p> 3838On a multi-homed firewall with separate Postfix instances listening on the 3839"inside" and "outside" interfaces, this can prevent each instance from 3840being able to reach remote SMTP servers on the "other side" of the 3841firewall. Setting 3842<a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> to 0.0.0.0 avoids the potential problem for 3843IPv4, and setting <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> to :: solves the problem 3844for IPv6. </p> 3845 3846<p> 3847A better solution for multi-homed firewalls is to leave <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> 3848at the default value and instead use explicit IP addresses in 3849the <a href="master.5.html">master.cf</a> SMTP server definitions. This preserves the Postfix 3850SMTP client's 3851loop detection, by ensuring that each side of the firewall knows that the 3852other IP address is still the same host. Setting $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> to a 3853single IPv4 and/or IPV6 address is primarily useful with virtual 3854hosting of domains on 3855secondary IP addresses, when each IP address serves a different domain 3856(and has a different $<a href="postconf.5.html#myhostname">myhostname</a> setting). </p> 3857 3858<p> 3859See also the <a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> parameter, for network addresses that 3860are forwarded to Postfix by way of a proxy or address translator. 3861</p> 3862 3863<p> 3864Examples: 3865</p> 3866 3867<pre> 3868<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = all (DEFAULT) 3869<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = loopback-only (Postfix version 2.2 and later) 3870<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1 3871<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 127.0.0.1, [::1] (Postfix version 2.2 and later) 3872<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> = 192.168.1.2, 127.0.0.1 3873</pre> 3874 3875 3876</DD> 3877 3878<DT><b><a name="inet_protocols">inet_protocols</a> 3879(default: all)</b></DT><DD> 3880 3881<p> The Internet protocols Postfix will attempt to use when making 3882or accepting connections. Specify one or more of "ipv4" 3883or "ipv6", separated by whitespace or commas. The form 3884"all" is equivalent to "ipv4, ipv6" or "ipv4", depending 3885on whether the operating system implements IPv6. </p> 3886 3887<p> With Postfix 2.8 and earlier the default is "ipv4". For backwards 3888compatibility with these releases, the Postfix 2.9 and later upgrade 3889procedure appends an explicit "<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4" setting to 3890<a href="postconf.5.html">main.cf</a> when no explicit setting is present. This compatibility 3891workaround will be phased out as IPv6 deployment becomes more common. 3892</p> 3893 3894<p> This feature is available in Postfix 2.2 and later. </p> 3895 3896<p> Note: you MUST stop and start Postfix after changing this 3897parameter. </p> 3898 3899<p> On systems that pre-date IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>), an 3900IPv6 server will also accept IPv4 connections, even when IPv4 is 3901turned off with the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter. On systems with 3902IPV6_V6ONLY support, Postfix will use separate server sockets for 3903IPv6 and IPv4, and each will accept only connections for the 3904corresponding protocol. </p> 3905 3906<p> When IPv4 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter, 3907Postfix will look up DNS type A records, and will convert 3908IPv4-in-IPv6 client IP addresses (::ffff:1.2.3.4) to their original 3909IPv4 form (1.2.3.4). The latter is needed on hosts that pre-date 3910IPV6_V6ONLY support (<a href="http://tools.ietf.org/html/rfc3493">RFC 3493</a>). </p> 3911 3912<p> When IPv6 support is enabled via the <a href="postconf.5.html#inet_protocols">inet_protocols</a> parameter, 3913Postfix will do DNS type AAAA record lookups. </p> 3914 3915<p> When both IPv4 and IPv6 support are enabled, the Postfix SMTP 3916client will choose the protocol as specified with the 3917<a href="postconf.5.html#smtp_address_preference">smtp_address_preference</a> parameter. Postfix versions before 2.8 3918attempt to connect via IPv6 before attempting to use IPv4. </p> 3919 3920<p> 3921Examples: 3922</p> 3923 3924<pre> 3925<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4 3926<a href="postconf.5.html#inet_protocols">inet_protocols</a> = all (DEFAULT) 3927<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv6 3928<a href="postconf.5.html#inet_protocols">inet_protocols</a> = ipv4, ipv6 3929</pre> 3930 3931 3932</DD> 3933 3934<DT><b><a name="initial_destination_concurrency">initial_destination_concurrency</a> 3935(default: 5)</b></DT><DD> 3936 3937<p> 3938The initial per-destination concurrency level for parallel delivery 3939to the same destination. 3940With per-destination recipient limit > 1, a destination is a domain, 3941otherwise it is a recipient. 3942</p> 3943 3944<p> Use <a href="postconf.5.html#transport_initial_destination_concurrency"><i>transport</i>_initial_destination_concurrency</a> to specify 3945a transport-specific override, where <i>transport</i> is the <a href="master.5.html">master.cf</a> 3946name of the message delivery transport (Postfix 2.5 and later). </p> 3947 3948<p> 3949Warning: with concurrency of 1, one bad message can be enough to 3950block all mail to a site. 3951</p> 3952 3953 3954</DD> 3955 3956<DT><b><a name="internal_mail_filter_classes">internal_mail_filter_classes</a> 3957(default: empty)</b></DT><DD> 3958 3959<p> What categories of Postfix-generated mail are subject to 3960before-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> 3961and <a href="postconf.5.html#body_checks">body_checks</a>. Specify zero or more of the following, separated 3962by whitespace or comma. </p> 3963 3964<dl> 3965 3966<dt><b>bounce</b></dt> <dd> Inspect the content of delivery 3967status notifications. </dd> 3968 3969<dt><b>notify</b></dt> <dd> Inspect the content of postmaster 3970notifications by the <a href="smtp.8.html">smtp(8)</a> and <a href="smtpd.8.html">smtpd(8)</a> processes. </dd> 3971 3972</dl> 3973 3974<p> NOTE: It's generally not safe to enable content inspection of 3975Postfix-generated email messages. The user is warned. </p> 3976 3977<p> This feature is available in Postfix 2.3 and later. </p> 3978 3979 3980</DD> 3981 3982<DT><b><a name="invalid_hostname_reject_code">invalid_hostname_reject_code</a> 3983(default: 501)</b></DT><DD> 3984 3985<p> 3986The numerical Postfix SMTP server response code when the client 3987HELO or EHLO command parameter is rejected by the <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a> 3988restriction. 3989</p> 3990 3991<p> 3992Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 3993</p> 3994 3995 3996</DD> 3997 3998<DT><b><a name="ipc_idle">ipc_idle</a> 3999(default: version dependent)</b></DT><DD> 4000 4001<p> 4002The time after which a client closes an idle internal communication 4003channel. The purpose is to allow Postfix daemon processes to 4004terminate voluntarily after they become idle. This is used, for 4005example, by the Postfix address resolving and rewriting clients. 4006</p> 4007 4008<p> With Postfix 2.4 the default value was reduced from 100s to 5s. </p> 4009 4010<p> 4011Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4012The default time unit is s (seconds). 4013</p> 4014 4015 4016</DD> 4017 4018<DT><b><a name="ipc_timeout">ipc_timeout</a> 4019(default: 3600s)</b></DT><DD> 4020 4021<p> 4022The time limit for sending or receiving information over an internal 4023communication channel. The purpose is to break out of deadlock 4024situations. If the time limit is exceeded the software aborts with a 4025fatal error. 4026</p> 4027 4028<p> 4029Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4030The default time unit is s (seconds). 4031</p> 4032 4033 4034</DD> 4035 4036<DT><b><a name="ipc_ttl">ipc_ttl</a> 4037(default: 1000s)</b></DT><DD> 4038 4039<p> 4040The time after which a client closes an active internal communication 4041channel. The purpose is to allow Postfix daemon processes to 4042terminate voluntarily 4043after reaching their client limit. This is used, for example, by 4044the Postfix address resolving and rewriting clients. 4045</p> 4046 4047<p> 4048Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4049The default time unit is s (seconds). 4050</p> 4051 4052<p> 4053This feature is available in Postfix 2.1 and later. 4054</p> 4055 4056 4057</DD> 4058 4059<DT><b><a name="line_length_limit">line_length_limit</a> 4060(default: 2048)</b></DT><DD> 4061 4062<p> Upon input, long lines are chopped up into pieces of at most 4063this length; upon delivery, long lines are reconstructed. </p> 4064 4065 4066</DD> 4067 4068<DT><b><a name="lmdb_map_size">lmdb_map_size</a> 4069(default: 16777216)</b></DT><DD> 4070 4071<p> 4072The initial OpenLDAP LMDB database size limit in bytes. Each time 4073a database becomes full, its size limit is doubled. 4074</p> 4075 4076<p> 4077This feature is available in Postfix 2.11 and later. 4078</p> 4079 4080 4081</DD> 4082 4083<DT><b><a name="lmtp_address_preference">lmtp_address_preference</a> 4084(default: ipv6)</b></DT><DD> 4085 4086<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_address_preference">smtp_address_preference</a> 4087configuration parameter. See there for details. </p> 4088 4089<p> This feature is available in Postfix 2.8 and later. </p> 4090 4091 4092</DD> 4093 4094<DT><b><a name="lmtp_address_verify_target">lmtp_address_verify_target</a> 4095(default: rcpt)</b></DT><DD> 4096 4097<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_address_verify_target">smtp_address_verify_target</a> 4098configuration parameter. See there for details. </p> 4099 4100<p> This feature is available in Postfix 3.0 and later. </p> 4101 4102 4103</DD> 4104 4105<DT><b><a name="lmtp_assume_final">lmtp_assume_final</a> 4106(default: no)</b></DT><DD> 4107 4108<p> When a remote LMTP server announces no DSN support, assume that 4109the 4110server performs final delivery, and send "delivered" delivery status 4111notifications instead of "relayed". The default setting is backwards 4112compatible to avoid the infinitesimal possibility of breaking 4113existing LMTP-based content filters. </p> 4114 4115 4116</DD> 4117 4118<DT><b><a name="lmtp_bind_address">lmtp_bind_address</a> 4119(default: empty)</b></DT><DD> 4120 4121<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a> configuration 4122parameter. See there for details. </p> 4123 4124<p> This feature is available in Postfix 2.3 and later. </p> 4125 4126 4127</DD> 4128 4129<DT><b><a name="lmtp_bind_address6">lmtp_bind_address6</a> 4130(default: empty)</b></DT><DD> 4131 4132<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a> configuration 4133parameter. See there for details. </p> 4134 4135<p> This feature is available in Postfix 2.3 and later. </p> 4136 4137 4138</DD> 4139 4140<DT><b><a name="lmtp_body_checks">lmtp_body_checks</a> 4141(default: empty)</b></DT><DD> 4142 4143<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_body_checks">smtp_body_checks</a> configuration 4144parameter. See there for details. </p> 4145 4146<p> This feature is available in Postfix 2.5 and later. </p> 4147 4148 4149</DD> 4150 4151<DT><b><a name="lmtp_cache_connection">lmtp_cache_connection</a> 4152(default: yes)</b></DT><DD> 4153 4154<p> 4155Keep Postfix LMTP client connections open for up to $<a href="postconf.5.html#max_idle">max_idle</a> 4156seconds. When the LMTP client receives a request for the same 4157connection the connection is reused. 4158</p> 4159 4160<p> This parameter is available in Postfix version 2.2 and earlier. 4161With Postfix version 2.3 and later, see <a href="postconf.5.html#lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a>, 4162<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>. 4163</p> 4164 4165<p> 4166The effectiveness of cached connections will be determined by the 4167number of remote LMTP servers in use, and the concurrency limit specified 4168for the Postfix LMTP client. Cached connections are closed under any of 4169the following conditions: 4170</p> 4171 4172<ul> 4173 4174<li> The Postfix LMTP client idle time limit is reached. This limit is 4175specified with the Postfix <a href="postconf.5.html#max_idle">max_idle</a> configuration parameter. 4176 4177<li> A delivery request specifies a different destination than the 4178one currently cached. 4179 4180<li> The per-process limit on the number of delivery requests is 4181reached. This limit is specified with the Postfix <a href="postconf.5.html#max_use">max_use</a> 4182configuration parameter. 4183 4184<li> Upon the onset of another delivery request, the remote LMTP server 4185associated with the current session does not respond to the RSET 4186command. 4187 4188</ul> 4189 4190<p> 4191Most of these limitations have been with the Postfix 4192a connection cache that is shared among multiple LMTP client 4193programs. 4194</p> 4195 4196 4197</DD> 4198 4199<DT><b><a name="lmtp_cname_overrides_servername">lmtp_cname_overrides_servername</a> 4200(default: yes)</b></DT><DD> 4201 4202<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_cname_overrides_servername">smtp_cname_overrides_servername</a> 4203configuration parameter. See there for details. </p> 4204 4205<p> This feature is available in Postfix 2.3 and later. </p> 4206 4207 4208</DD> 4209 4210<DT><b><a name="lmtp_connect_timeout">lmtp_connect_timeout</a> 4211(default: 0s)</b></DT><DD> 4212 4213<p> The Postfix LMTP client time limit for completing a TCP connection, or 4214zero (use the operating system built-in time limit). When no 4215connection can be made within the deadline, the LMTP client tries 4216the next address on the mail exchanger list. </p> 4217 4218<p> 4219Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4220The default time unit is s (seconds). 4221</p> 4222 4223<p> 4224Example: 4225</p> 4226 4227<pre> 4228<a href="postconf.5.html#lmtp_connect_timeout">lmtp_connect_timeout</a> = 30s 4229</pre> 4230 4231 4232</DD> 4233 4234<DT><b><a name="lmtp_connection_cache_destinations">lmtp_connection_cache_destinations</a> 4235(default: empty)</b></DT><DD> 4236 4237<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_destinations">smtp_connection_cache_destinations</a> 4238configuration parameter. See there for details. </p> 4239 4240<p> This feature is available in Postfix 2.3 and later. </p> 4241 4242 4243</DD> 4244 4245<DT><b><a name="lmtp_connection_cache_on_demand">lmtp_connection_cache_on_demand</a> 4246(default: yes)</b></DT><DD> 4247 4248<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a> 4249configuration parameter. See there for details. </p> 4250 4251<p> This feature is available in Postfix 2.3 and later. </p> 4252 4253 4254</DD> 4255 4256<DT><b><a name="lmtp_connection_cache_time_limit">lmtp_connection_cache_time_limit</a> 4257(default: 2s)</b></DT><DD> 4258 4259<p> The LMTP-specific version of the 4260<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> configuration parameter. 4261See there for details. </p> 4262 4263<p> This feature is available in Postfix 2.3 and later. </p> 4264 4265 4266</DD> 4267 4268<DT><b><a name="lmtp_connection_reuse_count_limit">lmtp_connection_reuse_count_limit</a> 4269(default: 0)</b></DT><DD> 4270 4271<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_reuse_count_limit">smtp_connection_reuse_count_limit</a> 4272configuration parameter. See there for details. </p> 4273 4274<p> This feature is available in Postfix 2.11 and later. </p> 4275 4276 4277</DD> 4278 4279<DT><b><a name="lmtp_connection_reuse_time_limit">lmtp_connection_reuse_time_limit</a> 4280(default: 300s)</b></DT><DD> 4281 4282<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a> 4283configuration parameter. See there for details. </p> 4284 4285<p> This feature is available in Postfix 2.3 and later. </p> 4286 4287 4288</DD> 4289 4290<DT><b><a name="lmtp_data_done_timeout">lmtp_data_done_timeout</a> 4291(default: 600s)</b></DT><DD> 4292 4293<p> The Postfix LMTP client time limit for sending the LMTP ".", 4294and for receiving the remote LMTP server response. When no response 4295is received within the deadline, a warning is logged that the mail 4296may be delivered multiple times. </p> 4297 4298<p> 4299Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4300The default time unit is s (seconds). 4301</p> 4302 4303 4304</DD> 4305 4306<DT><b><a name="lmtp_data_init_timeout">lmtp_data_init_timeout</a> 4307(default: 120s)</b></DT><DD> 4308 4309<p> 4310The Postfix LMTP client time limit for sending the LMTP DATA command, 4311and 4312for receiving the remote LMTP server response. 4313</p> 4314 4315<p> 4316Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4317The default time unit is s (seconds). 4318</p> 4319 4320 4321</DD> 4322 4323<DT><b><a name="lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a> 4324(default: 180s)</b></DT><DD> 4325 4326<p> 4327The Postfix LMTP client time limit for sending the LMTP message 4328content. 4329When the connection stalls for more than $<a href="postconf.5.html#lmtp_data_xfer_timeout">lmtp_data_xfer_timeout</a> 4330the LMTP client terminates the transfer. 4331</p> 4332 4333<p> 4334Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4335The default time unit is s (seconds). 4336</p> 4337 4338 4339</DD> 4340 4341<DT><b><a name="lmtp_defer_if_no_mx_address_found">lmtp_defer_if_no_mx_address_found</a> 4342(default: no)</b></DT><DD> 4343 4344<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> 4345configuration parameter. See there for details. </p> 4346 4347<p> This feature is available in Postfix 2.3 and later. </p> 4348 4349 4350</DD> 4351 4352<DT><b><a name="lmtp_delivery_status_filter">lmtp_delivery_status_filter</a> 4353(default: empty)</b></DT><DD> 4354 4355<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_delivery_status_filter">smtp_delivery_status_filter</a> 4356configuration parameter. See there for details. </p> 4357 4358<p> This feature is available in Postfix 3.0 and later. </p> 4359 4360 4361</DD> 4362 4363<DT><b><a name="lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a> 4364(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD> 4365 4366<p> The maximal number of parallel deliveries to the same destination 4367via the lmtp message delivery transport. This limit is enforced by 4368the queue manager. The message delivery transport name is the first 4369field in the entry in the <a href="master.5.html">master.cf</a> file. </p> 4370 4371 4372</DD> 4373 4374<DT><b><a name="lmtp_destination_recipient_limit">lmtp_destination_recipient_limit</a> 4375(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD> 4376 4377<p> The maximal number of recipients per message for the lmtp 4378message delivery transport. This limit is enforced by the queue 4379manager. The message delivery transport name is the first field in 4380the entry in the <a href="master.5.html">master.cf</a> file. </p> 4381 4382<p> Setting this parameter to a value of 1 changes the meaning of 4383<a href="postconf.5.html#lmtp_destination_concurrency_limit">lmtp_destination_concurrency_limit</a> from concurrency per domain into 4384concurrency per recipient. </p> 4385 4386 4387</DD> 4388 4389<DT><b><a name="lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a> 4390(default: empty)</b></DT><DD> 4391 4392<p> Lookup tables, indexed by the remote LMTP server address, with 4393case insensitive lists of LHLO keywords (pipelining, starttls, 4394auth, etc.) that the Postfix LMTP client will ignore in the LHLO 4395response 4396from a remote LMTP server. See <a href="postconf.5.html#lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a> for 4397details. The table is not indexed by hostname for consistency with 4398<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p> 4399 4400<p> This feature is available in Postfix 2.3 and later. </p> 4401 4402 4403</DD> 4404 4405<DT><b><a name="lmtp_discard_lhlo_keywords">lmtp_discard_lhlo_keywords</a> 4406(default: empty)</b></DT><DD> 4407 4408<p> A case insensitive list of LHLO keywords (pipelining, starttls, 4409auth, etc.) that the Postfix LMTP client will ignore in the LHLO 4410response 4411from a remote LMTP server. </p> 4412 4413<p> This feature is available in Postfix 2.3 and later. </p> 4414 4415<p> Notes: </p> 4416 4417<ul> 4418 4419<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent 4420this action from being logged. </p> 4421 4422<li> <p> Use the <a href="postconf.5.html#lmtp_discard_lhlo_keyword_address_maps">lmtp_discard_lhlo_keyword_address_maps</a> feature to 4423discard LHLO keywords selectively. </p> 4424 4425</ul> 4426 4427 4428</DD> 4429 4430<DT><b><a name="lmtp_dns_reply_filter">lmtp_dns_reply_filter</a> 4431(default: empty)</b></DT><DD> 4432 4433<p> Optional filter for Postfix LMTP client DNS lookup results. 4434See <a href="postconf.5.html#smtp_dns_reply_filter">smtp_dns_reply_filter</a> for details including an example. </p> 4435 4436<p> This feature is available in Postfix 3.0 and later. </p> 4437 4438 4439</DD> 4440 4441<DT><b><a name="lmtp_dns_resolver_options">lmtp_dns_resolver_options</a> 4442(default: empty)</b></DT><DD> 4443 4444<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_dns_resolver_options">smtp_dns_resolver_options</a> 4445configuration parameter. See there for details. </p> 4446 4447<p> This feature is available in Postfix 2.8 and later. </p> 4448 4449 4450</DD> 4451 4452<DT><b><a name="lmtp_dns_support_level">lmtp_dns_support_level</a> 4453(default: empty)</b></DT><DD> 4454 4455<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a> 4456configuration parameter. See there for details. </p> 4457 4458<p> This feature is available in Postfix 2.11 and later. </p> 4459 4460 4461</DD> 4462 4463<DT><b><a name="lmtp_enforce_tls">lmtp_enforce_tls</a> 4464(default: no)</b></DT><DD> 4465 4466<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_enforce_tls">smtp_enforce_tls</a> configuration 4467parameter. See there for details. </p> 4468 4469<p> This feature is available in Postfix 2.3 and later. </p> 4470 4471 4472</DD> 4473 4474<DT><b><a name="lmtp_fallback_relay">lmtp_fallback_relay</a> 4475(default: empty)</b></DT><DD> 4476 4477<p> Optional list of relay hosts for LMTP destinations that can't be 4478found or that are unreachable. In <a href="postconf.5.html">main.cf</a> elements are separated by 4479whitespace or commas. </p> 4480 4481<p> By default, mail is returned to the sender when a destination is not 4482found, and delivery is deferred when a destination is unreachable. </p> 4483 4484<p> The fallback relays must be TCP destinations, specified without 4485a leading "inet:" prefix. Specify a host or host:port. Since MX 4486lookups do not apply with LMTP, there is no need to use the "[host]" or 4487"[host]:port" forms. If you specify multiple LMTP destinations, Postfix 4488will try them in the specified order. </p> 4489 4490<p> 4491This feature is available in Postfix 3.1 and later. 4492</p> 4493 4494 4495</DD> 4496 4497<DT><b><a name="lmtp_generic_maps">lmtp_generic_maps</a> 4498(default: empty)</b></DT><DD> 4499 4500<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_generic_maps">smtp_generic_maps</a> configuration 4501parameter. See there for details. </p> 4502 4503<p> This feature is available in Postfix 2.3 and later. </p> 4504 4505 4506</DD> 4507 4508<DT><b><a name="lmtp_header_checks">lmtp_header_checks</a> 4509(default: empty)</b></DT><DD> 4510 4511<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_header_checks">smtp_header_checks</a> configuration 4512parameter. See there for details. </p> 4513 4514<p> This feature is available in Postfix 2.5 and later. </p> 4515 4516 4517</DD> 4518 4519<DT><b><a name="lmtp_host_lookup">lmtp_host_lookup</a> 4520(default: dns)</b></DT><DD> 4521 4522<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a> configuration 4523parameter. See there for details. </p> 4524 4525<p> This feature is available in Postfix 2.3 and later. </p> 4526 4527 4528</DD> 4529 4530<DT><b><a name="lmtp_lhlo_name">lmtp_lhlo_name</a> 4531(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 4532 4533<p> 4534The hostname to send in the LMTP LHLO command. 4535</p> 4536 4537<p> 4538The default value is the machine hostname. Specify a hostname or 4539[ip.add.re.ss]. 4540</p> 4541 4542<p> 4543This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all LMTP 4544clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific 4545client, for example: 4546</p> 4547 4548<blockquote> 4549<pre> 4550/etc/postfix/<a href="master.5.html">master.cf</a>: 4551 mylmtp ... lmtp -o <a href="postconf.5.html#lmtp_lhlo_name">lmtp_lhlo_name</a>=foo.bar.com 4552</pre> 4553</blockquote> 4554 4555<p> 4556This feature is available in Postfix 2.3 and later. 4557</p> 4558 4559 4560</DD> 4561 4562<DT><b><a name="lmtp_lhlo_timeout">lmtp_lhlo_timeout</a> 4563(default: 300s)</b></DT><DD> 4564 4565<p> The Postfix LMTP client time limit for sending the LHLO command, 4566and for receiving the initial remote LMTP server response. </p> 4567 4568<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 4569(weeks). The default time unit is s (seconds). </p> 4570 4571 4572</DD> 4573 4574<DT><b><a name="lmtp_line_length_limit">lmtp_line_length_limit</a> 4575(default: 990)</b></DT><DD> 4576 4577<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_line_length_limit">smtp_line_length_limit</a> 4578configuration parameter. See there for details. </p> 4579 4580<p> This feature is available in Postfix 2.3 and later. </p> 4581 4582 4583</DD> 4584 4585<DT><b><a name="lmtp_mail_timeout">lmtp_mail_timeout</a> 4586(default: 300s)</b></DT><DD> 4587 4588<p> 4589The Postfix LMTP client time limit for sending the MAIL FROM command, 4590and for receiving the remote LMTP server response. 4591</p> 4592 4593<p> 4594Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4595The default time unit is s (seconds). 4596</p> 4597 4598 4599</DD> 4600 4601<DT><b><a name="lmtp_mime_header_checks">lmtp_mime_header_checks</a> 4602(default: empty)</b></DT><DD> 4603 4604<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mime_header_checks">smtp_mime_header_checks</a> 4605configuration parameter. See there for details. </p> 4606 4607<p> This feature is available in Postfix 2.5 and later. </p> 4608 4609 4610</DD> 4611 4612<DT><b><a name="lmtp_mx_address_limit">lmtp_mx_address_limit</a> 4613(default: 5)</b></DT><DD> 4614 4615<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_address_limit">smtp_mx_address_limit</a> configuration 4616parameter. See there for details. </p> 4617 4618<p> This feature is available in Postfix 2.3 and later. </p> 4619 4620 4621</DD> 4622 4623<DT><b><a name="lmtp_mx_session_limit">lmtp_mx_session_limit</a> 4624(default: 2)</b></DT><DD> 4625 4626<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_mx_session_limit">smtp_mx_session_limit</a> configuration 4627parameter. See there for details. </p> 4628 4629<p> This feature is available in Postfix 2.3 and later. </p> 4630 4631 4632</DD> 4633 4634<DT><b><a name="lmtp_nested_header_checks">lmtp_nested_header_checks</a> 4635(default: empty)</b></DT><DD> 4636 4637<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_nested_header_checks">smtp_nested_header_checks</a> 4638configuration parameter. See there for details. </p> 4639 4640<p> This feature is available in Postfix 2.5 and later. </p> 4641 4642 4643</DD> 4644 4645<DT><b><a name="lmtp_per_record_deadline">lmtp_per_record_deadline</a> 4646(default: no)</b></DT><DD> 4647 4648<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_per_record_deadline">smtp_per_record_deadline</a> 4649configuration parameter. See there for details. </p> 4650 4651<p> This feature is available in Postfix 2.9 and later. </p> 4652 4653 4654</DD> 4655 4656<DT><b><a name="lmtp_pix_workaround_delay_time">lmtp_pix_workaround_delay_time</a> 4657(default: 10s)</b></DT><DD> 4658 4659<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a> 4660configuration parameter. See there for details. </p> 4661 4662<p> This feature is available in Postfix 2.3 and later. </p> 4663 4664 4665</DD> 4666 4667<DT><b><a name="lmtp_pix_workaround_maps">lmtp_pix_workaround_maps</a> 4668(default: empty)</b></DT><DD> 4669 4670<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a> 4671configuration parameter. See there for details. </p> 4672 4673<p> This feature is available in Postfix 2.4 and later. </p> 4674 4675 4676</DD> 4677 4678<DT><b><a name="lmtp_pix_workaround_threshold_time">lmtp_pix_workaround_threshold_time</a> 4679(default: 500s)</b></DT><DD> 4680 4681<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a> 4682configuration parameter. See there for details. </p> 4683 4684<p> This feature is available in Postfix 2.3 and later. </p> 4685 4686 4687</DD> 4688 4689<DT><b><a name="lmtp_pix_workarounds">lmtp_pix_workarounds</a> 4690(default: empty)</b></DT><DD> 4691 4692<p> The LMTP-specific version of the smtp_pix_workaround 4693configuration parameter. See there for details. </p> 4694 4695<p> This feature is available in Postfix 2.4 and later. </p> 4696 4697 4698</DD> 4699 4700<DT><b><a name="lmtp_quit_timeout">lmtp_quit_timeout</a> 4701(default: 300s)</b></DT><DD> 4702 4703<p> 4704The Postfix LMTP client time limit for sending the QUIT command, 4705and for receiving the remote LMTP server response. 4706</p> 4707 4708<p> 4709Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4710The default time unit is s (seconds). 4711</p> 4712 4713 4714</DD> 4715 4716<DT><b><a name="lmtp_quote_rfc821_envelope">lmtp_quote_rfc821_envelope</a> 4717(default: yes)</b></DT><DD> 4718 4719<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a> 4720configuration parameter. See there for details. </p> 4721 4722<p> This feature is available in Postfix 2.3 and later. </p> 4723 4724 4725</DD> 4726 4727<DT><b><a name="lmtp_randomize_addresses">lmtp_randomize_addresses</a> 4728(default: yes)</b></DT><DD> 4729 4730<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_randomize_addresses">smtp_randomize_addresses</a> 4731configuration parameter. See there for details. </p> 4732 4733<p> This feature is available in Postfix 2.3 and later. </p> 4734 4735 4736</DD> 4737 4738<DT><b><a name="lmtp_rcpt_timeout">lmtp_rcpt_timeout</a> 4739(default: 300s)</b></DT><DD> 4740 4741<p> 4742The Postfix LMTP client time limit for sending the RCPT TO command, 4743and for receiving the remote LMTP server response. 4744</p> 4745 4746<p> 4747Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4748The default time unit is s (seconds). 4749</p> 4750 4751 4752</DD> 4753 4754<DT><b><a name="lmtp_reply_filter">lmtp_reply_filter</a> 4755(default: empty)</b></DT><DD> 4756 4757<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_reply_filter">smtp_reply_filter</a> 4758configuration parameter. See there for details. </p> 4759 4760<p> This feature is available in Postfix 2.7 and later. </p> 4761 4762 4763</DD> 4764 4765<DT><b><a name="lmtp_rset_timeout">lmtp_rset_timeout</a> 4766(default: 20s)</b></DT><DD> 4767 4768<p> The Postfix LMTP client time limit for sending the RSET command, 4769and for receiving the remote LMTP server response. The LMTP client 4770sends RSET in 4771order to finish a recipient address probe, or to verify that a 4772cached connection is still alive. </p> 4773 4774<p> 4775Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 4776The default time unit is s (seconds). 4777</p> 4778 4779 4780</DD> 4781 4782<DT><b><a name="lmtp_sasl_auth_cache_name">lmtp_sasl_auth_cache_name</a> 4783(default: empty)</b></DT><DD> 4784 4785<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> 4786configuration parameter. See there for details. </p> 4787 4788<p> This feature is available in Postfix 2.5 and later. </p> 4789 4790 4791</DD> 4792 4793<DT><b><a name="lmtp_sasl_auth_cache_time">lmtp_sasl_auth_cache_time</a> 4794(default: 90d)</b></DT><DD> 4795 4796<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a> 4797configuration parameter. See there for details. </p> 4798 4799<p> This feature is available in Postfix 2.5 and later. </p> 4800 4801 4802</DD> 4803 4804<DT><b><a name="lmtp_sasl_auth_enable">lmtp_sasl_auth_enable</a> 4805(default: no)</b></DT><DD> 4806 4807<p> 4808Enable SASL authentication in the Postfix LMTP client. 4809</p> 4810 4811 4812</DD> 4813 4814<DT><b><a name="lmtp_sasl_auth_soft_bounce">lmtp_sasl_auth_soft_bounce</a> 4815(default: yes)</b></DT><DD> 4816 4817<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> 4818configuration parameter. See there for details. </p> 4819 4820<p> This feature is available in Postfix 2.5 and later. </p> 4821 4822 4823</DD> 4824 4825<DT><b><a name="lmtp_sasl_mechanism_filter">lmtp_sasl_mechanism_filter</a> 4826(default: empty)</b></DT><DD> 4827 4828<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> 4829configuration parameter. See there for details. </p> 4830 4831<p> This feature is available in Postfix 2.3 and later. </p> 4832 4833 4834</DD> 4835 4836<DT><b><a name="lmtp_sasl_password_maps">lmtp_sasl_password_maps</a> 4837(default: empty)</b></DT><DD> 4838 4839<p> 4840Optional Postfix LMTP client lookup tables with one username:password entry 4841per host or domain. If a remote host or domain has no username:password 4842entry, then the Postfix LMTP client will not attempt to authenticate 4843to the remote host. 4844</p> 4845 4846 4847</DD> 4848 4849<DT><b><a name="lmtp_sasl_path">lmtp_sasl_path</a> 4850(default: empty)</b></DT><DD> 4851 4852<p> Implementation-specific information that is passed through to 4853the SASL plug-in implementation that is selected with 4854<b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>. Typically this specifies the name of a 4855configuration file or rendezvous point. </p> 4856 4857<p> This feature is available in Postfix 2.3 and later. </p> 4858 4859 4860</DD> 4861 4862<DT><b><a name="lmtp_sasl_security_options">lmtp_sasl_security_options</a> 4863(default: noplaintext, noanonymous)</b></DT><DD> 4864 4865<p> SASL security options; as of Postfix 2.3 the list of available 4866features depends on the SASL client implementation that is selected 4867with <b><a href="postconf.5.html#lmtp_sasl_type">lmtp_sasl_type</a></b>. </p> 4868 4869<p> The following security features are defined for the <b>cyrus</b> 4870client SASL implementation: </p> 4871 4872<dl> 4873 4874<dt><b>noplaintext</b></dt> 4875 4876<dd>Disallow authentication methods that use plaintext passwords. </dd> 4877 4878<dt><b>noactive</b></dt> 4879 4880<dd>Disallow authentication methods that are vulnerable to non-dictionary 4881active attacks. </dd> 4882 4883<dt><b>nodictionary</b></dt> 4884 4885<dd>Disallow authentication methods that are vulnerable to passive 4886dictionary attack. </dd> 4887 4888<dt><b>noanonymous</b></dt> 4889 4890<dd>Disallow anonymous logins. </dd> 4891 4892</dl> 4893 4894<p> 4895Example: 4896</p> 4897 4898<pre> 4899<a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a> = noplaintext 4900</pre> 4901 4902 4903</DD> 4904 4905<DT><b><a name="lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a> 4906(default: $<a href="postconf.5.html#lmtp_sasl_security_options">lmtp_sasl_security_options</a>)</b></DT><DD> 4907 4908<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a> 4909configuration parameter. See there for details. </p> 4910 4911<p> This feature is available in Postfix 2.3 and later. </p> 4912 4913 4914</DD> 4915 4916<DT><b><a name="lmtp_sasl_tls_verified_security_options">lmtp_sasl_tls_verified_security_options</a> 4917(default: $<a href="postconf.5.html#lmtp_sasl_tls_security_options">lmtp_sasl_tls_security_options</a>)</b></DT><DD> 4918 4919<p> The LMTP-specific version of the 4920<a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> configuration parameter. 4921See there for details. </p> 4922 4923<p> This feature is available in Postfix 2.3 and later. </p> 4924 4925 4926</DD> 4927 4928<DT><b><a name="lmtp_sasl_type">lmtp_sasl_type</a> 4929(default: cyrus)</b></DT><DD> 4930 4931<p> The SASL plug-in type that the Postfix LMTP client should use 4932for authentication. The available types are listed with the 4933"<b>postconf -A</b>" command. </p> 4934 4935<p> This feature is available in Postfix 2.3 and later. </p> 4936 4937 4938</DD> 4939 4940<DT><b><a name="lmtp_send_dummy_mail_auth">lmtp_send_dummy_mail_auth</a> 4941(default: no)</b></DT><DD> 4942 4943<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_send_dummy_mail_auth">smtp_send_dummy_mail_auth</a> 4944configuration parameter. See there for details. </p> 4945 4946<p> This feature is available in Postfix 2.9 and later. </p> 4947 4948 4949</DD> 4950 4951<DT><b><a name="lmtp_send_xforward_command">lmtp_send_xforward_command</a> 4952(default: no)</b></DT><DD> 4953 4954<p> 4955Send an XFORWARD command to the remote LMTP server when the LMTP LHLO 4956server response announces XFORWARD support. This allows an <a href="lmtp.8.html">lmtp(8)</a> 4957delivery agent, used for content filter message injection, to 4958forward the name, address, protocol and HELO name of the original 4959client to the content filter and downstream queuing LMTP server. 4960Before you change the value to yes, it is best to make sure that 4961your content filter supports this command. 4962</p> 4963 4964<p> 4965This feature is available in Postfix 2.1 and later. 4966</p> 4967 4968 4969</DD> 4970 4971<DT><b><a name="lmtp_sender_dependent_authentication">lmtp_sender_dependent_authentication</a> 4972(default: no)</b></DT><DD> 4973 4974<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a> 4975configuration parameter. See there for details. </p> 4976 4977<p> This feature is available in Postfix 2.3 and later. </p> 4978 4979 4980</DD> 4981 4982<DT><b><a name="lmtp_skip_5xx_greeting">lmtp_skip_5xx_greeting</a> 4983(default: yes)</b></DT><DD> 4984 4985<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a> 4986configuration parameter. See there for details. </p> 4987 4988<p> This feature is available in Postfix 2.3 and later. </p> 4989 4990 4991</DD> 4992 4993<DT><b><a name="lmtp_skip_quit_response">lmtp_skip_quit_response</a> 4994(default: no)</b></DT><DD> 4995 4996<p> 4997Wait for the response to the LMTP QUIT command. 4998</p> 4999 5000 5001</DD> 5002 5003<DT><b><a name="lmtp_starttls_timeout">lmtp_starttls_timeout</a> 5004(default: 300s)</b></DT><DD> 5005 5006<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_starttls_timeout">smtp_starttls_timeout</a> configuration 5007parameter. See there for details. </p> 5008 5009<p> This feature is available in Postfix 2.3 and later. </p> 5010 5011 5012</DD> 5013 5014<DT><b><a name="lmtp_tcp_port">lmtp_tcp_port</a> 5015(default: 24)</b></DT><DD> 5016 5017<p> 5018The default TCP port that the Postfix LMTP client connects to. 5019</p> 5020 5021 5022</DD> 5023 5024<DT><b><a name="lmtp_tls_CAfile">lmtp_tls_CAfile</a> 5025(default: empty)</b></DT><DD> 5026 5027<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a> 5028configuration parameter. See there for details. </p> 5029 5030<p> This feature is available in Postfix 2.3 and later. </p> 5031 5032 5033</DD> 5034 5035<DT><b><a name="lmtp_tls_CApath">lmtp_tls_CApath</a> 5036(default: empty)</b></DT><DD> 5037 5038<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> 5039configuration parameter. See there for details. </p> 5040 5041<p> This feature is available in Postfix 2.3 and later. </p> 5042 5043 5044</DD> 5045 5046<DT><b><a name="lmtp_tls_block_early_mail_reply">lmtp_tls_block_early_mail_reply</a> 5047(default: empty)</b></DT><DD> 5048 5049<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> 5050configuration parameter. See there for details. </p> 5051 5052<p> This feature is available in Postfix 2.7 and later. </p> 5053 5054 5055</DD> 5056 5057<DT><b><a name="lmtp_tls_cert_file">lmtp_tls_cert_file</a> 5058(default: empty)</b></DT><DD> 5059 5060<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> 5061configuration parameter. See there for details. </p> 5062 5063<p> This feature is available in Postfix 2.3 and later. </p> 5064 5065 5066</DD> 5067 5068<DT><b><a name="lmtp_tls_ciphers">lmtp_tls_ciphers</a> 5069(default: medium)</b></DT><DD> 5070 5071<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> configuration 5072parameter. See there for details. </p> 5073 5074<p> This feature is available in Postfix 2.6 and later. </p> 5075 5076 5077</DD> 5078 5079<DT><b><a name="lmtp_tls_dcert_file">lmtp_tls_dcert_file</a> 5080(default: empty)</b></DT><DD> 5081 5082<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> 5083configuration parameter. See there for details. </p> 5084 5085<p> This feature is available in Postfix 2.3 and later. </p> 5086 5087 5088</DD> 5089 5090<DT><b><a name="lmtp_tls_dkey_file">lmtp_tls_dkey_file</a> 5091(default: $<a href="postconf.5.html#lmtp_tls_dcert_file">lmtp_tls_dcert_file</a>)</b></DT><DD> 5092 5093<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> 5094configuration parameter. See there for details. </p> 5095 5096<p> This feature is available in Postfix 2.3 and later. </p> 5097 5098 5099</DD> 5100 5101<DT><b><a name="lmtp_tls_eccert_file">lmtp_tls_eccert_file</a> 5102(default: empty)</b></DT><DD> 5103 5104<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> configuration 5105parameter. See there for details. </p> 5106 5107<p> This feature is available in Postfix 2.6 and later, when Postfix is 5108compiled and linked with OpenSSL 1.0.0 or later. </p> 5109 5110 5111</DD> 5112 5113<DT><b><a name="lmtp_tls_eckey_file">lmtp_tls_eckey_file</a> 5114(default: empty)</b></DT><DD> 5115 5116<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> configuration 5117parameter. See there for details. </p> 5118 5119<p> This feature is available in Postfix 2.6 and later, when Postfix is 5120compiled and linked with OpenSSL 1.0.0 or later. </p> 5121 5122 5123</DD> 5124 5125<DT><b><a name="lmtp_tls_enforce_peername">lmtp_tls_enforce_peername</a> 5126(default: yes)</b></DT><DD> 5127 5128<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> 5129configuration parameter. See there for details. </p> 5130 5131<p> This feature is available in Postfix 2.3 and later. </p> 5132 5133 5134</DD> 5135 5136<DT><b><a name="lmtp_tls_exclude_ciphers">lmtp_tls_exclude_ciphers</a> 5137(default: empty)</b></DT><DD> 5138 5139<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> 5140configuration parameter. See there for details. </p> 5141 5142<p> This feature is available in Postfix 2.3 and later. </p> 5143 5144 5145</DD> 5146 5147<DT><b><a name="lmtp_tls_fingerprint_cert_match">lmtp_tls_fingerprint_cert_match</a> 5148(default: empty)</b></DT><DD> 5149 5150<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> 5151configuration parameter. See there for details. </p> 5152 5153<p> This feature is available in Postfix 2.5 and later. </p> 5154 5155 5156</DD> 5157 5158<DT><b><a name="lmtp_tls_fingerprint_digest">lmtp_tls_fingerprint_digest</a> 5159(default: md5)</b></DT><DD> 5160 5161<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> 5162configuration parameter. See there for details. </p> 5163 5164<p> This feature is available in Postfix 2.5 and later. </p> 5165 5166 5167</DD> 5168 5169<DT><b><a name="lmtp_tls_force_insecure_host_tlsa_lookup">lmtp_tls_force_insecure_host_tlsa_lookup</a> 5170(default: no)</b></DT><DD> 5171 5172<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_force_insecure_host_tlsa_lookup">smtp_tls_force_insecure_host_tlsa_lookup</a> 5173configuration parameter. See there for details. </p> 5174 5175<p> This feature is available in Postfix 2.11 and later. </p> 5176 5177 5178</DD> 5179 5180<DT><b><a name="lmtp_tls_key_file">lmtp_tls_key_file</a> 5181(default: $<a href="postconf.5.html#lmtp_tls_cert_file">lmtp_tls_cert_file</a>)</b></DT><DD> 5182 5183<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a> 5184configuration parameter. See there for details. </p> 5185 5186<p> This feature is available in Postfix 2.3 and later. </p> 5187 5188 5189</DD> 5190 5191<DT><b><a name="lmtp_tls_loglevel">lmtp_tls_loglevel</a> 5192(default: 0)</b></DT><DD> 5193 5194<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a> 5195configuration parameter. See there for details. </p> 5196 5197<p> This feature is available in Postfix 2.3 and later. </p> 5198 5199 5200</DD> 5201 5202<DT><b><a name="lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a> 5203(default: medium)</b></DT><DD> 5204 5205<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> 5206configuration parameter. See there for details. </p> 5207 5208<p> This feature is available in Postfix 2.3 and later. </p> 5209 5210 5211</DD> 5212 5213<DT><b><a name="lmtp_tls_mandatory_exclude_ciphers">lmtp_tls_mandatory_exclude_ciphers</a> 5214(default: empty)</b></DT><DD> 5215 5216<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> 5217configuration parameter. See there for details. </p> 5218 5219<p> This feature is available in Postfix 2.3 and later. </p> 5220 5221 5222</DD> 5223 5224<DT><b><a name="lmtp_tls_mandatory_protocols">lmtp_tls_mandatory_protocols</a> 5225(default: !SSLv2, !SSLv3)</b></DT><DD> 5226 5227<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> 5228configuration parameter. See there for details. </p> 5229 5230<p> This feature is available in Postfix 2.3 and later. </p> 5231 5232 5233</DD> 5234 5235<DT><b><a name="lmtp_tls_note_starttls_offer">lmtp_tls_note_starttls_offer</a> 5236(default: no)</b></DT><DD> 5237 5238<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a> 5239configuration parameter. See there for details. </p> 5240 5241<p> This feature is available in Postfix 2.3 and later. </p> 5242 5243 5244</DD> 5245 5246<DT><b><a name="lmtp_tls_per_site">lmtp_tls_per_site</a> 5247(default: empty)</b></DT><DD> 5248 5249<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> configuration 5250parameter. See there for details. </p> 5251 5252<p> This feature is available in Postfix 2.3 and later. </p> 5253 5254 5255</DD> 5256 5257<DT><b><a name="lmtp_tls_policy_maps">lmtp_tls_policy_maps</a> 5258(default: empty)</b></DT><DD> 5259 5260<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> 5261configuration parameter. See there for details. </p> 5262 5263<p> This feature is available in Postfix 2.3 and later. </p> 5264 5265 5266</DD> 5267 5268<DT><b><a name="lmtp_tls_protocols">lmtp_tls_protocols</a> 5269(default: !SSLv2, !SSLv3)</b></DT><DD> 5270 5271<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> configuration 5272parameter. See there for details. </p> 5273 5274<p> This feature is available in Postfix 2.6 and later. </p> 5275 5276 5277</DD> 5278 5279<DT><b><a name="lmtp_tls_scert_verifydepth">lmtp_tls_scert_verifydepth</a> 5280(default: 9)</b></DT><DD> 5281 5282<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a> 5283configuration parameter. See there for details. </p> 5284 5285<p> This feature is available in Postfix 2.3 and later. </p> 5286 5287 5288</DD> 5289 5290<DT><b><a name="lmtp_tls_secure_cert_match">lmtp_tls_secure_cert_match</a> 5291(default: nexthop)</b></DT><DD> 5292 5293<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> 5294configuration parameter. See there for details. </p> 5295 5296<p> This feature is available in Postfix 2.3 and later. </p> 5297 5298 5299</DD> 5300 5301<DT><b><a name="lmtp_tls_security_level">lmtp_tls_security_level</a> 5302(default: empty)</b></DT><DD> 5303 5304<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> configuration 5305parameter. See there for details. </p> 5306 5307<p> This feature is available in Postfix 2.3 and later. </p> 5308 5309 5310</DD> 5311 5312<DT><b><a name="lmtp_tls_session_cache_database">lmtp_tls_session_cache_database</a> 5313(default: empty)</b></DT><DD> 5314 5315<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a> 5316configuration parameter. See there for details. </p> 5317 5318<p> This feature is available in Postfix 2.3 and later. </p> 5319 5320 5321</DD> 5322 5323<DT><b><a name="lmtp_tls_session_cache_timeout">lmtp_tls_session_cache_timeout</a> 5324(default: 3600s)</b></DT><DD> 5325 5326<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a> 5327configuration parameter. See there for details. </p> 5328 5329<p> This feature is available in Postfix 2.3 and later. </p> 5330 5331 5332</DD> 5333 5334<DT><b><a name="lmtp_tls_trust_anchor_file">lmtp_tls_trust_anchor_file</a> 5335(default: empty)</b></DT><DD> 5336 5337<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_trust_anchor_file">smtp_tls_trust_anchor_file</a> 5338configuration parameter. See there for details. </p> 5339 5340<p> This feature is available in Postfix 2.11 and later. </p> 5341 5342 5343</DD> 5344 5345<DT><b><a name="lmtp_tls_verify_cert_match">lmtp_tls_verify_cert_match</a> 5346(default: hostname)</b></DT><DD> 5347 5348<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> 5349configuration parameter. See there for details. </p> 5350 5351<p> This feature is available in Postfix 2.3 and later. </p> 5352 5353 5354</DD> 5355 5356<DT><b><a name="lmtp_use_tls">lmtp_use_tls</a> 5357(default: no)</b></DT><DD> 5358 5359<p> The LMTP-specific version of the <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a> configuration 5360parameter. See there for details. </p> 5361 5362<p> This feature is available in Postfix 2.3 and later. </p> 5363 5364 5365</DD> 5366 5367<DT><b><a name="lmtp_xforward_timeout">lmtp_xforward_timeout</a> 5368(default: 300s)</b></DT><DD> 5369 5370<p> 5371The Postfix LMTP client time limit for sending the XFORWARD command, 5372and for receiving the remote LMTP server response. 5373</p> 5374 5375<p> 5376In case of problems the client does NOT try the next address on 5377the mail exchanger list. 5378</p> 5379 5380<p> 5381Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 5382The default time unit is s (seconds). 5383</p> 5384 5385<p> 5386This feature is available in Postfix 2.1 and later. 5387</p> 5388 5389 5390</DD> 5391 5392<DT><b><a name="local_command_shell">local_command_shell</a> 5393(default: empty)</b></DT><DD> 5394 5395<p> 5396Optional shell program for <a href="local.8.html">local(8)</a> delivery to non-Postfix command. 5397By default, non-Postfix commands are executed directly; commands 5398are given to given to the default shell (typically, /bin/sh) only 5399when they contain shell meta characters or shell built-in commands. 5400</p> 5401 5402<p> "sendmail's restricted shell" (smrsh) is what most people will 5403use in order to restrict what programs can be run from e.g. .forward 5404files (smrsh is part of the Sendmail distribution). </p> 5405 5406<p> Note: when a shell program is specified, it is invoked even 5407when the command contains no shell built-in commands or meta 5408characters. </p> 5409 5410<p> 5411Example: 5412</p> 5413 5414<pre> 5415<a href="postconf.5.html#local_command_shell">local_command_shell</a> = /some/where/smrsh -c 5416<a href="postconf.5.html#local_command_shell">local_command_shell</a> = /bin/bash -c 5417</pre> 5418 5419 5420</DD> 5421 5422<DT><b><a name="local_delivery_status_filter">local_delivery_status_filter</a> 5423(default: $<a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a>)</b></DT><DD> 5424 5425<p> Optional filter for the <a href="local.8.html">local(8)</a> delivery agent to change the 5426status code or explanatory text of successful or unsuccessful 5427deliveries. See <a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a> for details. </p> 5428 5429<p> This feature is available in Postfix 3.0 and later. </p> 5430 5431 5432</DD> 5433 5434<DT><b><a name="local_destination_concurrency_limit">local_destination_concurrency_limit</a> 5435(default: 2)</b></DT><DD> 5436 5437<p> The maximal number of parallel deliveries via the local mail 5438delivery transport to the same recipient (when 5439"<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> = 1") or the maximal number of 5440parallel deliveries to the same <a href="ADDRESS_CLASS_README.html#local_domain_class">local domain</a> (when 5441"<a href="postconf.5.html#local_destination_recipient_limit">local_destination_recipient_limit</a> > 1"). This limit is enforced by 5442the queue manager. The message delivery transport name is the first 5443field in the entry in the <a href="master.5.html">master.cf</a> file. </p> 5444 5445<p> A low limit of 2 is recommended, just in case someone has an 5446expensive shell command in a .forward file or in an alias (e.g., 5447a mailing list manager). You don't want to run lots of those at 5448the same time. </p> 5449 5450 5451</DD> 5452 5453<DT><b><a name="local_destination_recipient_limit">local_destination_recipient_limit</a> 5454(default: 1)</b></DT><DD> 5455 5456<p> The maximal number of recipients per message delivery via the 5457local mail delivery transport. This limit is enforced by the queue 5458manager. The message delivery transport name is the first field in 5459the entry in the <a href="master.5.html">master.cf</a> file. </p> 5460 5461<p> Setting this parameter to a value > 1 changes the meaning of 5462<a href="postconf.5.html#local_destination_concurrency_limit">local_destination_concurrency_limit</a> from concurrency per recipient 5463into concurrency per domain. </p> 5464 5465 5466</DD> 5467 5468<DT><b><a name="local_header_rewrite_clients">local_header_rewrite_clients</a> 5469(default: <a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a>)</b></DT><DD> 5470 5471<p> Rewrite message header addresses in mail from these clients and 5472update incomplete addresses with the domain name in $<a href="postconf.5.html#myorigin">myorigin</a> or 5473$<a href="postconf.5.html#mydomain">mydomain</a>; either don't rewrite message headers from other clients 5474at all, or rewrite message headers and update incomplete addresses 5475with the domain specified in the <a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> 5476parameter. </p> 5477 5478<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 5479for details of how domain names are appended to incomplete addresses. 5480</p> 5481 5482<p> Specify a list of zero or more of the following: </p> 5483 5484<dl> 5485 5486<dt><b><a href="postconf.5.html#permit_inet_interfaces">permit_inet_interfaces</a></b></dt> 5487 5488<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 5489client IP address matches $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. This is enabled by 5490default. </dd> 5491 5492<dt><b><a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a></b></dt> 5493 5494<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 5495client IP address matches any network or network address listed in 5496$<a href="postconf.5.html#mynetworks">mynetworks</a>. This setting will not prevent remote mail header 5497address rewriting when mail from a remote client is forwarded by 5498a neighboring system. </dd> 5499 5500<dt><b><a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> </b></dt> 5501 5502<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 5503client is successfully authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH) 5504protocol. </dd> 5505 5506<dt><b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> </b></dt> 5507 5508<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 5509remote SMTP client TLS certificate fingerprint or public key fingerprint 5510(Postfix 2.9 and later) is listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>. 5511The fingerprint digest algorithm is configurable via the 5512<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to 5513Postfix version 2.5). </dd> 5514 5515<dt><b><a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a> </b></dt> 5516 5517<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 5518remote SMTP client TLS certificate is successfully verified, regardless of 5519whether it is listed on the server, and regardless of the certifying 5520authority. </dd> 5521 5522<dt><b><a name="check_address_map">check_address_map</a> <i><a href="DATABASE_README.html">type:table</a></i> </b></dt> 5523 5524<dt><b><i><a href="DATABASE_README.html">type:table</a></i> </b></dt> 5525 5526<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 5527client IP address matches the specified lookup table. 5528The lookup result is ignored, and no subnet lookup is done. This 5529is suitable for, e.g., pop-before-smtp lookup tables. </dd> 5530 5531</dl> 5532 5533<p> Examples: </p> 5534 5535<p> The Postfix < 2.2 backwards compatible setting: always rewrite 5536message headers, and always append my own domain to incomplete 5537header addresses. </p> 5538 5539<blockquote> 5540<pre> 5541<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all 5542</pre> 5543</blockquote> 5544 5545<p> The purist (and default) setting: rewrite headers only in mail 5546from Postfix sendmail and in SMTP mail from this machine. </p> 5547 5548<blockquote> 5549<pre> 5550<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> 5551</pre> 5552</blockquote> 5553 5554<p> The intermediate setting: rewrite header addresses and append 5555$<a href="postconf.5.html#myorigin">myorigin</a> or $<a href="postconf.5.html#mydomain">mydomain</a> information only with mail from Postfix 5556sendmail, from local clients, or from authorized SMTP clients. </p> 5557 5558<p> Note: this setting will not prevent remote mail header address 5559rewriting when mail from a remote client is forwarded by a neighboring 5560system. </p> 5561 5562<blockquote> 5563<pre> 5564<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, 5565 <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> 5566 <a href="postconf.5.html#check_address_map">check_address_map</a> <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/pop-before-smtp 5567</pre> 5568</blockquote> 5569 5570 5571</DD> 5572 5573<DT><b><a name="local_recipient_maps">local_recipient_maps</a> 5574(default: <a href="proxymap.8.html">proxy</a>:unix:passwd.byname $<a href="postconf.5.html#alias_maps">alias_maps</a>)</b></DT><DD> 5575 5576<p> Lookup tables with all names or addresses of local recipients: 5577a recipient address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, 5578$<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 5579wild-card for domains that do not have a valid recipient list. 5580Technically, tables listed with $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> are used as 5581lists: Postfix needs to know only if a lookup string is found or 5582not, but it does not use the result from table lookup. </p> 5583 5584<p> 5585Specify zero or more "type:name" lookup tables, separated by 5586whitespace or comma. Tables will be searched in the specified order 5587until a match is found. 5588</p> 5589 5590<p> 5591If this parameter is non-empty (the default), then the Postfix SMTP 5592server will reject mail for unknown local users. 5593</p> 5594 5595<p> 5596To turn off local recipient checking in the Postfix SMTP server, 5597specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty). 5598</p> 5599 5600<p> 5601The default setting assumes that you use the default Postfix local 5602delivery agent for local delivery. You need to update the 5603<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> setting if: 5604</p> 5605 5606<ul> 5607 5608<li>You redefine the local delivery agent in <a href="master.5.html">master.cf</a>. 5609 5610<li>You redefine the "<a href="postconf.5.html#local_transport">local_transport</a>" setting in <a href="postconf.5.html">main.cf</a>. 5611 5612<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>" 5613feature of the Postfix <a href="local.8.html">local(8)</a> delivery agent. 5614 5615</ul> 5616 5617<p> 5618Details are described in the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> file. 5619</p> 5620 5621<p> 5622Beware: if the Postfix SMTP server runs chrooted, you need to access 5623the passwd file via the <a href="proxymap.8.html">proxymap(8)</a> service, in order to overcome 5624chroot access restrictions. The alternative, maintaining a copy of 5625the system password file in the chroot jail is not practical. 5626</p> 5627 5628<p> 5629Examples: 5630</p> 5631 5632<pre> 5633<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> = 5634</pre> 5635 5636 5637</DD> 5638 5639<DT><b><a name="local_transport">local_transport</a> 5640(default: <a href="local.8.html">local</a>:$<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 5641 5642<p> The default mail delivery transport and next-hop destination 5643for final delivery to domains listed with <a href="postconf.5.html#mydestination">mydestination</a>, and for 5644[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>. 5645This information can be overruled with the <a href="transport.5.html">transport(5)</a> table. </p> 5646 5647<p> 5648By default, local mail is delivered to the transport called "local", 5649which is just the name of a service that is defined the <a href="master.5.html">master.cf</a> file. 5650</p> 5651 5652<p> 5653Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i> 5654is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>. 5655The <i>:nexthop</i> destination is optional; its syntax is documented 5656in the manual page of the corresponding delivery agent. 5657</p> 5658 5659<p> 5660Beware: if you override the default local delivery agent then you 5661need to review the <a href="LOCAL_RECIPIENT_README.html">LOCAL_RECIPIENT_README</a> document, otherwise the 5662SMTP server may reject mail for local recipients. 5663</p> 5664 5665 5666</DD> 5667 5668<DT><b><a name="luser_relay">luser_relay</a> 5669(default: empty)</b></DT><DD> 5670 5671<p> 5672Optional catch-all destination for unknown <a href="local.8.html">local(8)</a> recipients. 5673By default, mail for unknown recipients in domains that match 5674$<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 5675as undeliverable. 5676</p> 5677 5678<p> 5679The following $name expansions are done on <a href="postconf.5.html#luser_relay">luser_relay</a>: 5680</p> 5681 5682<dl> 5683 5684<dt><b>$domain</b></dt> 5685 5686<dd>The recipient domain. </dd> 5687 5688<dt><b>$extension</b></dt> 5689 5690<dd>The recipient address extension. </dd> 5691 5692<dt><b>$home</b></dt> 5693 5694<dd>The recipient's home directory. </dd> 5695 5696<dt><b>$local</b></dt> 5697 5698<dd>The entire recipient address localpart. </dd> 5699 5700<dt><b>$recipient</b></dt> 5701 5702<dd>The full recipient address. </dd> 5703 5704<dt><b>$<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a></b></dt> 5705 5706<dd>The address extension delimiter that was found in the recipient 5707address (Postfix 2.11 and later), or the system-wide recipient 5708address extension delimiter (Postfix 2.10 and earlier). </dd> 5709 5710<dt><b>$shell</b></dt> 5711 5712<dd>The recipient's login shell. </dd> 5713 5714<dt><b>$user</b></dt> 5715 5716<dd>The recipient username. </dd> 5717 5718<dt><b>${name?value}</b></dt> 5719 5720<dd>Expands to <i>value</i> when <i>$name</i> has a non-empty value. </dd> 5721 5722<dt><b>${name:value}</b></dt> 5723 5724<dd>Expands to <i>value</i> when <i>$name</i> has an empty value. </dd> 5725 5726</dl> 5727 5728<p> 5729Instead of $name you can also specify ${name} or $(name). 5730</p> 5731 5732<p> 5733Note: <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. 5734</p> 5735 5736<p> 5737Note: if you use this feature for accounts not in the UNIX password 5738file, then you must specify "<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> =" (i.e. empty) 5739in the <a href="postconf.5.html">main.cf</a> file, otherwise the Postfix SMTP server will reject mail 5740for non-UNIX accounts with "User unknown in local recipient table". 5741</p> 5742 5743<p> 5744Examples: 5745</p> 5746 5747<pre> 5748<a href="postconf.5.html#luser_relay">luser_relay</a> = $user@other.host 5749<a href="postconf.5.html#luser_relay">luser_relay</a> = $local@other.host 5750<a href="postconf.5.html#luser_relay">luser_relay</a> = admin+$local 5751</pre> 5752 5753 5754</DD> 5755 5756<DT><b><a name="mail_name">mail_name</a> 5757(default: Postfix)</b></DT><DD> 5758 5759<p> 5760The mail system name that is displayed in Received: headers, in 5761the SMTP greeting banner, and in bounced mail. 5762</p> 5763 5764 5765</DD> 5766 5767<DT><b><a name="mail_owner">mail_owner</a> 5768(default: postfix)</b></DT><DD> 5769 5770<p> 5771The UNIX system account that owns the Postfix queue and most Postfix 5772daemon processes. Specify the name of an unprivileged user account 5773that does not share a user or group ID with other accounts, and that 5774owns no other files 5775or processes on the system. In particular, don't specify nobody 5776or daemon. PLEASE USE A DEDICATED USER ID AND GROUP ID. 5777</p> 5778 5779<p> 5780When this parameter value is changed you need to re-run "<b>postfix 5781set-permissions</b>" (with Postfix version 2.0 and earlier: 5782"<b>/etc/postfix/post-install set-permissions</b>". 5783</p> 5784 5785 5786</DD> 5787 5788<DT><b><a name="mail_release_date">mail_release_date</a> 5789(default: see "postconf -d" output)</b></DT><DD> 5790 5791<p> 5792The Postfix release date, in "YYYYMMDD" format. 5793</p> 5794 5795 5796</DD> 5797 5798<DT><b><a name="mail_spool_directory">mail_spool_directory</a> 5799(default: see "postconf -d" output)</b></DT><DD> 5800 5801<p> 5802The directory where <a href="local.8.html">local(8)</a> UNIX-style mailboxes are kept. The 5803default setting depends on the system type. Specify a name ending 5804in / for maildir-style delivery. 5805</p> 5806 5807<p> 5808Note: maildir delivery is done with the privileges of the recipient. 5809If you use the <a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> setting for maildir style 5810delivery, then you must create the top-level maildir directory in 5811advance. Postfix will not create it. 5812</p> 5813 5814<p> 5815Examples: 5816</p> 5817 5818<pre> 5819<a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/mail 5820<a href="postconf.5.html#mail_spool_directory">mail_spool_directory</a> = /var/spool/mail 5821</pre> 5822 5823 5824</DD> 5825 5826<DT><b><a name="mail_version">mail_version</a> 5827(default: see "postconf -d" output)</b></DT><DD> 5828 5829<p> 5830The version of the mail system. Stable releases are named 5831<i>major</i>.<i>minor</i>.<i>patchlevel</i>. Experimental releases 5832also include the release date. The version string can be used in, 5833for example, the SMTP greeting banner. 5834</p> 5835 5836 5837</DD> 5838 5839<DT><b><a name="mailbox_command">mailbox_command</a> 5840(default: empty)</b></DT><DD> 5841 5842<p> 5843Optional external command that the <a href="local.8.html">local(8)</a> delivery agent should 5844use for mailbox delivery. The command is run with the user ID and 5845the primary group ID privileges of the recipient. Exception: 5846command delivery for root executes with $<a href="postconf.5.html#default_privs">default_privs</a> privileges. 5847This is not a problem, because 1) mail for root should always be 5848aliased to a real user and 2) don't log in as root, use "su" instead. 5849</p> 5850 5851<p> 5852The following environment variables are exported to the command: 5853</p> 5854 5855<dl> 5856 5857<dt><b>CLIENT_ADDRESS</b></dt> 5858 5859<dd>Remote client network address. Available in Postfix version 2.2 and 5860later. </dd> 5861 5862<dt><b>CLIENT_HELO</b></dt> 5863 5864<dd>Remote client EHLO command parameter. Available in Postfix version 2.2 5865and later.</dd> 5866 5867<dt><b>CLIENT_HOSTNAME</b></dt> 5868 5869<dd>Remote client hostname. Available in Postfix version 2.2 and later. 5870</dd> 5871 5872<dt><b>CLIENT_PROTOCOL</b></dt> 5873 5874<dd>Remote client protocol. Available in Postfix version 2.2 and later. 5875</dd> 5876 5877<dt><b>DOMAIN</b></dt> 5878 5879<dd>The domain part of the recipient address. </dd> 5880 5881<dt><b>EXTENSION</b></dt> 5882 5883<dd>The optional address extension. </dd> 5884 5885<dt><b>HOME</b></dt> 5886 5887<dd>The recipient home directory. </dd> 5888 5889<dt><b>LOCAL</b></dt> 5890 5891<dd>The recipient address localpart. </dd> 5892 5893<dt><b>LOGNAME</b></dt> 5894 5895<dd>The recipient's username. </dd> 5896 5897<dt><b>ORIGINAL_RECIPIENT</b></dt> 5898 5899<dd>The entire recipient address, before any address rewriting or 5900aliasing. </dd> 5901 5902<dt><b>RECIPIENT</b></dt> 5903 5904<dd>The full recipient address. </dd> 5905 5906<dt><b>SASL_METHOD</b></dt> 5907 5908<dd>SASL authentication method specified in the remote client AUTH 5909command. Available in Postfix version 2.2 and later. </dd> 5910 5911<dt><b>SASL_SENDER</b></dt> 5912 5913<dd>SASL sender address specified in the remote client MAIL FROM 5914command. Available in Postfix version 2.2 and later. </dd> 5915 5916<dt><b>SASL_USER</b></dt> 5917 5918<dd>SASL username specified in the remote client AUTH command. 5919Available in Postfix version 2.2 and later. </dd> 5920 5921<dt><b>SENDER</b></dt> 5922 5923<dd>The full sender address. </dd> 5924 5925<dt><b>SHELL</b></dt> 5926 5927<dd>The recipient's login shell. </dd> 5928 5929<dt><b>USER</b></dt> 5930 5931<dd>The recipient username. </dd> 5932 5933</dl> 5934 5935<p> 5936Unlike other Postfix configuration parameters, the <a href="postconf.5.html#mailbox_command">mailbox_command</a> 5937parameter is not subjected to $name substitutions. This is to make 5938it easier to specify shell syntax (see example below). 5939</p> 5940 5941<p> 5942If you can, avoid shell meta characters because they will force 5943Postfix to run an expensive shell process. If you're delivering 5944via Procmail then running a shell won't make a noticeable difference 5945in the total cost. 5946</p> 5947 5948<p> 5949Note: if you use the <a href="postconf.5.html#mailbox_command">mailbox_command</a> feature to deliver mail 5950system-wide, you must set up an alias that forwards mail for root 5951to a real user. 5952</p> 5953 5954<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 5955is: 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>, 5956<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>, 5957<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> 5958 5959<p> 5960Examples: 5961</p> 5962 5963<pre> 5964<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail 5965<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/procmail -a "$EXTENSION" 5966<a href="postconf.5.html#mailbox_command">mailbox_command</a> = /some/where/maildrop -d "$USER" 5967 -f "$SENDER" "$EXTENSION" 5968</pre> 5969 5970 5971</DD> 5972 5973<DT><b><a name="mailbox_command_maps">mailbox_command_maps</a> 5974(default: empty)</b></DT><DD> 5975 5976<p> 5977Optional lookup tables with per-recipient external commands to use 5978for <a href="local.8.html">local(8)</a> mailbox delivery. Behavior is as with <a href="postconf.5.html#mailbox_command">mailbox_command</a>. 5979</p> 5980 5981<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 5982is: 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>, 5983<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>, 5984<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> 5985 5986<p> 5987Specify zero or more "type:name" lookup tables, separated by 5988whitespace or comma. Tables will be searched in the specified order 5989until a match is found. 5990</p> 5991 5992 5993</DD> 5994 5995<DT><b><a name="mailbox_delivery_lock">mailbox_delivery_lock</a> 5996(default: see "postconf -d" output)</b></DT><DD> 5997 5998<p> 5999How to lock a UNIX-style <a href="local.8.html">local(8)</a> mailbox before attempting delivery. 6000For a list of available file locking methods, use the "<b>postconf 6001-l</b>" command. 6002</p> 6003 6004<p> 6005This setting is ignored with <b>maildir</b> style delivery, 6006because such deliveries are safe without explicit locks. 6007</p> 6008 6009<p> 6010Note: The <b>dotlock</b> method requires that the recipient UID or 6011GID has write access to the parent directory of the mailbox file. 6012</p> 6013 6014<p> 6015Note: the default setting of this parameter is system dependent. 6016</p> 6017 6018 6019</DD> 6020 6021<DT><b><a name="mailbox_size_limit">mailbox_size_limit</a> 6022(default: 51200000)</b></DT><DD> 6023 6024<p> The maximal size of any <a href="local.8.html">local(8)</a> individual mailbox or maildir 6025file, or zero (no limit). In fact, this limits the size of any 6026file that is written to upon local delivery, including files written 6027by external commands that are executed by the <a href="local.8.html">local(8)</a> delivery 6028agent. </p> 6029 6030<p> 6031This limit must not be smaller than the message size limit. 6032</p> 6033 6034 6035</DD> 6036 6037<DT><b><a name="mailbox_transport">mailbox_transport</a> 6038(default: empty)</b></DT><DD> 6039 6040<p> 6041Optional message delivery transport that the <a href="local.8.html">local(8)</a> delivery 6042agent should use for mailbox delivery to all local recipients, 6043whether or not they are found in the UNIX passwd database. 6044</p> 6045 6046<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 6047is: 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>, 6048<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>, 6049<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> 6050 6051 6052</DD> 6053 6054<DT><b><a name="mailbox_transport_maps">mailbox_transport_maps</a> 6055(default: empty)</b></DT><DD> 6056 6057<p> Optional lookup tables with per-recipient message delivery 6058transports to use for <a href="local.8.html">local(8)</a> mailbox delivery, whether or not the 6059recipients are found in the UNIX passwd database. </p> 6060 6061<p> The precedence of <a href="local.8.html">local(8)</a> delivery features from high to low 6062is: 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>, 6063<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>, 6064<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> 6065 6066<p> 6067Specify zero or more "type:name" lookup tables, separated by 6068whitespace or comma. Tables will be searched in the specified order 6069until a match is found. 6070</p> 6071 6072<p> For safety reasons, this feature does not allow $number 6073substitutions in regular expression maps. </p> 6074 6075<p> This feature is available in Postfix 2.3 and later. </p> 6076 6077 6078</DD> 6079 6080<DT><b><a name="mailq_path">mailq_path</a> 6081(default: see "postconf -d" output)</b></DT><DD> 6082 6083<p> 6084Sendmail compatibility feature that specifies where the Postfix 6085<a href="mailq.1.html">mailq(1)</a> command is installed. This command can be used to 6086list the Postfix mail queue. 6087</p> 6088 6089 6090</DD> 6091 6092<DT><b><a name="manpage_directory">manpage_directory</a> 6093(default: see "postconf -d" output)</b></DT><DD> 6094 6095<p> 6096Where the Postfix manual pages are installed. 6097</p> 6098 6099 6100</DD> 6101 6102<DT><b><a name="maps_rbl_domains">maps_rbl_domains</a> 6103(default: empty)</b></DT><DD> 6104 6105<p> 6106Obsolete feature: use the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> feature instead. 6107</p> 6108 6109 6110</DD> 6111 6112<DT><b><a name="maps_rbl_reject_code">maps_rbl_reject_code</a> 6113(default: 554)</b></DT><DD> 6114 6115<p> 6116The numerical Postfix SMTP server response code when a remote SMTP 6117client 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>, 6118<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 6119<a href="postconf.5.html#reject_rhsbl_recipient">reject_rhsbl_recipient</a> restriction. 6120</p> 6121 6122<p> 6123Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 6124</p> 6125 6126 6127</DD> 6128 6129<DT><b><a name="masquerade_classes">masquerade_classes</a> 6130(default: envelope_sender, header_sender, header_recipient)</b></DT><DD> 6131 6132<p> 6133What addresses are subject to address masquerading. 6134</p> 6135 6136<p> 6137By default, address masquerading is limited to envelope sender 6138addresses, and to header sender and header recipient addresses. 6139This allows you to use address masquerading on a mail gateway while 6140still being able to forward mail to users on individual machines. 6141</p> 6142 6143<p> 6144Specify zero or more of: envelope_sender, envelope_recipient, 6145header_sender, header_recipient 6146</p> 6147 6148 6149</DD> 6150 6151<DT><b><a name="masquerade_domains">masquerade_domains</a> 6152(default: empty)</b></DT><DD> 6153 6154<p> 6155Optional list of domains whose subdomain structure will be stripped 6156off in email addresses. 6157</p> 6158 6159<p> 6160The list is processed left to right, and processing stops at the 6161first match. Thus, 6162</p> 6163 6164<blockquote> 6165<pre> 6166<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = foo.example.com example.com 6167</pre> 6168</blockquote> 6169 6170<p> 6171strips "user@any.thing.foo.example.com" to "user@foo.example.com", 6172but strips "user@any.thing.else.example.com" to "user@example.com". 6173</p> 6174 6175<p> 6176A domain name prefixed with ! means do not masquerade this domain 6177or its subdomains. Thus, 6178</p> 6179 6180<blockquote> 6181<pre> 6182<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = !foo.example.com example.com 6183</pre> 6184</blockquote> 6185 6186<p> 6187does not change "user@any.thing.foo.example.com" or "user@foo.example.com", 6188but strips "user@any.thing.else.example.com" to "user@example.com". 6189</p> 6190 6191<p> Note: with Postfix version 2.2, message header address masquerading 6192happens only when message header address rewriting is enabled: </p> 6193 6194<ul> 6195 6196<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 6197 6198<li> The message is received from a network client that matches 6199$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 6200 6201<li> The message is received from the network, and the 6202<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 6203 6204</ul> 6205 6206<p> To get the behavior before Postfix version 2.2, specify 6207"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 6208 6209<p> 6210Example: 6211</p> 6212 6213<pre> 6214<a href="postconf.5.html#masquerade_domains">masquerade_domains</a> = $<a href="postconf.5.html#mydomain">mydomain</a> 6215</pre> 6216 6217 6218</DD> 6219 6220<DT><b><a name="masquerade_exceptions">masquerade_exceptions</a> 6221(default: empty)</b></DT><DD> 6222 6223<p> 6224Optional list of user names that are not subjected to address 6225masquerading, even when their address matches $<a href="postconf.5.html#masquerade_domains">masquerade_domains</a>. 6226</p> 6227 6228<p> 6229By default, address masquerading makes no exceptions. 6230</p> 6231 6232<p> 6233Specify a list of user names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns, 6234separated by commas and/or whitespace. The list is matched left to 6235right, and the search stops on the first match. A "/file/name" 6236pattern is replaced 6237by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name 6238matches a lookup key (the lookup result is ignored). Continue long 6239lines by starting the next line with whitespace. Specify "!pattern" 6240to exclude a name from the list. The form "!/file/name" is supported 6241only in Postfix version 2.4 and later. </p> 6242 6243<p> 6244Examples: 6245</p> 6246 6247<pre> 6248<a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root, mailer-daemon 6249<a href="postconf.5.html#masquerade_exceptions">masquerade_exceptions</a> = root 6250</pre> 6251 6252 6253</DD> 6254 6255<DT><b><a name="master_service_disable">master_service_disable</a> 6256(default: empty)</b></DT><DD> 6257 6258<p> Selectively disable <a href="master.8.html">master(8)</a> listener ports by service type 6259or by service name and type. Specify a list of service types 6260("inet", "unix", "fifo", or "pass") or "name/type" tuples, where 6261"name" is the first field of a <a href="master.5.html">master.cf</a> entry and "type" is a 6262service type. As with other Postfix matchlists, a search stops at 6263the first match. Specify "!pattern" to exclude a service from the 6264list. By default, all <a href="master.8.html">master(8)</a> listener ports are enabled. </p> 6265 6266<p> Note: this feature does not support "/file/name" or "<a href="DATABASE_README.html">type:table</a>" 6267patterns, nor does it support wildcards such as "*" or "all". This 6268is intentional. </p> 6269 6270<p> Examples: </p> 6271 6272<pre> 6273# With Postfix 2.6..2.10 use '.' instead of '/'. 6274# Turn on all <a href="master.8.html">master(8)</a> listener ports (the default). 6275<a href="postconf.5.html#master_service_disable">master_service_disable</a> = 6276# Turn off only the main SMTP listener port. 6277<a href="postconf.5.html#master_service_disable">master_service_disable</a> = smtp/inet 6278# Turn off all TCP/IP listener ports. 6279<a href="postconf.5.html#master_service_disable">master_service_disable</a> = inet 6280# Turn off all TCP/IP listener ports except "foo". 6281<a href="postconf.5.html#master_service_disable">master_service_disable</a> = !foo/inet, inet 6282</pre> 6283 6284<p> This feature is available in Postfix 2.6 and later. </p> 6285 6286 6287</DD> 6288 6289<DT><b><a name="max_idle">max_idle</a> 6290(default: 100s)</b></DT><DD> 6291 6292<p> 6293The maximum amount of time that an idle Postfix daemon process waits 6294for an incoming connection before terminating voluntarily. This 6295parameter 6296is ignored by the Postfix queue manager and by other long-lived 6297Postfix daemon processes. 6298</p> 6299 6300<p> 6301Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 6302The default time unit is s (seconds). 6303</p> 6304 6305 6306</DD> 6307 6308<DT><b><a name="max_use">max_use</a> 6309(default: 100)</b></DT><DD> 6310 6311<p> 6312The maximal number of incoming connections that a Postfix daemon 6313process will service before terminating voluntarily. This parameter 6314is ignored by the Postfix queue 6315manager and by other long-lived Postfix daemon processes. 6316</p> 6317 6318 6319</DD> 6320 6321<DT><b><a name="maximal_backoff_time">maximal_backoff_time</a> 6322(default: 4000s)</b></DT><DD> 6323 6324<p> 6325The maximal time between attempts to deliver a deferred message. 6326</p> 6327 6328<p> This parameter should be set to a value greater than or equal 6329to $<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> 6330 6331<p> 6332Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 6333The default time unit is s (seconds). 6334</p> 6335 6336 6337</DD> 6338 6339<DT><b><a name="maximal_queue_lifetime">maximal_queue_lifetime</a> 6340(default: 5d)</b></DT><DD> 6341 6342<p> 6343Consider a message as undeliverable, when delivery fails with a 6344temporary error, and the time in the queue has reached the 6345<a href="postconf.5.html#maximal_queue_lifetime">maximal_queue_lifetime</a> limit. 6346</p> 6347 6348<p> 6349Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 6350The default time unit is d (days). 6351</p> 6352 6353<p> 6354Specify 0 when mail delivery should be tried only once. 6355</p> 6356 6357 6358</DD> 6359 6360<DT><b><a name="message_drop_headers">message_drop_headers</a> 6361(default: bcc, content-length, resent-bcc, return-path)</b></DT><DD> 6362 6363<p> Names of message headers that the <a href="cleanup.8.html">cleanup(8)</a> daemon will remove 6364after applying <a href="header_checks.5.html">header_checks(5)</a> and before invoking Milter applications. 6365The default setting is compatible with Postfix < 3.0. </p> 6366 6367<p> Specify a list of header names, separated by comma or space. 6368Names are matched in a case-insensitive manner. The list of supported 6369header names is limited only by available memory. </p> 6370 6371<p> This feature is available in Postfix 3.0 and later. </p> 6372 6373 6374</DD> 6375 6376<DT><b><a name="message_reject_characters">message_reject_characters</a> 6377(default: empty)</b></DT><DD> 6378 6379<p> The set of characters that Postfix will reject in message 6380content. The usual C-like escape sequences are recognized: <tt>\a 6381\b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and 6382<tt>\\</tt>. </p> 6383 6384<p> Note 1: this feature does not recognize text that requires MIME 6385decoding. It inspects raw message content, just like <a href="postconf.5.html#header_checks">header_checks</a> 6386and <a href="postconf.5.html#body_checks">body_checks</a>. </p> 6387 6388<p> Note 2: this feature is disabled with "<a href="postconf.5.html#receive_override_options">receive_override_options</a> 6389= <a href="postconf.5.html#no_header_body_checks">no_header_body_checks</a>". </p> 6390 6391<p> Example: </p> 6392 6393<pre> 6394<a href="postconf.5.html#message_reject_characters">message_reject_characters</a> = \0 6395</pre> 6396 6397<p> This feature is available in Postfix 2.3 and later. </p> 6398 6399 6400</DD> 6401 6402<DT><b><a name="message_size_limit">message_size_limit</a> 6403(default: 10240000)</b></DT><DD> 6404 6405<p> 6406The maximal size in bytes of a message, including envelope information. 6407</p> 6408 6409<p> Note: be careful when making changes. Excessively small values 6410will result in the loss of non-delivery notifications, when a bounce 6411message size exceeds the local or remote MTA's message size limit. 6412</p> 6413 6414 6415</DD> 6416 6417<DT><b><a name="message_strip_characters">message_strip_characters</a> 6418(default: empty)</b></DT><DD> 6419 6420<p> The set of characters that Postfix will remove from message 6421content. The usual C-like escape sequences are recognized: <tt>\a 6422\b \f \n \r \t \v \<i>ddd</i></tt> (up to three octal digits) and 6423<tt>\\</tt>. </p> 6424 6425<p> Note 1: this feature does not recognize text that requires MIME 6426decoding. It inspects raw message content, just like <a href="postconf.5.html#header_checks">header_checks</a> 6427and <a href="postconf.5.html#body_checks">body_checks</a>. </p> 6428 6429<p> Note 2: this feature is disabled with "<a href="postconf.5.html#receive_override_options">receive_override_options</a> 6430= <a href="postconf.5.html#no_header_body_checks">no_header_body_checks</a>". </p> 6431 6432<p> Example: </p> 6433 6434<pre> 6435<a href="postconf.5.html#message_strip_characters">message_strip_characters</a> = \0 6436</pre> 6437 6438<p> This feature is available in Postfix 2.3 and later. </p> 6439 6440 6441</DD> 6442 6443<DT><b><a name="meta_directory">meta_directory</a> 6444(default: see 'postconf -d' output)</b></DT><DD> 6445 6446<p> The location of non-executable files that are shared among 6447multiple Postfix instances, such as postfix-files, dynamicmaps.cf, 6448and the multi-instance template files <a href="postconf.5.html">main.cf</a>.proto and <a href="master.5.html">master.cf</a>.proto. 6449This directory should contain only Postfix-related files. Typically, 6450the <a href="postconf.5.html#meta_directory">meta_directory</a> parameter has the same default as the <a href="postconf.5.html#config_directory">config_directory</a> 6451parameter (/etc/postfix or /usr/local/etc/postfix). </p> 6452 6453<p> For backwards compatibility with Postfix versions 2.6..2.11, 6454specify "<a href="postconf.5.html#meta_directory">meta_directory</a> = $<a href="postconf.5.html#daemon_directory">daemon_directory</a>" in <a href="postconf.5.html">main.cf</a> before 6455installing or upgrading Postfix, or specify "<a href="postconf.5.html#meta_directory">meta_directory</a> = 6456/path/name" on the "make makefiles", "make install" or "make upgrade" 6457command line. </p> 6458 6459<p> This feature is available in Postfix 3.0 and later. </p> 6460 6461 6462</DD> 6463 6464<DT><b><a name="milter_command_timeout">milter_command_timeout</a> 6465(default: 30s)</b></DT><DD> 6466 6467<p> The time limit for sending an SMTP command to a Milter (mail 6468filter) application, and for receiving the response. </p> 6469 6470<p> Specify a non-zero time value (an integral value plus an optional 6471one-letter suffix that specifies the time unit). </p> 6472 6473<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 6474(weeks). The default time unit is s (seconds). </p> 6475 6476<p> This feature is available in Postfix 2.3 and later. </p> 6477 6478 6479</DD> 6480 6481<DT><b><a name="milter_connect_macros">milter_connect_macros</a> 6482(default: see "postconf -d" output)</b></DT><DD> 6483 6484<p> The macros that are sent to Milter (mail filter) applications 6485after completion of an SMTP connection. See <a href="MILTER_README.html">MILTER_README</a> 6486for a list of available macro names and their meanings. </p> 6487 6488<p> This feature is available in Postfix 2.3 and later. </p> 6489 6490 6491</DD> 6492 6493<DT><b><a name="milter_connect_timeout">milter_connect_timeout</a> 6494(default: 30s)</b></DT><DD> 6495 6496<p> The time limit for connecting to a Milter (mail filter) 6497application, and for negotiating protocol options. </p> 6498 6499<p> Specify a non-zero time value (an integral value plus an optional 6500one-letter suffix that specifies the time unit). </p> 6501 6502<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 6503(weeks). The default time unit is s (seconds). </p> 6504 6505<p> This feature is available in Postfix 2.3 and later. </p> 6506 6507 6508</DD> 6509 6510<DT><b><a name="milter_content_timeout">milter_content_timeout</a> 6511(default: 300s)</b></DT><DD> 6512 6513<p> The time limit for sending message content to a Milter (mail 6514filter) application, and for receiving the response. </p> 6515 6516<p> Specify a non-zero time value (an integral value plus an optional 6517one-letter suffix that specifies the time unit). </p> 6518 6519<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 6520(weeks). The default time unit is s (seconds). </p> 6521 6522<p> This feature is available in Postfix 2.3 and later. </p> 6523 6524 6525</DD> 6526 6527<DT><b><a name="milter_data_macros">milter_data_macros</a> 6528(default: see "postconf -d" output)</b></DT><DD> 6529 6530<p> The macros that are sent to version 4 or higher Milter (mail 6531filter) applications after the SMTP DATA command. See <a href="MILTER_README.html">MILTER_README</a> 6532for a list of available macro names and their meanings. </p> 6533 6534<p> This feature is available in Postfix 2.3 and later. </p> 6535 6536 6537</DD> 6538 6539<DT><b><a name="milter_default_action">milter_default_action</a> 6540(default: tempfail)</b></DT><DD> 6541 6542<p> The default action when a Milter (mail filter) application is 6543unavailable or mis-configured. Specify one of the following: </p> 6544 6545<dl compact> 6546 6547<dt>accept</dt> <dd>Proceed as if the mail filter was not present. 6548</dd> 6549 6550<dt>reject</dt> <dd>Reject all further commands in this session 6551with a permanent status code.</dd> 6552 6553<dt>tempfail</dt> <dd>Reject all further commands in this session 6554with a temporary status code. </dd> 6555 6556<dt>quarantine</dt> <dd>Like "accept", but freeze the message in 6557the "<a href="QSHAPE_README.html#hold_queue">hold" queue</a>. Available with Postfix 2.6 and later. </dd> 6558 6559</dl> 6560 6561<p> This feature is available in Postfix 2.3 and later. </p> 6562 6563 6564</DD> 6565 6566<DT><b><a name="milter_end_of_data_macros">milter_end_of_data_macros</a> 6567(default: see "postconf -d" output)</b></DT><DD> 6568 6569<p> The macros that are sent to Milter (mail filter) applications 6570after the message end-of-data. See <a href="MILTER_README.html">MILTER_README</a> for a list of 6571available macro names and their meanings. </p> 6572 6573<p> This feature is available in Postfix 2.3 and later. </p> 6574 6575 6576</DD> 6577 6578<DT><b><a name="milter_end_of_header_macros">milter_end_of_header_macros</a> 6579(default: see "postconf -d" output)</b></DT><DD> 6580 6581<p> The macros that are sent to Milter (mail filter) applications 6582after the end of the message header. See <a href="MILTER_README.html">MILTER_README</a> for a list 6583of available macro names and their meanings. </p> 6584 6585<p> This feature is available in Postfix 2.5 and later. </p> 6586 6587 6588</DD> 6589 6590<DT><b><a name="milter_header_checks">milter_header_checks</a> 6591(default: empty)</b></DT><DD> 6592 6593<p> Optional lookup tables for content inspection of message headers 6594that are produced by Milter applications. See the <a href="header_checks.5.html">header_checks(5)</a> 6595manual page available actions. Currently, PREPEND is not implemented. 6596</p> 6597 6598<p> The following example sends all mail that is marked as SPAM to 6599a spam handling machine. Note that matches are case-insensitive 6600by default. </p> 6601 6602<pre> 6603/etc/postfix/<a href="postconf.5.html">main.cf</a>: 6604 <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> 6605</pre> 6606 6607<pre> 6608/etc/postfix/<a href="postconf.5.html#milter_header_checks">milter_header_checks</a>: 6609 /^X-SPAM-FLAG:\s+YES/ FILTER mysmtp:sanitizer.example.com:25 6610</pre> 6611 6612<p> The <a href="postconf.5.html#milter_header_checks">milter_header_checks</a> mechanism could also be used for 6613whitelisting. For example it could be used to skip heavy content 6614inspection for DKIM-signed mail from known friendly domains. </p> 6615 6616<p> This feature is available in Postfix 2.7, and as an optional 6617patch for Postfix 2.6. </p> 6618 6619 6620</DD> 6621 6622<DT><b><a name="milter_helo_macros">milter_helo_macros</a> 6623(default: see "postconf -d" output)</b></DT><DD> 6624 6625<p> The macros that are sent to Milter (mail filter) applications 6626after the SMTP HELO or EHLO command. See 6627<a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their meanings. 6628</p> 6629 6630<p> This feature is available in Postfix 2.3 and later. </p> 6631 6632 6633</DD> 6634 6635<DT><b><a name="milter_macro_daemon_name">milter_macro_daemon_name</a> 6636(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 6637 6638<p> The {daemon_name} macro value for Milter (mail filter) applications. 6639See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their 6640meanings. </p> 6641 6642<p> This feature is available in Postfix 2.3 and later. </p> 6643 6644 6645</DD> 6646 6647<DT><b><a name="milter_macro_defaults">milter_macro_defaults</a> 6648(default: empty)</b></DT><DD> 6649 6650<p> Optional list of <i>name=value</i> pairs that specify default 6651values for arbitrary macros that Postfix may send to Milter 6652applications. These defaults are used when there is no corresponding 6653information from the message delivery context. </p> 6654 6655<p> Specify <i>name=value</i> or <i>{name}=value</i> pairs separated 6656by comma or whitespace. Enclose a pair in "{}" when a value contains 6657comma or whitespace (this form ignores whitespace after the enclosing 6658"{", around the "=", and before the enclosing "}"). </p> 6659 6660<p> This feature is available in Postfix 3.1 and later. </p> 6661 6662 6663</DD> 6664 6665<DT><b><a name="milter_macro_v">milter_macro_v</a> 6666(default: $<a href="postconf.5.html#mail_name">mail_name</a> $<a href="postconf.5.html#mail_version">mail_version</a>)</b></DT><DD> 6667 6668<p> The {v} macro value for Milter (mail filter) applications. 6669See <a href="MILTER_README.html">MILTER_README</a> for a list of available macro names and their 6670meanings. </p> 6671 6672<p> This feature is available in Postfix 2.3 and later. </p> 6673 6674 6675</DD> 6676 6677<DT><b><a name="milter_mail_macros">milter_mail_macros</a> 6678(default: see "postconf -d" output)</b></DT><DD> 6679 6680<p> The macros that are sent to Milter (mail filter) applications 6681after the SMTP MAIL FROM command. See <a href="MILTER_README.html">MILTER_README</a> 6682for a list of available macro names and their meanings. </p> 6683 6684<p> This feature is available in Postfix 2.3 and later. </p> 6685 6686 6687</DD> 6688 6689<DT><b><a name="milter_protocol">milter_protocol</a> 6690(default: 6)</b></DT><DD> 6691 6692<p> The mail filter protocol version and optional protocol extensions 6693for communication with a Milter application; prior to Postfix 2.6 6694the default protocol is 2. Postfix 6695sends this version number during the initial protocol handshake. 6696It should match the version number that is expected by the mail 6697filter application (or by its Milter library). </p> 6698 6699<p>Protocol versions: </p> 6700 6701<dl compact> 6702 6703<dt>2</dt> <dd>Use Sendmail 8 mail filter protocol version 2 (default 6704with Sendmail version 8.11 .. 8.13 and Postfix version 2.3 .. 67052.5).</dd> 6706 6707<dt>3</dt> <dd>Use Sendmail 8 mail filter protocol version 3.</dd> 6708 6709<dt>4</dt> <dd>Use Sendmail 8 mail filter protocol version 4.</dd> 6710 6711<dt>6</dt> <dd>Use Sendmail 8 mail filter protocol version 6 (default 6712with Sendmail version 8.14 and Postfix version 2.6).</dd> 6713 6714</dl> 6715 6716<p>Protocol extensions: </p> 6717 6718<dl compact> 6719 6720<dt>no_header_reply</dt> <dd> Specify this when the Milter application 6721will not reply for each individual message header.</dd> 6722 6723</dl> 6724 6725<p> This feature is available in Postfix 2.3 and later. </p> 6726 6727 6728</DD> 6729 6730<DT><b><a name="milter_rcpt_macros">milter_rcpt_macros</a> 6731(default: see "postconf -d" output)</b></DT><DD> 6732 6733<p> The macros that are sent to Milter (mail filter) applications 6734after the SMTP RCPT TO command. See <a href="MILTER_README.html">MILTER_README</a> 6735for a list of available macro names and their meanings. </p> 6736 6737<p> This feature is available in Postfix 2.3 and later. </p> 6738 6739 6740</DD> 6741 6742<DT><b><a name="milter_unknown_command_macros">milter_unknown_command_macros</a> 6743(default: see "postconf -d" output)</b></DT><DD> 6744 6745<p> The macros that are sent to version 3 or higher Milter (mail 6746filter) applications after an unknown SMTP command. See <a href="MILTER_README.html">MILTER_README</a> 6747for a list of available macro names and their meanings. </p> 6748 6749<p> This feature is available in Postfix 2.3 and later. </p> 6750 6751 6752</DD> 6753 6754<DT><b><a name="mime_boundary_length_limit">mime_boundary_length_limit</a> 6755(default: 2048)</b></DT><DD> 6756 6757<p> 6758The maximal length of MIME multipart boundary strings. The MIME 6759processor is unable to distinguish between boundary strings that 6760do not differ in the first $<a href="postconf.5.html#mime_boundary_length_limit">mime_boundary_length_limit</a> characters. 6761</p> 6762 6763<p> 6764This feature is available in Postfix 2.0 and later. 6765</p> 6766 6767 6768</DD> 6769 6770<DT><b><a name="mime_header_checks">mime_header_checks</a> 6771(default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD> 6772 6773<p> 6774Optional lookup tables for content inspection of MIME related 6775message headers, as described in the <a href="header_checks.5.html">header_checks(5)</a> manual page. 6776</p> 6777 6778<p> 6779This feature is available in Postfix 2.0 and later. 6780</p> 6781 6782 6783</DD> 6784 6785<DT><b><a name="mime_nesting_limit">mime_nesting_limit</a> 6786(default: 100)</b></DT><DD> 6787 6788<p> 6789The maximal recursion level that the MIME processor will handle. 6790Postfix refuses mail that is nested deeper than the specified limit. 6791</p> 6792 6793<p> 6794This feature is available in Postfix 2.0 and later. 6795</p> 6796 6797 6798</DD> 6799 6800<DT><b><a name="minimal_backoff_time">minimal_backoff_time</a> 6801(default: 300s)</b></DT><DD> 6802 6803<p> 6804The minimal time between attempts to deliver a deferred message; 6805prior to Postfix 2.4 the default value was 1000s. 6806</p> 6807 6808<p> 6809This parameter also limits the time an unreachable destination is 6810kept in the short-term, in-memory, destination status cache. 6811</p> 6812 6813<p> This parameter should be set greater than or equal to 6814$<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> 6815 6816<p> 6817Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 6818The default time unit is s (seconds). 6819</p> 6820 6821 6822</DD> 6823 6824<DT><b><a name="multi_instance_directories">multi_instance_directories</a> 6825(default: empty)</b></DT><DD> 6826 6827<p> An optional list of non-default Postfix configuration directories; 6828these directories belong to additional Postfix instances that share 6829the Postfix executable files and documentation with the default 6830Postfix instance, and that are started, stopped, etc., together 6831with the default Postfix instance. Specify a list of pathnames 6832separated by comma or whitespace. </p> 6833 6834<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 6835runs in single-instance mode and operates on a single Postfix 6836instance only. Otherwise, the <a href="postfix.1.html">postfix(1)</a> command runs in multi-instance 6837mode and invokes the multi-instance manager specified with the 6838<a href="postconf.5.html#multi_instance_wrapper">multi_instance_wrapper</a> parameter. The multi-instance manager in 6839turn executes <a href="postfix.1.html">postfix(1)</a> commands for the default instance and for 6840all Postfix instances in $<a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a>. </p> 6841 6842<p> Currently, this parameter setting is ignored except for the 6843default <a href="postconf.5.html">main.cf</a> file. </p> 6844 6845<p> This feature is available in Postfix 2.6 and later. </p> 6846 6847 6848</DD> 6849 6850<DT><b><a name="multi_instance_enable">multi_instance_enable</a> 6851(default: no)</b></DT><DD> 6852 6853<p> Allow this Postfix instance to be started, stopped, etc., by a 6854multi-instance manager. By default, new instances are created in 6855a safe state that prevents them from being started inadvertently. 6856This parameter is reserved for the multi-instance manager. </p> 6857 6858<p> This feature is available in Postfix 2.6 and later. </p> 6859 6860 6861</DD> 6862 6863<DT><b><a name="multi_instance_group">multi_instance_group</a> 6864(default: empty)</b></DT><DD> 6865 6866<p> The optional instance group name of this Postfix instance. A 6867group identifies closely-related Postfix instances that the 6868multi-instance manager can start, stop, etc., as a unit. This 6869parameter is reserved for the multi-instance manager. </p> 6870 6871<p> This feature is available in Postfix 2.6 and later. </p> 6872 6873 6874</DD> 6875 6876<DT><b><a name="multi_instance_name">multi_instance_name</a> 6877(default: empty)</b></DT><DD> 6878 6879<p> The optional instance name of this Postfix instance. This name 6880becomes also the default value for the <a href="postconf.5.html#syslog_name">syslog_name</a> parameter. </p> 6881 6882<p> This feature is available in Postfix 2.6 and later. </p> 6883 6884 6885</DD> 6886 6887<DT><b><a name="multi_instance_wrapper">multi_instance_wrapper</a> 6888(default: empty)</b></DT><DD> 6889 6890<p> The pathname of a multi-instance manager command that the 6891<a href="postfix.1.html">postfix(1)</a> command invokes when the <a href="postconf.5.html#multi_instance_directories">multi_instance_directories</a> 6892parameter value is non-empty. The pathname may be followed by 6893initial command arguments separated by whitespace; shell 6894metacharacters such as quotes are not supported in this context. 6895</p> 6896 6897<p> The <a href="postfix.1.html">postfix(1)</a> command invokes the manager command with the 6898<a href="postfix.1.html">postfix(1)</a> non-option command arguments on the manager command line, 6899and with all installation configuration parameters exported into 6900the manager command process environment. The manager command in 6901turn invokes the <a href="postfix.1.html">postfix(1)</a> command for individual Postfix instances 6902as "postfix -c <i><a href="postconf.5.html#config_directory">config_directory</a></i> <i>command</i>". </p> 6903 6904<p> This feature is available in Postfix 2.6 and later. </p> 6905 6906 6907</DD> 6908 6909<DT><b><a name="multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a> 6910(default: 550)</b></DT><DD> 6911 6912<p> 6913The numerical Postfix SMTP server response code when a remote SMTP 6914client request is blocked by the <a href="postconf.5.html#reject_multi_recipient_bounce">reject_multi_recipient_bounce</a> 6915restriction. 6916</p> 6917 6918<p> 6919Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 6920</p> 6921 6922<p> 6923This feature is available in Postfix 2.1 and later. 6924</p> 6925 6926 6927</DD> 6928 6929<DT><b><a name="mydestination">mydestination</a> 6930(default: $<a href="postconf.5.html#myhostname">myhostname</a>, localhost.$<a href="postconf.5.html#mydomain">mydomain</a>, localhost)</b></DT><DD> 6931 6932<p> The list of domains that are delivered via the $<a href="postconf.5.html#local_transport">local_transport</a> 6933mail delivery transport. By default this is the Postfix <a href="local.8.html">local(8)</a> 6934delivery agent which looks up all recipients in /etc/passwd and 6935/etc/aliases. The SMTP server validates recipient addresses with 6936$<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> and rejects non-existent recipients. See also 6937the <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. 6938</p> 6939 6940<p> 6941The default <a href="postconf.5.html#mydestination">mydestination</a> value specifies names for the local 6942machine only. On a mail domain gateway, you should also include 6943$<a href="postconf.5.html#mydomain">mydomain</a>. 6944</p> 6945 6946<p> 6947The $<a href="postconf.5.html#local_transport">local_transport</a> delivery method is also selected for mail 6948addressed to user@[the.net.work.address] of the mail system (the 6949IP 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> 6950parameters). 6951</p> 6952 6953<p> 6954Warnings: 6955</p> 6956 6957<ul> 6958 6959<li><p>Do not specify the names of virtual domains - those domains 6960are specified elsewhere. See <a href="VIRTUAL_README.html">VIRTUAL_README</a> for more information. </p> 6961 6962<li><p>Do not specify the names of domains that this machine is 6963backup MX host for. See <a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> for how to 6964set up backup MX hosts. </p> 6965 6966<li><p>By default, the Postfix SMTP server rejects mail for recipients 6967not listed with the <a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> parameter. See the 6968<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> 6969and <a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> parameters. </p> 6970 6971</ul> 6972 6973<p> 6974Specify a list of host or domain names, "/file/name" or "<a href="DATABASE_README.html">type:table</a>" 6975patterns, separated by commas and/or whitespace. A "/file/name" 6976pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table 6977is matched when a name matches a lookup key (the lookup result is 6978ignored). Continue long lines by starting the next line with 6979whitespace. </p> 6980 6981<p> 6982Examples: 6983</p> 6984 6985<pre> 6986<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> 6987<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> 6988</pre> 6989 6990 6991</DD> 6992 6993<DT><b><a name="mydomain">mydomain</a> 6994(default: see "postconf -d" output)</b></DT><DD> 6995 6996<p> 6997The internet domain name of this mail system. The default is to 6998use $<a href="postconf.5.html#myhostname">myhostname</a> minus the first component, or "localdomain" (Postfix 69992.3 and later). $<a href="postconf.5.html#mydomain">mydomain</a> is used as 7000a default value for many other configuration parameters. 7001</p> 7002 7003<p> 7004Example: 7005</p> 7006 7007<pre> 7008<a href="postconf.5.html#mydomain">mydomain</a> = domain.tld 7009</pre> 7010 7011 7012</DD> 7013 7014<DT><b><a name="myhostname">myhostname</a> 7015(default: see "postconf -d" output)</b></DT><DD> 7016 7017<p> 7018The internet hostname of this mail system. The default is to use 7019the fully-qualified domain name (FQDN) from gethostname(), or to 7020use the non-FQDN result from gethostname() and append ".$<a href="postconf.5.html#mydomain">mydomain</a>". 7021$<a href="postconf.5.html#myhostname">myhostname</a> is used as a default value for many other configuration 7022parameters. </p> 7023 7024<p> 7025Example: 7026</p> 7027 7028<pre> 7029<a href="postconf.5.html#myhostname">myhostname</a> = host.example.com 7030</pre> 7031 7032 7033</DD> 7034 7035<DT><b><a name="mynetworks">mynetworks</a> 7036(default: see "postconf -d" output)</b></DT><DD> 7037 7038<p> 7039The list of "trusted" remote SMTP clients that have more privileges than 7040"strangers". 7041</p> 7042 7043<p> 7044In particular, "trusted" SMTP clients are allowed to relay mail 7045through Postfix. See the <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> parameter 7046description in the <a href="postconf.5.html">postconf(5)</a> manual. 7047</p> 7048 7049<p> 7050You can specify the list of "trusted" network addresses by hand 7051or you can let Postfix do it for you (which is the default). 7052See the description of the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> parameter for more 7053information. 7054</p> 7055 7056<p> 7057If you specify the <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand, 7058Postfix ignores the <a href="postconf.5.html#mynetworks_style">mynetworks_style</a> setting. 7059</p> 7060 7061<p> Specify a list of network addresses or network/netmask patterns, 7062separated by commas and/or whitespace. Continue long lines by 7063starting the next line with whitespace. </p> 7064 7065<p> The netmask specifies the number of bits in the network part 7066of a host address. You can also specify "/file/name" or "<a href="DATABASE_README.html">type:table</a>" 7067patterns. A "/file/name" pattern is replaced by its contents; a 7068"<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry matches a 7069lookup string (the lookup result is ignored). </p> 7070 7071<p> The list is matched left to right, and the search stops on the 7072first match. Specify "!pattern" to exclude an address or network 7073block from the list. The form "!/file/name" is supported only 7074in Postfix version 2.4 and later. </p> 7075 7076<p> Note 1: Pattern matching of domain names is controlled by the 7077or absence of "<a href="postconf.5.html#mynetworks">mynetworks</a>" in the <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 7078parameter value. </p> 7079 7080<p> Note 2: IP version 6 address information must be specified inside 7081<tt>[]</tt> in the <a href="postconf.5.html#mynetworks">mynetworks</a> value, and in files specified with 7082"/file/name". IP version 6 addresses contain the ":" character, 7083and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" pattern. </p> 7084 7085<p> Examples: </p> 7086 7087<pre> 7088<a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28 7089<a href="postconf.5.html#mynetworks">mynetworks</a> = !192.168.0.1, 192.168.0.0/28 7090<a href="postconf.5.html#mynetworks">mynetworks</a> = 127.0.0.0/8 168.100.189.0/28 [::1]/128 [2001:240:587::]/64 7091<a href="postconf.5.html#mynetworks">mynetworks</a> = $<a href="postconf.5.html#config_directory">config_directory</a>/mynetworks 7092<a href="postconf.5.html#mynetworks">mynetworks</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/network_table 7093</pre> 7094 7095 7096</DD> 7097 7098<DT><b><a name="mynetworks_style">mynetworks_style</a> 7099(default: Postfix ≥ 3.0: host, Postfix < 3.0: subnet)</b></DT><DD> 7100 7101<p> 7102The method to generate the default value for the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter. 7103This is the list of trusted networks for relay access control etc. 7104</p> 7105 7106<ul> 7107 7108<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = host" when Postfix should 7109"trust" only the local machine. </p> 7110 7111<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = subnet" when Postfix 7112should "trust" remote SMTP clients in the same IP subnetworks as the local 7113machine. On Linux, this works correctly only with interfaces 7114specified with the "ifconfig" command. </p> 7115 7116<li><p>Specify "<a href="postconf.5.html#mynetworks_style">mynetworks_style</a> = class" when Postfix should 7117"trust" remote SMTP clients in the same IP class A/B/C networks as the 7118local machine. Caution: this may cause 7119Postfix to "trust" your entire provider's network. Instead, specify 7120an explicit <a href="postconf.5.html#mynetworks">mynetworks</a> list by hand, as described with the <a href="postconf.5.html#mynetworks">mynetworks</a> 7121configuration parameter. </p> 7122 7123</ul> 7124 7125 7126</DD> 7127 7128<DT><b><a name="myorigin">myorigin</a> 7129(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 7130 7131<p> 7132The domain name that locally-posted mail appears to come 7133from, and that locally posted mail is delivered to. The default, 7134$<a href="postconf.5.html#myhostname">myhostname</a>, is adequate for small sites. If you run a domain with 7135multiple machines, you should (1) change this to $<a href="postconf.5.html#mydomain">mydomain</a> and (2) 7136set up a domain-wide alias database that aliases each user to 7137user@that.users.mailhost. 7138</p> 7139 7140<p> 7141Example: 7142</p> 7143 7144<pre> 7145<a href="postconf.5.html#myorigin">myorigin</a> = $<a href="postconf.5.html#mydomain">mydomain</a> 7146</pre> 7147 7148 7149</DD> 7150 7151<DT><b><a name="nested_header_checks">nested_header_checks</a> 7152(default: $<a href="postconf.5.html#header_checks">header_checks</a>)</b></DT><DD> 7153 7154<p> 7155Optional lookup tables for content inspection of non-MIME message 7156headers in attached messages, as described in the <a href="header_checks.5.html">header_checks(5)</a> 7157manual page. 7158</p> 7159 7160<p> 7161This feature is available in Postfix 2.0 and later. 7162</p> 7163 7164 7165</DD> 7166 7167<DT><b><a name="newaliases_path">newaliases_path</a> 7168(default: see "postconf -d" output)</b></DT><DD> 7169 7170<p> 7171Sendmail compatibility feature that specifies the location of the 7172<a href="newaliases.1.html">newaliases(1)</a> command. This command can be used to rebuild the 7173<a href="local.8.html">local(8)</a> <a href="aliases.5.html">aliases(5)</a> database. 7174</p> 7175 7176 7177</DD> 7178 7179<DT><b><a name="non_fqdn_reject_code">non_fqdn_reject_code</a> 7180(default: 504)</b></DT><DD> 7181 7182<p> 7183The numerical Postfix SMTP server reply code when a client request 7184is 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> 7185or <a href="postconf.5.html#reject_non_fqdn_recipient">reject_non_fqdn_recipient</a> restriction. 7186</p> 7187 7188 7189</DD> 7190 7191<DT><b><a name="non_smtpd_milters">non_smtpd_milters</a> 7192(default: empty)</b></DT><DD> 7193 7194<p> A list of Milter (mail filter) applications for new mail that 7195does not arrive via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server. This includes local 7196submission via the <a href="sendmail.1.html">sendmail(1)</a> command line, new mail that arrives 7197via the Postfix <a href="qmqpd.8.html">qmqpd(8)</a> server, and old mail that is re-injected 7198into the queue with "postsuper -r". Specify space or comma as 7199separator. See the <a href="MILTER_README.html">MILTER_README</a> document for details. </p> 7200 7201<p> This feature is available in Postfix 2.3 and later. </p> 7202 7203 7204</DD> 7205 7206<DT><b><a name="notify_classes">notify_classes</a> 7207(default: resource, software)</b></DT><DD> 7208 7209<p> 7210The list of error classes that are reported to the postmaster. The 7211default is to report only the most serious problems. The paranoid 7212may wish to turn on the policy (UCE and mail relaying) and protocol 7213error (broken mail software) reports. 7214</p> 7215 7216<p> NOTE: postmaster notifications may contain confidential information 7217such as SASL passwords or message content. It is the system 7218administrator's responsibility to treat such information with care. 7219</p> 7220 7221<p> 7222The error classes are: 7223</p> 7224 7225<dl> 7226 7227<dt><b>bounce</b> (also implies <b>2bounce</b>)</dt> 7228 7229<dd>Send the postmaster copies of the headers of bounced mail, and 7230send transcripts of SMTP sessions when Postfix rejects mail. The 7231notification is sent to the address specified with the 7232<a href="postconf.5.html#bounce_notice_recipient">bounce_notice_recipient</a> configuration parameter (default: postmaster). 7233</dd> 7234 7235<dt><b>2bounce</b></dt> 7236 7237<dd>Send undeliverable bounced mail to the postmaster. The notification 7238is sent to the address specified with the <a href="postconf.5.html#2bounce_notice_recipient">2bounce_notice_recipient</a> 7239configuration parameter (default: postmaster). </dd> 7240 7241<dt><b>data</b></dt> 7242 7243<dd>Send the postmaster a transcript of the SMTP session with an 7244error because a critical data file was unavailable. The notification 7245is sent to the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> 7246configuration parameter (default: postmaster). <br> This feature 7247is available in Postfix 2.9 and later. </dd> 7248 7249<dt><b>delay</b></dt> 7250 7251<dd>Send the postmaster copies of the headers of delayed mail (see 7252<a href="postconf.5.html#delay_warning_time">delay_warning_time</a>). The 7253notification is sent to the address specified with the 7254<a href="postconf.5.html#delay_notice_recipient">delay_notice_recipient</a> configuration parameter (default: postmaster). 7255</dd> 7256 7257<dt><b>policy</b></dt> 7258 7259<dd>Send the postmaster a transcript of the SMTP session when a 7260client request was rejected because of (UCE) policy. The notification 7261is sent to the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> 7262configuration parameter (default: postmaster). </dd> 7263 7264<dt><b>protocol</b></dt> 7265 7266<dd>Send the postmaster a transcript of the SMTP session in case 7267of client or server protocol errors. The notification is sent to 7268the address specified with the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration 7269parameter (default: postmaster). </dd> 7270 7271<dt><b>resource</b></dt> 7272 7273<dd>Inform the postmaster of mail not delivered due to resource 7274problems. The notification is sent to the address specified with 7275the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default: 7276postmaster). </dd> 7277 7278<dt><b>software</b></dt> 7279 7280<dd>Inform the postmaster of mail not delivered due to software 7281problems. The notification is sent to the address specified with 7282the <a href="postconf.5.html#error_notice_recipient">error_notice_recipient</a> configuration parameter (default: 7283postmaster). </dd> 7284 7285</dl> 7286 7287<p> 7288Examples: 7289</p> 7290 7291<pre> 7292<a href="postconf.5.html#notify_classes">notify_classes</a> = bounce, delay, policy, protocol, resource, software 7293<a href="postconf.5.html#notify_classes">notify_classes</a> = 2bounce, resource, software 7294</pre> 7295 7296 7297</DD> 7298 7299<DT><b><a name="nullmx_reject_code">nullmx_reject_code</a> 7300(default: 556)</b></DT><DD> 7301 7302<p> The numerical reply code when the Postfix SMTP server rejects 7303a sender or recipient address because its domain has a nullmx DNS 7304record (an MX record with an empty hostname). This is one of the 7305possible replies from the restrictions <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a> 7306and <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a>. </p> 7307 7308<p> This feature is available in Postfix 3.0 and later. </p> 7309 7310 7311</DD> 7312 7313<DT><b><a name="openssl_path">openssl_path</a> 7314(default: openssl)</b></DT><DD> 7315 7316<p> 7317The location of the OpenSSL command line program openssl(1). This 7318is used by the "<b><a href="postfix-tls.1.html">postfix tls</a></b>" command to create private keys, 7319certificate signing requests, self-signed certificates, and to 7320compute public key digests for DANE TLSA records. In multi-instance 7321environments, this parameter is always determined from the configuration 7322of the default Postfix instance. 7323</p> 7324 7325<p> Example: </p> 7326 7327<blockquote> 7328<pre> 7329/etc/postfix/<a href="postconf.5.html">main.cf</a>: 7330 # NetBSD pkgsrc: 7331 <a href="postconf.5.html#openssl_path">openssl_path</a> = /usr/pkg/bin/openssl 7332 # Local build: 7333 <a href="postconf.5.html#openssl_path">openssl_path</a> = /usr/local/bin/openssl 7334</pre> 7335</blockquote> 7336 7337<p> 7338This feature is available in Postfix 3.1 and later. 7339</p> 7340 7341 7342</DD> 7343 7344<DT><b><a name="owner_request_special">owner_request_special</a> 7345(default: yes)</b></DT><DD> 7346 7347<p> 7348Give special treatment to owner-listname and listname-request 7349address localparts: don't split such addresses when the 7350<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is set to "-". This feature is useful for 7351mailing lists. 7352</p> 7353 7354 7355</DD> 7356 7357<DT><b><a name="parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 7358(default: see "postconf -d" output)</b></DT><DD> 7359 7360<p> 7361A list of Postfix features where the pattern "example.com" also 7362matches subdomains of example.com, 7363instead of requiring an explicit ".example.com" pattern. This is 7364planned backwards compatibility: eventually, all Postfix features 7365are expected to require explicit ".example.com" style patterns when 7366you really want to match subdomains. 7367</p> 7368 7369<p> The following Postfix feature names are supported. </p> 7370 7371<dl> 7372 7373<dt> Postfix version 1.0 and later</dt> 7374 7375<dd> 7376<a href="postconf.5.html#debug_peer_list">debug_peer_list</a>, 7377<a href="postconf.5.html#fast_flush_domains">fast_flush_domains</a>, 7378<a href="postconf.5.html#mynetworks">mynetworks</a>, 7379<a href="postconf.5.html#permit_mx_backup_networks">permit_mx_backup_networks</a>, 7380<a href="postconf.5.html#relay_domains">relay_domains</a>, 7381<a href="postconf.5.html#transport_maps">transport_maps</a> 7382</dd> 7383 7384<dt> Postfix version 1.1 and later</dt> 7385 7386<dd> 7387<a href="postconf.5.html#qmqpd_authorized_clients">qmqpd_authorized_clients</a>, 7388smtpd_access_maps, 7389</dd> 7390 7391<dt> Postfix version 2.8 and later </dt> 7392 7393<dd> 7394<a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a> 7395</dd> 7396 7397<dt> Postfix version 3.0 and later </dt> 7398 7399<dd> 7400<a href="postconf.5.html#smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a> 7401</dd> 7402 7403</dl> 7404 7405 7406</DD> 7407 7408<DT><b><a name="permit_mx_backup_networks">permit_mx_backup_networks</a> 7409(default: empty)</b></DT><DD> 7410 7411<p> 7412Restrict the use of the <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> SMTP access feature to 7413only domains whose primary MX hosts match the listed networks. 7414The parameter value syntax is the same as with the <a href="postconf.5.html#mynetworks">mynetworks</a> 7415parameter; note, however, that the default value is empty. </p> 7416 7417<p> Pattern matching of domain names is controlled by the presence 7418or absence of "<a href="postconf.5.html#permit_mx_backup_networks">permit_mx_backup_networks</a>" in the 7419<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter value. </p> 7420 7421 7422</DD> 7423 7424<DT><b><a name="pickup_service_name">pickup_service_name</a> 7425(default: pickup)</b></DT><DD> 7426 7427<p> 7428The name of the <a href="pickup.8.html">pickup(8)</a> service. This service picks up local mail 7429submissions from the Postfix <a href="QSHAPE_README.html#maildrop_queue">maildrop queue</a>. 7430</p> 7431 7432<p> 7433This feature is available in Postfix 2.0 and later. 7434</p> 7435 7436 7437</DD> 7438 7439<DT><b><a name="pipe_delivery_status_filter">pipe_delivery_status_filter</a> 7440(default: $<a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a>)</b></DT><DD> 7441 7442<p> Optional filter for the <a href="pipe.8.html">pipe(8)</a> delivery agent to change the 7443delivery status code or explanatory text of successful or unsuccessful 7444deliveries. See <a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a> for details. </p> 7445 7446<p> This feature is available in Postfix 3.0 and later. </p> 7447 7448 7449</DD> 7450 7451<DT><b><a name="plaintext_reject_code">plaintext_reject_code</a> 7452(default: 450)</b></DT><DD> 7453 7454<p> 7455The numerical Postfix SMTP server response code when a request 7456is rejected by the <b><a href="postconf.5.html#reject_plaintext_session">reject_plaintext_session</a></b> restriction. 7457</p> 7458 7459<p> This feature is available in Postfix 2.3 and later. </p> 7460 7461 7462</DD> 7463 7464<DT><b><a name="postmulti_control_commands">postmulti_control_commands</a> 7465(default: reload flush)</b></DT><DD> 7466 7467<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager 7468treats as "control" commands, that operate on running instances. For 7469these commands, disabled instances are skipped. </p> 7470 7471<p> This feature is available in Postfix 2.6 and later. </p> 7472 7473 7474</DD> 7475 7476<DT><b><a name="postmulti_start_commands">postmulti_start_commands</a> 7477(default: start)</b></DT><DD> 7478 7479<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats 7480as "start" commands. For these commands, disabled instances are "checked" 7481rather than "started", and failure to "start" a member instance of an 7482instance group will abort the start-up of later instances. </p> 7483 7484<p> This feature is available in Postfix 2.6 and later. </p> 7485 7486 7487</DD> 7488 7489<DT><b><a name="postmulti_stop_commands">postmulti_stop_commands</a> 7490(default: see "postconf -d" output)</b></DT><DD> 7491 7492<p> The <a href="postfix.1.html">postfix(1)</a> commands that the <a href="postmulti.1.html">postmulti(1)</a> instance manager treats 7493as "stop" commands. For these commands, disabled instances are skipped, 7494and enabled instances are processed in reverse order. </p> 7495 7496<p> This feature is available in Postfix 2.6 and later. </p> 7497 7498 7499</DD> 7500 7501<DT><b><a name="postscreen_access_list">postscreen_access_list</a> 7502(default: <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>)</b></DT><DD> 7503 7504<p> Permanent white/blacklist for remote SMTP client IP addresses. 7505<a href="postscreen.8.html">postscreen(8)</a> searches this list immediately after a remote SMTP 7506client connects. Specify a comma- or whitespace-separated list of 7507commands (in upper or lower case) or lookup tables. The search stops 7508upon the first command that fires for the client IP address. </p> 7509 7510<dl> 7511 7512<dt> <b> <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a> </b> </dt> <dd> Whitelist the client and 7513terminate the search if the client IP address matches $<a href="postconf.5.html#mynetworks">mynetworks</a>. 7514Do not subject the client to any before/after 220 greeting tests. 7515Pass the connection immediately to a Postfix SMTP server process. 7516<br> Pattern matching of domain names is controlled by the presence 7517or absence of "<a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a>" in the 7518<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter value. </dd> 7519 7520<dt> <b> <a href="DATABASE_README.html">type:table</a> </b> </dt> <dd> Query the specified lookup 7521table. Each table lookup result is an access list, except that 7522access lists inside a table cannot specify <a href="DATABASE_README.html">type:table</a> entries. <br> 7523To discourage the use of hash, btree, etc. tables, there is no 7524support for substring matching like <a href="smtpd.8.html">smtpd(8)</a>. Use CIDR tables 7525instead. </dd> 7526 7527<dt> <b> permit </b> </dt> <dd> Whitelist the client and terminate 7528the search. Do not subject the client to any before/after 220 7529greeting tests. Pass the connection immediately to a Postfix SMTP 7530server process. </dd> 7531 7532<dt> <b> reject </b> </dt> <dd> Blacklist the client and terminate 7533the search. Subject the client to the action configured with the 7534<a href="postconf.5.html#postscreen_blacklist_action">postscreen_blacklist_action</a> configuration parameter. </dd> 7535 7536<dt> <b> dunno </b> </dt> <dd> All <a href="postscreen.8.html">postscreen(8)</a> access lists 7537implicitly have this command at the end. <br> When <b> dunno </b> 7538is executed inside a lookup table, return from the lookup table and 7539evaluate the next command. <br> When <b> dunno </b> is executed 7540outside a lookup table, terminate the search, and subject the client 7541to the configured before/after 220 greeting tests. </dd> 7542 7543</dl> 7544 7545<p> Example: </p> 7546 7547<pre> 7548/etc/postfix/<a href="postconf.5.html">main.cf</a>: 7549 <a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, 7550 <a href="cidr_table.5.html">cidr</a>:/etc/postfix/postscreen_access.cidr 7551 <a href="postconf.5.html#postscreen_blacklist_action">postscreen_blacklist_action</a> = enforce 7552</pre> 7553 7554<pre> 7555/etc/postfix/postscreen_access.<a href="cidr_table.5.html">cidr</a>: 7556 # Rules are evaluated in the order as specified. 7557 # Blacklist 192.168.* except 192.168.0.1. 7558 192.168.0.1 dunno 7559 192.168.0.0/16 reject 7560</pre> 7561 7562<p> This feature is available in Postfix 2.8. </p> 7563 7564 7565</DD> 7566 7567<DT><b><a name="postscreen_bare_newline_action">postscreen_bare_newline_action</a> 7568(default: ignore)</b></DT><DD> 7569 7570<p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client sends 7571a bare newline character, that is, a newline not preceded by carriage 7572return. Specify one of the following: </p> 7573 7574<dl> 7575 7576<dt> <b>ignore</b> </dt> 7577 7578<dd> Ignore the failure of this test. Allow other tests to complete. 7579Do <i>not</i> repeat this test before some the result from some 7580other test expires. 7581This option is useful for testing and collecting statistics 7582without blocking mail permanently. </dd> 7583 7584<dt> <b>enforce</b> </dt> 7585 7586<dd> Allow other tests to complete. Reject attempts to deliver mail 7587with a 550 SMTP reply, and log the helo/sender/recipient information. 7588Repeat this test the next time the client connects. </dd> 7589 7590<dt> <b>drop</b> </dt> 7591 7592<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 7593this test the next time the client connects. </dd> 7594 7595</dl> 7596 7597<p> This feature is available in Postfix 2.8. </p> 7598 7599 7600</DD> 7601 7602<DT><b><a name="postscreen_bare_newline_enable">postscreen_bare_newline_enable</a> 7603(default: no)</b></DT><DD> 7604 7605<p> Enable "bare newline" SMTP protocol tests in the <a href="postscreen.8.html">postscreen(8)</a> 7606server. These tests are expensive: a remote SMTP client must 7607disconnect after 7608it passes the test, before it can talk to a real Postfix SMTP server. 7609</p> 7610 7611<p> This feature is available in Postfix 2.8. </p> 7612 7613 7614</DD> 7615 7616<DT><b><a name="postscreen_bare_newline_ttl">postscreen_bare_newline_ttl</a> 7617(default: 30d)</b></DT><DD> 7618 7619<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from 7620a successful "bare newline" SMTP protocol test. During this 7621time, the client IP address is excluded from this test. The default 7622is long because a remote SMTP client must disconnect after it passes 7623the test, 7624before it can talk to a real Postfix SMTP server. </p> 7625 7626<p> Specify a non-zero time value (an integral value plus an optional 7627one-letter suffix that specifies the time unit). Time units: s 7628(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 7629 7630<p> This feature is available in Postfix 2.8. </p> 7631 7632 7633</DD> 7634 7635<DT><b><a name="postscreen_blacklist_action">postscreen_blacklist_action</a> 7636(default: ignore)</b></DT><DD> 7637 7638<p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client is 7639permanently blacklisted with the <a href="postconf.5.html#postscreen_access_list">postscreen_access_list</a> parameter. 7640Specify one of the following: </p> 7641 7642<dl> 7643 7644<dt> <b>ignore</b> (default) </dt> 7645 7646<dd> Ignore this result. Allow other tests to complete. Repeat 7647this test the next time the client connects. 7648This option is useful for testing and collecting statistics 7649without blocking mail. </dd> 7650 7651<dt> <b>enforce</b> </dt> 7652 7653<dd> Allow other tests to complete. Reject attempts to deliver mail 7654with a 550 SMTP reply, and log the helo/sender/recipient information. 7655Repeat this test the next time the client connects. </dd> 7656 7657<dt> <b>drop</b> </dt> 7658 7659<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 7660this test the next time the client connects. </dd> 7661 7662</dl> 7663 7664<p> This feature is available in Postfix 2.8. </p> 7665 7666 7667</DD> 7668 7669<DT><b><a name="postscreen_cache_cleanup_interval">postscreen_cache_cleanup_interval</a> 7670(default: 12h)</b></DT><DD> 7671 7672<p> The amount of time between <a href="postscreen.8.html">postscreen(8)</a> cache cleanup runs. 7673Cache cleanup increases the load on the cache database and should 7674therefore not be run frequently. This feature requires that the 7675cache database supports the "delete" and "sequence" operators. 7676Specify a zero interval to disable cache cleanup. </p> 7677 7678<p> After each cache cleanup run, the <a href="postscreen.8.html">postscreen(8)</a> daemon logs the 7679number of entries that were retained and dropped. A cleanup run is 7680logged as "partial" when the daemon terminates early after "<b>postfix 7681reload</b>", "<b>postfix stop</b>", or no requests for $<a href="postconf.5.html#max_idle">max_idle</a> 7682seconds. </p> 7683 7684<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 7685(weeks). </p> 7686 7687<p> This feature is available in Postfix 2.8. </p> 7688 7689 7690</DD> 7691 7692<DT><b><a name="postscreen_cache_map">postscreen_cache_map</a> 7693(default: <a href="DATABASE_README.html#types">btree</a>:$<a href="postconf.5.html#data_directory">data_directory</a>/postscreen_cache)</b></DT><DD> 7694 7695<p> Persistent storage for the <a href="postscreen.8.html">postscreen(8)</a> server decisions. </p> 7696 7697<p> To share a <a href="postscreen.8.html">postscreen(8)</a> cache between multiple <a href="postscreen.8.html">postscreen(8)</a> 7698instances, use "<a href="postconf.5.html#postscreen_cache_map">postscreen_cache_map</a> = <a href="proxymap.8.html">proxy</a>:<a href="DATABASE_README.html#types">btree</a>:/path/to/file". 7699This requires Postfix version 2.9 or later; earlier <a href="proxymap.8.html">proxymap(8)</a> 7700implementations don't support cache cleanup. For an alternative 7701approach see the <a href="memcache_table.5.html">memcache_table(5)</a> manpage. </p> 7702 7703<p> This feature is available in Postfix 2.8. </p> 7704 7705 7706</DD> 7707 7708<DT><b><a name="postscreen_cache_retention_time">postscreen_cache_retention_time</a> 7709(default: 7d)</b></DT><DD> 7710 7711<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will cache an expired 7712temporary whitelist entry before it is removed. This prevents clients 7713from being logged as "NEW" just because their cache entry expired 7714an hour ago. It also prevents the cache from filling up with clients 7715that passed some deep protocol test once and never came back. </p> 7716 7717<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 7718(weeks). </p> 7719 7720<p> This feature is available in Postfix 2.8. </p> 7721 7722 7723</DD> 7724 7725<DT><b><a name="postscreen_client_connection_count_limit">postscreen_client_connection_count_limit</a> 7726(default: $<a href="postconf.5.html#smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a>)</b></DT><DD> 7727 7728<p> How many simultaneous connections any remote SMTP client is 7729allowed to have 7730with the <a href="postscreen.8.html">postscreen(8)</a> daemon. By default, this limit is the same 7731as with the Postfix SMTP server. Note that the triage process can 7732take several seconds, with the time spent in <a href="postconf.5.html#postscreen_greet_wait">postscreen_greet_wait</a> 7733delay, and with the time spent talking to the <a href="postscreen.8.html">postscreen(8)</a> built-in 7734dummy SMTP protocol engine. </p> 7735 7736<p> This feature is available in Postfix 2.8. </p> 7737 7738 7739</DD> 7740 7741<DT><b><a name="postscreen_command_count_limit">postscreen_command_count_limit</a> 7742(default: 20)</b></DT><DD> 7743 7744<p> The limit on the total number of commands per SMTP session for 7745<a href="postscreen.8.html">postscreen(8)</a>'s built-in SMTP protocol engine. This SMTP engine 7746defers or rejects all attempts to deliver mail, therefore there is 7747no need to enforce separate limits on the number of junk commands 7748and error commands. </p> 7749 7750<p> This feature is available in Postfix 2.8. </p> 7751 7752 7753</DD> 7754 7755<DT><b><a name="postscreen_command_filter">postscreen_command_filter</a> 7756(default: $<a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a>)</b></DT><DD> 7757 7758<p> A mechanism to transform commands from remote SMTP clients. 7759See <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> for further details. </p> 7760 7761<p> This feature is available in Postfix 2.8 and later. </p> 7762 7763 7764</DD> 7765 7766<DT><b><a name="postscreen_command_time_limit">postscreen_command_time_limit</a> 7767(default: normal: 300s, overload: 10s)</b></DT><DD> 7768 7769<p> The time limit to read an entire command line with <a href="postscreen.8.html">postscreen(8)</a>'s 7770built-in SMTP protocol engine. </p> 7771 7772<p> This feature is available in Postfix 2.8. </p> 7773 7774 7775</DD> 7776 7777<DT><b><a name="postscreen_disable_vrfy_command">postscreen_disable_vrfy_command</a> 7778(default: $<a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a>)</b></DT><DD> 7779 7780<p> Disable the SMTP VRFY command in the <a href="postscreen.8.html">postscreen(8)</a> daemon. See 7781<a href="postconf.5.html#disable_vrfy_command">disable_vrfy_command</a> for details. </p> 7782 7783<p> This feature is available in Postfix 2.8. </p> 7784 7785 7786</DD> 7787 7788<DT><b><a name="postscreen_discard_ehlo_keyword_address_maps">postscreen_discard_ehlo_keyword_address_maps</a> 7789(default: $<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>)</b></DT><DD> 7790 7791<p> Lookup tables, indexed by the remote SMTP client address, with 7792case insensitive lists of EHLO keywords (pipelining, starttls, auth, 7793etc.) that the <a href="postscreen.8.html">postscreen(8)</a> server will not send in the EHLO response 7794to a remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details. 7795The table is not searched by hostname for robustness reasons. </p> 7796 7797<p> This feature is available in Postfix 2.8 and later. </p> 7798 7799 7800</DD> 7801 7802<DT><b><a name="postscreen_discard_ehlo_keywords">postscreen_discard_ehlo_keywords</a> 7803(default: $<a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a>)</b></DT><DD> 7804 7805<p> A case insensitive list of EHLO keywords (pipelining, starttls, 7806auth, etc.) that the <a href="postscreen.8.html">postscreen(8)</a> server will not send in the EHLO 7807response to a remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> 7808for details. </p> 7809 7810<p> This feature is available in Postfix 2.8 and later. </p> 7811 7812 7813</DD> 7814 7815<DT><b><a name="postscreen_dnsbl_action">postscreen_dnsbl_action</a> 7816(default: ignore)</b></DT><DD> 7817 7818<p>The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client's combined 7819DNSBL score is equal to or greater than a threshold (as defined 7820with 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> 7821parameters). Specify one of the following: </p> 7822 7823<dl> 7824 7825<dt> <b>ignore</b> (default) </dt> 7826 7827<dd> Ignore the failure of this test. Allow other tests to complete. 7828Repeat this test the next time the client connects. 7829This option is useful for testing and collecting statistics 7830without blocking mail. </dd> 7831 7832<dt> <b>enforce</b> </dt> 7833 7834<dd> Allow other tests to complete. Reject attempts to deliver mail 7835with a 550 SMTP reply, and log the helo/sender/recipient information. 7836Repeat this test the next time the client connects. </dd> 7837 7838<dt> <b>drop</b> </dt> 7839 7840<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 7841this test the next time the client connects. </dd> 7842 7843</dl> 7844 7845<p> This feature is available in Postfix 2.8. </p> 7846 7847 7848</DD> 7849 7850<DT><b><a name="postscreen_dnsbl_max_ttl">postscreen_dnsbl_max_ttl</a> 7851(default: ${<a href="postconf.5.html#postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a>?{$<a href="postconf.5.html#postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a>}:{1}}h)</b></DT><DD> 7852 7853<p> The maximum amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the 7854result from a successful DNS-based reputation test before a 7855client IP address is required to pass that test again. If the DNS 7856reply specifies a shorter TTL value, that value will be used unless 7857it would be smaller than <a href="postconf.5.html#postscreen_dnsbl_min_ttl">postscreen_dnsbl_min_ttl</a>. </p> 7858 7859<p> Specify a non-zero time value (an integral value plus an optional 7860one-letter suffix that specifies the time unit). Time units: s 7861(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 7862 7863<p> This feature is available in Postfix 3.1. The default setting 7864is backwards-compatible with older Postfix versions. </p> 7865 7866 7867</DD> 7868 7869<DT><b><a name="postscreen_dnsbl_min_ttl">postscreen_dnsbl_min_ttl</a> 7870(default: 60s)</b></DT><DD> 7871 7872<p> The minimum amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the 7873result from a successful DNS-based reputation test before a 7874client IP address is required to pass that test again. If the DNS 7875reply specifies a larger TTL value, that value will be used unless 7876it would be larger than <a href="postconf.5.html#postscreen_dnsbl_max_ttl">postscreen_dnsbl_max_ttl</a>. </p> 7877 7878<p> Specify a non-zero time value (an integral value plus an optional 7879one-letter suffix that specifies the time unit). Time units: s 7880(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 7881 7882<p> This feature is available in Postfix 3.1. </p> 7883 7884 7885</DD> 7886 7887<DT><b><a name="postscreen_dnsbl_reply_map">postscreen_dnsbl_reply_map</a> 7888(default: empty)</b></DT><DD> 7889 7890<p> A mapping from actual DNSBL domain name which includes a secret 7891password, to the DNSBL domain name that postscreen will reply with 7892when it rejects mail. When no mapping is found, the actual DNSBL 7893domain will be used. </p> 7894 7895<p> For maximal stability it is best to use a file that is read 7896into 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 7897to <a href="DATABASE_README.html#types">hash</a>:, except a) there is no need to run <a href="postmap.1.html">postmap(1)</a> before the 7898file can be used, and b) <a href="DATABASE_README.html#types">texthash</a>: does not detect changes after 7899the file is read). </p> 7900 7901<p> Example: </p> 7902 7903<pre> 7904/etc/postfix/<a href="postconf.5.html">main.cf</a>: 7905 <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 7906</pre> 7907 7908<pre> 7909/etc/postfix/dnsbl_reply: 7910 secret.zen.spamhaus.org zen.spamhaus.org 7911</pre> 7912 7913<p> This feature is available in Postfix 2.8. </p> 7914 7915 7916</DD> 7917 7918<DT><b><a name="postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> 7919(default: empty)</b></DT><DD> 7920 7921<p>Optional list of DNS white/blacklist domains, filters and weight 7922factors. When the list is non-empty, the <a href="dnsblog.8.html">dnsblog(8)</a> daemon will 7923query these domains with the IP addresses of remote SMTP clients, 7924and <a href="postscreen.8.html">postscreen(8)</a> will update an SMTP client's DNSBL score with 7925each non-error reply. </p> 7926 7927<p> Caution: when postscreen rejects mail, it replies with the DNSBL 7928domain name. Use the <a href="postconf.5.html#postscreen_dnsbl_reply_map">postscreen_dnsbl_reply_map</a> feature to hide 7929"password" information in DNSBL domain names. </p> 7930 7931<p> When a client's score is equal to or greater than the threshold 7932specified with <a href="postconf.5.html#postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a>, <a href="postscreen.8.html">postscreen(8)</a> can drop 7933the connection with the remote SMTP client. </p> 7934 7935<p> Specify a list of domain=filter*weight entries, separated by 7936comma or whitespace. </p> 7937 7938<ul> 7939 7940<li> <p> When no "=filter" is specified, <a href="postscreen.8.html">postscreen(8)</a> will use any 7941non-error DNSBL reply. Otherwise, <a href="postscreen.8.html">postscreen(8)</a> uses only DNSBL 7942replies that match the filter. The filter has the form d.d.d.d, 7943where each d is a number, or a pattern inside [] that contains one 7944or more ";"-separated numbers or number..number ranges. </p> 7945 7946<li> <p> When no "*weight" is specified, <a href="postscreen.8.html">postscreen(8)</a> increments 7947the remote SMTP client's DNSBL score by 1. Otherwise, the weight must be 7948an integral number, and <a href="postscreen.8.html">postscreen(8)</a> adds the specified weight to 7949the remote SMTP client's DNSBL score. Specify a negative number for 7950whitelisting. </p> 7951 7952<li> <p> When one <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> entry produces multiple 7953DNSBL responses, <a href="postscreen.8.html">postscreen(8)</a> applies the weight at most once. 7954</p> 7955 7956</ul> 7957 7958<p> Examples: </p> 7959 7960<p> To use example.com as a high-confidence blocklist, and to 7961block mail with example.net and example.org only when both agree: 7962</p> 7963 7964<pre> 7965<a href="postconf.5.html#postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a> = 2 7966<a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> = example.com*2, example.net, example.org 7967</pre> 7968 7969<p> To filter only DNSBL replies containing 127.0.0.4: </p> 7970 7971<pre> 7972<a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> = example.com=127.0.0.4 7973</pre> 7974 7975<p> This feature is available in Postfix 2.8. </p> 7976 7977 7978</DD> 7979 7980<DT><b><a name="postscreen_dnsbl_threshold">postscreen_dnsbl_threshold</a> 7981(default: 1)</b></DT><DD> 7982 7983<p> The inclusive lower bound for blocking a remote SMTP client, based on 7984its combined DNSBL score as defined with the <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> 7985parameter. </p> 7986 7987<p> This feature is available in Postfix 2.8. </p> 7988 7989 7990</DD> 7991 7992<DT><b><a name="postscreen_dnsbl_timeout">postscreen_dnsbl_timeout</a> 7993(default: 10s)</b></DT><DD> 7994 7995<p> The time limit for DNSBL or DNSWL lookups. This is separate from 7996the timeouts in the <a href="dnsblog.8.html">dnsblog(8)</a> daemon which are defined by system 7997resolver(3) routines. </p> 7998 7999<p> This feature is available in Postfix 3.0. </p> 8000 8001 8002</DD> 8003 8004<DT><b><a name="postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a> 8005(default: 1h)</b></DT><DD> 8006 8007<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from 8008a successful DNS-based reputation test before a client 8009IP address is required to pass that test again. </p> 8010 8011<p> Specify a non-zero time value (an integral value plus an optional 8012one-letter suffix that specifies the time unit). Time units: s 8013(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 8014 8015<p> This feature is available in Postfix 2.8-3.0. It was 8016replaced by <a href="postconf.5.html#postscreen_dnsbl_max_ttl">postscreen_dnsbl_max_ttl</a> in Postfix 3.1. </p> 8017 8018 8019</DD> 8020 8021<DT><b><a name="postscreen_dnsbl_whitelist_threshold">postscreen_dnsbl_whitelist_threshold</a> 8022(default: 0)</b></DT><DD> 8023 8024<p> Allow a remote SMTP client to skip "before" and "after 220 8025greeting" protocol tests, based on its combined DNSBL score as 8026defined with the <a href="postconf.5.html#postscreen_dnsbl_sites">postscreen_dnsbl_sites</a> parameter. </p> 8027 8028<p> Specify a negative value to enable this feature. When a client 8029passes the <a href="postconf.5.html#postscreen_dnsbl_whitelist_threshold">postscreen_dnsbl_whitelist_threshold</a> without having 8030failed other tests, all pending or disabled tests are flagged as 8031completed with a time-to-live value equal to <a href="postconf.5.html#postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a>. 8032When a test was already completed, its time-to-live value is updated 8033if it was less than <a href="postconf.5.html#postscreen_dnsbl_ttl">postscreen_dnsbl_ttl</a>. </p> 8034 8035<p> This feature is available in Postfix 2.11. </p> 8036 8037 8038</DD> 8039 8040<DT><b><a name="postscreen_enforce_tls">postscreen_enforce_tls</a> 8041(default: $<a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a>)</b></DT><DD> 8042 8043<p> Mandatory TLS: announce STARTTLS support to remote SMTP clients, and 8044require that clients use TLS encryption. See smtpd_postscreen_enforce_tls 8045for details. </p> 8046 8047<p> This feature is available in Postfix 2.8 and later. 8048Preferably, use <a href="postconf.5.html#postscreen_tls_security_level">postscreen_tls_security_level</a> instead. </p> 8049 8050 8051</DD> 8052 8053<DT><b><a name="postscreen_expansion_filter">postscreen_expansion_filter</a> 8054(default: see "postconf -d" output)</b></DT><DD> 8055 8056<p> List of characters that are permitted in <a href="postconf.5.html#postscreen_reject_footer">postscreen_reject_footer</a> 8057attribute expansions. See <a href="postconf.5.html#smtpd_expansion_filter">smtpd_expansion_filter</a> for further 8058details. </p> 8059 8060<p> This feature is available in Postfix 2.8 and later. </p> 8061 8062 8063</DD> 8064 8065<DT><b><a name="postscreen_forbidden_commands">postscreen_forbidden_commands</a> 8066(default: $<a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a>)</b></DT><DD> 8067 8068<p> List of commands that the <a href="postscreen.8.html">postscreen(8)</a> server considers in 8069violation of the SMTP protocol. See <a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a> for 8070syntax, and <a href="postconf.5.html#postscreen_non_smtp_command_action">postscreen_non_smtp_command_action</a> for possible actions. 8071</p> 8072 8073<p> This feature is available in Postfix 2.8. </p> 8074 8075 8076</DD> 8077 8078<DT><b><a name="postscreen_greet_action">postscreen_greet_action</a> 8079(default: ignore)</b></DT><DD> 8080 8081<p>The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client speaks 8082before its turn within the time specified with the <a href="postconf.5.html#postscreen_greet_wait">postscreen_greet_wait</a> 8083parameter. Specify one of the following: </p> 8084 8085<dl> 8086 8087<dt> <b>ignore</b> (default) </dt> 8088 8089<dd> Ignore the failure of this test. Allow other tests to complete. 8090Repeat this test the next time the client connects. 8091This option is useful for testing and collecting statistics 8092without blocking mail. </dd> 8093 8094<dt> <b>enforce</b> </dt> 8095 8096<dd> Allow other tests to complete. Reject attempts to deliver mail 8097with a 550 SMTP reply, and log the helo/sender/recipient information. 8098Repeat this test the next time the client connects. </dd> 8099 8100<dt> <b>drop</b> </dt> 8101 8102<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 8103this test the next time the client connects. </dd> 8104 8105</dl> 8106 8107<p> In either case, <a href="postscreen.8.html">postscreen(8)</a> will not whitelist the remote SMTP client 8108IP address. </p> 8109 8110<p> This feature is available in Postfix 2.8. </p> 8111 8112 8113</DD> 8114 8115<DT><b><a name="postscreen_greet_banner">postscreen_greet_banner</a> 8116(default: $<a href="postconf.5.html#smtpd_banner">smtpd_banner</a>)</b></DT><DD> 8117 8118<p> The <i>text</i> in the optional "220-<i>text</i>..." server 8119response that 8120<a href="postscreen.8.html">postscreen(8)</a> sends ahead of the real Postfix SMTP server's "220 8121text..." response, in an attempt to confuse bad SMTP clients so 8122that they speak before their turn (pre-greet). Specify an empty 8123value to disable this feature. </p> 8124 8125<p> This feature is available in Postfix 2.8. </p> 8126 8127 8128</DD> 8129 8130<DT><b><a name="postscreen_greet_ttl">postscreen_greet_ttl</a> 8131(default: 1d)</b></DT><DD> 8132 8133<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from 8134a successful PREGREET test. During this time, the client IP address 8135is excluded from this test. The default is relatively short, because 8136a good client can immediately talk to a real Postfix SMTP server. </p> 8137 8138<p> Specify a non-zero time value (an integral value plus an optional 8139one-letter suffix that specifies the time unit). Time units: s 8140(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 8141 8142<p> This feature is available in Postfix 2.8. </p> 8143 8144 8145</DD> 8146 8147<DT><b><a name="postscreen_greet_wait">postscreen_greet_wait</a> 8148(default: normal: 6s, overload: 2s)</b></DT><DD> 8149 8150<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will wait for an SMTP 8151client to send a command before its turn, and for DNS blocklist 8152lookup results to arrive (default: up to 2 seconds under stress, 8153up to 6 seconds otherwise). <p> 8154 8155<p> Specify a non-zero time value (an integral value plus an optional 8156one-letter suffix that specifies the time unit). </p> 8157 8158<p> Time units: s (seconds), m (minutes), h (hours), d (days), w 8159(weeks). </p> 8160 8161<p> This feature is available in Postfix 2.8. </p> 8162 8163 8164</DD> 8165 8166<DT><b><a name="postscreen_helo_required">postscreen_helo_required</a> 8167(default: $<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a>)</b></DT><DD> 8168 8169<p> Require that a remote SMTP client sends HELO or EHLO before 8170commencing a MAIL transaction. </p> 8171 8172<p> This feature is available in Postfix 2.8. </p> 8173 8174 8175</DD> 8176 8177<DT><b><a name="postscreen_non_smtp_command_action">postscreen_non_smtp_command_action</a> 8178(default: drop)</b></DT><DD> 8179 8180<p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client sends 8181non-SMTP commands as specified with the <a href="postconf.5.html#postscreen_forbidden_commands">postscreen_forbidden_commands</a> 8182parameter. Specify one of the following: </p> 8183 8184<dl> 8185 8186<dt> <b>ignore</b> </dt> 8187 8188<dd> Ignore the failure of this test. Allow other tests to complete. 8189Do <i>not</i> repeat this test before some the result from some 8190other test expires. 8191This option is useful for testing and collecting statistics 8192without blocking mail permanently. </dd> 8193 8194<dt> <b>enforce</b> </dt> 8195 8196<dd> Allow other tests to complete. Reject attempts to deliver mail 8197with a 550 SMTP reply, and log the helo/sender/recipient information. 8198Repeat this test the next time the client connects. </dd> 8199 8200<dt> <b>drop</b> </dt> 8201 8202<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 8203this test the next time the client connects. This action is the 8204same as with the Postfix SMTP server's <a href="postconf.5.html#smtpd_forbidden_commands">smtpd_forbidden_commands</a> 8205feature. </dd> 8206 8207</dl> 8208 8209<p> This feature is available in Postfix 2.8. </p> 8210 8211 8212</DD> 8213 8214<DT><b><a name="postscreen_non_smtp_command_enable">postscreen_non_smtp_command_enable</a> 8215(default: no)</b></DT><DD> 8216 8217<p> Enable "non-SMTP command" tests in the <a href="postscreen.8.html">postscreen(8)</a> server. These 8218tests are expensive: a client must disconnect after it passes the 8219test, before it can talk to a real Postfix SMTP server. </p> 8220 8221<p> This feature is available in Postfix 2.8. </p> 8222 8223 8224</DD> 8225 8226<DT><b><a name="postscreen_non_smtp_command_ttl">postscreen_non_smtp_command_ttl</a> 8227(default: 30d)</b></DT><DD> 8228 8229<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from 8230a successful "non_smtp_command" SMTP protocol test. During this 8231time, the client IP address is excluded from this test. The default 8232is long because a client must disconnect after it passes the test, 8233before it can talk to a real Postfix SMTP server. </p> 8234 8235<p> Specify a non-zero time value (an integral value plus an optional 8236one-letter suffix that specifies the time unit). Time units: s 8237(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 8238 8239<p> This feature is available in Postfix 2.8. </p> 8240 8241 8242</DD> 8243 8244<DT><b><a name="postscreen_pipelining_action">postscreen_pipelining_action</a> 8245(default: enforce)</b></DT><DD> 8246 8247<p> The action that <a href="postscreen.8.html">postscreen(8)</a> takes when a remote SMTP client 8248sends 8249multiple commands instead of sending one command and waiting for 8250the server to respond. Specify one of the following: </p> 8251 8252<dl> 8253 8254<dt> <b>ignore</b> </dt> 8255 8256<dd> Ignore the failure of this test. Allow other tests to complete. 8257Do <i>not</i> repeat this test before some the result from some 8258other test expires. 8259This option is useful for testing and collecting statistics 8260without blocking mail permanently. </dd> 8261 8262<dt> <b>enforce</b> </dt> 8263 8264<dd> Allow other tests to complete. Reject attempts to deliver mail 8265with a 550 SMTP reply, and log the helo/sender/recipient information. 8266Repeat this test the next time the client connects. </dd> 8267 8268<dt> <b>drop</b> </dt> 8269 8270<dd> Drop the connection immediately with a 521 SMTP reply. Repeat 8271this test the next time the client connects. </dd> 8272 8273</dl> 8274 8275<p> This feature is available in Postfix 2.8. </p> 8276 8277 8278</DD> 8279 8280<DT><b><a name="postscreen_pipelining_enable">postscreen_pipelining_enable</a> 8281(default: no)</b></DT><DD> 8282 8283<p> Enable "pipelining" SMTP protocol tests in the <a href="postscreen.8.html">postscreen(8)</a> 8284server. These tests are expensive: a good client must disconnect 8285after it passes the test, before it can talk to a real Postfix SMTP 8286server. </p> 8287 8288<p> This feature is available in Postfix 2.8. </p> 8289 8290 8291</DD> 8292 8293<DT><b><a name="postscreen_pipelining_ttl">postscreen_pipelining_ttl</a> 8294(default: 30d)</b></DT><DD> 8295 8296<p> The amount of time that <a href="postscreen.8.html">postscreen(8)</a> will use the result from 8297a successful "pipelining" SMTP protocol test. During this time, the 8298client IP address is excluded from this test. The default is 8299long because a good client must disconnect after it passes the test, 8300before it can talk to a real Postfix SMTP server. </p> 8301 8302<p> Specify a non-zero time value (an integral value plus an optional 8303one-letter suffix that specifies the time unit). Time units: s 8304(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 8305 8306<p> This feature is available in Postfix 2.8. </p> 8307 8308 8309</DD> 8310 8311<DT><b><a name="postscreen_post_queue_limit">postscreen_post_queue_limit</a> 8312(default: $<a href="postconf.5.html#default_process_limit">default_process_limit</a>)</b></DT><DD> 8313 8314<p> The number of clients that can be waiting for service from a 8315real Postfix SMTP server process. When this queue is full, all 8316clients will 8317receive a 421 response. </p> 8318 8319<p> This feature is available in Postfix 2.8. </p> 8320 8321 8322</DD> 8323 8324<DT><b><a name="postscreen_pre_queue_limit">postscreen_pre_queue_limit</a> 8325(default: $<a href="postconf.5.html#default_process_limit">default_process_limit</a>)</b></DT><DD> 8326 8327<p> The number of non-whitelisted clients that can be waiting for 8328a decision whether they will receive service from a real Postfix 8329SMTP server 8330process. When this queue is full, all non-whitelisted clients will 8331receive a 421 response. </p> 8332 8333<p> This feature is available in Postfix 2.8. </p> 8334 8335 8336</DD> 8337 8338<DT><b><a name="postscreen_reject_footer">postscreen_reject_footer</a> 8339(default: $<a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a>)</b></DT><DD> 8340 8341<p> Optional information that is appended after a 4XX or 5XX 8342<a href="postscreen.8.html">postscreen(8)</a> server 8343response. See <a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a> for further details. </p> 8344 8345<p> This feature is available in Postfix 2.8 and later. </p> 8346 8347 8348</DD> 8349 8350<DT><b><a name="postscreen_tls_security_level">postscreen_tls_security_level</a> 8351(default: $<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a>)</b></DT><DD> 8352 8353<p> The SMTP TLS security level for the <a href="postscreen.8.html">postscreen(8)</a> server; when 8354a non-empty value is specified, this overrides the obsolete parameters 8355<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> 8356for details. </p> 8357 8358<p> This feature is available in Postfix 2.8 and later. </p> 8359 8360 8361</DD> 8362 8363<DT><b><a name="postscreen_upstream_proxy_protocol">postscreen_upstream_proxy_protocol</a> 8364(default: empty)</b></DT><DD> 8365 8366<p> The name of the proxy protocol used by an optional before-postscreen 8367proxy agent. When a proxy agent is used, this protocol conveys local 8368and remote address and port information. Specify 8369"<a href="postconf.5.html#postscreen_upstream_proxy_protocol">postscreen_upstream_proxy_protocol</a> = haproxy" to enable the haproxy 8370protocol. <p> 8371 8372<p> This feature is available in Postfix 2.10 and later. </p> 8373 8374 8375</DD> 8376 8377<DT><b><a name="postscreen_upstream_proxy_timeout">postscreen_upstream_proxy_timeout</a> 8378(default: 5s)</b></DT><DD> 8379 8380<p> The time limit for the proxy protocol specified with the 8381<a href="postconf.5.html#postscreen_upstream_proxy_protocol">postscreen_upstream_proxy_protocol</a> parameter. </p> 8382 8383<p> This feature is available in Postfix 2.10 and later. </p> 8384 8385 8386</DD> 8387 8388<DT><b><a name="postscreen_use_tls">postscreen_use_tls</a> 8389(default: $<a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a>)</b></DT><DD> 8390 8391<p> Opportunistic TLS: announce STARTTLS support to remote SMTP clients, 8392but do not require that clients use TLS encryption. </p> 8393 8394<p> This feature is available in Postfix 2.8 and later. 8395Preferably, use <a href="postconf.5.html#postscreen_tls_security_level">postscreen_tls_security_level</a> instead. </p> 8396 8397 8398</DD> 8399 8400<DT><b><a name="postscreen_watchdog_timeout">postscreen_watchdog_timeout</a> 8401(default: 10s)</b></DT><DD> 8402 8403<p> How much time a <a href="postscreen.8.html">postscreen(8)</a> process may take to respond to 8404a remote SMTP client command or to perform a cache operation before it 8405is terminated by a built-in watchdog timer. This is a safety 8406mechanism that prevents <a href="postscreen.8.html">postscreen(8)</a> from becoming non-responsive 8407due to a bug in Postfix itself or in system software. To avoid 8408false alarms and unnecessary cache corruption this limit cannot be 8409set under 10s. </p> 8410 8411<p> Specify a non-zero time value (an integral value plus an optional 8412one-letter suffix that specifies the time unit). Time units: s 8413(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 8414 8415<p> This feature is available in Postfix 2.8. </p> 8416 8417 8418</DD> 8419 8420<DT><b><a name="postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a> 8421(default: <a href="DATABASE_README.html#types">static</a>:all)</b></DT><DD> 8422 8423<p> A list of local <a href="postscreen.8.html">postscreen(8)</a> server IP addresses where a 8424non-whitelisted remote SMTP client can obtain <a href="postscreen.8.html">postscreen(8)</a>'s temporary 8425whitelist status. This status is required before the client can 8426talk to a Postfix SMTP server process. By default, a client can 8427obtain <a href="postscreen.8.html">postscreen(8)</a>'s whitelist status on any local <a href="postscreen.8.html">postscreen(8)</a> 8428server IP address. </p> 8429 8430<p> When <a href="postscreen.8.html">postscreen(8)</a> listens on both primary and backup MX 8431addresses, the <a href="postconf.5.html#postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a> parameter can be 8432configured to give the temporary whitelist status only when a client 8433connects to a primary MX address. Once a client is whitelisted it 8434can talk to a Postfix SMTP server on any address. Thus, clients 8435that connect only to backup MX addresses will never become whitelisted, 8436and will never be allowed to talk to a Postfix SMTP server process. 8437</p> 8438 8439<p> Specify a list of network addresses or network/netmask patterns, 8440separated by commas and/or whitespace. The netmask specifies the 8441number of bits in the network part of a host address. Continue long 8442lines by starting the next line with whitespace. </p> 8443 8444<p> You can also specify "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A 8445"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" 8446lookup table is matched when a table entry matches a lookup string 8447(the lookup result is ignored). </p> 8448 8449<p> The list is matched left to right, and the search stops on the 8450first match. Specify "!pattern" to exclude an address or network 8451block from the list. </p> 8452 8453<p> Note: IP version 6 address information must be specified inside 8454[] in the <a href="postconf.5.html#postscreen_whitelist_interfaces">postscreen_whitelist_interfaces</a> value, and in files 8455specified with "/file/name". IP version 6 addresses contain the 8456":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 8457pattern. </p> 8458 8459<p> Example: </p> 8460 8461<pre> 8462/etc/postfix/<a href="postconf.5.html">main.cf</a>: 8463 # Don't whitelist connections to the backup IP address. 8464 <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 8465</pre> 8466 8467<p> This feature is available in Postfix 2.9 and later. </p> 8468 8469 8470</DD> 8471 8472<DT><b><a name="prepend_delivered_header">prepend_delivered_header</a> 8473(default: command, file, forward)</b></DT><DD> 8474 8475<p> The message delivery contexts where the Postfix <a href="local.8.html">local(8)</a> delivery 8476agent prepends a Delivered-To: message header with the address 8477that the mail was delivered to. This information is used for mail 8478delivery loop detection. </p> 8479 8480<p> 8481By default, the Postfix local delivery agent prepends a Delivered-To: 8482header when forwarding mail and when delivering to file (mailbox) 8483and command. Turning off the Delivered-To: header when forwarding 8484mail is not recommended. 8485</p> 8486 8487<p> 8488Specify zero or more of <b>forward</b>, <b>file</b>, or <b>command</b>. 8489</p> 8490 8491<p> 8492Example: 8493</p> 8494 8495<pre> 8496<a href="postconf.5.html#prepend_delivered_header">prepend_delivered_header</a> = forward 8497</pre> 8498 8499 8500</DD> 8501 8502<DT><b><a name="process_id">process_id</a> 8503(read-only)</b></DT><DD> 8504 8505<p> 8506The process ID of a Postfix command or daemon process. 8507</p> 8508 8509 8510</DD> 8511 8512<DT><b><a name="process_id_directory">process_id_directory</a> 8513(default: pid)</b></DT><DD> 8514 8515<p> 8516The location of Postfix PID files relative to $<a href="postconf.5.html#queue_directory">queue_directory</a>. 8517This is a read-only parameter. 8518</p> 8519 8520 8521</DD> 8522 8523<DT><b><a name="process_name">process_name</a> 8524(read-only)</b></DT><DD> 8525 8526<p> 8527The process name of a Postfix command or daemon process. 8528</p> 8529 8530 8531</DD> 8532 8533<DT><b><a name="propagate_unmatched_extensions">propagate_unmatched_extensions</a> 8534(default: canonical, virtual)</b></DT><DD> 8535 8536<p> 8537What address lookup tables copy an address extension from the lookup 8538key to the lookup result. 8539</p> 8540 8541<p> 8542For example, with a <a href="virtual.5.html">virtual(5)</a> mapping of "<i>joe@example.com => 8543joe.user@example.net</i>", the address "<i>joe+foo@example.com</i>" 8544would rewrite to "<i>joe.user+foo@example.net</i>". 8545</p> 8546 8547<p> 8548Specify zero or more of <b>canonical</b>, <b>virtual</b>, <b>alias</b>, 8549<b>forward</b>, <b>include</b> or <b>generic</b>. These cause 8550address extension 8551propagation 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, 8552with <a href="local.8.html">local(8)</a> .forward and :include: file lookups, and with <a href="smtp.8.html">smtp(8)</a> 8553generic maps, respectively. </p> 8554 8555<p> 8556Note: enabling this feature for types other than <b>canonical</b> 8557and <b>virtual</b> is likely to cause problems when mail is forwarded 8558to other sites, especially with mail that is sent to a mailing list 8559exploder address. 8560</p> 8561 8562<p> 8563Examples: 8564</p> 8565 8566<pre> 8567<a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual, alias, 8568 forward, include 8569<a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> = canonical, virtual 8570</pre> 8571 8572 8573</DD> 8574 8575<DT><b><a name="proxy_interfaces">proxy_interfaces</a> 8576(default: empty)</b></DT><DD> 8577 8578<p> 8579The network interface addresses that this mail system receives mail 8580on by way of a proxy or network address translation unit. 8581</p> 8582 8583<p> 8584This feature is available in Postfix 2.0 and later. 8585</p> 8586 8587<p> You must specify your "outside" proxy/NAT addresses when your 8588system is a backup MX host for other domains, otherwise mail delivery 8589loops will happen when the primary MX host is down. </p> 8590 8591<p> 8592Example: 8593</p> 8594 8595<pre> 8596<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> = 1.2.3.4 8597</pre> 8598 8599 8600</DD> 8601 8602<DT><b><a name="proxy_read_maps">proxy_read_maps</a> 8603(default: see "postconf -d" output)</b></DT><DD> 8604 8605<p> 8606The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to 8607access for the read-only service. 8608</p> 8609 8610<p> 8611Specify zero or more "type:name" lookup tables, separated by 8612whitespace or comma. 8613Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored. 8614</p> 8615 8616<p> 8617This feature is available in Postfix 2.0 and later. 8618</p> 8619 8620 8621</DD> 8622 8623<DT><b><a name="proxy_write_maps">proxy_write_maps</a> 8624(default: see "postconf -d" output)</b></DT><DD> 8625 8626<p> The lookup tables that the <a href="proxymap.8.html">proxymap(8)</a> server is allowed to 8627access for the read-write service. Postfix-owned local database 8628files should be stored under the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>. 8629Table references that don't begin with <a href="proxymap.8.html">proxy</a>: are ignored. </p> 8630 8631<p> 8632This feature is available in Postfix 2.5 and later. 8633</p> 8634 8635 8636</DD> 8637 8638<DT><b><a name="proxymap_service_name">proxymap_service_name</a> 8639(default: proxymap)</b></DT><DD> 8640 8641<p> The name of the proxymap read-only table lookup service. This 8642service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon. </p> 8643 8644<p> This feature is available in Postfix 2.6 and later. </p> 8645 8646 8647</DD> 8648 8649<DT><b><a name="proxywrite_service_name">proxywrite_service_name</a> 8650(default: proxywrite)</b></DT><DD> 8651 8652<p> The name of the proxywrite read-write table lookup service. 8653This service is normally implemented by the <a href="proxymap.8.html">proxymap(8)</a> daemon. 8654</p> 8655 8656<p> This feature is available in Postfix 2.6 and later. </p> 8657 8658 8659</DD> 8660 8661<DT><b><a name="qmgr_clog_warn_time">qmgr_clog_warn_time</a> 8662(default: 300s)</b></DT><DD> 8663 8664<p> 8665The minimal delay between warnings that a specific destination is 8666clogging up the Postfix <a href="QSHAPE_README.html#active_queue">active queue</a>. Specify 0 to disable. 8667</p> 8668 8669<p> 8670This feature is enabled with the <a href="postconf.5.html#helpful_warnings">helpful_warnings</a> parameter. 8671</p> 8672 8673<p> 8674This feature is available in Postfix 2.0 and later. 8675</p> 8676 8677 8678</DD> 8679 8680<DT><b><a name="qmgr_daemon_timeout">qmgr_daemon_timeout</a> 8681(default: 1000s)</b></DT><DD> 8682 8683<p> How much time a Postfix queue manager process may take to handle 8684a request before it is terminated by a built-in watchdog timer. 8685</p> 8686 8687<p> 8688Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 8689The default time unit is s (seconds). 8690</p> 8691 8692<p> This feature is available in Postfix 2.8 and later. </p> 8693 8694 8695</DD> 8696 8697<DT><b><a name="qmgr_fudge_factor">qmgr_fudge_factor</a> 8698(default: 100)</b></DT><DD> 8699 8700<p> 8701Obsolete feature: the percentage of delivery resources that a busy 8702mail system will use up for delivery of a large mailing list 8703message. 8704</p> 8705 8706<p> 8707This feature exists only in the <a href="qmgr.8.html">oqmgr(8)</a> old queue manager. The 8708current queue manager solves the problem in a better way. 8709</p> 8710 8711 8712</DD> 8713 8714<DT><b><a name="qmgr_ipc_timeout">qmgr_ipc_timeout</a> 8715(default: 60s)</b></DT><DD> 8716 8717<p> The time limit for the queue manager to send or receive information 8718over an internal communication channel. The purpose is to break 8719out of deadlock situations. If the time limit is exceeded the 8720software either retries or aborts the operation. </p> 8721 8722<p> 8723Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 8724The default time unit is s (seconds). 8725</p> 8726 8727<p> This feature is available in Postfix 2.8 and later. </p> 8728 8729 8730</DD> 8731 8732<DT><b><a name="qmgr_message_active_limit">qmgr_message_active_limit</a> 8733(default: 20000)</b></DT><DD> 8734 8735<p> 8736The maximal number of messages in the <a href="QSHAPE_README.html#active_queue">active queue</a>. 8737</p> 8738 8739 8740</DD> 8741 8742<DT><b><a name="qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> 8743(default: 20000)</b></DT><DD> 8744 8745<p> The maximal number of recipients held in memory by the Postfix 8746queue manager, and the maximal size of the short-term, 8747in-memory "dead" destination status cache. </p> 8748 8749 8750</DD> 8751 8752<DT><b><a name="qmgr_message_recipient_minimum">qmgr_message_recipient_minimum</a> 8753(default: 10)</b></DT><DD> 8754 8755<p> 8756The minimal number of in-memory recipients for any message. This 8757takes priority over any other in-memory recipient limits (i.e., 8758the global <a href="postconf.5.html#qmgr_message_recipient_limit">qmgr_message_recipient_limit</a> and the per transport 8759_recipient_limit) if necessary. The minimum value allowed for this 8760parameter is 1. 8761</p> 8762 8763 8764</DD> 8765 8766<DT><b><a name="qmqpd_authorized_clients">qmqpd_authorized_clients</a> 8767(default: empty)</b></DT><DD> 8768 8769<p> 8770What remote QMQP clients are allowed to connect to the Postfix QMQP 8771server port. 8772</p> 8773 8774<p> 8775By default, no client is allowed to use the service. This is 8776because the QMQP server will relay mail to any destination. 8777</p> 8778 8779<p> 8780Specify a list of client patterns. A list pattern specifies a host 8781name, a domain name, an internet address, or a network/mask pattern, 8782where the mask specifies the number of bits in the network part. 8783When a pattern specifies a file name, its contents are substituted 8784for the file name; when a pattern is a "<a href="DATABASE_README.html">type:table</a>" table specification, 8785table lookup is used instead. </p> 8786 8787<p> 8788Patterns are separated by whitespace and/or commas. In order to 8789reverse the result, precede a pattern with an 8790exclamation point (!). The form "!/file/name" is supported only 8791in Postfix version 2.4 and later. 8792</p> 8793 8794<p> Pattern matching of domain names is controlled by the presence 8795or absence of "<a href="postconf.5.html#qmqpd_authorized_clients">qmqpd_authorized_clients</a>" in the 8796<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter value. </p> 8797 8798<p> 8799Example: 8800</p> 8801 8802<pre> 8803<a href="postconf.5.html#qmqpd_authorized_clients">qmqpd_authorized_clients</a> = !192.168.0.1, 192.168.0.0/24 8804</pre> 8805 8806 8807</DD> 8808 8809<DT><b><a name="qmqpd_client_port_logging">qmqpd_client_port_logging</a> 8810(default: no)</b></DT><DD> 8811 8812<p> Enable logging of the remote QMQP client port in addition to 8813the hostname and IP address. The logging format is "host[address]:port". 8814</p> 8815 8816<p> This feature is available in Postfix 2.5 and later. </p> 8817 8818 8819</DD> 8820 8821<DT><b><a name="qmqpd_error_delay">qmqpd_error_delay</a> 8822(default: 1s)</b></DT><DD> 8823 8824<p> 8825How long the Postfix QMQP server will pause before sending a negative 8826reply to the remote QMQP client. The purpose is to slow down confused 8827or malicious clients. 8828</p> 8829 8830<p> 8831Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 8832The default time unit is s (seconds). 8833</p> 8834 8835 8836</DD> 8837 8838<DT><b><a name="qmqpd_timeout">qmqpd_timeout</a> 8839(default: 300s)</b></DT><DD> 8840 8841<p> 8842The time limit for sending or receiving information over the network. 8843If a read or write operation blocks for more than $<a href="postconf.5.html#qmqpd_timeout">qmqpd_timeout</a> 8844seconds the Postfix QMQP server gives up and disconnects. 8845</p> 8846 8847<p> 8848Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 8849The default time unit is s (seconds). 8850</p> 8851 8852 8853</DD> 8854 8855<DT><b><a name="queue_directory">queue_directory</a> 8856(default: see "postconf -d" output)</b></DT><DD> 8857 8858<p> 8859The location of the Postfix top-level queue directory. This is the 8860root directory of Postfix daemon processes that run chrooted. 8861</p> 8862 8863 8864</DD> 8865 8866<DT><b><a name="queue_file_attribute_count_limit">queue_file_attribute_count_limit</a> 8867(default: 100)</b></DT><DD> 8868 8869<p> 8870The maximal number of (name=value) attributes that may be stored 8871in a Postfix queue file. The limit is enforced by the <a href="cleanup.8.html">cleanup(8)</a> 8872server. 8873</p> 8874 8875<p> 8876This feature is available in Postfix 2.0 and later. 8877</p> 8878 8879 8880</DD> 8881 8882<DT><b><a name="queue_minfree">queue_minfree</a> 8883(default: 0)</b></DT><DD> 8884 8885<p> 8886The minimal amount of free space in bytes in the queue file system 8887that is needed to receive mail. This is currently used by the 8888Postfix SMTP server to decide if it will accept any mail at all. 8889</p> 8890 8891<p> 8892By default, the Postfix SMTP server rejects MAIL FROM commands when 8893the amount of free space is less than 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a> 8894(Postfix version 2.1 and later). 8895To specify a higher minimum free space limit, specify a <a href="postconf.5.html#queue_minfree">queue_minfree</a> 8896value that is at least 1.5*$<a href="postconf.5.html#message_size_limit">message_size_limit</a>. 8897</p> 8898 8899<p> 8900With Postfix versions 2.0 and earlier, a <a href="postconf.5.html#queue_minfree">queue_minfree</a> value of 8901zero means there is no minimum required amount of free space. 8902</p> 8903 8904 8905</DD> 8906 8907<DT><b><a name="queue_run_delay">queue_run_delay</a> 8908(default: 300s)</b></DT><DD> 8909 8910<p> 8911The time between <a href="QSHAPE_README.html#deferred_queue">deferred queue</a> scans by the queue manager; 8912prior to Postfix 2.4 the default value was 1000s. 8913</p> 8914 8915<p> This parameter should be set less than or equal to 8916$<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> 8917 8918<p> 8919Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 8920The default time unit is s (seconds). 8921</p> 8922 8923 8924</DD> 8925 8926<DT><b><a name="queue_service_name">queue_service_name</a> 8927(default: qmgr)</b></DT><DD> 8928 8929<p> 8930The name of the <a href="qmgr.8.html">qmgr(8)</a> service. This service manages the Postfix 8931queue and schedules delivery requests. 8932</p> 8933 8934<p> 8935This feature is available in Postfix 2.0 and later. 8936</p> 8937 8938 8939</DD> 8940 8941<DT><b><a name="rbl_reply_maps">rbl_reply_maps</a> 8942(default: empty)</b></DT><DD> 8943 8944<p> 8945Optional lookup tables with RBL response templates. The tables are 8946indexed by the RBL domain name. By default, Postfix uses the default 8947template as specified with the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> configuration 8948parameter. See there for a discussion of the syntax of RBL reply 8949templates. 8950</p> 8951 8952<p> 8953This feature is available in Postfix 2.0 and later. 8954</p> 8955 8956 8957</DD> 8958 8959<DT><b><a name="readme_directory">readme_directory</a> 8960(default: see "postconf -d" output)</b></DT><DD> 8961 8962<p> 8963The location of Postfix README files that describe how to build, 8964configure or operate a specific Postfix subsystem or feature. 8965</p> 8966 8967 8968</DD> 8969 8970<DT><b><a name="receive_override_options">receive_override_options</a> 8971(default: empty)</b></DT><DD> 8972 8973<p> Enable or disable recipient validation, built-in content 8974filtering, or address mapping. Typically, these are specified in 8975<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 8976<a href="pickup.8.html">pickup(8)</a> daemons. </p> 8977 8978<p> Specify zero or more of the following options. The options 8979override <a href="postconf.5.html">main.cf</a> settings and are either implemented by <a href="smtpd.8.html">smtpd(8)</a>, 8980<a href="qmqpd.8.html">qmqpd(8)</a>, or <a href="pickup.8.html">pickup(8)</a> themselves, or they are forwarded to the 8981cleanup server. </p> 8982 8983<dl> 8984 8985<dt><b><a name="no_unknown_recipient_checks">no_unknown_recipient_checks</a></b></dt> 8986 8987<dd>Do not try to reject unknown recipients (SMTP server only). 8988This is typically specified AFTER an external content filter. 8989</dd> 8990 8991<dt><b><a name="no_address_mappings">no_address_mappings</a></b></dt> 8992 8993<dd>Disable canonical address mapping, virtual alias map expansion, 8994address masquerading, and automatic BCC (blind carbon-copy) 8995recipients. This is typically specified BEFORE an external content 8996filter. </dd> 8997 8998<dt><b><a name="no_header_body_checks">no_header_body_checks</a></b></dt> 8999 9000<dd>Disable header/body_checks. This is typically specified AFTER 9001an external content filter. </dd> 9002 9003<dt><b><a name="no_milters">no_milters</a></b></dt> 9004 9005<dd>Disable Milter (mail filter) applications. This is typically 9006specified AFTER an external content filter. </dd> 9007 9008</dl> 9009 9010<p> 9011Note: when the "BEFORE content filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a> 9012setting is specified in the <a href="postconf.5.html">main.cf</a> file, specify the "AFTER content 9013filter" <a href="postconf.5.html#receive_override_options">receive_override_options</a> setting in <a href="master.5.html">master.cf</a> (and vice 9014versa). 9015</p> 9016 9017<p> 9018Examples: 9019</p> 9020 9021<pre> 9022<a href="postconf.5.html#receive_override_options">receive_override_options</a> = 9023 <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> 9024<a href="postconf.5.html#receive_override_options">receive_override_options</a> = <a href="postconf.5.html#no_address_mappings">no_address_mappings</a> 9025</pre> 9026 9027<p> 9028This feature is available in Postfix 2.1 and later. 9029</p> 9030 9031 9032</DD> 9033 9034<DT><b><a name="recipient_bcc_maps">recipient_bcc_maps</a> 9035(default: empty)</b></DT><DD> 9036 9037<p> 9038Optional BCC (blind carbon-copy) address lookup tables, indexed by 9039recipient address. The BCC address (multiple results are not 9040supported) is added when mail enters from outside of Postfix. 9041</p> 9042 9043<p> 9044Specify zero or more "type:name" lookup tables, separated by 9045whitespace or comma. Tables will be searched in the specified order 9046until a match is found. 9047</p> 9048 9049<p> 9050The table search order is as follows: 9051</p> 9052 9053<ul> 9054 9055<li> Look up the "user+extension@domain.tld" address including the 9056optional address extension. 9057 9058<li> Look up the "user@domain.tld" address without the optional 9059address extension. 9060 9061<li> Look up the "user+extension" address local part when the 9062recipient 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> 9063or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>. 9064 9065<li> Look up the "user" address local part when the recipient domain 9066equals $<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>. 9067 9068<li> Look up the "@domain.tld" part. 9069 9070</ul> 9071 9072<p> 9073Note: with Postfix 2.3 and later the BCC address is added as if it 9074was specified with NOTIFY=NONE. The sender will not be notified 9075when the BCC address is undeliverable, as long as all down-stream 9076software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>. 9077</p> 9078 9079<p> 9080Note: with Postfix 2.2 and earlier the sender will unconditionally 9081be notified when the BCC address is undeliverable. 9082</p> 9083 9084<p> Note: automatic BCC recipients are produced only for new mail. 9085To avoid mailer loops, automatic BCC recipients are not generated 9086after Postfix forwards mail internally, or after Postfix generates 9087mail itself. </p> 9088 9089<p> 9090Example: 9091</p> 9092 9093<pre> 9094<a href="postconf.5.html#recipient_bcc_maps">recipient_bcc_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/recipient_bcc 9095</pre> 9096 9097<p> 9098After a change, run "<b>postmap /etc/postfix/recipient_bcc</b>". 9099</p> 9100 9101<p> 9102This feature is available in Postfix 2.1 and later. 9103</p> 9104 9105 9106</DD> 9107 9108<DT><b><a name="recipient_canonical_classes">recipient_canonical_classes</a> 9109(default: envelope_recipient, header_recipient)</b></DT><DD> 9110 9111<p> What addresses are subject to <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address 9112mapping. By default, <a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> address mapping is 9113applied to envelope recipient addresses, and to header recipient 9114addresses. </p> 9115 9116<p> Specify one or more of: envelope_recipient, header_recipient 9117</p> 9118 9119<p> This feature is available in Postfix 2.2 and later. </p> 9120 9121 9122</DD> 9123 9124<DT><b><a name="recipient_canonical_maps">recipient_canonical_maps</a> 9125(default: empty)</b></DT><DD> 9126 9127<p> 9128Optional address mapping lookup tables for envelope and header 9129recipient addresses. 9130The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>. 9131</p> 9132 9133<p> 9134Note: $<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>. 9135</p> 9136 9137<p> 9138Example: 9139</p> 9140 9141<pre> 9142<a href="postconf.5.html#recipient_canonical_maps">recipient_canonical_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/recipient_canonical 9143</pre> 9144 9145 9146</DD> 9147 9148<DT><b><a name="recipient_delimiter">recipient_delimiter</a> 9149(default: empty)</b></DT><DD> 9150 9151<p> The set of characters that can separate a user name from its 9152extension (example: user+foo), or a .forward file name from its 9153extension (example: .forward+foo). Basically, the software tries 9154user+foo and .forward+foo before trying user and .forward. This 9155implementation recognizes one delimiter character and one extension 9156per email address or .forward file name. </p> 9157 9158<p> When the <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> set contains multiple characters 9159(Postfix 2.11 and later), a user name or .forward file name is 9160separated from its extension by the first character that matches 9161the <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> set. </p> 9162 9163<p> 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 9164effects of <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> on lookups in aliases, canonical, 9165virtual, and relocated maps, and see the <a href="postconf.5.html#propagate_unmatched_extensions">propagate_unmatched_extensions</a> 9166parameter for propagating an extension from one email address to 9167another. </p> 9168 9169<p> When used in <a href="postconf.5.html#command_execution_directory">command_execution_directory</a>, <a href="postconf.5.html#forward_path">forward_path</a>, or 9170<a href="postconf.5.html#luser_relay">luser_relay</a>, ${<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>} is replaced with the actual 9171recipient delimiter that was found in the recipient email address 9172(Postfix 2.11 and later), or it is replaced with the <a href="postconf.5.html">main.cf</a> 9173<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> parameter value (Postfix 2.10 and earlier). 9174</p> 9175 9176<p> The <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> is not applied to the mailer-daemon 9177address, the postmaster address, or the double-bounce address. With 9178the default "<a href="postconf.5.html#owner_request_special">owner_request_special</a> = yes" setting, the <a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> 9179is also not applied to addresses with the special "owner-" prefix 9180or the special "-request" suffix. </p> 9181 9182<p> 9183Examples: 9184</p> 9185 9186<pre> 9187# Handle Postfix-style extensions. 9188<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> = + 9189</pre> 9190 9191<pre> 9192# Handle both Postfix and qmail extensions (Postfix 2.11 and later). 9193<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a> = +- 9194</pre> 9195 9196<pre> 9197# Use .forward for mail without address extension, and for mail with 9198# an unrecognized address extension. 9199<a href="postconf.5.html#forward_path">forward_path</a> = $home/.forward${<a href="postconf.5.html#recipient_delimiter">recipient_delimiter</a>}${extension}, 9200 $home/.forward 9201</pre> 9202 9203 9204</DD> 9205 9206<DT><b><a name="reject_code">reject_code</a> 9207(default: 554)</b></DT><DD> 9208 9209<p> 9210The numerical Postfix SMTP server response code when a remote SMTP 9211client request is rejected by the "reject" restriction. 9212</p> 9213 9214<p> 9215Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 9216</p> 9217 9218 9219</DD> 9220 9221<DT><b><a name="reject_tempfail_action">reject_tempfail_action</a> 9222(default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>)</b></DT><DD> 9223 9224<p> The Postfix SMTP server's action when a reject-type restriction 9225fails due to a temporary error condition. Specify "defer" to defer 9226the remote SMTP client request immediately. With the default 9227"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look 9228for opportunities to reject mail, and defers the client request 9229only if it would otherwise be accepted. </p> 9230 9231<p> For finer control, see: <a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a>, 9232<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>, 9233and <a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a>. </p> 9234 9235<p> This feature is available in Postfix 2.6 and later. </p> 9236 9237 9238</DD> 9239 9240<DT><b><a name="relay_clientcerts">relay_clientcerts</a> 9241(default: empty)</b></DT><DD> 9242 9243<p> List of tables with remote SMTP client-certificate fingerprints or 9244public key fingerprints (Postfix 2.9 and later) for which the Postfix 9245SMTP server will allow access with the <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> 9246feature. The fingerprint digest algorithm is configurable via the 9247<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to 9248Postfix version 2.5). </p> 9249 9250<p> Postfix lookup tables are in the form of (key, value) pairs. 9251Since we only need the key, the value can be chosen freely, e.g. 9252the name of the user or host: 9253D7:04:2F:A7:0B:8C:A5:21:FA:31:77:E1:41:8A:EE:80 lutzpc.at.home </p> 9254 9255<p> Example: </p> 9256 9257<pre> 9258<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/relay_clientcerts 9259</pre> 9260 9261<p>For more fine-grained control, use <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> to select 9262an appropriate <a href="access.5.html">access(5)</a> policy for each client. 9263See <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a>.</p> 9264 9265<p> <b>Note:</b> Postfix 2.9.0–2.9.5 computed the public key 9266fingerprint incorrectly. To use public-key fingerprints, upgrade 9267to Postfix 2.9.6 or later. </p> 9268 9269<p>This feature is available with Postfix version 2.2.</p> 9270 9271 9272</DD> 9273 9274<DT><b><a name="relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> 9275(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD> 9276 9277<p> The maximal number of parallel deliveries to the same destination 9278via the relay message delivery transport. This limit is enforced 9279by the queue manager. The message delivery transport name is the 9280first field in the entry in the <a href="master.5.html">master.cf</a> file. </p> 9281 9282<p> This feature is available in Postfix 2.0 and later. </p> 9283 9284 9285</DD> 9286 9287<DT><b><a name="relay_destination_recipient_limit">relay_destination_recipient_limit</a> 9288(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD> 9289 9290<p> The maximal number of recipients per message for the relay 9291message delivery transport. This limit is enforced by the queue 9292manager. The message delivery transport name is the first field in 9293the entry in the <a href="master.5.html">master.cf</a> file. </p> 9294 9295<p> Setting this parameter to a value of 1 changes the meaning of 9296<a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> from concurrency per domain 9297into concurrency per recipient. </p> 9298 9299<p> This feature is available in Postfix 2.0 and later. </p> 9300 9301 9302</DD> 9303 9304<DT><b><a name="relay_domains">relay_domains</a> 9305(default: Postfix ≥ 3.0: empty, Postfix < 3.0: $<a href="postconf.5.html#mydestination">mydestination</a>)</b></DT><DD> 9306 9307<p> What destination domains (and subdomains thereof) this system 9308will relay mail to. For details about how 9309the <a href="postconf.5.html#relay_domains">relay_domains</a> value is used, see the description of the 9310<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 9311restrictions. </p> 9312 9313<p> Domains that match $<a href="postconf.5.html#relay_domains">relay_domains</a> are delivered with the 9314$<a href="postconf.5.html#relay_transport">relay_transport</a> mail delivery transport. The SMTP server validates 9315recipient addresses with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> and rejects non-existent 9316recipients. See also the <a href="ADDRESS_CLASS_README.html#relay_domain_class">relay domains</a> address class in the 9317<a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file. </p> 9318 9319<p> Note: Postfix will not automatically forward mail for domains 9320that list this system as their primary or backup MX host. See the 9321<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> 9322 9323<p> Specify a list of host or domain names, "/file/name" patterns 9324or "<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by commas and/or whitespace. 9325Continue long lines by starting the next line with whitespace. A 9326"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" 9327lookup table is matched when a (parent) domain appears as lookup 9328key. Specify "!pattern" to exclude a domain from the list. The form 9329"!/file/name" is supported only in Postfix version 2.4 and later. 9330</p> 9331 9332<p> Pattern matching of domain names is controlled by the presence 9333or absence of "<a href="postconf.5.html#relay_domains">relay_domains</a>" in the <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 9334parameter value. </p> 9335 9336 9337</DD> 9338 9339<DT><b><a name="relay_domains_reject_code">relay_domains_reject_code</a> 9340(default: 554)</b></DT><DD> 9341 9342<p> 9343The numerical Postfix SMTP server response code when a client 9344request is rejected by the <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> recipient 9345restriction. 9346</p> 9347 9348<p> 9349Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 9350</p> 9351 9352 9353</DD> 9354 9355<DT><b><a name="relay_recipient_maps">relay_recipient_maps</a> 9356(default: empty)</b></DT><DD> 9357 9358<p> Optional lookup tables with all valid addresses in the domains 9359that match $<a href="postconf.5.html#relay_domains">relay_domains</a>. Specify @domain as a wild-card for 9360domains that have no valid recipient list, and become a source of 9361backscatter mail: Postfix accepts spam for non-existent recipients 9362and then floods innocent people with undeliverable mail. Technically, 9363tables 9364listed with $<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> are used as lists: Postfix needs 9365to know only if a lookup string is found or not, but it does not 9366use the result from table lookup. </p> 9367 9368<p> 9369Specify zero or more "type:name" lookup tables, separated by 9370whitespace or comma. Tables will be searched in the specified order 9371until a match is found. 9372</p> 9373 9374<p> 9375If this parameter is non-empty, then the Postfix SMTP server will reject 9376mail to unknown relay users. This feature is off by default. 9377</p> 9378 9379<p> 9380See 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> 9381file. 9382</p> 9383 9384<p> 9385Example: 9386</p> 9387 9388<pre> 9389<a href="postconf.5.html#relay_recipient_maps">relay_recipient_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/relay_recipients 9390</pre> 9391 9392<p> 9393This feature is available in Postfix 2.0 and later. 9394</p> 9395 9396 9397</DD> 9398 9399<DT><b><a name="relay_transport">relay_transport</a> 9400(default: relay)</b></DT><DD> 9401 9402<p> 9403The default mail delivery transport and next-hop destination for 9404remote delivery to domains listed with $<a href="postconf.5.html#relay_domains">relay_domains</a>. In order of 9405decreasing precedence, the nexthop destination is taken from 9406$<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 9407from the recipient domain. This information can be overruled with 9408the <a href="transport.5.html">transport(5)</a> table. 9409</p> 9410 9411<p> 9412Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i> 9413is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>. 9414The <i>:nexthop</i> destination is optional; its syntax is documented 9415in the manual page of the corresponding delivery agent. 9416</p> 9417 9418<p> 9419See 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> 9420file. 9421</p> 9422 9423<p> 9424This feature is available in Postfix 2.0 and later. 9425</p> 9426 9427 9428</DD> 9429 9430<DT><b><a name="relayhost">relayhost</a> 9431(default: empty)</b></DT><DD> 9432 9433<p> 9434The next-hop destination of non-local mail; overrides non-local 9435domains in recipient addresses. This information is overruled with 9436<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>, 9437<a href="postconf.5.html#default_transport">default_transport</a>, <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> 9438and with the <a href="transport.5.html">transport(5)</a> table. 9439</p> 9440 9441<p> 9442On an intranet, specify the organizational domain name. If your 9443internal DNS uses no MX records, specify the name of the intranet 9444gateway host instead. 9445</p> 9446 9447<p> 9448In the case of SMTP, specify a domain name, hostname, hostname:port, 9449[hostname]:port, [hostaddress] or [hostaddress]:port. The form 9450[hostname] turns off MX lookups. 9451</p> 9452 9453<p> 9454If you're connected via UUCP, see the <a href="UUCP_README.html">UUCP_README</a> file for useful 9455information. 9456</p> 9457 9458<p> 9459Examples: 9460</p> 9461 9462<pre> 9463<a href="postconf.5.html#relayhost">relayhost</a> = $<a href="postconf.5.html#mydomain">mydomain</a> 9464<a href="postconf.5.html#relayhost">relayhost</a> = [gateway.example.com] 9465<a href="postconf.5.html#relayhost">relayhost</a> = uucphost 9466<a href="postconf.5.html#relayhost">relayhost</a> = [an.ip.add.ress] 9467</pre> 9468 9469 9470</DD> 9471 9472<DT><b><a name="relocated_maps">relocated_maps</a> 9473(default: empty)</b></DT><DD> 9474 9475<p> 9476Optional lookup tables with new contact information for users or 9477domains that no longer exist. The table format and lookups are 9478documented in <a href="relocated.5.html">relocated(5)</a>. 9479</p> 9480 9481<p> 9482Specify zero or more "type:name" lookup tables, separated by 9483whitespace or comma. Tables will be searched in the specified order 9484until a match is found. 9485</p> 9486 9487<p> 9488If you use this feature, run "<b>postmap /etc/postfix/relocated</b>" to 9489build the necessary DBM or DB file after change, then "<b>postfix 9490reload</b>" to make the changes visible. 9491</p> 9492 9493<p> 9494Examples: 9495</p> 9496 9497<pre> 9498<a href="postconf.5.html#relocated_maps">relocated_maps</a> = <a href="DATABASE_README.html#types">dbm</a>:/etc/postfix/relocated 9499<a href="postconf.5.html#relocated_maps">relocated_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/relocated 9500</pre> 9501 9502 9503</DD> 9504 9505<DT><b><a name="remote_header_rewrite_domain">remote_header_rewrite_domain</a> 9506(default: empty)</b></DT><DD> 9507 9508<p> Don't rewrite message headers from remote clients at all when 9509this parameter is empty; otherwise, rewrite message headers and 9510append the specified domain name to incomplete addresses. The 9511<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> parameter controls what clients Postfix 9512considers local. </p> 9513 9514<p> Examples: </p> 9515 9516<p> The safe setting: append "domain.invalid" to incomplete header 9517addresses from remote SMTP clients, so that those addresses cannot 9518be confused with local addresses. </p> 9519 9520<blockquote> 9521<pre> 9522<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> = domain.invalid 9523</pre> 9524</blockquote> 9525 9526<p> The default, purist, setting: don't rewrite headers from remote 9527clients at all. </p> 9528 9529<blockquote> 9530<pre> 9531<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> = 9532</pre> 9533</blockquote> 9534 9535 9536</DD> 9537 9538<DT><b><a name="require_home_directory">require_home_directory</a> 9539(default: no)</b></DT><DD> 9540 9541<p> 9542Require that a <a href="local.8.html">local(8)</a> recipient's home directory exists 9543before mail delivery is attempted. By default this test is disabled. 9544It can be useful for environments that import home directories to 9545the mail server (IMPORTING HOME DIRECTORIES IS NOT RECOMMENDED). 9546</p> 9547 9548 9549</DD> 9550 9551<DT><b><a name="reset_owner_alias">reset_owner_alias</a> 9552(default: no)</b></DT><DD> 9553 9554<p> Reset the <a href="local.8.html">local(8)</a> delivery agent's idea of the owner-alias 9555attribute, when delivering mail to a child alias that does not have 9556its own owner alias. </p> 9557 9558<p> This feature is available in Postfix 2.8 and later. With older 9559Postfix releases, the behavior is as if this parameter is set to 9560"yes". </p> 9561 9562<p> As documented in <a href="aliases.5.html">aliases(5)</a>, when an alias <i>name</i> has a 9563companion alias named owner-<i>name</i>, delivery errors will be 9564reported to the owner alias instead of the sender. This configuration 9565is recommended for mailing lists. <p> 9566 9567<p> A less known property of the owner alias is that it also forces 9568the <a href="local.8.html">local(8)</a> delivery agent to write local and remote addresses 9569from alias expansion to a new queue file, instead of attempting to 9570deliver mail to local addresses as soon as they come out of alias 9571expansion. </p> 9572 9573<p> Writing local addresses from alias expansion to a new queue 9574file allows for robust handling of temporary delivery errors: errors 9575with one local member have no effect on deliveries to other members 9576of the list. On the other hand, delivery to local addresses as 9577soon as they come out of alias expansion is fragile: a temporary 9578error with one local address from alias expansion will cause the 9579entire alias to be expanded repeatedly until the error goes away, 9580or until the message expires in the queue. In that case, a problem 9581with one list member results in multiple message deliveries to other 9582list members. </p> 9583 9584<p> The default behavior of Postfix 2.8 and later is to keep the 9585owner-alias attribute of the parent alias, when delivering mail to 9586a child alias that does not have its own owner alias. Then, local 9587addresses from that child alias will be written to a new queue file, 9588and a temporary error with one local address will not affect delivery 9589to other mailing list members. </p> 9590 9591<p> Unfortunately, older Postfix releases reset the owner-alias 9592attribute when delivering mail to a child alias that does not have 9593its own owner alias. The <a href="local.8.html">local(8)</a> delivery agent then attempts to 9594deliver local addresses as soon as they come out of child alias 9595expansion. If delivery to any address from child alias expansion 9596fails with a temporary error condition, the entire mailing list may 9597be expanded repeatedly until the mail expires in the queue, resulting 9598in multiple deliveries of the same message to mailing list members. 9599</p> 9600 9601 9602</DD> 9603 9604<DT><b><a name="resolve_dequoted_address">resolve_dequoted_address</a> 9605(default: yes)</b></DT><DD> 9606 9607<p> Resolve a recipient address safely instead of correctly, by 9608looking inside quotes. </p> 9609 9610<p> By default, the Postfix address resolver does not quote the 9611address localpart as per <a href="http://tools.ietf.org/html/rfc822">RFC 822</a>, so that additional @ or % or ! 9612operators remain visible. This behavior is safe but it is also 9613technically incorrect. </p> 9614 9615<p> If you specify "<a href="postconf.5.html#resolve_dequoted_address">resolve_dequoted_address</a> = no", then 9616the Postfix 9617resolver will not know about additional @ etc. operators in the 9618address localpart. This opens opportunities for obscure mail relay 9619attacks with user@domain@domain addresses when Postfix provides 9620backup MX service for Sendmail systems. </p> 9621 9622 9623</DD> 9624 9625<DT><b><a name="resolve_null_domain">resolve_null_domain</a> 9626(default: no)</b></DT><DD> 9627 9628<p> Resolve an address that ends in the "@" null domain as if the 9629local hostname were specified, instead of rejecting the address as 9630invalid. </p> 9631 9632<p> This feature is available in Postfix 2.1 and later. 9633Earlier versions always resolve the null domain as the local 9634hostname. </p> 9635 9636<p> The Postfix SMTP server uses this feature to reject mail from 9637or to addresses that end in the "@" null domain, and from addresses 9638that rewrite into a form that ends in the "@" null domain. </p> 9639 9640 9641</DD> 9642 9643<DT><b><a name="resolve_numeric_domain">resolve_numeric_domain</a> 9644(default: no)</b></DT><DD> 9645 9646<p> Resolve "user@ipaddress" as "user@[ipaddress]", instead of 9647rejecting the address as invalid. </p> 9648 9649<p> This feature is available in Postfix 2.3 and later. 9650 9651 9652</DD> 9653 9654<DT><b><a name="rewrite_service_name">rewrite_service_name</a> 9655(default: rewrite)</b></DT><DD> 9656 9657<p> 9658The name of the address rewriting service. This service rewrites 9659addresses to standard form and resolves them to a (delivery method, 9660next-hop host, recipient) triple. 9661</p> 9662 9663<p> 9664This feature is available in Postfix 2.0 and later. 9665</p> 9666 9667 9668</DD> 9669 9670<DT><b><a name="sample_directory">sample_directory</a> 9671(default: /etc/postfix)</b></DT><DD> 9672 9673<p> 9674The name of the directory with example Postfix configuration files. 9675Starting with Postfix 2.1, these files have been replaced with the 9676<a href="postconf.5.html">postconf(5)</a> manual page. 9677</p> 9678 9679 9680</DD> 9681 9682<DT><b><a name="send_cyrus_sasl_authzid">send_cyrus_sasl_authzid</a> 9683(default: no)</b></DT><DD> 9684 9685<p> When authenticating to a remote SMTP or LMTP server with the 9686default setting "no", send no SASL authoriZation ID (authzid); send 9687only the SASL authentiCation ID (authcid) plus the authcid's password. 9688</p> 9689 9690<p> The non-default setting "yes" enables the behavior of older 9691Postfix versions. These always send a SASL authzid that is equal 9692to the SASL authcid, but this causes interoperability problems 9693with some SMTP servers. </p> 9694 9695<p> This feature is available in Postfix 2.4.4 and later. </p> 9696 9697 9698</DD> 9699 9700<DT><b><a name="sender_based_routing">sender_based_routing</a> 9701(default: no)</b></DT><DD> 9702 9703<p> 9704This parameter should not be used. It was replaced by <a href="postconf.5.html#sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> 9705in Postfix version 2.3. 9706</p> 9707 9708 9709</DD> 9710 9711<DT><b><a name="sender_bcc_maps">sender_bcc_maps</a> 9712(default: empty)</b></DT><DD> 9713 9714<p> Optional BCC (blind carbon-copy) address lookup tables, indexed 9715by sender address. The BCC address (multiple results are not 9716supported) is added when mail enters from outside of Postfix. </p> 9717 9718<p> 9719Specify zero or more "type:name" lookup tables, separated by 9720whitespace or comma. Tables will be searched in the specified order 9721until a match is found. 9722</p> 9723 9724<p> 9725The table search order is as follows: 9726</p> 9727 9728<ul> 9729 9730<li> Look up the "user+extension@domain.tld" address including the 9731optional address extension. 9732 9733<li> Look up the "user@domain.tld" address without the optional 9734address extension. 9735 9736<li> Look up the "user+extension" address local part when the 9737sender 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> 9738or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>. 9739 9740<li> Look up the "user" address local part when the sender domain 9741equals $<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>. 9742 9743<li> Look up the "@domain.tld" part. 9744 9745</ul> 9746 9747<p> 9748Note: with Postfix 2.3 and later the BCC address is added as if it 9749was specified with NOTIFY=NONE. The sender will not be notified 9750when the BCC address is undeliverable, as long as all down-stream 9751software implements <a href="http://tools.ietf.org/html/rfc3461">RFC 3461</a>. 9752</p> 9753 9754<p> 9755Note: with Postfix 2.2 and earlier the sender will be notified 9756when the BCC address is undeliverable. 9757</p> 9758 9759<p> Note: automatic BCC recipients are produced only for new mail. 9760To avoid mailer loops, automatic BCC recipients are not generated 9761after Postfix forwards mail internally, or after Postfix generates 9762mail itself. </p> 9763 9764<p> 9765Example: 9766</p> 9767 9768<pre> 9769<a href="postconf.5.html#sender_bcc_maps">sender_bcc_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/sender_bcc 9770</pre> 9771 9772<p> 9773After a change, run "<b>postmap /etc/postfix/sender_bcc</b>". 9774</p> 9775 9776<p> 9777This feature is available in Postfix 2.1 and later. 9778</p> 9779 9780 9781</DD> 9782 9783<DT><b><a name="sender_canonical_classes">sender_canonical_classes</a> 9784(default: envelope_sender, header_sender)</b></DT><DD> 9785 9786<p> What addresses are subject to <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address 9787mapping. By default, <a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> address mapping is 9788applied to envelope sender addresses, and to header sender addresses. 9789</p> 9790 9791<p> Specify one or more of: envelope_sender, header_sender </p> 9792 9793<p> This feature is available in Postfix 2.2 and later. </p> 9794 9795 9796</DD> 9797 9798<DT><b><a name="sender_canonical_maps">sender_canonical_maps</a> 9799(default: empty)</b></DT><DD> 9800 9801<p> 9802Optional address mapping lookup tables for envelope and header 9803sender addresses. 9804The table format and lookups are documented in <a href="canonical.5.html">canonical(5)</a>. 9805</p> 9806 9807<p> 9808Example: you want to rewrite the SENDER address "user@ugly.domain" 9809to "user@pretty.domain", while still being able to send mail to 9810the RECIPIENT address "user@ugly.domain". 9811</p> 9812 9813<p> 9814Note: $<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>. 9815</p> 9816 9817<p> 9818Example: 9819</p> 9820 9821<pre> 9822<a href="postconf.5.html#sender_canonical_maps">sender_canonical_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/sender_canonical 9823</pre> 9824 9825 9826</DD> 9827 9828<DT><b><a name="sender_dependent_default_transport_maps">sender_dependent_default_transport_maps</a> 9829(default: empty)</b></DT><DD> 9830 9831<p> A sender-dependent override for the global <a href="postconf.5.html#default_transport">default_transport</a> 9832parameter setting. The tables are searched by the envelope sender 9833address and @domain. A lookup result of DUNNO terminates the search 9834without overriding the global <a href="postconf.5.html#default_transport">default_transport</a> parameter setting. 9835This information is overruled with the <a href="transport.5.html">transport(5)</a> table. </p> 9836 9837<p> 9838Specify zero or more "type:name" lookup tables, separated by 9839whitespace or comma. Tables will be searched in the specified order 9840until a match is found. 9841</p> 9842 9843<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 9844therefore the expected syntax is that of <a href="postconf.5.html#default_transport">default_transport</a>, not the 9845syntax of <a href="postconf.5.html#transport_maps">transport_maps</a>. Specifically, this does not support the 9846<a href="postconf.5.html#transport_maps">transport_maps</a> syntax for null transport, null nexthop, or null 9847email addresses. </p> 9848 9849<p> For safety reasons, this feature does not allow $number 9850substitutions in regular expression maps. </p> 9851 9852<p> This feature is available in Postfix 2.7 and later. </p> 9853 9854 9855</DD> 9856 9857<DT><b><a name="sender_dependent_relayhost_maps">sender_dependent_relayhost_maps</a> 9858(default: empty)</b></DT><DD> 9859 9860<p> A sender-dependent override for the global <a href="postconf.5.html#relayhost">relayhost</a> parameter 9861setting. The tables are searched by the envelope sender address and 9862@domain. A lookup result of DUNNO terminates the search without 9863overriding the global <a href="postconf.5.html#relayhost">relayhost</a> parameter setting (Postfix 2.6 and 9864later). This information is overruled with <a href="postconf.5.html#relay_transport">relay_transport</a>, 9865<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 9866the <a href="transport.5.html">transport(5)</a> table. </p> 9867 9868<p> 9869Specify zero or more "type:name" lookup tables, separated by 9870whitespace or comma. Tables will be searched in the specified order 9871until a match is found. 9872</p> 9873 9874<p> For safety reasons, this feature does not allow $number 9875substitutions in regular expression maps. </p> 9876 9877<p> 9878This feature is available in Postfix 2.3 and later. 9879</p> 9880 9881 9882</DD> 9883 9884<DT><b><a name="sendmail_fix_line_endings">sendmail_fix_line_endings</a> 9885(default: always)</b></DT><DD> 9886 9887<p> Controls how the Postfix sendmail command converts email message 9888line endings from <CR><LF> into UNIX format (<LF>). 9889</p> 9890 9891<dl> 9892 9893<dt> <b>always</b> </dt> <dd> Always convert message lines ending 9894in <CR><LF>. This setting is the default with Postfix 98952.9 and later. </dd> 9896 9897<dt> <b>strict</b> </dt> <dd> Convert message lines ending in 9898<CR><LF> only if the first input line ends in 9899<CR><LF>. This setting is backwards-compatible with 9900Postfix 2.8 and earlier. </dd> 9901 9902<dt> <b>never</b> </dt> <dd> Never convert message lines ending in 9903<CR><LF>. This setting exists for completeness only. 9904</dd> 9905 9906</dl> 9907 9908<p> This feature is available in Postfix 2.9 and later. </p> 9909 9910 9911</DD> 9912 9913<DT><b><a name="sendmail_path">sendmail_path</a> 9914(default: see "postconf -d" output)</b></DT><DD> 9915 9916<p> 9917A Sendmail compatibility feature that specifies the location of 9918the Postfix <a href="sendmail.1.html">sendmail(1)</a> command. This command can be used to 9919submit mail into the Postfix queue. 9920</p> 9921 9922 9923</DD> 9924 9925<DT><b><a name="service_throttle_time">service_throttle_time</a> 9926(default: 60s)</b></DT><DD> 9927 9928<p> 9929How long the Postfix <a href="master.8.html">master(8)</a> waits before forking a server that 9930appears to be malfunctioning. 9931</p> 9932 9933<p> 9934Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 9935The default time unit is s (seconds). 9936</p> 9937 9938 9939</DD> 9940 9941<DT><b><a name="setgid_group">setgid_group</a> 9942(default: postdrop)</b></DT><DD> 9943 9944<p> 9945The group ownership of set-gid Postfix commands and of group-writable 9946Postfix directories. When this parameter value is changed you need 9947to re-run "<b>postfix set-permissions</b>" (with Postfix version 2.0 and 9948earlier: "<b>/etc/postfix/post-install set-permissions</b>". 9949</p> 9950 9951 9952</DD> 9953 9954<DT><b><a name="shlib_directory">shlib_directory</a> 9955(default: see 'postconf -d' output)</b></DT><DD> 9956 9957<p> The location of Postfix dynamically-linked libraries 9958(libpostfix-*.so), and the default location of Postfix database 9959plugins (postfix-*.so) that have a relative pathname in the 9960dynamicmaps.cf file. The <a href="postconf.5.html#shlib_directory">shlib_directory</a> parameter defaults to 9961"no" when Postfix dynamically-linked libraries and database plugins 9962are disabled at compile time, otherwise it typically defaults to 9963/usr/lib/postfix or /usr/local/lib/postfix. </p> 9964 9965<p> Notes: </p> 9966 9967<ul> 9968 9969<li> <p> The directory specified with <a href="postconf.5.html#shlib_directory">shlib_directory</a> should contain 9970only Postfix-related files. Postfix dynamically-linked libraries 9971and database plugins should not be installed in a "public" system 9972directory such as /usr/lib or /usr/local/lib. Linking Postfix 9973dynamically-linked library files or database plugins into non-Postfix 9974programs is not supported. Postfix dynamically-linked libraries 9975and database plugins implement a Postfix-internal API that changes 9976without maintaining compatibility. </p> 9977 9978<li> <p> You can change the <a href="postconf.5.html#shlib_directory">shlib_directory</a> value after Postfix is 9979built. However, you may have to run ldconfig or equivalent to prevent 9980Postfix programs from failing because the libpostfix-*.so files are 9981not found. No ldconfig command is needed if you keep the libpostfix-*.so 9982files in the compiled-in default $<a href="postconf.5.html#shlib_directory">shlib_directory</a> location. </p> 9983 9984</ul> 9985 9986<p> This feature is available in Postfix 3.0 and later. </p> 9987 9988 9989</DD> 9990 9991<DT><b><a name="show_user_unknown_table_name">show_user_unknown_table_name</a> 9992(default: yes)</b></DT><DD> 9993 9994<p> 9995Display the name of the recipient table in the "User unknown" 9996responses. The extra detail makes trouble shooting easier but also 9997reveals information that is nobody elses business. 9998</p> 9999 10000<p> 10001This feature is available in Postfix 2.0 and later. 10002</p> 10003 10004 10005</DD> 10006 10007<DT><b><a name="showq_service_name">showq_service_name</a> 10008(default: showq)</b></DT><DD> 10009 10010<p> 10011The name of the <a href="showq.8.html">showq(8)</a> service. This service produces mail queue 10012status reports. 10013</p> 10014 10015<p> 10016This feature is available in Postfix 2.0 and later. 10017</p> 10018 10019 10020</DD> 10021 10022<DT><b><a name="smtp_address_preference">smtp_address_preference</a> 10023(default: any)</b></DT><DD> 10024 10025<p> The address type ("ipv6", "ipv4" or "any") that the Postfix 10026SMTP client will try first, when a destination has IPv6 and IPv4 10027addresses with equal MX preference. This feature has no effect 10028unless the <a href="postconf.5.html#inet_protocols">inet_protocols</a> setting enables both IPv4 and IPv6. </p> 10029 10030<p> Postfix SMTP client address preference has evolved. With Postfix 100312.8 the default is "ipv6"; earlier implementations are hard-coded 10032to prefer IPv6 over IPv4. </p> 10033 10034<p> Notes for mail delivery between sites that have both IPv4 and 10035IPv6 connectivity: </p> 10036 10037<ul> 10038 10039<li> <p> The setting "<a href="postconf.5.html#smtp_address_preference">smtp_address_preference</a> = ipv6" is unsafe. 10040It can fail to deliver mail when there is an outage that affects 10041IPv6, while the destination is still reachable over IPv4. </p> 10042 10043<li> <p> The setting "<a href="postconf.5.html#smtp_address_preference">smtp_address_preference</a> = any" is safe. With 10044this, mail will eventually be delivered even if there is an outage 10045that affects IPv6 or IPv4, as long as it does not affect both. </p> 10046 10047</ul> 10048 10049<p> This feature is available in Postfix 2.8 and later. </p> 10050 10051 10052</DD> 10053 10054<DT><b><a name="smtp_address_verify_target">smtp_address_verify_target</a> 10055(default: rcpt)</b></DT><DD> 10056 10057<p> In the context of email address verification, the SMTP protocol 10058stage that determines whether an email address is deliverable. 10059Specify one of "rcpt" or "data". The latter is needed with remote 10060SMTP servers that reject recipients after the DATA command. Use 10061<a href="postconf.5.html#transport_maps">transport_maps</a> to apply this feature selectively: </p> 10062 10063<blockquote> 10064<pre> 10065/etc/postfix/<a href="postconf.5.html">main.cf</a>: 10066 <a href="postconf.5.html#transport_maps">transport_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/transport 10067</pre> 10068</blockquote> 10069 10070<blockquote> 10071<pre> 10072/etc/postfix/transport: 10073 smtp-domain-that-verifies-after-data smtp-data-target: 10074 lmtp-domain-that-verifies-after-data lmtp-data-target: 10075</pre> 10076</blockquote> 10077 10078<blockquote> 10079<pre> 10080/etc/postfix/<a href="master.5.html">master.cf</a>: 10081 smtp-data-target unix - - n - - smtp 10082 -o <a href="postconf.5.html#smtp_address_verify_target">smtp_address_verify_target</a>=data 10083 lmtp-data-target unix - - n - - lmtp 10084 -o <a href="postconf.5.html#lmtp_address_verify_target">lmtp_address_verify_target</a>=data 10085</pre> 10086</blockquote> 10087 10088<p> Unselective use of the "data" target does no harm, but will 10089result in unnecessary "lost connection after DATA" events at remote 10090SMTP/LMTP servers. </p> 10091 10092<p> This feature is available in Postfix 3.0 and later. </p> 10093 10094 10095</DD> 10096 10097<DT><b><a name="smtp_always_send_ehlo">smtp_always_send_ehlo</a> 10098(default: yes)</b></DT><DD> 10099 10100<p> 10101Always send EHLO at the start of an SMTP session. 10102</p> 10103 10104<p> 10105With "<a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> = no", the Postfix SMTP client sends 10106EHLO only when 10107the word "ESMTP" appears in the server greeting banner (example: 10108220 spike.porcupine.org ESMTP Postfix). 10109</p> 10110 10111 10112</DD> 10113 10114<DT><b><a name="smtp_bind_address">smtp_bind_address</a> 10115(default: empty)</b></DT><DD> 10116 10117<p> 10118An optional numerical network address that the Postfix SMTP client 10119should bind to when making an IPv4 connection. 10120</p> 10121 10122<p> 10123This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or 10124it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client, 10125for example: 10126</p> 10127 10128<blockquote> 10129<pre> 10130/etc/postfix/<a href="master.5.html">master.cf</a>: 10131 smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>=11.22.33.44 10132</pre> 10133</blockquote> 10134 10135<p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv4 10136address, and that address is a non-loopback address, it is 10137automatically used as the <a href="postconf.5.html#smtp_bind_address">smtp_bind_address</a>. This supports virtual 10138IP hosting, but can be a problem on multi-homed firewalls. See the 10139<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p> 10140 10141<p> Note 2: address information may be enclosed inside <tt>[]</tt>, 10142but this form is not required here. </p> 10143 10144 10145</DD> 10146 10147<DT><b><a name="smtp_bind_address6">smtp_bind_address6</a> 10148(default: empty)</b></DT><DD> 10149 10150<p> 10151An optional numerical network address that the Postfix SMTP client 10152should bind to when making an IPv6 connection. 10153</p> 10154 10155<p> This feature is available in Postfix 2.2 and later. </p> 10156 10157<p> 10158This can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP clients, or 10159it can be specified in the <a href="master.5.html">master.cf</a> file for a specific client, 10160for example: 10161</p> 10162 10163<blockquote> 10164<pre> 10165/etc/postfix/<a href="master.5.html">master.cf</a>: 10166 smtp ... smtp -o <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>=1:2:3:4:5:6:7:8 10167</pre> 10168</blockquote> 10169 10170<p> Note 1: when <a href="postconf.5.html#inet_interfaces">inet_interfaces</a> specifies no more than one IPv6 10171address, and that address is a non-loopback address, it is 10172automatically used as the <a href="postconf.5.html#smtp_bind_address6">smtp_bind_address6</a>. This supports virtual 10173IP hosting, but can be a problem on multi-homed firewalls. See the 10174<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> documentation for more detail. </p> 10175 10176<p> Note 2: address information may be enclosed inside <tt>[]</tt>, 10177but this form is not recommended here. </p> 10178 10179 10180</DD> 10181 10182<DT><b><a name="smtp_body_checks">smtp_body_checks</a> 10183(default: empty)</b></DT><DD> 10184 10185<p> Restricted <a href="header_checks.5.html">body_checks(5)</a> tables for the Postfix SMTP client. 10186These tables are searched while mail is being delivered. Actions 10187that change the delivery time or destination are not available. 10188</p> 10189 10190<p> This feature is available in Postfix 2.5 and later. </p> 10191 10192 10193</DD> 10194 10195<DT><b><a name="smtp_cname_overrides_servername">smtp_cname_overrides_servername</a> 10196(default: version dependent)</b></DT><DD> 10197 10198<p> When the remote SMTP servername is a DNS CNAME, replace the 10199servername with the result from CNAME expansion for the purpose of 10200logging, SASL password lookup, TLS 10201policy decisions, or TLS certificate verification. The value "no" 10202hardens Postfix <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> hostname-based policies against 10203false hostname information in DNS CNAME records, and makes SASL 10204password file lookups more predictable. This is the default setting 10205as of Postfix 2.3. </p> 10206 10207<p> When DNS CNAME records are validated with secure DNS lookups 10208(<a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a> = dnssec), they are always allowed to 10209override the above servername (Postfix 2.11 and later). </p> 10210 10211<p> This feature is available in Postfix 2.2.9 and later. </p> 10212 10213 10214</DD> 10215 10216<DT><b><a name="smtp_connect_timeout">smtp_connect_timeout</a> 10217(default: 30s)</b></DT><DD> 10218 10219<p> 10220The Postfix SMTP client time limit for completing a TCP connection, or 10221zero (use the operating system built-in time limit). 10222</p> 10223 10224<p> 10225When no connection can be made within the deadline, the Postfix 10226SMTP client 10227tries the next address on the mail exchanger list. Specify 0 to 10228disable the time limit (i.e. use whatever timeout is implemented by 10229the operating system). 10230</p> 10231 10232<p> 10233Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10234The default time unit is s (seconds). 10235</p> 10236 10237 10238</DD> 10239 10240<DT><b><a name="smtp_connection_cache_destinations">smtp_connection_cache_destinations</a> 10241(default: empty)</b></DT><DD> 10242 10243<p> Permanently enable SMTP connection caching for the specified 10244destinations. With SMTP connection caching, a connection is not 10245closed immediately after completion of a mail transaction. Instead, 10246the connection is kept open for up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> 10247seconds. This allows connections to be reused for other deliveries, 10248and can improve mail delivery performance. </p> 10249 10250<p> Specify a comma or white space separated list of destinations 10251or pseudo-destinations: </p> 10252 10253<ul> 10254 10255<li> if mail is sent without a <a href="postconf.5.html#relayhost">relay host</a>: a domain name (the 10256right-hand side of an email address, without the [] around a numeric 10257IP address), 10258 10259<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 10260[] or non-default TCP port), as specified in <a href="postconf.5.html">main.cf</a> or in the 10261transport map, 10262 10263<li> if mail is sent via a UNIX-domain socket: a pathname (without 10264the unix: prefix), 10265 10266<li> a /file/name with domain names and/or <a href="postconf.5.html#relayhost">relay host</a> names as 10267defined above, 10268 10269<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 10270the left-hand side. The right-hand side result from "<a href="DATABASE_README.html">type:table</a>" 10271lookups is ignored. 10272 10273</ul> 10274 10275<p> This feature is available in Postfix 2.2 and later. </p> 10276 10277 10278</DD> 10279 10280<DT><b><a name="smtp_connection_cache_on_demand">smtp_connection_cache_on_demand</a> 10281(default: yes)</b></DT><DD> 10282 10283<p> Temporarily enable SMTP connection caching while a destination 10284has a high volume of mail in the <a href="QSHAPE_README.html#active_queue">active queue</a>. With SMTP connection 10285caching, a connection is not closed immediately after completion 10286of a mail transaction. Instead, the connection is kept open for 10287up to $<a href="postconf.5.html#smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> seconds. This allows 10288connections to be reused for other deliveries, and can improve mail 10289delivery performance. </p> 10290 10291<p> This feature is available in Postfix 2.2 and later. </p> 10292 10293 10294</DD> 10295 10296<DT><b><a name="smtp_connection_cache_time_limit">smtp_connection_cache_time_limit</a> 10297(default: 2s)</b></DT><DD> 10298 10299<p> When SMTP connection caching is enabled, the amount of time that 10300an unused SMTP client socket is kept open before it is closed. Do 10301not specify larger values without permission from the remote sites. 10302</p> 10303 10304<p> This feature is available in Postfix 2.2 and later. </p> 10305 10306 10307</DD> 10308 10309<DT><b><a name="smtp_connection_reuse_count_limit">smtp_connection_reuse_count_limit</a> 10310(default: 0)</b></DT><DD> 10311 10312<p> When SMTP connection caching is enabled, the number of times 10313that an SMTP session may be reused before it is closed, or zero (no 10314limit). With a reuse count limit of N, a connection is used up to 10315N+1 times. </p> 10316 10317<p> NOTE: This feature is unsafe. When a high-volume destination 10318has multiple inbound MTAs, then the slowest inbound MTA will attract 10319the most connections to that destination. This limitation does not 10320exist with the <a href="postconf.5.html#smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a> feature. </p> 10321 10322<p> This feature is available in Postfix 2.11. </p> 10323 10324 10325</DD> 10326 10327<DT><b><a name="smtp_connection_reuse_time_limit">smtp_connection_reuse_time_limit</a> 10328(default: 300s)</b></DT><DD> 10329 10330<p> The amount of time during which Postfix will use an SMTP 10331connection repeatedly. The timer starts when the connection is 10332initiated (i.e. it includes the connect, greeting and helo latency, 10333in addition to the latencies of subsequent mail delivery transactions). 10334</p> 10335 10336<p> This feature addresses a performance stability problem with 10337remote SMTP servers. This problem is not specific to Postfix: it 10338can happen when any MTA sends large amounts of SMTP email to a site 10339that has multiple MX hosts. </p> 10340 10341<p> The problem starts when one of a set of MX hosts becomes slower 10342than the rest. Even though SMTP clients connect to fast and slow 10343MX hosts with equal probability, the slow MX host ends up with more 10344simultaneous inbound connections than the faster MX hosts, because 10345the slow MX host needs more time to serve each client request. </p> 10346 10347<p> The slow MX host becomes a connection attractor. If one MX 10348host becomes N times slower than the rest, it dominates mail delivery 10349latency unless there are more than N fast MX hosts to counter the 10350effect. And if the number of MX hosts is smaller than N, the mail 10351delivery latency becomes effectively that of the slowest MX host 10352divided by the total number of MX hosts. </p> 10353 10354<p> The solution uses connection caching in a way that differs from 10355Postfix version 2.2. By limiting the amount of time during which a connection 10356can be used repeatedly (instead of limiting the number of deliveries 10357over that connection), Postfix not only restores fairness in the 10358distribution of simultaneous connections across a set of MX hosts, 10359it also favors deliveries over connections that perform well, which 10360is exactly what we want. </p> 10361 10362<p> The default reuse time limit, 300s, is comparable to the various 10363smtp transaction timeouts which are fair estimates of maximum excess 10364latency for a slow delivery. Note that hosts may accept thousands 10365of messages over a single connection within the default connection 10366reuse time limit. This number is much larger than the default Postfix 10367version 2.2 limit of 10 messages per cached connection. It may prove necessary 10368to lower the limit to avoid interoperability issues with MTAs that 10369exhibit bugs when many messages are delivered via a single connection. 10370A lower reuse time limit risks losing the benefit of connection 10371reuse when the average connection and mail delivery latency exceeds 10372the reuse time limit. </p> 10373 10374<p> This feature is available in Postfix 2.3 and later. </p> 10375 10376 10377</DD> 10378 10379<DT><b><a name="smtp_data_done_timeout">smtp_data_done_timeout</a> 10380(default: 600s)</b></DT><DD> 10381 10382<p> 10383The Postfix SMTP client time limit for sending the SMTP ".", and 10384for receiving the remote SMTP server response. 10385</p> 10386 10387<p> 10388When no response is received within the deadline, a warning is 10389logged that the mail may be delivered multiple times. 10390</p> 10391 10392<p> 10393Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10394The default time unit is s (seconds). 10395</p> 10396 10397 10398</DD> 10399 10400<DT><b><a name="smtp_data_init_timeout">smtp_data_init_timeout</a> 10401(default: 120s)</b></DT><DD> 10402 10403<p> 10404The Postfix SMTP client time limit for sending the SMTP DATA command, 10405and for receiving the remote SMTP server response. 10406</p> 10407 10408<p> 10409Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10410The default time unit is s (seconds). 10411</p> 10412 10413 10414</DD> 10415 10416<DT><b><a name="smtp_data_xfer_timeout">smtp_data_xfer_timeout</a> 10417(default: 180s)</b></DT><DD> 10418 10419<p> 10420The Postfix SMTP client time limit for sending the SMTP message content. 10421When the connection makes no progress for more than $<a href="postconf.5.html#smtp_data_xfer_timeout">smtp_data_xfer_timeout</a> 10422seconds the Postfix SMTP client terminates the transfer. 10423</p> 10424 10425<p> 10426Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10427The default time unit is s (seconds). 10428</p> 10429 10430 10431</DD> 10432 10433<DT><b><a name="smtp_defer_if_no_mx_address_found">smtp_defer_if_no_mx_address_found</a> 10434(default: no)</b></DT><DD> 10435 10436<p> 10437Defer mail delivery when no MX record resolves to an IP address. 10438</p> 10439 10440<p> 10441The default (no) is to return the mail as undeliverable. With older 10442Postfix versions the default was to keep trying to deliver the mail 10443until someone fixed the MX record or until the mail was too old. 10444</p> 10445 10446<p> 10447Note: the Postfix SMTP client always ignores MX records with equal 10448or worse preference 10449than the local MTA itself. 10450</p> 10451 10452<p> 10453This feature is available in Postfix 2.1 and later. 10454</p> 10455 10456 10457</DD> 10458 10459<DT><b><a name="smtp_delivery_status_filter">smtp_delivery_status_filter</a> 10460(default: $<a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a>)</b></DT><DD> 10461 10462<p> Optional filter for the <a href="smtp.8.html">smtp(8)</a> delivery agent to change the 10463delivery status code or explanatory text of successful or unsuccessful 10464deliveries. See <a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a> for details. </p> 10465 10466<p> NOTE: This feature modifies Postfix SMTP client error or non-error 10467messages that may or may not be derived from remote SMTP server 10468responses. In contrast, the <a href="postconf.5.html#smtp_reply_filter">smtp_reply_filter</a> feature modifies 10469remote SMTP server responses only. </p> 10470 10471 10472</DD> 10473 10474<DT><b><a name="smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> 10475(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD> 10476 10477<p> The maximal number of parallel deliveries to the same destination 10478via the smtp message delivery transport. This limit is enforced by 10479the queue manager. The message delivery transport name is the first 10480field in the entry in the <a href="master.5.html">master.cf</a> file. </p> 10481 10482 10483</DD> 10484 10485<DT><b><a name="smtp_destination_recipient_limit">smtp_destination_recipient_limit</a> 10486(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD> 10487 10488<p> The maximal number of recipients per message for the smtp 10489message delivery transport. This limit is enforced by the queue 10490manager. The message delivery transport name is the first field in 10491the entry in the <a href="master.5.html">master.cf</a> file. </p> 10492 10493<p> Setting this parameter to a value of 1 changes the meaning of 10494<a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> from concurrency per domain 10495into concurrency per recipient. </p> 10496 10497 10498</DD> 10499 10500<DT><b><a name="smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a> 10501(default: empty)</b></DT><DD> 10502 10503<p> Lookup tables, indexed by the remote SMTP server address, with 10504case insensitive lists of EHLO keywords (pipelining, starttls, auth, 10505etc.) that the Postfix SMTP client will ignore in the EHLO response from a 10506remote SMTP server. See <a href="postconf.5.html#smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a> for details. The 10507table is not indexed by hostname for consistency with 10508<a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a>. </p> 10509 10510<p> 10511Specify zero or more "type:name" lookup tables, separated by 10512whitespace or comma. Tables will be searched in the specified order 10513until a match is found. 10514</p> 10515 10516<p> This feature is available in Postfix 2.2 and later. </p> 10517 10518 10519</DD> 10520 10521<DT><b><a name="smtp_discard_ehlo_keywords">smtp_discard_ehlo_keywords</a> 10522(default: empty)</b></DT><DD> 10523 10524<p> A case insensitive list of EHLO keywords (pipelining, starttls, 10525auth, etc.) that the Postfix SMTP client will ignore in the EHLO 10526response from a remote SMTP server. </p> 10527 10528<p> This feature is available in Postfix 2.2 and later. </p> 10529 10530<p> Notes: </p> 10531 10532<ul> 10533 10534<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent 10535this action from being logged. </p> 10536 10537<li> <p> Use the <a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a> feature to 10538discard EHLO keywords selectively. </p> 10539 10540</ul> 10541 10542 10543</DD> 10544 10545<DT><b><a name="smtp_dns_reply_filter">smtp_dns_reply_filter</a> 10546(default: empty)</b></DT><DD> 10547 10548<p> Optional filter for Postfix SMTP client DNS lookup results. 10549Specify zero or more lookup tables. The lookup tables are searched 10550in the given order for a match with the DNS lookup result, converted 10551to the following form: </p> 10552 10553<pre> 10554 <i>name ttl class type preference value</i> 10555</pre> 10556 10557<p> The <i>class</i> field is always "IN", the <i>preference</i> 10558field exists only for MX records, the names of hosts, domains, etc. 10559end in ".", and those names are in ASCII form (xn--mumble form in 10560the case of UTF8 names). </p> 10561 10562<p> When a match is found, the table lookup result specifies an 10563action. By default, the table query and the action name are 10564case-insensitive. Currently, only the <b>IGNORE</b> action is 10565implemented. </p> 10566 10567<p> Notes: </p> 10568 10569<ul> 10570 10571<li> <p> Postfix DNS reply filters have no effect on implicit DNS 10572lookups through nsswitch.conf or equivalent mechanisms. </p> 10573 10574<li> <p> The Postfix SMTP/LMTP client uses <a href="postconf.5.html#smtp_dns_reply_filter">smtp_dns_reply_filter</a> 10575and <a href="postconf.5.html#lmtp_dns_reply_filter">lmtp_dns_reply_filter</a> only to discover a remote SMTP or LMTP 10576service (record types MX, A, AAAAA, and TLSA). These lookups are 10577also made to implement the features <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> and 10578<a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>. </p> 10579 10580<li> <p> The Postfix SMTP/LMTP client defers mail delivery when 10581a filter removes all lookup results from a successful query. </p> 10582 10583<li> <p> Postfix SMTP server uses <a href="postconf.5.html#smtpd_dns_reply_filter">smtpd_dns_reply_filter</a> only to 10584look up MX, A, AAAAA, and TXT records to implement the features 10585<a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a>, <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a>, 10586<a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a>, reject_rbl_*, and reject_rhsbl_*. 10587</p> 10588 10589<li> <p> The Postfix SMTP server logs a warning or defers mail 10590delivery when a filter removes all lookup results from a successful 10591query. </p> 10592 10593</ul> 10594 10595<p> Example: ignore Google AAAA records in Postfix SMTP client DNS 10596lookups, because Google sometimes hard-rejects mail from IPv6 clients 10597with valid PTR etc. records. </p> 10598 10599<pre> 10600/etc/postfix/<a href="postconf.5.html">main.cf</a>: 10601 <a href="postconf.5.html#smtp_dns_reply_filter">smtp_dns_reply_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/smtp_dns_reply_filter 10602</pre> 10603 10604<pre> 10605/etc/postfix/smtp_dns_reply_filter: 10606 # /domain ttl IN AAAA address/ action, all case-insensitive. 10607 # Note: the domain name ends in ".". 10608 /^\S+\.google\.com\.\s+\S+\s+\S+\s+AAAA\s+/ IGNORE 10609</pre> 10610 10611<p> This feature is available in Postfix 3.0 and later. </p> 10612 10613 10614</DD> 10615 10616<DT><b><a name="smtp_dns_resolver_options">smtp_dns_resolver_options</a> 10617(default: empty)</b></DT><DD> 10618 10619<p> DNS Resolver options for the Postfix SMTP client. Specify zero 10620or more of the following options, separated by comma or whitespace. 10621Option names are case-sensitive. Some options refer to domain names 10622that are specified in the file /etc/resolv.conf or equivalent. </p> 10623 10624<dl> 10625 10626<dt><b>res_defnames</b></dt> 10627 10628<dd> Append the current domain name to single-component names (those 10629that do not contain a "." character). This can produce incorrect 10630results, and is the hard-coded behavior prior to Postfix 2.8. </dd> 10631 10632<dt><b>res_dnsrch</b></dt> 10633 10634<dd> Search for host names in the current domain and in parent 10635domains. This can produce incorrect results and is therefore not 10636recommended. </dd> 10637 10638</dl> 10639 10640<p> This feature is available in Postfix 2.8 and later. </p> 10641 10642 10643</DD> 10644 10645<DT><b><a name="smtp_dns_support_level">smtp_dns_support_level</a> 10646(default: empty)</b></DT><DD> 10647 10648<p> Level of DNS support in the Postfix SMTP client. With 10649"<a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a>" left at its empty default value, the legacy 10650"<a href="postconf.5.html#disable_dns_lookups">disable_dns_lookups</a>" parameter controls whether DNS is enabled in 10651the Postfix SMTP client, otherwise the legacy parameter is ignored. 10652</p> 10653 10654<p> Specify one of the following: </p> 10655 10656<dl> 10657 10658<dt><b>disabled</b></dt> 10659 10660<dd>Disable DNS lookups. No MX lookups are performed and hostname 10661to address lookups are unconditionally "native". This setting is 10662not appropriate for hosts that deliver mail to the public Internet. 10663Some obsolete how-to documents recommend disabling DNS lookups in 10664some configurations with content_filters. This is no longer required 10665and strongly discouraged. </dd> 10666 10667<dt><b>enabled</b></dt> 10668 10669<dd>Enable DNS lookups. Nexthop destination domains not enclosed 10670in "[]" will be subject to MX lookups. If "dns" and "native" are 10671included in the "<a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a>" parameter value, DNS will be 10672queried first to resolve MX-host A records, followed by "native" 10673lookups if no answer is found in DNS. </dd> 10674 10675<dt><b>dnssec</b></dt> 10676 10677<dd>Enable <a href="https://tools.ietf.org/html/rfc4033">DNSSEC</a> 10678lookups. The "dnssec" setting differs from the "enabled" setting 10679above in the following ways: <ul> <li>Any MX lookups will set 10680RES_USE_DNSSEC and RES_USE_EDNS0 to request DNSSEC-validated 10681responses. If the MX response is DNSSEC-validated the corresponding 10682hostnames are considered validated. <li> The address lookups of 10683validated hostnames are also validated, (provided of course 10684"<a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a>" includes "dns", see below). <li>Temporary 10685failures in DNSSEC-enabled hostname-to-address resolution block any 10686"native" lookups. Additional "native" lookups only happen when 10687DNSSEC lookups hard-fail (NODATA or NXDOMAIN). </ul> </dd> 10688 10689</dl> 10690 10691<p> The Postfix SMTP client considers non-MX "[nexthop]" and 10692"[nexthop]:port" destinations equivalent to statically-validated 10693MX records of the form "nexthop. IN MX 0 nexthop." Therefore, 10694with "dnssec" support turned on, validated hostname-to-address 10695lookups apply to the nexthop domain of any "[nexthop]" or 10696"[nexthop]:port" destination. This is also true for LMTP "inet:host" 10697and "inet:host:port" destinations, as LMTP hostnames are never 10698subject to MX lookups. </p> 10699 10700<p>The "dnssec" setting is recommended only if you plan to use the 10701<a href="TLS_README.html#client_tls_dane">dane</a> or <a 10702href="TLS_README.html#client_tls_dane">dane-only</a> TLS security 10703level, otherwise enabling DNSSEC support in Postfix offers no 10704additional security. Postfix DNSSEC support relies on an upstream 10705recursive nameserver that validates DNSSEC signatures. Such a DNS 10706server will always filter out forged DNS responses, even when Postfix 10707itself is not configured to use DNSSEC. </p> 10708 10709<p> When using Postfix DANE support the "<a href="postconf.5.html#smtp_host_lookup">smtp_host_lookup</a>" parameter 10710should include "dns", as <a 10711href="https://tools.ietf.org/html/rfc6698">DANE</a> is not applicable 10712to hosts resolved via "native" lookups. </p> 10713 10714<p> As mentioned above, Postfix is not a validating <a 10715href="https://tools.ietf.org/html/rfc4035#section-4.9">stub 10716resolver</a>; it relies on the system's configured DNSSEC-validating 10717<a href="https://tools.ietf.org/html/rfc4035#section-3.2">recursive 10718nameserver</a> to perform all DNSSEC validation. Since this 10719nameserver's DNSSEC-validated responses will be fully trusted, it 10720is strongly recommended that the MTA host have a local DNSSEC-validating 10721recursive caching nameserver listening on a loopback address, and 10722be configured to use only this nameserver for all lookups. Otherwise, 10723Postfix may remain subject to man-in-the-middle attacks that forge 10724responses from the recursive nameserver</p> 10725 10726<p>DNSSEC support requires a version of Postfix compiled against a 10727reasonably-modern DNS resolver(3) library that implements the 10728RES_USE_DNSSEC and RES_USE_EDNS0 resolver options. </p> 10729 10730<p> This feature is available in Postfix 2.11 and later. </p> 10731 10732 10733</DD> 10734 10735<DT><b><a name="smtp_enforce_tls">smtp_enforce_tls</a> 10736(default: no)</b></DT><DD> 10737 10738<p> Enforcement mode: require that remote SMTP servers use TLS 10739encryption, and never send mail in the clear. This also requires 10740that the remote SMTP server hostname matches the information in 10741the remote server certificate, and that the remote SMTP server 10742certificate was issued by a CA that is trusted by the Postfix SMTP 10743client. If the certificate doesn't verify or the hostname doesn't 10744match, delivery is deferred and mail stays in the queue. </p> 10745 10746<p> The server hostname is matched against all names provided as 10747dNSNames in the SubjectAlternativeName. If no dNSNames are specified, 10748the CommonName is checked. The behavior may be changed with the 10749<a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> option. </p> 10750 10751<p> This option is useful only if you are definitely sure that you 10752will only connect to servers that support <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> _and_ that 10753provide valid server certificates. Typical use is for clients that 10754send all their email to a dedicated mailhub. </p> 10755 10756<p> This feature is available in Postfix 2.2 and later. With 10757Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p> 10758 10759 10760</DD> 10761 10762<DT><b><a name="smtp_fallback_relay">smtp_fallback_relay</a> 10763(default: $<a href="postconf.5.html#fallback_relay">fallback_relay</a>)</b></DT><DD> 10764 10765<p> 10766Optional list of relay hosts for SMTP destinations that can't be 10767found or that are unreachable. With Postfix 2.2 and earlier this 10768parameter is called <a href="postconf.5.html#fallback_relay">fallback_relay</a>. </p> 10769 10770<p> 10771By default, mail is returned to the sender when a destination is 10772not found, and delivery is deferred when a destination is unreachable. 10773</p> 10774 10775<p> With bulk email deliveries, it can be beneficial to run the 10776fallback relay MTA on the same host, so that it can reuse the sender 10777IP address. This speeds up deliveries that are delayed by IP-based 10778reputation systems (greylist, etc.). </p> 10779 10780<p> The fallback relays must be SMTP destinations. Specify a domain, 10781host, host:port, [host]:port, [address] or [address]:port; the form 10782[host] turns off MX lookups. If you specify multiple SMTP 10783destinations, Postfix will try them in the specified order. </p> 10784 10785<p> To prevent mailer loops between MX hosts and fall-back hosts, 10786Postfix version 2.2 and later will not use the fallback relays for 10787destinations that it is MX host for (assuming DNS lookup is turned on). 10788</p> 10789 10790 10791</DD> 10792 10793<DT><b><a name="smtp_generic_maps">smtp_generic_maps</a> 10794(default: empty)</b></DT><DD> 10795 10796<p> Optional lookup tables that perform address rewriting in the 10797Postfix SMTP client, typically to transform a locally valid address into 10798a globally valid address when sending mail across the Internet. 10799This is needed when the local machine does not have its own Internet 10800domain name, but uses something like <i>localdomain.local</i> 10801instead. </p> 10802 10803<p> 10804Specify zero or more "type:name" lookup tables, separated by 10805whitespace or comma. Tables will be searched in the specified order 10806until a match is found. 10807</p> 10808 10809<p> The table format and lookups are documented in <a href="generic.5.html">generic(5)</a>; 10810examples are shown in the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> and 10811<a href="STANDARD_CONFIGURATION_README.html">STANDARD_CONFIGURATION_README</a> documents. </p> 10812 10813<p> This feature is available in Postfix 2.2 and later. </p> 10814 10815 10816</DD> 10817 10818<DT><b><a name="smtp_header_checks">smtp_header_checks</a> 10819(default: empty)</b></DT><DD> 10820 10821<p> Restricted <a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP client. 10822These tables are searched while mail is being delivered. Actions 10823that change the delivery time or destination are not available. 10824</p> 10825 10826<p> This feature is available in Postfix 2.5 and later. </p> 10827 10828 10829</DD> 10830 10831<DT><b><a name="smtp_helo_name">smtp_helo_name</a> 10832(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 10833 10834<p> 10835The hostname to send in the SMTP HELO or EHLO command. 10836</p> 10837 10838<p> 10839The default value is the machine hostname. Specify a hostname or 10840[ip.add.re.ss]. 10841</p> 10842 10843<p> 10844This information can be specified in the <a href="postconf.5.html">main.cf</a> file for all SMTP 10845clients, or it can be specified in the <a href="master.5.html">master.cf</a> file for a specific 10846client, for example: 10847</p> 10848 10849<blockquote> 10850<pre> 10851/etc/postfix/<a href="master.5.html">master.cf</a>: 10852 mysmtp ... smtp -o <a href="postconf.5.html#smtp_helo_name">smtp_helo_name</a>=foo.bar.com 10853</pre> 10854</blockquote> 10855 10856<p> 10857This feature is available in Postfix 2.0 and later. 10858</p> 10859 10860 10861</DD> 10862 10863<DT><b><a name="smtp_helo_timeout">smtp_helo_timeout</a> 10864(default: 300s)</b></DT><DD> 10865 10866<p> 10867The Postfix SMTP client time limit for sending the HELO or EHLO command, 10868and for receiving the initial remote SMTP server response. 10869</p> 10870 10871<p> 10872Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10873The default time unit is s (seconds). 10874</p> 10875 10876 10877</DD> 10878 10879<DT><b><a name="smtp_host_lookup">smtp_host_lookup</a> 10880(default: dns)</b></DT><DD> 10881 10882<p> 10883What mechanisms the Postfix SMTP client uses to look up a host's 10884IP address. This parameter is ignored when DNS lookups are disabled 10885(see: <a href="postconf.5.html#disable_dns_lookups">disable_dns_lookups</a> and <a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a>). The "dns" 10886mechanism is always tried before "native" if both are listed. 10887</p> 10888 10889<p> 10890Specify one of the following: 10891</p> 10892 10893<dl> 10894 10895<dt><b>dns</b></dt> 10896 10897<dd>Hosts can be found in the DNS (preferred). </dd> 10898 10899<dt><b>native</b></dt> 10900 10901<dd>Use the native naming service only (nsswitch.conf, or equivalent 10902mechanism). </dd> 10903 10904<dt><b>dns, native</b></dt> 10905 10906<dd>Use the native service for hosts not found in the DNS. </dd> 10907 10908</dl> 10909 10910<p> 10911This feature is available in Postfix 2.1 and later. 10912</p> 10913 10914 10915</DD> 10916 10917<DT><b><a name="smtp_line_length_limit">smtp_line_length_limit</a> 10918(default: 998)</b></DT><DD> 10919 10920<p> 10921The maximal length of message header and body lines that Postfix 10922will send via SMTP. This limit does not include the <CR><LF> 10923at the end of each line. Longer lines are broken by inserting 10924"<CR><LF><SPACE>", to minimize the damage to MIME 10925formatted mail. 10926</p> 10927 10928<p> 10929The Postfix limit of 998 characters not including <CR><LF> 10930is consistent with the SMTP limit of 1000 characters including 10931<CR><LF>. The Postfix limit was 990 with Postfix 2.8 10932and earlier. 10933</p> 10934 10935 10936</DD> 10937 10938<DT><b><a name="smtp_mail_timeout">smtp_mail_timeout</a> 10939(default: 300s)</b></DT><DD> 10940 10941<p> 10942The Postfix SMTP client time limit for sending the MAIL FROM command, 10943and for receiving the remote SMTP server response. 10944</p> 10945 10946<p> 10947Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 10948The default time unit is s (seconds). 10949</p> 10950 10951 10952</DD> 10953 10954<DT><b><a name="smtp_mime_header_checks">smtp_mime_header_checks</a> 10955(default: empty)</b></DT><DD> 10956 10957<p> Restricted mime_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP 10958client. These tables are searched while mail is being delivered. 10959Actions that change the delivery time or destination are not 10960available. </p> 10961 10962<p> This feature is available in Postfix 2.5 and later. </p> 10963 10964 10965</DD> 10966 10967<DT><b><a name="smtp_mx_address_limit">smtp_mx_address_limit</a> 10968(default: 5)</b></DT><DD> 10969 10970<p> 10971The maximal number of MX (mail exchanger) IP addresses that can 10972result from Postfix SMTP client mail exchanger lookups, or zero (no 10973limit). Prior to 10974Postfix version 2.3, this limit was disabled by default. 10975</p> 10976 10977<p> 10978This feature is available in Postfix 2.1 and later. 10979</p> 10980 10981 10982</DD> 10983 10984<DT><b><a name="smtp_mx_session_limit">smtp_mx_session_limit</a> 10985(default: 2)</b></DT><DD> 10986 10987<p> The maximal number of SMTP sessions per delivery request before 10988the Postfix SMTP client 10989gives up or delivers to a fall-back <a href="postconf.5.html#relayhost">relay host</a>, or zero (no 10990limit). This restriction ignores sessions that fail to complete the 10991SMTP initial handshake (Postfix version 2.2 and earlier) or that fail to 10992complete the EHLO and TLS handshake (Postfix version 2.3 and later). </p> 10993 10994<p> This feature is available in Postfix 2.1 and later. </p> 10995 10996 10997</DD> 10998 10999<DT><b><a name="smtp_nested_header_checks">smtp_nested_header_checks</a> 11000(default: empty)</b></DT><DD> 11001 11002<p> Restricted nested_<a href="header_checks.5.html">header_checks(5)</a> tables for the Postfix SMTP 11003client. These tables are searched while mail is being delivered. 11004Actions that change the delivery time or destination are not 11005available. </p> 11006 11007<p> This feature is available in Postfix 2.5 and later. </p> 11008 11009 11010</DD> 11011 11012<DT><b><a name="smtp_never_send_ehlo">smtp_never_send_ehlo</a> 11013(default: no)</b></DT><DD> 11014 11015<p> Never send EHLO at the start of an SMTP session. See also the 11016<a href="postconf.5.html#smtp_always_send_ehlo">smtp_always_send_ehlo</a> parameter. </p> 11017 11018 11019</DD> 11020 11021<DT><b><a name="smtp_per_record_deadline">smtp_per_record_deadline</a> 11022(default: no)</b></DT><DD> 11023 11024<p> Change the behavior of the smtp_*_timeout time limits, from a 11025time limit per read or write system call, to a time limit to send 11026or receive a complete record (an SMTP command line, SMTP response 11027line, SMTP message content line, or TLS protocol message). This 11028limits the impact from hostile peers that trickle data one byte at 11029a time. </p> 11030 11031<p> Note: when per-record deadlines are enabled, a short timeout 11032may cause problems with TLS over very slow network connections. 11033The reasons are that a TLS protocol message can be up to 16 kbytes 11034long (with TLSv1), and that an entire TLS protocol message must be 11035sent or received within the per-record deadline. </p> 11036 11037<p> This feature is available in Postfix 2.9 and later. With older 11038Postfix releases, the behavior is as if this parameter is set to 11039"no". </p> 11040 11041 11042</DD> 11043 11044<DT><b><a name="smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a> 11045(default: 10s)</b></DT><DD> 11046 11047<p> 11048How long the Postfix SMTP client pauses before sending 11049".<CR><LF>" in order to work around the PIX firewall 11050"<CR><LF>.<CR><LF>" bug. 11051</p> 11052 11053<p> 11054Choosing a too short time makes this workaround ineffective when 11055sending large messages over slow network connections. 11056</p> 11057 11058 11059</DD> 11060 11061<DT><b><a name="smtp_pix_workaround_maps">smtp_pix_workaround_maps</a> 11062(default: empty)</b></DT><DD> 11063 11064<p> Lookup tables, indexed by the remote SMTP server address, with 11065per-destination workarounds for CISCO PIX firewall bugs. The table 11066is not indexed by hostname for consistency with 11067<a href="postconf.5.html#smtp_discard_ehlo_keyword_address_maps">smtp_discard_ehlo_keyword_address_maps</a>. </p> 11068 11069<p> 11070Specify zero or more "type:name" lookup tables, separated by 11071whitespace or comma. Tables will be searched in the specified order 11072until a match is found. 11073</p> 11074 11075<p> This feature is available in Postfix 2.4 and later. </p> 11076 11077 11078</DD> 11079 11080<DT><b><a name="smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a> 11081(default: 500s)</b></DT><DD> 11082 11083<p> How long a message must be queued before the Postfix SMTP client 11084turns on the PIX firewall "<CR><LF>.<CR><LF>" 11085bug workaround for delivery through firewalls with "smtp fixup" 11086mode turned on. </p> 11087 11088<p> 11089By default, the workaround is turned off for mail that is queued 11090for less than 500 seconds. In other words, the workaround is normally 11091turned off for the first delivery attempt. 11092</p> 11093 11094<p> 11095Specify 0 to enable the PIX firewall 11096"<CR><LF>.<CR><LF>" bug workaround upon the 11097first delivery attempt. 11098</p> 11099 11100 11101</DD> 11102 11103<DT><b><a name="smtp_pix_workarounds">smtp_pix_workarounds</a> 11104(default: disable_esmtp, delay_dotcrlf)</b></DT><DD> 11105 11106<p> A list that specifies zero or more workarounds for CISCO PIX 11107firewall bugs. These workarounds are implemented by the Postfix 11108SMTP client. Workaround names are separated by comma or space, and 11109are case insensitive. This parameter setting can be overruled with 11110per-destination <a href="postconf.5.html#smtp_pix_workaround_maps">smtp_pix_workaround_maps</a> settings. </p> 11111 11112<dl> 11113 11114<dt><b>delay_dotcrlf</b><dd> Insert a delay before sending 11115".<CR><LF>" after the end of the message content. The 11116delay is subject to the <a href="postconf.5.html#smtp_pix_workaround_delay_time">smtp_pix_workaround_delay_time</a> and 11117<a href="postconf.5.html#smtp_pix_workaround_threshold_time">smtp_pix_workaround_threshold_time</a> parameter settings. </dd> 11118 11119<dt><b>disable_esmtp</b><dd> Disable all extended SMTP commands: 11120send HELO instead of EHLO. </dd> 11121 11122</dl> 11123 11124<p> This feature is available in Postfix 2.4 and later. The default 11125settings are backwards compatible with earlier Postfix versions. 11126</p> 11127 11128 11129</DD> 11130 11131<DT><b><a name="smtp_quit_timeout">smtp_quit_timeout</a> 11132(default: 300s)</b></DT><DD> 11133 11134<p> 11135The Postfix SMTP client time limit for sending the QUIT command, 11136and for receiving the remote SMTP server response. 11137</p> 11138 11139<p> 11140Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 11141The default time unit is s (seconds). 11142</p> 11143 11144 11145</DD> 11146 11147<DT><b><a name="smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a> 11148(default: yes)</b></DT><DD> 11149 11150<p> 11151Quote addresses in Postfix SMTP client MAIL FROM and RCPT TO commands 11152as required 11153by <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. This includes putting quotes around an address localpart 11154that ends in ".". 11155</p> 11156 11157<p> 11158The default is to comply with <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. If you have to send mail to 11159a broken SMTP server, configure a special SMTP client in <a href="master.5.html">master.cf</a>: 11160</p> 11161 11162<blockquote> 11163<pre> 11164/etc/postfix/<a href="master.5.html">master.cf</a>: 11165 broken-smtp . . . smtp -o <a href="postconf.5.html#smtp_quote_rfc821_envelope">smtp_quote_rfc821_envelope</a>=no 11166</pre> 11167</blockquote> 11168 11169<p> 11170and route mail for the destination in question to the "broken-smtp" 11171message delivery with a <a href="transport.5.html">transport(5)</a> table. 11172</p> 11173 11174<p> 11175This feature is available in Postfix 2.1 and later. 11176</p> 11177 11178 11179</DD> 11180 11181<DT><b><a name="smtp_randomize_addresses">smtp_randomize_addresses</a> 11182(default: yes)</b></DT><DD> 11183 11184<p> 11185Randomize the order of equal-preference MX host addresses. This 11186is a performance feature of the Postfix SMTP client. 11187</p> 11188 11189 11190</DD> 11191 11192<DT><b><a name="smtp_rcpt_timeout">smtp_rcpt_timeout</a> 11193(default: 300s)</b></DT><DD> 11194 11195<p> 11196The Postfix SMTP client time limit for sending the SMTP RCPT TO 11197command, and for receiving the remote SMTP server response. 11198</p> 11199 11200<p> 11201Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 11202The default time unit is s (seconds). 11203</p> 11204 11205 11206</DD> 11207 11208<DT><b><a name="smtp_reply_filter">smtp_reply_filter</a> 11209(default: empty)</b></DT><DD> 11210 11211<p> A mechanism to transform replies from remote SMTP servers one 11212line at a time. This is a last-resort tool to work around server 11213replies that break interoperability with the Postfix SMTP client. 11214Other uses involve fault injection to test Postfix's handling of 11215invalid responses. </p> 11216 11217<p> Notes: </p> 11218 11219<ul> 11220 11221<li> <p> In the case of a multi-line reply, the Postfix SMTP client 11222uses the final reply line's numerical SMTP reply code and enhanced 11223status code. </p> 11224 11225<li> <p> The numerical SMTP reply code (XYZ) takes precedence over 11226the enhanced status code (X.Y.Z). When the enhanced status code 11227initial digit differs from the SMTP reply code initial digit, or 11228when no enhanced status code is present, the Postfix SMTP client 11229uses a generic enhanced status code (X.0.0) instead. </p> 11230 11231</ul> 11232 11233<p> Specify the name of a "<a href="DATABASE_README.html">type:table</a>" lookup table. The search 11234string is a single SMTP reply line as received from the remote SMTP 11235server, except that the trailing <CR><LF> are removed. 11236When the lookup succeeds, the result replaces the single SMTP reply 11237line. </p> 11238 11239<p> Examples: </p> 11240 11241<pre> 11242/etc/postfix/<a href="postconf.5.html">main.cf</a>: 11243 <a href="postconf.5.html#smtp_reply_filter">smtp_reply_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/reply_filter 11244</pre> 11245 11246<pre> 11247/etc/postfix/reply_filter: 11248 # Transform garbage into "250-filler..." so that it looks like 11249 # one line from a multi-line reply. It does not matter what we 11250 # substitute here as long it has the right syntax. The Postfix 11251 # SMTP client will use the final line's numerical SMTP reply 11252 # code and enhanced status code. 11253 !/^([2-5][0-9][0-9]($|[- ]))/ 250-filler for garbage 11254</pre> 11255 11256<p> This feature is available in Postfix 2.7. </p> 11257 11258 11259</DD> 11260 11261<DT><b><a name="smtp_rset_timeout">smtp_rset_timeout</a> 11262(default: 20s)</b></DT><DD> 11263 11264<p> The Postfix SMTP client time limit for sending the RSET command, 11265and for receiving the remote SMTP server response. The SMTP client 11266sends RSET in 11267order to finish a recipient address probe, or to verify that a 11268cached session is still usable. </p> 11269 11270<p> This feature is available in Postfix 2.1 and later. </p> 11271 11272 11273</DD> 11274 11275<DT><b><a name="smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> 11276(default: empty)</b></DT><DD> 11277 11278<p> An optional table to prevent repeated SASL authentication 11279failures with the same remote SMTP server hostname, username and 11280password. Each table (key, value) pair contains a server name, a 11281username and password, and the full server response. This information 11282is stored when a remote SMTP server rejects an authentication attempt 11283with a 535 reply code. As long as the <a href="postconf.5.html#smtp_sasl_password_maps">smtp_sasl_password_maps</a> 11284information does no change, and as long as the <a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> 11285information does not expire (see <a href="postconf.5.html#smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a>) the 11286Postfix SMTP client avoids SASL authentication attempts with the 11287same server, username and password, and instead bounces or defers 11288mail as controlled with the <a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> configuration 11289parameter. </p> 11290 11291<p> Use a per-destination delivery concurrency of 1 (for example, 11292"<a href="postconf.5.html#smtp_destination_concurrency_limit">smtp_destination_concurrency_limit</a> = 1", 11293"<a href="postconf.5.html#relay_destination_concurrency_limit">relay_destination_concurrency_limit</a> = 1", etc.), otherwise multiple 11294delivery agents may experience a login failure at the same time. 11295</p> 11296 11297<p> The table must be accessed via the proxywrite service, i.e. the 11298map name must start with "<a href="proxymap.8.html">proxy</a>:". The table should be stored under 11299the directory specified with the <a href="postconf.5.html#data_directory">data_directory</a> parameter. </p> 11300 11301<p> This feature uses cryptographic hashing to protect plain-text 11302passwords, and requires that Postfix is compiled with TLS support. 11303</p> 11304 11305<p> Example: </p> 11306 11307<pre> 11308<a href="postconf.5.html#smtp_sasl_auth_cache_name">smtp_sasl_auth_cache_name</a> = <a href="proxymap.8.html">proxy</a>:<a href="DATABASE_README.html#types">btree</a>:/var/db/postfix/sasl_auth_cache 11309</pre> 11310 11311<p> This feature is available in Postfix 2.5 and later. </p> 11312 11313 11314</DD> 11315 11316<DT><b><a name="smtp_sasl_auth_cache_time">smtp_sasl_auth_cache_time</a> 11317(default: 90d)</b></DT><DD> 11318 11319<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 11320is removed. </p> 11321 11322<p> This feature is available in Postfix 2.5 and later. </p> 11323 11324 11325</DD> 11326 11327<DT><b><a name="smtp_sasl_auth_enable">smtp_sasl_auth_enable</a> 11328(default: no)</b></DT><DD> 11329 11330<p> 11331Enable SASL authentication in the Postfix SMTP client. By default, 11332the Postfix SMTP client uses no authentication. 11333</p> 11334 11335<p> 11336Example: 11337</p> 11338 11339<pre> 11340<a href="postconf.5.html#smtp_sasl_auth_enable">smtp_sasl_auth_enable</a> = yes 11341</pre> 11342 11343 11344</DD> 11345 11346<DT><b><a name="smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> 11347(default: yes)</b></DT><DD> 11348 11349<p> When a remote SMTP server rejects a SASL authentication request 11350with a 535 reply code, defer mail delivery instead of returning 11351mail as undeliverable. The latter behavior was hard-coded prior to 11352Postfix version 2.5. </p> 11353 11354<p> Note: the setting "yes" overrides the global <a href="postconf.5.html#soft_bounce">soft_bounce</a> 11355parameter, but the setting "no" does not. </p> 11356 11357<p> Example: </p> 11358 11359<pre> 11360# Default as of Postfix 2.5 11361<a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = yes 11362# The old hard-coded default 11363<a href="postconf.5.html#smtp_sasl_auth_soft_bounce">smtp_sasl_auth_soft_bounce</a> = no 11364</pre> 11365 11366<p> This feature is available in Postfix 2.5 and later. </p> 11367 11368 11369</DD> 11370 11371<DT><b><a name="smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> 11372(default: empty)</b></DT><DD> 11373 11374<p> 11375If non-empty, a Postfix SMTP client filter for the remote SMTP 11376server's list of offered SASL mechanisms. Different client and 11377server implementations may support different mechanism lists; by 11378default, the Postfix SMTP client will use the intersection of the 11379two. <a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> specifies an optional third mechanism 11380list to intersect with. </p> 11381 11382<p> Specify mechanism names, "/file/name" patterns or "<a href="DATABASE_README.html">type:table</a>" 11383lookup tables. The right-hand side result from "<a href="DATABASE_README.html">type:table</a>" lookups 11384is ignored. Specify "!pattern" to exclude a mechanism name from the 11385list. The form "!/file/name" is supported only in Postfix version 113862.4 and later. </p> 11387 11388<p> This feature is available in Postfix 2.2 and later. </p> 11389 11390<p> 11391Examples: 11392</p> 11393 11394<pre> 11395<a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = plain, login 11396<a href="postconf.5.html#smtp_sasl_mechanism_filter">smtp_sasl_mechanism_filter</a> = /etc/postfix/smtp_mechs 11397<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 11398</pre> 11399 11400 11401</DD> 11402 11403<DT><b><a name="smtp_sasl_password_maps">smtp_sasl_password_maps</a> 11404(default: empty)</b></DT><DD> 11405 11406<p> 11407Optional Postfix SMTP client lookup tables with one username:password 11408entry per sender, remote hostname or next-hop domain. Per-sender 11409lookup is done only when sender-dependent authentication is enabled. 11410If no username:password entry is found, then the Postfix SMTP client 11411will not attempt to authenticate to the remote host. 11412</p> 11413 11414<p> 11415The Postfix SMTP client opens the lookup table before going to 11416chroot jail, so you can leave the password file in /etc/postfix. 11417</p> 11418 11419<p> 11420Specify zero or more "type:name" lookup tables, separated by 11421whitespace or comma. Tables will be searched in the specified order 11422until a match is found. 11423</p> 11424 11425 11426</DD> 11427 11428<DT><b><a name="smtp_sasl_path">smtp_sasl_path</a> 11429(default: empty)</b></DT><DD> 11430 11431<p> Implementation-specific information that the Postfix SMTP client 11432passes through to 11433the SASL plug-in implementation that is selected with 11434<b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>. Typically this specifies the name of a 11435configuration file or rendezvous point. </p> 11436 11437<p> This feature is available in Postfix 2.3 and later. </p> 11438 11439 11440</DD> 11441 11442<DT><b><a name="smtp_sasl_security_options">smtp_sasl_security_options</a> 11443(default: noplaintext, noanonymous)</b></DT><DD> 11444 11445<p> Postfix SMTP client SASL security options; as of Postfix 2.3 11446the list of available 11447features depends on the SASL client implementation that is selected 11448with <b><a href="postconf.5.html#smtp_sasl_type">smtp_sasl_type</a></b>. </p> 11449 11450<p> The following security features are defined for the <b>cyrus</b> 11451client SASL implementation: </p> 11452 11453<p> 11454Specify zero or more of the following: 11455</p> 11456 11457<dl> 11458 11459<dt><b>noplaintext</b></dt> 11460 11461<dd>Disallow methods that use plaintext passwords. </dd> 11462 11463<dt><b>noactive</b></dt> 11464 11465<dd>Disallow methods subject to active (non-dictionary) attack. 11466</dd> 11467 11468<dt><b>nodictionary</b></dt> 11469 11470<dd>Disallow methods subject to passive (dictionary) attack. </dd> 11471 11472<dt><b>noanonymous</b></dt> 11473 11474<dd>Disallow methods that allow anonymous authentication. </dd> 11475 11476<dt><b>mutual_auth</b></dt> 11477 11478<dd>Only allow methods that provide mutual authentication (not 11479available with SASL version 1). </dd> 11480 11481</dl> 11482 11483<p> 11484Example: 11485</p> 11486 11487<pre> 11488<a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a> = noplaintext 11489</pre> 11490 11491 11492</DD> 11493 11494<DT><b><a name="smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a> 11495(default: $<a href="postconf.5.html#smtp_sasl_security_options">smtp_sasl_security_options</a>)</b></DT><DD> 11496 11497<p> The SASL authentication security options that the Postfix SMTP 11498client uses for TLS encrypted SMTP sessions. </p> 11499 11500<p> This feature is available in Postfix 2.2 and later. </p> 11501 11502 11503</DD> 11504 11505<DT><b><a name="smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> 11506(default: $<a href="postconf.5.html#smtp_sasl_tls_security_options">smtp_sasl_tls_security_options</a>)</b></DT><DD> 11507 11508<p> The SASL authentication security options that the Postfix SMTP 11509client uses for TLS encrypted SMTP sessions with a verified server 11510certificate. </p> 11511 11512<p> When mail is sent to the public MX host for the recipient's 11513domain, server certificates are by default optional, and delivery 11514proceeds even if certificate verification fails. For delivery via 11515a submission service that requires SASL authentication, it may be 11516appropriate to send plaintext passwords only when the connection 11517to the server is strongly encrypted <b>and</b> the server identity 11518is verified. </p> 11519 11520<p> The <a href="postconf.5.html#smtp_sasl_tls_verified_security_options">smtp_sasl_tls_verified_security_options</a> parameter makes it 11521possible to only enable plaintext mechanisms when a secure connection 11522to the server is available. Submission servers subject to this 11523policy must either have verifiable certificates or offer suitable 11524non-plaintext SASL mechanisms. </p> 11525 11526<p> This feature is available in Postfix 2.6 and later. </p> 11527 11528 11529</DD> 11530 11531<DT><b><a name="smtp_sasl_type">smtp_sasl_type</a> 11532(default: cyrus)</b></DT><DD> 11533 11534<p> The SASL plug-in type that the Postfix SMTP client should use 11535for authentication. The available types are listed with the 11536"<b>postconf -A</b>" command. </p> 11537 11538<p> This feature is available in Postfix 2.3 and later. </p> 11539 11540 11541</DD> 11542 11543<DT><b><a name="smtp_send_dummy_mail_auth">smtp_send_dummy_mail_auth</a> 11544(default: no)</b></DT><DD> 11545 11546<p> Whether or not to append the "AUTH=<>" option to the MAIL 11547FROM command in SASL-authenticated SMTP sessions. The default is 11548not to send this, to avoid problems with broken remote SMTP servers. 11549Before Postfix 2.9 the behavior is as if "<a href="postconf.5.html#smtp_send_dummy_mail_auth">smtp_send_dummy_mail_auth</a> 11550= yes". 11551 11552<p> This feature is available in Postfix 2.9 and later. </p> 11553 11554 11555</DD> 11556 11557<DT><b><a name="smtp_send_xforward_command">smtp_send_xforward_command</a> 11558(default: no)</b></DT><DD> 11559 11560<p> 11561Send the non-standard XFORWARD command when the Postfix SMTP server 11562EHLO response announces XFORWARD support. 11563</p> 11564 11565<p> 11566This allows a Postfix SMTP delivery agent, used for injecting mail 11567into 11568a content filter, to forward the name, address, protocol and HELO 11569name of the original client to the content filter and downstream 11570queuing SMTP server. This can produce more useful logging than 11571localhost[127.0.0.1] etc. 11572</p> 11573 11574<p> 11575This feature is available in Postfix 2.1 and later. 11576</p> 11577 11578 11579</DD> 11580 11581<DT><b><a name="smtp_sender_dependent_authentication">smtp_sender_dependent_authentication</a> 11582(default: no)</b></DT><DD> 11583 11584<p> 11585Enable sender-dependent authentication in the Postfix SMTP client; this is 11586available only with SASL authentication, and disables SMTP connection 11587caching to ensure that mail from different senders will use the 11588appropriate credentials. </p> 11589 11590<p> 11591This feature is available in Postfix 2.3 and later. 11592</p> 11593 11594 11595</DD> 11596 11597<DT><b><a name="smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a> 11598(default: yes)</b></DT><DD> 11599 11600<p> 11601Skip SMTP servers that greet with a 4XX status code (go away, try 11602again later). 11603</p> 11604 11605<p> 11606By default, the Postfix SMTP client moves on the next mail exchanger. 11607Specify 11608"<a href="postconf.5.html#smtp_skip_4xx_greeting">smtp_skip_4xx_greeting</a> = no" if Postfix should defer delivery 11609immediately. 11610</p> 11611 11612<p> This feature is available in Postfix 2.0 and earlier. 11613Later Postfix versions always skip remote SMTP servers that greet 11614with a 116154XX status code. </p> 11616 11617 11618</DD> 11619 11620<DT><b><a name="smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a> 11621(default: yes)</b></DT><DD> 11622 11623<p> 11624Skip remote SMTP servers that greet with a 5XX status code. 11625</p> 11626 11627<p> By default, the Postfix SMTP client moves on the next mail 11628exchanger. Specify "<a href="postconf.5.html#smtp_skip_5xx_greeting">smtp_skip_5xx_greeting</a> = no" if Postfix should 11629bounce the mail immediately. Caution: the latter behavior appears 11630to contradict <a href="http://tools.ietf.org/html/rfc2821">RFC 2821</a>. </p> 11631 11632 11633</DD> 11634 11635<DT><b><a name="smtp_skip_quit_response">smtp_skip_quit_response</a> 11636(default: yes)</b></DT><DD> 11637 11638<p> 11639Do not wait for the response to the SMTP QUIT command. 11640</p> 11641 11642 11643</DD> 11644 11645<DT><b><a name="smtp_starttls_timeout">smtp_starttls_timeout</a> 11646(default: 300s)</b></DT><DD> 11647 11648<p> Time limit for Postfix SMTP client write and read operations 11649during TLS startup and shutdown handshake procedures. </p> 11650 11651<p> This feature is available in Postfix 2.2 and later. </p> 11652 11653 11654</DD> 11655 11656<DT><b><a name="smtp_tls_CAfile">smtp_tls_CAfile</a> 11657(default: empty)</b></DT><DD> 11658 11659<p> A file containing CA certificates of root CAs trusted to sign 11660either remote SMTP server certificates or intermediate CA certificates. 11661These are loaded into memory before the <a href="smtp.8.html">smtp(8)</a> client enters the 11662chroot jail. If the number of trusted roots is large, consider using 11663<a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> instead, but note that the latter directory must be 11664present in the chroot jail if the <a href="smtp.8.html">smtp(8)</a> client is chrooted. This 11665file may also be used to augment the client certificate trust chain, 11666but it is best to include all the required certificates directly in 11667$<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p> 11668 11669<p> Specify "<a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a> = /path/to/system_CA_file" to use 11670ONLY the system-supplied default Certification Authority certificates. 11671</p> 11672 11673<p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from 11674appending the system-supplied default CAs and trusting third-party 11675certificates. </p> 11676 11677<p> Example: </p> 11678 11679<pre> 11680<a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a> = /etc/postfix/CAcert.pem 11681</pre> 11682 11683<p> This feature is available in Postfix 2.2 and later. </p> 11684 11685 11686</DD> 11687 11688<DT><b><a name="smtp_tls_CApath">smtp_tls_CApath</a> 11689(default: empty)</b></DT><DD> 11690 11691<p> Directory with PEM format Certification Authority certificates 11692that the Postfix SMTP client uses to verify a remote SMTP server 11693certificate. Don't forget to create the necessary "hash" links 11694with, for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs". 11695</p> 11696 11697<p> To use this option in chroot mode, this directory (or a copy) 11698must be inside the chroot jail. </p> 11699 11700<p> Specify "<a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> = /path/to/system_CA_directory" to 11701use ONLY the system-supplied default Certification Authority certificates. 11702</p> 11703 11704<p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from 11705appending the system-supplied default CAs and trusting third-party 11706certificates. </p> 11707 11708<p> Example: </p> 11709 11710<pre> 11711<a href="postconf.5.html#smtp_tls_CApath">smtp_tls_CApath</a> = /etc/postfix/certs 11712</pre> 11713 11714<p> This feature is available in Postfix 2.2 and later. </p> 11715 11716 11717</DD> 11718 11719<DT><b><a name="smtp_tls_block_early_mail_reply">smtp_tls_block_early_mail_reply</a> 11720(default: no)</b></DT><DD> 11721 11722<p> Try to detect a mail hijacking attack based on a TLS protocol 11723vulnerability (CVE-2009-3555), where an attacker prepends malicious 11724HELO, MAIL, RCPT, DATA commands to a Postfix SMTP client TLS session. 11725The attack would succeed with non-Postfix SMTP servers that reply 11726to the malicious HELO, MAIL, RCPT, DATA commands after negotiating 11727the Postfix SMTP client TLS session. </p> 11728 11729<p> This feature is available in Postfix 2.7. </p> 11730 11731 11732</DD> 11733 11734<DT><b><a name="smtp_tls_cert_file">smtp_tls_cert_file</a> 11735(default: empty)</b></DT><DD> 11736 11737<p> File with the Postfix SMTP client RSA certificate in PEM format. 11738This file may also contain the Postfix SMTP client private RSA key, 11739and these may be the same as the Postfix SMTP server RSA certificate and key 11740file. </p> 11741 11742<p> Do not configure client certificates unless you <b>must</b> present 11743client TLS certificates to one or more servers. Client certificates are 11744not usually needed, and can cause problems in configurations that work 11745well without them. The recommended setting is to let the defaults stand: </p> 11746 11747<blockquote> 11748<pre> 11749<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> = 11750<a href="postconf.5.html#smtp_tls_key_file">smtp_tls_key_file</a> = 11751<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = 11752<a href="postconf.5.html#smtp_tls_dkey_file">smtp_tls_dkey_file</a> = 11753<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> = 11754<a href="postconf.5.html#smtp_tls_eckey_file">smtp_tls_eckey_file</a> = 11755</pre> 11756</blockquote> 11757 11758<p> The best way to use the default settings is to comment out the above 11759parameters in <a href="postconf.5.html">main.cf</a> if present. </p> 11760 11761<p> To enable remote SMTP servers to verify the Postfix SMTP client 11762certificate, the issuing CA certificates must be made available to the 11763server. You should include the required certificates in the client 11764certificate file, the client certificate first, then the issuing 11765CA(s) (bottom-up order). </p> 11766 11767<p> Example: the certificate for "client.example.com" was issued by 11768"intermediate CA" which itself has a certificate issued by "root CA". 11769Create the client.pem file with "cat client_cert.pem intermediate_CA.pem 11770root_CA.pem > client.pem". </p> 11771 11772<p> If you also want to verify remote SMTP server certificates issued by 11773these CAs, you can add the CA certificates to the <a href="postconf.5.html#smtp_tls_CAfile">smtp_tls_CAfile</a>, in 11774which case it is not necessary to have them in the <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>, 11775<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> 11776 11777<p> A certificate supplied here must be usable as an SSL client certificate 11778and hence pass the "openssl verify -purpose sslclient ..." test. </p> 11779 11780<p> Example: </p> 11781 11782<pre> 11783<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> = /etc/postfix/client.pem 11784</pre> 11785 11786<p> This feature is available in Postfix 2.2 and later. </p> 11787 11788 11789</DD> 11790 11791<DT><b><a name="smtp_tls_cipherlist">smtp_tls_cipherlist</a> 11792(default: empty)</b></DT><DD> 11793 11794<p> Obsolete Postfix < 2.3 control for the Postfix SMTP client TLS 11795cipher list. As this feature applies to all TLS security levels, it is easy 11796to create interoperability problems by choosing a non-default cipher 11797list. Do not use a non-default TLS cipher list on hosts that deliver email 11798to the public Internet: you will be unable to send email to servers that 11799only support the ciphers you exclude. Using a restricted cipher list 11800may be more appropriate for an internal MTA, where one can exert some 11801control over the TLS software and settings of the peer servers. </p> 11802 11803<p> <b>Note:</b> do not use "" quotes around the parameter value. </p> 11804 11805<p> This feature is available in Postfix version 2.2. It is not used with 11806Postfix 2.3 and later; use <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> instead. </p> 11807 11808 11809</DD> 11810 11811<DT><b><a name="smtp_tls_ciphers">smtp_tls_ciphers</a> 11812(default: medium)</b></DT><DD> 11813 11814<p> The minimum TLS cipher grade that the Postfix SMTP client 11815will use with opportunistic TLS encryption. Cipher types listed in 11816<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> are excluded from the base definition of 11817the selected cipher grade. The default value is "medium" for 11818Postfix releases after the middle of 2015, "export" for older 11819releases. </p> 11820 11821<p> When TLS is mandatory the cipher grade is chosen via the 11822<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> configuration parameter, see there for syntax 11823details. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure 11824ciphers on a per-destination basis. </p> 11825 11826<p> This feature is available in Postfix 2.6 and later. With earlier Postfix 11827releases only the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> parameter is implemented, 11828and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p> 11829 11830 11831</DD> 11832 11833<DT><b><a name="smtp_tls_dane_insecure_mx_policy">smtp_tls_dane_insecure_mx_policy</a> 11834(default: dane)</b></DT><DD> 11835 11836<p> The TLS policy for MX hosts with "secure" TLSA records when the 11837nexthop destination security level is <b>dane</b>, but the MX 11838record was found via an "insecure" MX lookup. The choices are: 11839</p> 11840 11841<dl> 11842<dt><b>may</b></dt> 11843<dd> The TLSA records will be ignored and TLS will be optional. If 11844the MX host does not appear to support STARTTLS, or the STARTTLS 11845handshake fails, mail may be sent in the clear. </dd> 11846<dt><b>encrypt</b></dt> 11847<dd> The TLSA records will signal a requirement to use TLS. While 11848TLS encryption will be required, authentication will not be performed. 11849</dd> 11850<dt><b>dane</b> (default)</dt> 11851<dd>The TLSA records will be used just as with "secure" MX records. 11852TLS encryption will be required, and, if at least one of the TLSA 11853records is "usable", authentication will be required. When 11854authentication succeeds, it will be logged only as "Trusted", not 11855"Verified", because the MX host name could have been forged. </dd> 11856</dl> 11857 11858<p> Though with "insecure" MX records an active attacker can 11859compromise SMTP transport security by returning forged MX records, 11860such attacks are "tamper-evident" since any forged MX hostnames 11861will be recorded in the mail logs. Attackers who place a high value 11862staying hidden may be deterred from forging MX records. </p> 11863 11864<p> 11865This feature is available in Postfix 3.1 and later. The <b>may</b> 11866policy is backwards-compatible with earlier Postfix versions. 11867</p> 11868 11869 11870</DD> 11871 11872<DT><b><a name="smtp_tls_dcert_file">smtp_tls_dcert_file</a> 11873(default: empty)</b></DT><DD> 11874 11875<p> File with the Postfix SMTP client DSA certificate in PEM format. 11876This file may also contain the Postfix SMTP client private DSA key. </p> 11877 11878<p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details. 11879</p> 11880 11881<p> Example: </p> 11882 11883<pre> 11884<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a> = /etc/postfix/client-dsa.pem 11885</pre> 11886 11887<p> This feature is available in Postfix 2.2 and later. </p> 11888 11889 11890</DD> 11891 11892<DT><b><a name="smtp_tls_dkey_file">smtp_tls_dkey_file</a> 11893(default: $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>)</b></DT><DD> 11894 11895<p> File with the Postfix SMTP client DSA private key in PEM format. 11896This file may be combined with the Postfix SMTP client DSA certificate 11897file specified with $<a href="postconf.5.html#smtp_tls_dcert_file">smtp_tls_dcert_file</a>. </p> 11898 11899<p> The private key must be accessible without a pass-phrase, i.e. it 11900must not be encrypted. File permissions should grant read-only 11901access to the system superuser account ("root"), and no access 11902to anyone else. </p> 11903 11904<p> This feature is available in Postfix 2.2 and later. </p> 11905 11906 11907</DD> 11908 11909<DT><b><a name="smtp_tls_eccert_file">smtp_tls_eccert_file</a> 11910(default: empty)</b></DT><DD> 11911 11912<p> File with the Postfix SMTP client ECDSA certificate in PEM format. 11913This file may also contain the Postfix SMTP client ECDSA private key. </p> 11914 11915<p> See the discussion under <a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a> for more details. 11916</p> 11917 11918<p> Example: </p> 11919 11920<pre> 11921<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a> = /etc/postfix/ecdsa-ccert.pem 11922</pre> 11923 11924<p> This feature is available in Postfix 2.6 and later, when Postfix is 11925compiled and linked with OpenSSL 1.0.0 or later. </p> 11926 11927 11928</DD> 11929 11930<DT><b><a name="smtp_tls_eckey_file">smtp_tls_eckey_file</a> 11931(default: $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>)</b></DT><DD> 11932 11933<p> File with the Postfix SMTP client ECDSA private key in PEM format. 11934This file may be combined with the Postfix SMTP client ECDSA 11935certificate file specified with $<a href="postconf.5.html#smtp_tls_eccert_file">smtp_tls_eccert_file</a>. </p> 11936 11937<p> The private key must be accessible without a pass-phrase, i.e. it 11938must not be encrypted. File permissions should grant read-only 11939access to the system superuser account ("root"), and no access 11940to anyone else. </p> 11941 11942<p> This feature is available in Postfix 2.6 and later, when Postfix is 11943compiled and linked with OpenSSL 1.0.0 or later. </p> 11944 11945 11946</DD> 11947 11948<DT><b><a name="smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> 11949(default: yes)</b></DT><DD> 11950 11951<p> With mandatory TLS encryption, require that the remote SMTP 11952server hostname matches the information in the remote SMTP server 11953certificate. As of <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> the requirements for hostname checking 11954for MTA clients are not specified. </p> 11955 11956<p> This option can be set to "no" to disable strict peer name 11957checking. This setting has no effect on sessions that are controlled 11958via the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table. </p> 11959 11960<p> Disabling the hostname verification can make sense in closed 11961environment where special CAs are created. If not used carefully, 11962this option opens the danger of a "man-in-the-middle" attack (the 11963CommonName of this attacker will be logged). </p> 11964 11965<p> This feature is available in Postfix 2.2 and later. With 11966Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p> 11967 11968 11969</DD> 11970 11971<DT><b><a name="smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> 11972(default: empty)</b></DT><DD> 11973 11974<p> List of ciphers or cipher types to exclude from the Postfix 11975SMTP client cipher 11976list at all TLS security levels. This is not an OpenSSL cipherlist, it is 11977a simple list separated by whitespace and/or commas. The elements are a 11978single cipher, or one or more "+" separated cipher properties, in which 11979case only ciphers matching <b>all</b> the properties are excluded. </p> 11980 11981<p> Examples (some of these will cause problems): </p> 11982 11983<blockquote> 11984<pre> 11985<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = aNULL 11986<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = MD5, DES 11987<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = DES+MD5 11988<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5 11989<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = kEDH+aRSA 11990</pre> 11991</blockquote> 11992 11993<p> The first setting, disables anonymous ciphers. The next setting 11994disables ciphers that use the MD5 digest algorithm or the (single) DES 11995encryption algorithm. The next setting disables ciphers that use MD5 and 11996DES together. The next setting disables the two ciphers "AES256-SHA" 11997and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH" 11998key exchange with RSA authentication. </p> 11999 12000<p> This feature is available in Postfix 2.3 and later. </p> 12001 12002 12003</DD> 12004 12005<DT><b><a name="smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> 12006(default: empty)</b></DT><DD> 12007 12008<p> List of acceptable remote SMTP server certificate fingerprints for 12009the "fingerprint" TLS security level (<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> = 12010fingerprint). At this security level, Certification Authorities are not 12011used, and certificate expiration times are ignored. Instead, server 12012certificates are verified directly via their certificate fingerprint 12013or public key fingerprint (Postfix 2.9 and later). The fingerprint 12014is a message digest of the server certificate (or public key). The 12015digest algorithm is selected via the <b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> 12016parameter. </p> 12017 12018<p> When an <b><a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a></b> table entry specifies the 12019"fingerprint" security level, any "match" attributes in that entry specify 12020the list of valid fingerprints for the corresponding destination. Multiple 12021fingerprints can be combined with a "|" delimiter in a single match 12022attribute, or multiple match attributes can be employed. </p> 12023 12024<p> Example: Certificate fingerprint verification with internal mailhub. 12025Two matching fingerprints are listed. The <a href="postconf.5.html#relayhost">relayhost</a> may be multiple 12026physical hosts behind a load-balancer, each with its own private/public 12027key and self-signed certificate. Alternatively, a single <a href="postconf.5.html#relayhost">relayhost</a> may 12028be in the process of switching from one set of private/public keys to 12029another, and both keys are trusted just prior to the transition. </p> 12030 12031<blockquote> 12032<pre> 12033<a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com] 12034<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint 12035<a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5 12036<a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> = 12037 3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1 12038 EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35 12039</pre> 12040</blockquote> 12041 12042<p> Example: Certificate fingerprint verification with selected destinations. 12043As in the example above, we show two matching fingerprints: </p> 12044 12045<blockquote> 12046<pre> 12047/etc/postfix/<a href="postconf.5.html">main.cf</a>: 12048 <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/tls_policy 12049 <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5 12050</pre> 12051</blockquote> 12052 12053<blockquote> 12054<pre> 12055/etc/postfix/tls_policy: 12056 example.com fingerprint 12057 match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1 12058 match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35 12059</pre> 12060</blockquote> 12061 12062<p> This feature is available in Postfix 2.5 and later. </p> 12063 12064 12065</DD> 12066 12067<DT><b><a name="smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> 12068(default: md5)</b></DT><DD> 12069 12070<p> The message digest algorithm used to construct remote SMTP server 12071certificate fingerprints. At the "fingerprint" TLS security level 12072(<b><a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a></b> = fingerprint), the server certificate is 12073verified by directly matching its certificate fingerprint or its public 12074key fingerprint (Postfix 2.9 and later). The fingerprint is the 12075message digest of the server certificate (or its public key) 12076using the selected 12077algorithm. With a digest algorithm resistant to "second pre-image" 12078attacks, it is not feasible to create a new public key and a matching 12079certificate (or public/private key-pair) that has the same fingerprint. </p> 12080 12081<p> The default algorithm is <b>md5</b>; this is consistent with 12082the backwards compatible setting of the digest used to verify client 12083certificates in the SMTP server. </p> 12084 12085<p> The best practice algorithm is now <b>sha1</b>. Recent advances in hash 12086function cryptanalysis have led to md5 being deprecated in favor of sha1. 12087However, as long as there are no known "second pre-image" attacks 12088against md5, its use in this context can still be considered safe. 12089</p> 12090 12091<p> While additional digest algorithms are often available with OpenSSL's 12092libcrypto, only those used by libssl in SSL cipher suites are available to 12093Postfix. For now this means just md5 or sha1. </p> 12094 12095<p> To find the fingerprint of a specific certificate file, with a 12096specific digest algorithm, run: 12097</p> 12098 12099<blockquote> 12100<pre> 12101$ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem 12102</pre> 12103</blockquote> 12104 12105<p> The text to the right of "=" sign is the desired fingerprint. 12106For example: </p> 12107 12108<blockquote> 12109<pre> 12110$ openssl x509 -noout -fingerprint -sha1 -in cert.pem 12111SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A 12112</pre> 12113</blockquote> 12114 12115<p> To extract the public key fingerprint from an X.509 certificate, 12116you need to extract the public key from the certificate and compute 12117the appropriate digest of its DER (ASN.1) encoding. With OpenSSL 12118the "-pubkey" option of the "x509" command extracts the public 12119key always in "PEM" format. We pipe the result to another OpenSSL 12120command that converts the key to DER and then to the "dgst" command 12121to compute the fingerprint. </p> 12122 12123<p> The actual command to transform the key to DER format depends 12124on the version of OpenSSL used. With OpenSSL 1.0.0 and later, the 12125"pkey" command supports all key types. With OpenSSL 0.9.8 and 12126earlier, the key type is always RSA (nobody uses DSA, and EC 12127keys are not fully supported by 0.9.8), so the "rsa" command is 12128used. </p> 12129<blockquote> 12130<pre> 12131# OpenSSL 1.0 with all certificates and SHA-1 fingerprints. 12132$ openssl x509 -in cert.pem -noout -pubkey | 12133 openssl pkey -pubin -outform DER | 12134 openssl dgst -sha1 -c 12135(stdin)= 64:3f:1f:f6:e5:1e:d4:2a:56:8b:fc:09:1a:61:98:b5:bc:7c:60:58 12136</pre> 12137</blockquote> 12138 12139<blockquote> 12140<pre> 12141# OpenSSL 0.9.8 with RSA certificates and MD5 fingerprints. 12142$ openssl x509 -in cert.pem -noout -pubkey | 12143 openssl rsa -pubin -outform DER | 12144 openssl dgst -md5 -c 12145(stdin)= f4:62:60:f6:12:8f:d5:8d:28:4d:13:a7:db:b2:ff:50 12146</pre> 12147</blockquote> 12148 12149<p> The Postfix SMTP server and client log the peer (leaf) certificate 12150fingerprint and public key fingerprint when the TLS loglevel is 2 or 12151higher. </p> 12152 12153<p> <b>Note:</b> Postfix 2.9.0–2.9.5 computed the public key 12154fingerprint incorrectly. To use public-key fingerprints, upgrade 12155to Postfix 2.9.6 or later. </p> 12156 12157<p> This feature is available in Postfix 2.5 and later. </p> 12158 12159 12160</DD> 12161 12162<DT><b><a name="smtp_tls_force_insecure_host_tlsa_lookup">smtp_tls_force_insecure_host_tlsa_lookup</a> 12163(default: no)</b></DT><DD> 12164 12165<p> Lookup the associated DANE TLSA RRset even when a hostname is 12166not an alias and its address records lie in an unsigned zone. This 12167is unlikely to ever yield DNSSEC validated results, since child 12168zones of unsigned zones are also unsigned in the absence of DLV or 12169locally configured non-root trust-anchors. We anticipate that such 12170mechanisms will not be used for just the "_tcp" subdomain of a host. 12171Suppressing the TLSA RRset lookup reduces latency and avoids potential 12172interoperability problems with nameservers for unsigned zones that 12173are not prepared to handle the new TLSA RRset. </p> 12174 12175<p> This feature is available in Postfix 2.11. </p> 12176 12177 12178</DD> 12179 12180<DT><b><a name="smtp_tls_key_file">smtp_tls_key_file</a> 12181(default: $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>)</b></DT><DD> 12182 12183<p> File with the Postfix SMTP client RSA private key in PEM format. 12184This file may be combined with the Postfix SMTP client RSA certificate 12185file specified with $<a href="postconf.5.html#smtp_tls_cert_file">smtp_tls_cert_file</a>. </p> 12186 12187<p> The private key must be accessible without a pass-phrase, i.e. it 12188must not be encrypted. File permissions should grant read-only 12189access to the system superuser account ("root"), and no access 12190to anyone else. </p> 12191 12192<p> Example: </p> 12193 12194<pre> 12195<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> 12196</pre> 12197 12198<p> This feature is available in Postfix 2.2 and later. </p> 12199 12200 12201</DD> 12202 12203<DT><b><a name="smtp_tls_loglevel">smtp_tls_loglevel</a> 12204(default: 0)</b></DT><DD> 12205 12206<p> Enable additional Postfix SMTP client logging of TLS activity. 12207Each logging level also includes the information that is logged at 12208a lower logging level. </p> 12209 12210<dl compact> 12211 12212<dt> </dt> <dd> 0 Disable logging of TLS activity. </dd> 12213 12214<dt> </dt> <dd> 1 Log only a summary message on TLS handshake completion 12215— no logging of remote SMTP server certificate trust-chain 12216verification errors if server certificate verification is not required. 12217With Postfix 2.8 and earlier, log the summary message and unconditionally 12218log trust-chain verification errors. </dd> 12219 12220<dt> </dt> <dd> 2 Also log levels during TLS negotiation. </dd> 12221 12222<dt> </dt> <dd> 3 Also log hexadecimal and ASCII dump of TLS negotiation 12223process. </dd> 12224 12225<dt> </dt> <dd> 4 Also log hexadecimal and ASCII dump of complete 12226transmission after STARTTLS. </dd> 12227 12228</dl> 12229 12230<p> Do not use "<a href="postconf.5.html#smtp_tls_loglevel">smtp_tls_loglevel</a> = 2" or higher except in case of 12231problems. Use of loglevel 4 is strongly discouraged. </p> 12232 12233<p> This feature is available in Postfix 2.2 and later. </p> 12234 12235 12236</DD> 12237 12238<DT><b><a name="smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> 12239(default: medium)</b></DT><DD> 12240 12241<p> The minimum TLS cipher grade that the Postfix SMTP client will 12242use with 12243mandatory TLS encryption. The default value "medium" is suitable 12244for most destinations with which you may want to enforce TLS, and 12245is beyond the reach of today's cryptanalytic methods. See 12246<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for information on how to configure ciphers 12247on a per-destination basis. </p> 12248 12249<p> The following cipher grades are supported: </p> 12250 12251<dl> 12252<dt><b>export</b></dt> 12253<dd> Enable "EXPORT" grade or better OpenSSL ciphers. The underlying 12254cipherlist is specified via the <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> configuration 12255parameter, which you are strongly encouraged to not change. This 12256choice is insecure and SHOULD NOT be used. </dd> 12257 12258<dt><b>low</b></dt> 12259<dd> Enable "LOW" grade or better OpenSSL ciphers. The underlying 12260cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> configuration 12261parameter, which you are strongly encouraged to not change. This 12262choice is insecure and SHOULD NOT be used. </dd> 12263 12264<dt><b>medium</b></dt> 12265<dd> Enable "MEDIUM" grade or better OpenSSL ciphers. 12266The underlying cipherlist is specified via the <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a> 12267configuration parameter, which you are strongly encouraged to not change. 12268</dd> 12269 12270<dt><b>high</b></dt> 12271<dd> Enable only "HIGH" grade OpenSSL ciphers. This setting may 12272be appropriate when all mandatory TLS destinations (e.g. when all 12273mail is routed to a suitably capable <a href="postconf.5.html#relayhost">relayhost</a>) support at least one 12274"HIGH" grade cipher. The underlying cipherlist is specified via the 12275<a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> configuration parameter, which you are strongly 12276encouraged to not change. </dd> 12277 12278<dt><b>null</b></dt> 12279<dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication 12280without encryption. This setting is only appropriate in the rare case 12281that all servers are prepared to use NULL ciphers (not normally enabled 12282in TLS servers). A plausible use-case is an LMTP server listening on a 12283UNIX-domain socket that is configured to support "NULL" ciphers. The 12284underlying cipherlist is specified via the <a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a> 12285configuration parameter, which you are strongly encouraged to not 12286change. </dd> 12287 12288</dl> 12289 12290<p> The underlying cipherlists for grades other than "null" include 12291anonymous ciphers, but these are automatically filtered out if the 12292Postfix SMTP client is configured to verify server certificates. 12293You are very unlikely to need to take any steps to exclude anonymous 12294ciphers, they are excluded automatically as necessary. If you must 12295exclude anonymous ciphers at the "may" or "encrypt" security levels, 12296when the Postfix SMTP client does not need or use peer certificates, set 12297"<a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> = aNULL". To exclude anonymous ciphers only when 12298TLS is enforced, set "<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> = aNULL". </p> 12299 12300<p> This feature is available in Postfix 2.3 and later. </p> 12301 12302 12303</DD> 12304 12305<DT><b><a name="smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> 12306(default: empty)</b></DT><DD> 12307 12308<p> Additional list of ciphers or cipher types to exclude from the 12309Postfix SMTP client cipher list at mandatory TLS security levels. This list 12310works in addition to the exclusions listed with <a href="postconf.5.html#smtp_tls_exclude_ciphers">smtp_tls_exclude_ciphers</a> 12311(see there for syntax details). </p> 12312 12313<p> Starting with Postfix 2.6, the mandatory cipher exclusions can be 12314specified on a per-destination basis via the TLS policy "exclude" 12315attribute. See <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> for notes and examples. </p> 12316 12317<p> This feature is available in Postfix 2.3 and later. </p> 12318 12319 12320</DD> 12321 12322<DT><b><a name="smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> 12323(default: !SSLv2, !SSLv3)</b></DT><DD> 12324 12325<p> List of SSL/TLS protocols that the Postfix SMTP client will use with 12326mandatory TLS encryption. In <a href="postconf.5.html">main.cf</a> the values are separated by 12327whitespace, commas or colons. In the policy table "protocols" attribute 12328(see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid separator is colon. An 12329empty value means allow all protocols. The valid protocol names, (see 12330<b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" and "TLSv1". The 12331default value is "!SSLv2, !SSLv3" for Postfix releases after the 12332middle of 2015, "!SSLv2" for older releases. </p> 12333 12334<p> With Postfix ≥ 2.5 the parameter syntax was expanded to support 12335protocol exclusions. One can explicitly exclude "SSLv2" by setting 12336"<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2". To exclude both "SSLv2" and 12337"SSLv3" set "<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing 12338the protocols to include, rather than protocols to exclude, is 12339supported, but not recommended. The exclusion form more closely 12340matches the underlying OpenSSL interface semantics. 12341</p> 12342 12343<p> The range of protocols advertised by an SSL/TLS client must be 12344contiguous. When a protocol version is enabled, disabling any 12345higher version implicitly disables all versions above that higher 12346version. Thus, for example: </p> 12347<blockquote> 12348<pre> 12349<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !TLSv1 12350</pre> 12351</blockquote> 12352<p> also disables any protocols version higher than TLSv1 leaving 12353only "SSLv3" enabled. </p> 12354 12355<p> Note: As of OpenSSL 1.0.1 two new protocols are defined, "TLSv1.1" 12356and "TLSv1.2". When Postfix ≤ 2.5 is linked against OpenSSL 1.0.1 12357or later, these, or any other new protocol versions, cannot be 12358disabled except by also disabling "TLSv1" (typically leaving just 12359"SSLv3"). The latest patch levels of Postfix ≥ 2.6, and all 12360versions of Postfix ≥ 2.10 can explicitly disable support for 12361"TLSv1.1" or "TLSv1.2". </p> 12362 12363<p> At the <a href="TLS_README.html#client_tls_dane">dane</a> and 12364<a href="TLS_README.html#client_tls_dane">dane-only</a> security 12365levels, when usable TLSA records are obtained for the remote SMTP 12366server, the Postfix SMTP client is obligated to include the SNI TLS 12367extension in its SSL client hello message. This may help the remote 12368SMTP server live up to its promise to provide a certificate that 12369matches its TLSA records. Since TLS extensions require TLS 1.0 or 12370later, the Postfix SMTP client must disable "SSLv2" and "SSLv3" when 12371SNI is required. If you use "dane" or "dane-only" do not disable 12372TLSv1, except perhaps via the policy table for destinations which 12373you are sure will support "TLSv1.1" or "TLSv1.2". </p> 12374 12375<p> See the documentation of the <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> parameter and 12376<a href="TLS_README.html">TLS_README</a> for more information about security levels. </p> 12377 12378<p> Example: </p> 12379 12380<pre> 12381# Preferred syntax with Postfix ≥ 2.5: 12382<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3 12383# Legacy syntax: 12384<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1 12385</pre> 12386 12387<p> This feature is available in Postfix 2.3 and later. </p> 12388 12389 12390</DD> 12391 12392<DT><b><a name="smtp_tls_note_starttls_offer">smtp_tls_note_starttls_offer</a> 12393(default: no)</b></DT><DD> 12394 12395<p> Log the hostname of a remote SMTP server that offers STARTTLS, 12396when TLS is not already enabled for that server. </p> 12397 12398<p> The logfile record looks like: </p> 12399 12400<pre> 12401postfix/smtp[pid]: Host offered STARTTLS: [name.of.host] 12402</pre> 12403 12404<p> This feature is available in Postfix 2.2 and later. </p> 12405 12406 12407</DD> 12408 12409<DT><b><a name="smtp_tls_per_site">smtp_tls_per_site</a> 12410(default: empty)</b></DT><DD> 12411 12412<p> Optional lookup tables with the Postfix SMTP client TLS usage 12413policy by next-hop destination and by remote SMTP server hostname. 12414When both lookups succeed, the more specific per-site policy (NONE, 12415MUST, etc) overrides the less specific one (MAY), and the more secure 12416per-site policy (MUST, etc) overrides the less secure one (NONE). 12417With Postfix 2.3 and later <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> is strongly discouraged: 12418use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p> 12419 12420<p> Use of the bare hostname as the per-site table lookup key is 12421discouraged. Always use the full destination nexthop (enclosed in 12422[] with a possible ":port" suffix). A recipient domain or MX-enabled 12423transport next-hop with no port suffix may look like a bare hostname, 12424but is still a suitable <i>destination</i>. </p> 12425 12426<p> Specify a next-hop destination or server hostname on the left-hand 12427side; no wildcards are allowed. The next-hop destination is either 12428the recipient domain, or the destination specified with a <a href="transport.5.html">transport(5)</a> 12429table, the <a href="postconf.5.html#relayhost">relayhost</a> parameter, or the <a href="postconf.5.html#relay_transport">relay_transport</a> parameter. 12430On the right hand side specify one of the following keywords: </p> 12431 12432<dl> 12433 12434<dt> NONE </dt> <dd> Don't use TLS at all. This overrides a less 12435specific <b>MAY</b> lookup result from the alternate host or next-hop 12436lookup 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>, 12437and <a href="postconf.5.html#smtp_tls_enforce_peername">smtp_tls_enforce_peername</a> settings. </dd> 12438 12439<dt> MAY </dt> <dd> Try to use TLS if the server announces support, 12440otherwise use the unencrypted connection. This has less precedence 12441than a more specific result (including <b>NONE</b>) from the alternate 12442host or next-hop lookup key, and has less precedence than the more 12443specific 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> 12444= yes". </dd> 12445 12446<dt> MUST_NOPEERMATCH </dt> <dd> Require TLS encryption, but do not 12447require that the remote SMTP server hostname matches the information 12448in the remote SMTP server certificate, or that the server certificate 12449was issued by a trusted CA. This overrides a less secure <b>NONE</b> 12450or a less specific <b>MAY</b> lookup result from the alternate host 12451or next-hop lookup key, and overrides the global <a href="postconf.5.html#smtp_use_tls">smtp_use_tls</a>, 12452<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> 12453 12454<dt> MUST </dt> <dd> Require TLS encryption, require that the remote 12455SMTP server hostname matches the information in the remote SMTP 12456server certificate, and require that the remote SMTP server certificate 12457was issued by a trusted CA. This overrides a less secure <b>NONE</b> 12458and <b>MUST_NOPEERMATCH</b> or a less specific <b>MAY</b> lookup 12459result from the alternate host or next-hop lookup key, and overrides 12460the 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> 12461settings. </dd> 12462 12463</dl> 12464 12465<p> The above keywords correspond to the "none", "may", "encrypt" and 12466"verify" security levels for the new <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> parameter 12467introduced in Postfix 2.3. Starting with Postfix 2.3, and independently 12468of how the policy is specified, the <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and 12469<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameters apply when TLS encryption 12470is mandatory. Connections for which encryption is optional typically 12471enable all "export" grade and better ciphers (see <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> 12472and <a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>). </p> 12473 12474<p> As long as no secure DNS lookup mechanism is available, false 12475hostnames in MX or CNAME responses can change the server hostname 12476that Postfix uses for TLS policy lookup and server certificate 12477verification. Even with a perfect match between the server hostname and 12478the server certificate, there is no guarantee that Postfix is connected 12479to the right server. See <a href="TLS_README.html">TLS_README</a> (Closing a DNS loophole with obsolete 12480per-site TLS policies) for a possible work-around. </p> 12481 12482<p> This feature is available in Postfix 2.2 and later. With 12483Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> instead. </p> 12484 12485 12486</DD> 12487 12488<DT><b><a name="smtp_tls_policy_maps">smtp_tls_policy_maps</a> 12489(default: empty)</b></DT><DD> 12490 12491<p> Optional lookup tables with the Postfix SMTP client TLS security 12492policy by next-hop destination; when a non-empty value is specified, 12493this overrides the obsolete <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> parameter. See 12494<a href="TLS_README.html">TLS_README</a> for a more detailed discussion of TLS security levels. 12495</p> 12496 12497<p> 12498Specify zero or more "type:name" lookup tables, separated by 12499whitespace or comma. Tables will be searched in the specified order 12500until a match is found. 12501</p> 12502 12503<p> The TLS policy table is indexed by the full next-hop destination, 12504which is either the recipient domain, or the verbatim next-hop 12505specified in the transport table, $<a href="postconf.5.html#local_transport">local_transport</a>, $<a href="postconf.5.html#virtual_transport">virtual_transport</a>, 12506$<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 12507square brackets and any non-default destination server port suffix. The 12508LMTP socket type prefix (inet: or unix:) is not included in the lookup 12509key. </p> 12510 12511<p> Only the next-hop domain, or $<a href="postconf.5.html#myhostname">myhostname</a> with LMTP over UNIX-domain 12512sockets, is used as the nexthop name for certificate verification. The 12513port and any enclosing square brackets are used in the table lookup key, 12514but are not used for server name verification. </p> 12515 12516<p> When the lookup key is a domain name without enclosing square brackets 12517or any <i>:port</i> suffix (typically the recipient domain), and the full 12518domain is not found in the table, just as with the <a href="transport.5.html">transport(5)</a> table, 12519the parent domain starting with a leading "." is matched recursively. This 12520allows one to specify a security policy for a recipient domain and all 12521its sub-domains. </p> 12522 12523<p> The lookup result is a security level, followed by an optional list 12524of whitespace and/or comma separated name=value attributes that override 12525related <a href="postconf.5.html">main.cf</a> settings. The TLS security levels in order of increasing 12526security are: </p> 12527 12528<dl> 12529 12530<dt><b><a href="TLS_README.html#client_tls_none">none</a></b></dt> 12531<dd>No TLS. No additional attributes are supported at this level. </dd> 12532 12533<dt><b><a href="TLS_README.html#client_tls_may">may</a></b></dt> 12534<dd>Opportunistic TLS. Since sending in the clear is acceptable, 12535demanding stronger than default TLS security merely reduces 12536interoperability. The optional "ciphers", "exclude" and "protocols" 12537attributes (available for opportunistic TLS with Postfix ≥ 2.6) 12538override 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 12539"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a>" configuration parameters. When opportunistic TLS 12540handshakes fail, Postfix retries the connection with TLS disabled. 12541This allows mail delivery to sites with non-interoperable TLS 12542implementations.</dd> 12543 12544<dt><b><a href="TLS_README.html#client_tls_encrypt">encrypt</a></b></dt> 12545<dd>Mandatory TLS encryption. At this level 12546and higher, the optional "protocols" attribute overrides the <a href="postconf.5.html">main.cf</a> 12547<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> parameter, the optional "ciphers" attribute 12548overrides 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 12549optional "exclude" attribute (Postfix ≥ 2.6) overrides the <a href="postconf.5.html">main.cf</a> 12550<a href="postconf.5.html#smtp_tls_mandatory_exclude_ciphers">smtp_tls_mandatory_exclude_ciphers</a> parameter. In the policy table, 12551multiple protocols or excluded ciphers must be separated by colons, 12552as attribute values may not contain whitespace or commas. </dd> 12553 12554<dt><b><a href="TLS_README.html#client_tls_dane">dane</a></b></dt> 12555<dd>Opportunistic DANE TLS. The TLS policy for the destination is 12556obtained via TLSA records in DNSSEC. If no TLSA records are found, 12557the effective security level used is <a 12558href="TLS_README.html#client_tls_may">may</a>. If TLSA records are 12559found, but none are usable, the effective security level is <a 12560href="TLS_README.html#client_tls_encrypt">encrypt</a>. When usable 12561TLSA records are obtained for the remote SMTP server, the 12562server certificate must match the TLSA records. <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> (DANE) 12563TLS authentication and DNSSEC support is available with Postfix 125642.11 and later. </dd> 12565 12566<dt><b><a href="TLS_README.html#client_tls_dane">dane-only</a></b></dt> 12567<dd>Mandatory DANE TLS. The TLS policy for the destination is 12568obtained via TLSA records in DNSSEC. If no TLSA records are found, 12569or none are usable, no connection is made to the server. When 12570usable TLSA records are obtained for the remote SMTP server, the 12571server certificate must match the TLSA records. <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> (DANE) TLS 12572authentication and DNSSEC support is available with Postfix 2.11 12573and later. </dd> 12574 12575<dt><b><a href="TLS_README.html#client_tls_fingerprint">fingerprint</a></b></dt> 12576<dd>Certificate fingerprint 12577verification. Available with Postfix 2.5 and later. At this security 12578level, there are no trusted Certification Authorities. The certificate 12579trust chain, expiration date, ... are not checked. Instead, 12580the optional <b>match</b> attribute, or else the <a href="postconf.5.html">main.cf</a> 12581<b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> parameter, lists the certificate 12582fingerprints or the public key fingerprint (Postfix 2.9 and later) 12583of the valid server certificate. The digest 12584algorithm used to calculate the fingerprint is selected by the 12585<b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. Multiple fingerprints can 12586be combined with a "|" delimiter in a single match attribute, or multiple 12587match attributes can be employed. The ":" character is not used as a 12588delimiter as it occurs between each pair of fingerprint (hexadecimal) 12589digits. </dd> 12590 12591<dt><b><a href="TLS_README.html#client_tls_verify">verify</a></b></dt> 12592<dd>Mandatory TLS verification. At this security 12593level, DNS MX lookups are trusted to be secure enough, and the name 12594verified in the server certificate is usually obtained indirectly via 12595unauthenticated DNS MX lookups. The optional "match" attribute overrides 12596the <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, 12597multiple match patterns and strategies must be separated by colons. 12598In practice explicit control over matching is more common with the 12599"secure" policy, described below. </dd> 12600 12601<dt><b><a href="TLS_README.html#client_tls_secure">secure</a></b></dt> 12602<dd>Secure-channel TLS. At this security level, DNS 12603MX lookups, though potentially used to determine the candidate next-hop 12604gateway IP addresses, are <b>not</b> trusted to be secure enough for TLS 12605peername verification. Instead, the default name verified in the server 12606certificate is obtained directly from the next-hop, or is explicitly 12607specified via the optional <b>match</b> attribute which overrides the 12608<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, 12609multiple match patterns and strategies must be separated by colons. 12610The match attribute is most useful when multiple domains are supported by 12611common server, the policy entries for additional domains specify matching 12612rules for the primary domain certificate. While transport table overrides 12613routing the secondary domains to the primary nexthop also allow secure 12614verification, they risk delivery to the wrong destination when domains 12615change hands or are re-assigned to new gateways. With the "match" 12616attribute approach, routing is not perturbed, and mail is deferred if 12617verification of a new MX host fails. </dd> 12618 12619</dl> 12620 12621<p> 12622Example: 12623</p> 12624 12625<pre> 12626/etc/postfix/<a href="postconf.5.html">main.cf</a>: 12627 <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/tls_policy 12628 # Postfix 2.5 and later 12629 <a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a> = md5 12630</pre> 12631 12632<pre> 12633/etc/postfix/tls_policy: 12634 example.edu none 12635 example.mil may 12636 example.gov encrypt protocols=TLSv1 12637 example.com verify ciphers=high 12638 example.net secure 12639 .example.net secure match=.example.net:example.net 12640 [mail.example.org]:587 secure match=nexthop 12641 # Postfix 2.5 and later 12642 [thumb.example.org] fingerprint 12643 match=EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35 12644 match=3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1 12645</pre> 12646 12647<p> <b>Note:</b> The <b>hostname</b> strategy if listed in a non-default 12648setting of <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> or in the <b>match</b> attribute 12649in the policy table can render the <b>secure</b> level vulnerable to 12650DNS forgery. Do not use the <b>hostname</b> strategy for secure-channel 12651configurations in environments where DNS security is not assured. </p> 12652 12653<p> This feature is available in Postfix 2.3 and later. </p> 12654 12655 12656</DD> 12657 12658<DT><b><a name="smtp_tls_protocols">smtp_tls_protocols</a> 12659(default: !SSLv2, !SSLv3)</b></DT><DD> 12660 12661<p> List of TLS protocols that the Postfix SMTP client will exclude or 12662include with opportunistic TLS encryption. The default value is 12663"!SSLv2, !SSLv3" for Postfix releases after the middle of 2015, 12664"!SSLv2" for older releases. Before Postfix 2.6, the Postfix SMTP 12665client would use all protocols with opportunistic TLS. </p> 12666 12667<p> In <a href="postconf.5.html">main.cf</a> the values are separated by whitespace, commas or 12668colons. In the policy table (see <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) the only valid 12669separator is colon. An empty value means allow all protocols. The valid 12670protocol names, (see <b>SSL_get_version(3)</b>), are "SSLv2", "SSLv3" 12671and "TLSv1". </p> 12672 12673<p> The range of protocols advertised by an SSL/TLS client must be 12674contiguous. When a protocol version is enabled, disabling any 12675higher version implicitly disables all versions above that higher 12676version. Thus, for example: </p> 12677<blockquote> 12678<pre> 12679<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !TLSv1 12680</pre> 12681</blockquote> 12682<p> also disables any protocols version higher than TLSv1 leaving 12683only "SSLv3" enabled. </p> 12684 12685<p> Note: As of OpenSSL 1.0.1 two new protocols are defined, "TLSv1.1" 12686and "TLSv1.2". The latest patch levels of Postfix ≥ 2.6, and all 12687versions of Postfix ≥ 2.10 can explicitly disable support for 12688"TLSv1.1" or "TLSv1.2"</p> 12689 12690<p> To include a protocol list its name, to exclude it, prefix the name 12691with a "!" character. To exclude SSLv2 for opportunistic TLS set 12692"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set 12693"<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to 12694include, rather than protocols to exclude, is supported, but not 12695recommended. The exclusion form more closely matches the underlying 12696OpenSSL interface semantics. </p> 12697 12698<p> Example: </p> 12699<pre> 12700# TLSv1 or better: 12701<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3 12702</pre> 12703 12704<p> This feature is available in Postfix 2.6 and later. </p> 12705 12706 12707</DD> 12708 12709<DT><b><a name="smtp_tls_scert_verifydepth">smtp_tls_scert_verifydepth</a> 12710(default: 9)</b></DT><DD> 12711 12712<p> The verification depth for remote SMTP server certificates. A depth 12713of 1 is sufficient if the issuing CA is listed in a local CA file. </p> 12714 12715<p> The default verification depth is 9 (the OpenSSL default) for 12716compatibility with earlier Postfix behavior. Prior to Postfix 2.5, 12717the default value was 5, but the limit was not actually enforced. If 12718you have set this to a lower non-default value, certificates with longer 12719trust chains may now fail to verify. Certificate chains with 1 or 2 12720CAs are common, deeper chains are more rare and any number between 5 12721and 9 should suffice in practice. You can choose a lower number if, 12722for example, you trust certificates directly signed by an issuing CA 12723but not any CAs it delegates to. </p> 12724 12725<p> This feature is available in Postfix 2.2 and later. </p> 12726 12727 12728</DD> 12729 12730<DT><b><a name="smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> 12731(default: nexthop, dot-nexthop)</b></DT><DD> 12732 12733<p> How the Postfix SMTP client verifies the server certificate 12734peername for the "secure" TLS security level. In a "secure" TLS policy table 12735($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute 12736overrides this <a href="postconf.5.html">main.cf</a> setting. </p> 12737 12738<p> This parameter specifies one or more patterns or strategies separated 12739by commas, whitespace or colons. In the policy table the only valid 12740separator is the colon character. </p> 12741 12742<p> For a description of the pattern and strategy syntax see the 12743<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> parameter. The "hostname" strategy should 12744be avoided in this context, as in the absence of a secure global DNS, using 12745the results of MX lookups in certificate verification is not immune to active 12746(man-in-the-middle) attacks on DNS. </p> 12747 12748<p> 12749Sample <a href="postconf.5.html">main.cf</a> setting: 12750</p> 12751 12752<blockquote> 12753<pre> 12754<a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop 12755</pre> 12756</blockquote> 12757 12758<p> 12759Sample policy table override: 12760</p> 12761 12762<blockquote> 12763<pre> 12764example.net secure match=example.com:.example.com 12765.example.net secure match=example.com:.example.com 12766</pre> 12767</blockquote> 12768 12769<p> This feature is available in Postfix 2.3 and later. </p> 12770 12771 12772</DD> 12773 12774<DT><b><a name="smtp_tls_security_level">smtp_tls_security_level</a> 12775(default: empty)</b></DT><DD> 12776 12777<p> The default SMTP TLS security level for the Postfix SMTP client; 12778when a non-empty value is specified, this overrides the obsolete 12779parameters <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>. 12780</p> 12781 12782<p> Specify one of the following security levels: </p> 12783 12784<dl> 12785 12786<dt><b><a href="TLS_README.html#client_tls_none">none</a></b></dt> 12787<dd> No TLS. TLS will not be used unless enabled for specific 12788destinations via <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>. </dd> 12789 12790<dt><b><a href="TLS_README.html#client_tls_may">may</a></b></dt> 12791<dd> Opportunistic TLS. Use TLS if this is supported by the remote 12792SMTP server, otherwise use plaintext. Since 12793sending in the clear is acceptable, demanding stronger than default TLS 12794security merely reduces interoperability. 12795The "<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 ≥ 2.6) 12796configuration parameters provide control over the protocols and 12797cipher grade used with opportunistic TLS. With earlier releases the 12798opportunistic TLS cipher grade is always "export" and no protocols 12799are disabled. 12800When TLS handshakes fail, the connection is retried with TLS disabled. 12801This allows mail delivery to sites with non-interoperable TLS 12802implementations. </dd> 12803 12804<dt><b><a href="TLS_README.html#client_tls_encrypt">encrypt</a></b></dt> 12805<dd>Mandatory TLS encryption. Since a minimum 12806level of security is intended, it is reasonable to be specific about 12807sufficiently secure protocol versions and ciphers. At this security level 12808and 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 12809<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> specify the TLS protocols and minimum 12810cipher grade which the administrator considers secure enough for 12811mandatory encrypted sessions. This security level is not an appropriate 12812default for systems delivering mail to the Internet. </dd> 12813 12814<dt><b><a href="TLS_README.html#client_tls_dane">dane</a></b></dt> 12815<dd>Opportunistic DANE TLS. At this security level, the TLS policy 12816for the destination is obtained via DNSSEC. For TLSA policy to be 12817in effect, the destination domain's containing DNS zone must be 12818signed and the Postfix SMTP client's operating system must be 12819configured to send its DNS queries to a recursive DNS nameserver 12820that is able to validate the signed records. Each MX host's DNS 12821zone should also be signed, and should publish DANE TLSA (<a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a>) 12822records that specify how that MX host's TLS certificate is to be 12823verified. TLSA records do not preempt the normal SMTP MX host 12824selection algorithm, if some MX hosts support TLSA and others do 12825not, TLS security will vary from delivery to delivery. It is up 12826to the domain owner to configure their MX hosts and their DNS 12827sensibly. To configure the Postfix SMTP client for DNSSEC lookups 12828see the documentation for the <a href="postconf.5.html#smtp_dns_support_level">smtp_dns_support_level</a> <a href="postconf.5.html">main.cf</a> 12829parameter. When DNSSEC-validated TLSA records are not found the 12830effective tls security level is "may". When TLSA records are found, 12831but are all unusable the effective security level is "encrypt". For 12832purposes of protocol and cipher selection, the "dane" security level 12833is treated like a "mandatory" TLS security level, and weak ciphers 12834and protocols are disabled. Since DANE authenticates server 12835certificates the "aNULL" cipher-suites are transparently excluded 12836at this level, no need to configure this manually. <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> (DANE) 12837TLS authentication is available with Postfix 2.11 and later. </dd> 12838 12839<dt><b><a href="TLS_README.html#client_tls_dane">dane-only</a></b></dt> 12840<dd>Mandatory DANE TLS. This is just like "dane" above, but DANE 12841TLSA authentication is required. There is no fallback to "may" or 12842"encrypt" when TLSA records are missing or unusable. <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> 12843(DANE) TLS authentication is available with Postfix 2.11 and later. 12844</dd> 12845 12846<dt><b><a href="TLS_README.html#client_tls_fingerprint">fingerprint</a></b></dt> 12847<dd>Certificate fingerprint verification. 12848At this security level, there are no trusted Certification Authorities. 12849The certificate trust chain, expiration date, etc., are 12850not checked. Instead, the <b><a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a></b> 12851parameter lists the certificate fingerprint or public key fingerprint 12852(Postfix 2.9 and later) of the valid server certificate. The digest 12853algorithm used to calculate the fingerprint is selected by the 12854<b><a href="postconf.5.html#smtp_tls_fingerprint_digest">smtp_tls_fingerprint_digest</a></b> parameter. Available with Postfix 128552.5 and later. </dd> 12856 12857<dt><b><a href="TLS_README.html#client_tls_verify">verify</a></b></dt> 12858<dd>Mandatory TLS verification. At this security 12859level, DNS MX lookups are trusted to be secure enough, and the name 12860verified in the server certificate is usually obtained indirectly 12861via unauthenticated DNS MX lookups. The <a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> 12862parameter controls how the server name is verified. In practice explicit 12863control over matching is more common at the "secure" level, described 12864below. This security level is not an appropriate default for systems 12865delivering mail to the Internet. </dd> 12866 12867<dt><b><a href="TLS_README.html#client_tls_secure">secure</a></b></dt> 12868<dd>Secure-channel TLS. At this security level, 12869DNS MX lookups, though potentially used to determine the candidate 12870next-hop gateway IP addresses, are <b>not</b> trusted to be secure enough 12871for TLS peername verification. Instead, the default name verified in 12872the server certificate is obtained from the next-hop domain as specified 12873in the <a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> configuration parameter. The default 12874matching rule is that a server certificate matches when its name is equal 12875to or is a sub-domain of the nexthop domain. This security level is not 12876an appropriate default for systems delivering mail to the Internet. </dd> 12877 12878</dl> 12879 12880<p> 12881Examples: 12882</p> 12883 12884<pre> 12885# 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. 12886<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = none 12887</pre> 12888 12889<pre> 12890# Opportunistic TLS. 12891<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = may 12892# Postfix ≥ 2.6: 12893# Do not tweak opportunistic ciphers or protocol unless it is essential 12894# to do so (if a security vulnerability is found in the SSL library that 12895# can be mitigated by disabling a particular protocol or raising the 12896# cipher grade from "export" to "low" or "medium"). 12897<a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a> = export 12898<a href="postconf.5.html#smtp_tls_protocols">smtp_tls_protocols</a> = !SSLv2, !SSLv3 12899</pre> 12900 12901<pre> 12902# Mandatory (high-grade) TLS encryption. 12903<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = encrypt 12904<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high 12905</pre> 12906 12907<pre> 12908# Mandatory TLS verification of hostname or nexthop domain. 12909<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = verify 12910<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high 12911<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop 12912</pre> 12913 12914<pre> 12915# Secure channel TLS with exact nexthop name match. 12916<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = secure 12917<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = TLSv1 12918<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high 12919<a href="postconf.5.html#smtp_tls_secure_cert_match">smtp_tls_secure_cert_match</a> = nexthop 12920</pre> 12921 12922<pre> 12923# Certificate fingerprint verification (Postfix ≥ 2.5). 12924# The CA-less "fingerprint" security level only scales to a limited 12925# number of destinations. As a global default rather than a per-site 12926# setting, this is practical when mail for all recipients is sent 12927# to a central mail hub. 12928<a href="postconf.5.html#relayhost">relayhost</a> = [mailhub.example.com] 12929<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = fingerprint 12930<a href="postconf.5.html#smtp_tls_mandatory_protocols">smtp_tls_mandatory_protocols</a> = !SSLv2, !SSLv3 12931<a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> = high 12932<a href="postconf.5.html#smtp_tls_fingerprint_cert_match">smtp_tls_fingerprint_cert_match</a> = 12933 3D:95:34:51:24:66:33:B9:D2:40:99:C0:C1:17:0B:D1 12934 EC:3B:2D:B0:5B:B1:FB:6D:20:A3:9D:72:F6:8D:12:35 12935</pre> 12936 12937<p> This feature is available in Postfix 2.3 and later. </p> 12938 12939 12940</DD> 12941 12942<DT><b><a name="smtp_tls_session_cache_database">smtp_tls_session_cache_database</a> 12943(default: empty)</b></DT><DD> 12944 12945<p> Name of the file containing the optional Postfix SMTP client 12946TLS session cache. Specify a database type that supports enumeration, 12947such as <b>btree</b> or <b>sdbm</b>; there is no need to support 12948concurrent access. The file is created if it does not exist. The <a href="smtp.8.html">smtp(8)</a> 12949daemon does not use this parameter directly, rather the cache is 12950implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that 12951per-smtp-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not effective. 12952Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon: 12953$<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> 12954(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 12955be stored separately. It is not at this time possible to store multiple 12956caches in a single database. </p> 12957 12958<p> Note: <b>dbm</b> databases are not suitable. TLS 12959session objects are too large. </p> 12960 12961<p> As of version 2.5, Postfix no longer uses root privileges when 12962opening this file. The file should now be stored under the Postfix-owned 12963<a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file 12964under a non-Postfix directory is redirected to the Postfix-owned 12965<a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p> 12966 12967<p> Example: </p> 12968 12969<pre> 12970<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a> = <a href="DATABASE_README.html#types">btree</a>:/var/db/postfix/smtp_scache 12971</pre> 12972 12973<p> This feature is available in Postfix 2.2 and later. </p> 12974 12975 12976</DD> 12977 12978<DT><b><a name="smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a> 12979(default: 3600s)</b></DT><DD> 12980 12981<p> The expiration time of Postfix SMTP client TLS session cache 12982information. A cache cleanup is performed periodically 12983every $<a href="postconf.5.html#smtp_tls_session_cache_timeout">smtp_tls_session_cache_timeout</a> seconds. As with 12984$<a href="postconf.5.html#smtp_tls_session_cache_database">smtp_tls_session_cache_database</a>, this parameter is implemented in the 12985<a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtp-instance <a href="master.5.html">master.cf</a> overrides 12986are not possible. </p> 12987 12988<p> As of Postfix 2.11 this setting cannot exceed 100 days. If set 12989≤ 0, session caching is disabled. If set to a positive value 12990less than 2 minutes, the minimum value of 2 minutes is used instead. </p> 12991 12992<p> This feature is available in Postfix 2.2 and later. </p> 12993 12994 12995</DD> 12996 12997<DT><b><a name="smtp_tls_trust_anchor_file">smtp_tls_trust_anchor_file</a> 12998(default: empty)</b></DT><DD> 12999 13000<p> Zero or more PEM-format files with trust-anchor certificates 13001and/or public keys. If the parameter is not empty the root CAs in 13002CAfile and CApath are no longer trusted. Rather, the Postfix SMTP 13003client will only trust certificate-chains signed by one of the 13004trust-anchors contained in the chosen files. The specified 13005trust-anchor certificates and public keys are not subject to 13006expiration, and need not be (self-signed) root CAs. They may, if 13007desired, be intermediate certificates. Therefore, these certificates 13008also may be found "in the middle" of the trust chain presented by 13009the remote SMTP server, and any untrusted issuing parent certificates 13010will be ignored. Specify a list of pathnames separated by comma 13011or whitespace. </p> 13012 13013<p> Whether specified in <a href="postconf.5.html">main.cf</a>, or on a per-destination basis, 13014the trust-anchor PEM file must be accessible to the Postfix SMTP 13015client in the chroot jail if applicable. The trust-anchor file 13016should contain only certificates and public keys, no private key 13017material, and must be readable by the non-privileged $<a href="postconf.5.html#mail_owner">mail_owner</a> 13018user. This allows destinations to be bound to a set of specific 13019CAs or public keys without trusting the same CAs for all destinations. 13020</p> 13021 13022<p> The <a href="postconf.5.html">main.cf</a> parameter supports single-purpose Postfix installations 13023that send mail to a fixed set of SMTP peers. At most sites, if 13024trust-anchor files are used at all, they will be specified on a 13025per-destination basis via the "tafile" attribute of the "verify" 13026and "secure" levels in <a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>. </p> 13027 13028<p> The underlying mechanism is in support of <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> (DANE TLSA), 13029which defines mechanisms for a client to securely determine server 13030TLS certificates via DNS. </p> 13031 13032<p> If you want your trust anchors to be public keys, with OpenSSL 13033you can extract a single PEM public key from a PEM X.509 file 13034containing a single certificate, as follows: </p> 13035 13036<blockquote> 13037<pre> 13038$ openssl x509 -in cert.pem -out ta-key.pem -noout -pubkey 13039</pre> 13040</blockquote> 13041 13042<p> This feature is available in Postfix 2.11 and later. </p> 13043 13044 13045</DD> 13046 13047<DT><b><a name="smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> 13048(default: hostname)</b></DT><DD> 13049 13050<p> How the Postfix SMTP client verifies the server certificate 13051peername for the 13052"verify" TLS security level. In a "verify" TLS policy table 13053($<a href="postconf.5.html#smtp_tls_policy_maps">smtp_tls_policy_maps</a>) entry the optional "match" attribute 13054overrides this <a href="postconf.5.html">main.cf</a> setting. </p> 13055 13056<p> This parameter specifies one or more patterns or strategies separated 13057by commas, whitespace or colons. In the policy table the only valid 13058separator is the colon character. </p> 13059 13060<p> Patterns specify domain names, or domain name suffixes: </p> 13061 13062<dl> 13063 13064<dt><i>example.com</i></dt> <dd> Match the <i>example.com</i> domain, 13065i.e. one of the names the server certificate must be <i>example.com</i>, 13066upper and lower case distinctions are ignored. </dd> 13067 13068<dt><i>.example.com</i></dt> 13069<dd> Match subdomains of the <i>example.com</i> domain, i.e. match 13070a name in the server certificate that consists of a non-zero number of 13071labels followed by a <i>.example.com</i> suffix. Case distinctions are 13072ignored.</dd> 13073 13074</dl> 13075 13076<p> Strategies specify a transformation from the next-hop domain 13077to the expected name in the server certificate: </p> 13078 13079<dl> 13080 13081<dt>nexthop</dt> 13082<dd> Match against the next-hop domain, which is either the recipient 13083domain, or the transport next-hop configured for the domain stripped of 13084any optional socket type prefix, enclosing square brackets and trailing 13085port. When MX lookups are not suppressed, this is the original nexthop 13086domain prior to the MX lookup, not the result of the MX lookup. For 13087LMTP delivery via UNIX-domain sockets, the verified next-hop name is 13088$<a href="postconf.5.html#myhostname">myhostname</a>. This strategy is suitable for use with the "secure" 13089policy. Case is ignored.</dd> 13090 13091<dt>dot-nexthop</dt> 13092<dd> As above, but match server certificate names that are subdomains 13093of the next-hop domain. Case is ignored.</dd> 13094 13095<dt>hostname</dt> <dd> Match against the hostname of the server, often 13096obtained via an unauthenticated DNS MX lookup. For LMTP delivery via 13097UNIX-domain sockets, the verified name is $<a href="postconf.5.html#myhostname">myhostname</a>. This matches 13098the verification strategy of the "MUST" keyword in the obsolete 13099<a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> table, and is suitable for use with the "verify" 13100security level. When the next-hop name is enclosed in square brackets 13101to suppress MX lookups, the "hostname" strategy is the same as the 13102"nexthop" strategy. Case is ignored.</dd> 13103 13104</dl> 13105 13106<p> 13107Sample <a href="postconf.5.html">main.cf</a> setting: 13108</p> 13109 13110<pre> 13111<a href="postconf.5.html#smtp_tls_verify_cert_match">smtp_tls_verify_cert_match</a> = hostname, nexthop, dot-nexthop 13112</pre> 13113 13114<p> 13115Sample policy table override: 13116</p> 13117 13118<pre> 13119example.com verify match=hostname:nexthop 13120.example.com verify match=example.com:.example.com:hostname 13121</pre> 13122 13123<p> This feature is available in Postfix 2.3 and later. </p> 13124 13125 13126</DD> 13127 13128<DT><b><a name="smtp_tls_wrappermode">smtp_tls_wrappermode</a> 13129(default: no)</b></DT><DD> 13130 13131<p> Request that the Postfix SMTP client connects using the 13132legacy SMTPS protocol instead of using the STARTTLS command. </p> 13133 13134<p> This mode requires "<a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = encrypt" or 13135stronger. </p> 13136 13137<p> Example: deliver all remote mail via a provider's server 13138"mail.example.com". </p> 13139 13140<pre> 13141/etc/postfix/<a href="postconf.5.html">main.cf</a>: 13142 # Client-side SMTPS requires "encrypt" or stronger. 13143 <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> = encrypt 13144 <a href="postconf.5.html#smtp_tls_wrappermode">smtp_tls_wrappermode</a> = yes 13145 # The [] suppress MX lookups. 13146 <a href="postconf.5.html#relayhost">relayhost</a> = [mail.example.com]:465 13147</pre> 13148 13149<p> More examples are in <a href="TLS_README.html">TLS_README</a>, including examples for older 13150Postfix versions. </p> 13151 13152<p> This feature is available in Postfix 3.0 and later. </p> 13153 13154 13155</DD> 13156 13157<DT><b><a name="smtp_use_tls">smtp_use_tls</a> 13158(default: no)</b></DT><DD> 13159 13160<p> Opportunistic mode: use TLS when a remote SMTP server announces 13161STARTTLS support, otherwise send the mail in the clear. Beware: 13162some SMTP servers offer STARTTLS even if it is not configured. With 13163Postfix < 2.3, if the TLS handshake fails, and no other server is 13164available, delivery is deferred and mail stays in the queue. If this 13165is a concern for you, use the <a href="postconf.5.html#smtp_tls_per_site">smtp_tls_per_site</a> feature instead. </p> 13166 13167<p> This feature is available in Postfix 2.2 and later. With 13168Postfix 2.3 and later use <a href="postconf.5.html#smtp_tls_security_level">smtp_tls_security_level</a> instead. </p> 13169 13170 13171</DD> 13172 13173<DT><b><a name="smtp_xforward_timeout">smtp_xforward_timeout</a> 13174(default: 300s)</b></DT><DD> 13175 13176<p> 13177The Postfix SMTP client time limit for sending the XFORWARD command, 13178and for receiving the remote SMTP server response. 13179</p> 13180 13181<p> 13182Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 13183The default time unit is s (seconds). 13184</p> 13185 13186<p> 13187This feature is available in Postfix 2.1 and later. 13188</p> 13189 13190 13191</DD> 13192 13193<DT><b><a name="smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a> 13194(default: $<a href="postconf.5.html#authorized_verp_clients">authorized_verp_clients</a>)</b></DT><DD> 13195 13196<p> What remote SMTP clients are allowed to specify the XVERP command. 13197This command requests that mail be delivered one recipient at a 13198time with a per recipient return address. </p> 13199 13200<p> By default, no clients are allowed to specify XVERP. </p> 13201 13202<p> This parameter was renamed with Postfix version 2.1. The default value 13203is backwards compatible with Postfix version 2.0. </p> 13204 13205<p> Specify a list of network/netmask patterns, separated by commas 13206and/or whitespace. The mask specifies the number of bits in the 13207network part of a host address. You can also specify hostnames or 13208.domain names (the initial dot causes the domain to match any name 13209below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" 13210pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table 13211is matched when a table entry matches a lookup string (the lookup 13212result is ignored). Continue long lines by starting the next line 13213with whitespace. Specify "!pattern" to exclude an address or network 13214block from the list. The form "!/file/name" is supported only in 13215Postfix version 2.4 and later. </p> 13216 13217<p> Note: IP version 6 address information must be specified inside 13218<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_verp_clients">smtpd_authorized_verp_clients</a> value, and in 13219files specified with "/file/name". IP version 6 addresses contain 13220the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 13221pattern. </p> 13222 13223 13224</DD> 13225 13226<DT><b><a name="smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a> 13227(default: empty)</b></DT><DD> 13228 13229<p> 13230What remote SMTP clients are allowed to use the XCLIENT feature. This 13231command overrides remote SMTP client information that is used for access 13232control. Typical use is for SMTP-based content filters, fetchmail-like 13233programs, or SMTP server access rule testing. See the <a href="XCLIENT_README.html">XCLIENT_README</a> 13234document for details. 13235</p> 13236 13237<p> 13238This feature is available in Postfix 2.1 and later. 13239</p> 13240 13241<p> 13242By default, no clients are allowed to specify XCLIENT. 13243</p> 13244 13245<p> 13246Specify a list of network/netmask patterns, separated by commas 13247and/or whitespace. The mask specifies the number of bits in the 13248network part of a host address. You can also specify hostnames or 13249.domain names (the initial dot causes the domain to match any name 13250below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" 13251pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table 13252is matched when a table entry matches a lookup string (the lookup 13253result is ignored). Continue long lines by starting the next line 13254with whitespace. Specify "!pattern" to exclude an address or network 13255block from the list. The form "!/file/name" is supported only in 13256Postfix version 2.4 and later. </p> 13257 13258<p> Note: IP version 6 address information must be specified inside 13259<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a> value, and in 13260files specified with "/file/name". IP version 6 addresses contain 13261the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 13262pattern. </p> 13263 13264 13265</DD> 13266 13267<DT><b><a name="smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a> 13268(default: empty)</b></DT><DD> 13269 13270<p> 13271What remote SMTP clients are allowed to use the XFORWARD feature. This 13272command forwards information that is used to improve logging after 13273SMTP-based content filters. See the <a href="XFORWARD_README.html">XFORWARD_README</a> document for 13274details. 13275</p> 13276 13277<p> 13278This feature is available in Postfix 2.1 and later. 13279</p> 13280 13281<p> 13282By default, no clients are allowed to specify XFORWARD. 13283</p> 13284 13285<p> 13286Specify a list of network/netmask patterns, separated by commas 13287and/or whitespace. The mask specifies the number of bits in the 13288network part of a host address. You can also specify hostnames or 13289.domain names (the initial dot causes the domain to match any name 13290below it), "/file/name" or "<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" 13291pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table 13292is matched when a table entry matches a lookup string (the lookup 13293result is ignored). Continue long lines by starting the next line 13294with whitespace. Specify "!pattern" to exclude an address or network 13295block from the list. The form "!/file/name" is supported only in 13296Postfix version 2.4 and later. </p> 13297 13298<p> Note: IP version 6 address information must be specified inside 13299<tt>[]</tt> in the <a href="postconf.5.html#smtpd_authorized_xforward_hosts">smtpd_authorized_xforward_hosts</a> value, and in 13300files specified with "/file/name". IP version 6 addresses contain 13301the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 13302pattern. </p> 13303 13304 13305</DD> 13306 13307<DT><b><a name="smtpd_banner">smtpd_banner</a> 13308(default: $<a href="postconf.5.html#myhostname">myhostname</a> ESMTP $<a href="postconf.5.html#mail_name">mail_name</a>)</b></DT><DD> 13309 13310<p> 13311The text that follows the 220 status code in the SMTP greeting 13312banner. Some people like to see the mail version advertised. By 13313default, Postfix shows no version. 13314</p> 13315 13316<p> 13317You MUST specify $<a href="postconf.5.html#myhostname">myhostname</a> at the start of the text. This is 13318required by the SMTP protocol. 13319</p> 13320 13321<p> 13322Example: 13323</p> 13324 13325<pre> 13326<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>) 13327</pre> 13328 13329 13330</DD> 13331 13332<DT><b><a name="smtpd_client_auth_rate_limit">smtpd_client_auth_rate_limit</a> 13333(default: 0)</b></DT><DD> 13334 13335<p> 13336The maximal number of AUTH commands that any client is allowed to 13337send to this service per time unit, regardless of whether or not 13338Postfix actually accepts those commands. The time unit is specified 13339with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter. 13340</p> 13341 13342<p> 13343By default, there is no limit on the number AUTH commands that a 13344client may send. 13345</p> 13346 13347<p> 13348To disable this feature, specify a limit of 0. 13349</p> 13350 13351<p> 13352WARNING: The purpose of this feature is to limit abuse. It must 13353not be used to regulate legitimate mail traffic. 13354</p> 13355 13356<p> 13357This feature is available in Postfix 3.1 and later. 13358</p> 13359 13360 13361</DD> 13362 13363<DT><b><a name="smtpd_client_connection_count_limit">smtpd_client_connection_count_limit</a> 13364(default: 50)</b></DT><DD> 13365 13366<p> 13367How many simultaneous connections any client is allowed to 13368make to this service. By default, the limit is set to half 13369the default process limit value. 13370</p> 13371 13372<p> 13373To disable this feature, specify a limit of 0. 13374</p> 13375 13376<p> 13377WARNING: The purpose of this feature is to limit abuse. It must 13378not be used to regulate legitimate mail traffic. 13379</p> 13380 13381<p> 13382This feature is available in Postfix 2.2 and later. 13383</p> 13384 13385 13386</DD> 13387 13388<DT><b><a name="smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a> 13389(default: 0)</b></DT><DD> 13390 13391<p> 13392The maximal number of connection attempts any client is allowed to 13393make to this service per time unit. The time unit is specified 13394with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter. 13395</p> 13396 13397<p> 13398By default, a client can make as many connections per time unit as 13399Postfix can accept. 13400</p> 13401 13402<p> 13403To disable this feature, specify a limit of 0. 13404</p> 13405 13406<p> 13407WARNING: The purpose of this feature is to limit abuse. It must 13408not be used to regulate legitimate mail traffic. 13409</p> 13410 13411<p> 13412This feature is available in Postfix 2.2 and later. 13413</p> 13414 13415<p> 13416Example: 13417</p> 13418 13419<pre> 13420<a href="postconf.5.html#smtpd_client_connection_rate_limit">smtpd_client_connection_rate_limit</a> = 1000 13421</pre> 13422 13423 13424</DD> 13425 13426<DT><b><a name="smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a> 13427(default: $<a href="postconf.5.html#mynetworks">mynetworks</a>)</b></DT><DD> 13428 13429<p> 13430Clients that are excluded from smtpd_client_*_count/rate_limit 13431restrictions. See the <a href="postconf.5.html#mynetworks">mynetworks</a> parameter 13432description for the parameter value syntax. 13433</p> 13434 13435<p> 13436By default, clients in trusted networks are excluded. Specify a 13437list of network blocks, hostnames or .domain names (the initial 13438dot causes the domain to match any name below it). 13439</p> 13440 13441<p> Note: IP version 6 address information must be specified inside 13442<tt>[]</tt> in the <a href="postconf.5.html#smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a> value, and 13443in files specified with "/file/name". IP version 6 addresses 13444contain the ":" character, and would otherwise be confused with a 13445"<a href="DATABASE_README.html">type:table</a>" pattern. </p> 13446 13447<p> Pattern matching of domain names is controlled by the presence 13448or absence of "<a href="postconf.5.html#smtpd_client_event_limit_exceptions">smtpd_client_event_limit_exceptions</a>" in the 13449<a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> parameter value (postfix 3.0 and 13450later). </p> 13451 13452<p> 13453This feature is available in Postfix 2.2 and later. 13454</p> 13455 13456 13457</DD> 13458 13459<DT><b><a name="smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a> 13460(default: 0)</b></DT><DD> 13461 13462<p> 13463The maximal number of message delivery requests that any client is 13464allowed to make to this service per time unit, regardless of whether 13465or not Postfix actually accepts those messages. The time unit is 13466specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter. 13467</p> 13468 13469<p> 13470By default, a client can send as many message delivery requests 13471per time unit as Postfix can accept. 13472</p> 13473 13474<p> 13475To disable this feature, specify a limit of 0. 13476</p> 13477 13478<p> 13479WARNING: The purpose of this feature is to limit abuse. It must 13480not be used to regulate legitimate mail traffic. 13481</p> 13482 13483<p> 13484This feature is available in Postfix 2.2 and later. 13485</p> 13486 13487<p> 13488Example: 13489</p> 13490 13491<pre> 13492<a href="postconf.5.html#smtpd_client_message_rate_limit">smtpd_client_message_rate_limit</a> = 1000 13493</pre> 13494 13495 13496</DD> 13497 13498<DT><b><a name="smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a> 13499(default: 0)</b></DT><DD> 13500 13501<p> 13502The maximal number of new (i.e., uncached) TLS sessions that a 13503remote SMTP client is allowed to negotiate with this service per 13504time unit. The time unit is specified with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> 13505configuration parameter. 13506</p> 13507 13508<p> 13509By default, a remote SMTP client can negotiate as many new TLS 13510sessions per time unit as Postfix can accept. 13511</p> 13512 13513<p> 13514To disable this feature, specify a limit of 0. Otherwise, specify 13515a limit that is at least the per-client concurrent session limit, 13516or else legitimate client sessions may be rejected. 13517</p> 13518 13519<p> 13520WARNING: The purpose of this feature is to limit abuse. It must 13521not be used to regulate legitimate mail traffic. 13522</p> 13523 13524<p> 13525This feature is available in Postfix 2.3 and later. 13526</p> 13527 13528<p> 13529Example: 13530</p> 13531 13532<pre> 13533<a href="postconf.5.html#smtpd_client_new_tls_session_rate_limit">smtpd_client_new_tls_session_rate_limit</a> = 100 13534</pre> 13535 13536 13537</DD> 13538 13539<DT><b><a name="smtpd_client_port_logging">smtpd_client_port_logging</a> 13540(default: no)</b></DT><DD> 13541 13542<p> Enable logging of the remote SMTP client port in addition to 13543the hostname and IP address. The logging format is "host[address]:port". 13544</p> 13545 13546<p> This feature is available in Postfix 2.5 and later. </p> 13547 13548 13549</DD> 13550 13551<DT><b><a name="smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a> 13552(default: 0)</b></DT><DD> 13553 13554<p> 13555The maximal number of recipient addresses that any client is allowed 13556to send to this service per time unit, regardless of whether or not 13557Postfix actually accepts those recipients. The time unit is specified 13558with the <a href="postconf.5.html#anvil_rate_time_unit">anvil_rate_time_unit</a> configuration parameter. 13559</p> 13560 13561<p> 13562By default, a client can send as many recipient addresses per time 13563unit as Postfix can accept. 13564</p> 13565 13566<p> 13567To disable this feature, specify a limit of 0. 13568</p> 13569 13570<p> 13571WARNING: The purpose of this feature is to limit abuse. It must 13572not be used to regulate legitimate mail traffic. 13573</p> 13574 13575<p> 13576This feature is available in Postfix 2.2 and later. 13577</p> 13578 13579<p> 13580Example: 13581</p> 13582 13583<pre> 13584<a href="postconf.5.html#smtpd_client_recipient_rate_limit">smtpd_client_recipient_rate_limit</a> = 1000 13585</pre> 13586 13587 13588</DD> 13589 13590<DT><b><a name="smtpd_client_restrictions">smtpd_client_restrictions</a> 13591(default: empty)</b></DT><DD> 13592 13593<p> 13594Optional restrictions that the Postfix SMTP server applies in the 13595context of a client connection request. 13596See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 13597restriction lists" for a discussion of evaluation context and time. 13598</p> 13599 13600<p> 13601The default is to allow all connection requests. 13602</p> 13603 13604<p> 13605Specify a list of restrictions, separated by commas and/or whitespace. 13606Continue long lines by starting the next line with whitespace. 13607Restrictions are applied in the order as specified; the first 13608restriction that matches wins. 13609</p> 13610 13611<p> 13612The following restrictions are specific to client hostname or 13613client network address information. 13614</p> 13615 13616<dl> 13617 13618<dt><b><a name="check_ccert_access">check_ccert_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 13619 13620<dd> Use the remote SMTP client certificate fingerprint or the public key 13621fingerprint (Postfix 2.9 and later) as lookup key for the specified 13622<a href="access.5.html">access(5)</a> database; with Postfix version 2.2, also require that the 13623remote SMTP client certificate is verified successfully. 13624The fingerprint digest algorithm is configurable via the 13625<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to 13626Postfix version 2.5). This feature is available with Postfix version 136272.2 and later. </dd> 13628 13629<dt><b><a name="check_client_access">check_client_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 13630 13631<dd>Search the specified access database for the client hostname, 13632parent domains, client IP address, or networks obtained by stripping 13633least significant octets. See the <a href="access.5.html">access(5)</a> manual page for details. </dd> 13634 13635<dt><b><a name="check_client_a_access">check_client_a_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 13636 13637<dd>Search the specified <a href="access.5.html">access(5)</a> database for the IP addresses for the 13638client hostname, and execute the corresponding action. Note: a result 13639of "OK" is not allowed for safety reasons. Instead, use DUNNO in order 13640to exclude specific hosts from blacklists. This feature is available 13641in Postfix 3.0 and later. </dd> 13642 13643<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> 13644 13645<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for the 13646client hostname, and execute the corresponding action. Note: a result 13647of "OK" is not allowed for safety reasons. Instead, use DUNNO in order 13648to exclude specific hosts from blacklists. This feature is available 13649in Postfix 2.7 and later. </dd> 13650 13651<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> 13652 13653<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers for 13654the client hostname, and execute the corresponding action. Note: a 13655result of "OK" is not allowed for safety reasons. Instead, use DUNNO 13656in order to exclude specific hosts from blacklists. This feature is 13657available in Postfix 2.7 and later. </dd> 13658 13659<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> 13660 13661<dd>Search the specified access database for the unverified reverse 13662client hostname, parent domains, client IP address, or networks 13663obtained by stripping least significant octets. See the <a href="access.5.html">access(5)</a> 13664manual page for details. Note: a result of "OK" is not allowed for 13665safety reasons. Instead, use DUNNO in order to exclude specific 13666hosts from blacklists. This feature is available in Postfix 2.6 13667and later.</dd> 13668 13669<dt><b><a name="check_reverse_client_hostname_a_access">check_reverse_client_hostname_a_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 13670 13671<dd>Search the specified <a href="access.5.html">access(5)</a> database for the IP addresses for the 13672unverified reverse client hostname, and execute the corresponding 13673action. Note: a result of "OK" is not allowed for safety reasons. 13674Instead, use DUNNO in order to exclude specific hosts from blacklists. 13675This feature is available in Postfix 3.0 and later. </dd> 13676 13677<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> 13678 13679<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for the 13680unverified reverse client hostname, and execute the corresponding 13681action. Note: a result of "OK" is not allowed for safety reasons. 13682Instead, use DUNNO in order to exclude specific hosts from blacklists. 13683This feature is available in Postfix 2.7 and later. </dd> 13684 13685<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> 13686 13687<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers for 13688the unverified reverse client hostname, and execute the corresponding 13689action. Note: a result of "OK" is not allowed for safety reasons. 13690Instead, use DUNNO in order to exclude specific hosts from blacklists. 13691This feature is available in Postfix 2.7 and later. </dd> 13692 13693<dt><b><a name="check_sasl_access">check_sasl_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 13694 13695<dd> Use the remote SMTP client SASL user name as lookup key for 13696the specified <a href="access.5.html">access(5)</a> database. The lookup key has the form 13697"username@domainname" when the <a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> parameter 13698value is non-empty. Unlike the <a href="postconf.5.html#check_client_access">check_client_access</a> feature, 13699<a href="postconf.5.html#check_sasl_access">check_sasl_access</a> does not perform matches of parent domains or IP 13700subnet ranges. This feature is available with Postfix version 2.11 13701and later. </dd> 13702 13703<dt><b><a name="permit_inet_interfaces">permit_inet_interfaces</a></b></dt> 13704 13705<dd>Permit the request when the client IP address matches 13706$<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. </dd> 13707 13708<dt><b><a name="permit_mynetworks">permit_mynetworks</a></b></dt> 13709 13710<dd>Permit the request when the client IP address matches any 13711network or network address listed in $<a href="postconf.5.html#mynetworks">mynetworks</a>. </dd> 13712 13713<dt><b><a name="permit_sasl_authenticated">permit_sasl_authenticated</a></b></dt> 13714 13715<dd> Permit the request when the client is successfully 13716authenticated via the <a href="http://tools.ietf.org/html/rfc4954">RFC 4954</a> (AUTH) protocol. </dd> 13717 13718<dt><b><a name="permit_tls_all_clientcerts">permit_tls_all_clientcerts</a></b></dt> 13719 13720<dd> Permit the request when the remote SMTP client certificate is 13721verified successfully. This option must be used only if a special 13722CA issues the certificates and only this CA is listed as trusted 13723CA. Otherwise, clients with a third-party certificate would also 13724be allowed to relay. Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" when the 13725trusted 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>, 13726to prevent Postfix from appending the system-supplied default CAs. 13727This feature is available with Postfix version 2.2.</dd> 13728 13729<dt><b><a name="permit_tls_clientcerts">permit_tls_clientcerts</a></b></dt> 13730 13731<dd>Permit the request when the remote SMTP client certificate 13732fingerprint or public key fingerprint (Postfix 2.9 and later) is 13733listed in $<a href="postconf.5.html#relay_clientcerts">relay_clientcerts</a>. 13734The fingerprint digest algorithm is configurable via the 13735<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> parameter (hard-coded as md5 prior to 13736Postfix version 2.5). This feature is available with Postfix version 137372.2. </dd> 13738 13739<dt><b><a name="reject_rbl_client">reject_rbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt> 13740 13741<dd>Reject the request when the reversed client network address is 13742listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> 13743(Postfix version 2.1 and later only). Each "<i>d</i>" is a number, 13744or a pattern inside "[]" that contains one or more ";"-separated 13745numbers or number..number ranges (Postfix version 2.8 and later). 13746If no "<i>=d.d.d.d</i>" is specified, reject the request when the 13747reversed client network address is listed with any A record under 13748<i>rbl_domain</i>. <br> 13749The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for 13750rejected requests (default: 554), the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter 13751specifies the default server reply, and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter 13752specifies tables with server replies indexed by <i>rbl_domain</i>. 13753This feature is available in Postfix 2.0 and later. </dd> 13754 13755<dt><b><a name="permit_dnswl_client">permit_dnswl_client <i>dnswl_domain=d.d.d.d</i></a></b></dt> 13756 13757<dd>Accept the request when the reversed client network address is 13758listed with the A record "<i>d.d.d.d</i>" under <i>dnswl_domain</i>. 13759Each "<i>d</i>" is a number, or a pattern inside "[]" that contains 13760one or more ";"-separated numbers or number..number ranges. 13761If no "<i>=d.d.d.d</i>" is specified, accept the request when the 13762reversed client network address is listed with any A record under 13763<i>dnswl_domain</i>. <br> For safety, <a href="postconf.5.html#permit_dnswl_client">permit_dnswl_client</a> is silently 13764ignored when it would override <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>. The 13765result is DEFER_IF_REJECT when whitelist lookup fails. This feature 13766is available in Postfix 2.8 and later. </dd> 13767 13768<dt><b><a name="reject_rhsbl_client">reject_rhsbl_client <i>rbl_domain=d.d.d.d</i></a></b></dt> 13769 13770<dd>Reject the request when the client hostname is listed with the 13771A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version 137722.1 and later only). Each "<i>d</i>" is a number, or a pattern 13773inside "[]" that contains one or more ";"-separated numbers or 13774number..number ranges (Postfix version 2.8 and later). If no 13775"<i>=d.d.d.d</i>" is specified, reject the request when the client 13776hostname is listed with 13777any A record under <i>rbl_domain</i>. See the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> 13778description above for additional RBL related configuration parameters. 13779This feature is available in Postfix 2.0 and later; with Postfix 13780version 2.8 and later, <a href="postconf.5.html#reject_rhsbl_reverse_client">reject_rhsbl_reverse_client</a> will usually 13781produce better results. </dd> 13782 13783<dt><b><a name="permit_rhswl_client">permit_rhswl_client <i>rhswl_domain=d.d.d.d</i></a></b></dt> 13784 13785<dd>Accept the request when the client hostname is listed with the 13786A record "<i>d.d.d.d</i>" under <i>rhswl_domain</i>. Each "<i>d</i>" 13787is a number, or a pattern inside "[]" that contains one or more 13788";"-separated numbers or number..number ranges. If no 13789"<i>=d.d.d.d</i>" is specified, accept the request when the client 13790hostname is listed with any A record under <i>rhswl_domain</i>. 13791<br> Caution: client name whitelisting is fragile, since the client 13792name lookup can fail due to temporary outages. Client name 13793whitelisting should be used only to reduce false positives in e.g. 13794DNS-based blocklists, and not for making access rule exceptions. 13795<br> For safety, <a href="postconf.5.html#permit_rhswl_client">permit_rhswl_client</a> is silently ignored when it 13796would override <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>. The result is DEFER_IF_REJECT 13797when whitelist lookup fails. This feature is available in Postfix 137982.8 and later. </dd> 13799 13800<dt><b><a name="reject_rhsbl_reverse_client">reject_rhsbl_reverse_client <i>rbl_domain=d.d.d.d</i></a></b></dt> 13801 13802<dd>Reject the request when the unverified reverse client hostname 13803is listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i>. 13804Each "<i>d</i>" is a number, or a pattern inside "[]" that contains 13805one or more ";"-separated numbers or number..number ranges. 13806If no "<i>=d.d.d.d</i>" is specified, reject the request when the 13807unverified reverse client hostname is listed with any A record under 13808<i>rbl_domain</i>. See the <a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> description above for 13809additional RBL related configuration parameters. This feature is 13810available in Postfix 2.8 and later. </dd> 13811 13812<dt><b><a name="reject_unknown_client_hostname">reject_unknown_client_hostname</a></b> (with Postfix < 2.3: reject_unknown_client)</dt> 13813 13814<dd>Reject the request when 1) the client IP address->name mapping 13815fails, 2) the name->address mapping fails, or 3) the name->address 13816mapping does not match the client IP address. <br> This is a 13817stronger restriction than the <a href="postconf.5.html#reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a> 13818feature, which triggers only under condition 1) above. <br> The 13819<a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response code 13820for rejected requests (default: 450). The reply is always 450 in 13821case the address->name or name->address lookup failed due to 13822a temporary problem. </dd> 13823 13824<dt><b><a name="reject_unknown_reverse_client_hostname">reject_unknown_reverse_client_hostname</a></b></dt> 13825 13826<dd>Reject the request when the client IP address has no address->name 13827mapping. <br> This is a weaker restriction than the 13828<a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> feature, which requires not only 13829that the address->name and name->address mappings exist, but 13830also that the two mappings reproduce the client IP address. <br> 13831The <a href="postconf.5.html#unknown_client_reject_code">unknown_client_reject_code</a> parameter specifies the response 13832code for rejected requests (default: 450). The reply is always 450 13833in case the address->name lookup failed due to a temporary 13834problem. <br> This feature is available in Postfix 2.3 and 13835later. </dd> 13836 13837</dl> 13838 13839<p> 13840In addition, you can use any of the following <a name="generic"> 13841generic</a> restrictions. These restrictions are applicable in 13842any SMTP command context. 13843</p> 13844 13845<dl> 13846 13847<dt><b><a name="check_policy_service">check_policy_service <i>servername</i></a></b></dt> 13848 13849<dd>Query the specified policy server. See the <a href="SMTPD_POLICY_README.html">SMTPD_POLICY_README</a> 13850document for details. This feature is available in Postfix 2.1 13851and later. </dd> 13852 13853<dt><b><a name="defer">defer</a></b></dt> 13854 13855<dd>Defer the request. The client is told to try again later. This 13856restriction is useful at the end of a restriction list, to make 13857the default policy explicit. <br> The <a href="postconf.5.html#defer_code">defer_code</a> parameter specifies 13858the SMTP server reply code (default: 450).</dd> 13859 13860<dt><b><a name="defer_if_permit">defer_if_permit</a></b></dt> 13861 13862<dd>Defer the request if some later restriction would result in an 13863explicit or implicit PERMIT action. This is useful when a blacklisting 13864feature fails due to a temporary problem. This feature is available 13865in Postfix version 2.1 and later. </dd> 13866 13867<dt><b><a name="defer_if_reject">defer_if_reject</a></b></dt> 13868 13869<dd>Defer the request if some later restriction would result in a 13870REJECT action. This is useful when a whitelisting feature fails 13871due to a temporary problem. This feature is available in Postfix 13872version 2.1 and later. </dd> 13873 13874<dt><b><a name="permit">permit</a></b></dt> 13875 13876<dd>Permit the request. This restriction is useful at the end of 13877a restriction list, to make the default policy explicit.</dd> 13878 13879<dt><b><a name="reject_multi_recipient_bounce">reject_multi_recipient_bounce</a></b></dt> 13880 13881<dd>Reject the request when the envelope sender is the null address, 13882and the message has multiple envelope recipients. This usage has 13883rare but legitimate applications: under certain conditions, 13884multi-recipient mail that was posted with the DSN option NOTIFY=NEVER 13885may be forwarded with the null sender address. 13886<br> Note: this restriction can only work reliably 13887when used in <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> or 13888<a href="postconf.5.html#smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a>, because the total number of 13889recipients is not known at an earlier stage of the SMTP conversation. 13890Use at the RCPT stage will only reject the second etc. recipient. 13891<br> 13892The <a href="postconf.5.html#multi_recipient_bounce_reject_code">multi_recipient_bounce_reject_code</a> parameter specifies the 13893response code for rejected requests (default: 550). This feature 13894is available in Postfix 2.1 and later. </dd> 13895 13896<dt><b><a name="reject_plaintext_session">reject_plaintext_session</a></b></dt> 13897 13898<dd>Reject the request when the connection is not encrypted. This 13899restriction should not be used before the client has had a chance 13900to negotiate encryption with the AUTH or STARTTLS commands. 13901<br> 13902The <a href="postconf.5.html#plaintext_reject_code">plaintext_reject_code</a> parameter specifies the response 13903code for rejected requests (default: 450). This feature is available 13904in Postfix 2.3 and later. </dd> 13905 13906<dt><b><a name="reject_unauth_pipelining">reject_unauth_pipelining</a></b></dt> 13907 13908<dd>Reject the request when the client sends SMTP commands ahead 13909of time where it is not allowed, or when the client sends SMTP 13910commands ahead of time without knowing that Postfix actually supports 13911ESMTP command pipelining. This stops mail from bulk mail software 13912that improperly uses ESMTP command pipelining in order to speed up 13913deliveries. 13914<br> With Postfix 2.6 and later, the SMTP server sets a per-session 13915flag whenever it detects illegal pipelining, including pipelined 13916HELO or EHLO commands. The <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> feature simply 13917tests whether the flag was set at any point in time during the 13918session. 13919<br> With older Postfix versions, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> checks 13920the current status of the input read queue, and its usage is not 13921recommended in contexts other than <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a>. </dd> 13922 13923<dt><b><a name="reject">reject</a></b></dt> 13924 13925<dd>Reject the request. This restriction is useful at the end of 13926a restriction list, to make the default policy explicit. The 13927<a href="postconf.5.html#reject_code">reject_code</a> configuration parameter specifies the response code for 13928rejected requests (default: 554).</dd> 13929 13930<dt><b><a name="sleep">sleep <i>seconds</i></a></b></dt> 13931 13932<dd>Pause for the specified number of seconds and proceed with 13933the next restriction in the list, if any. This may stop zombie 13934mail when used as: 13935<pre> 13936/etc/postfix/<a href="postconf.5.html">main.cf</a>: 13937 <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> = 13938 sleep 1, <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> 13939 <a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = no 13940</pre> 13941This feature is available in Postfix 2.3. </dd> 13942 13943<dt><b><a name="warn_if_reject">warn_if_reject</a></b></dt> 13944 13945<dd> A safety net for testing. When "<a href="postconf.5.html#warn_if_reject">warn_if_reject</a>" is placed 13946before a reject-type restriction, access table query, or 13947<a href="postconf.5.html#check_policy_service">check_policy_service</a> query, this logs a "reject_warning" message 13948instead of rejecting a request (when a reject-type restriction fails 13949due to a temporary error, this logs a "reject_warning" message for 13950any implicit "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" actions that would normally prevent 13951mail from being accepted by some later access restriction). This 13952feature has no effect on <a href="postconf.5.html#defer_if_reject">defer_if_reject</a> restrictions. </dd> 13953 13954</dl> 13955 13956<p> 13957Other restrictions that are valid in this context: 13958</p> 13959 13960<ul> 13961 13962<li> SMTP command specific restrictions that are described under 13963the <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 13964<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameters. When helo, sender or 13965recipient restrictions are listed under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, 13966they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that 13967$<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> is evaluated at the time of the RCPT TO 13968command. 13969 13970</ul> 13971 13972<p> 13973Example: 13974</p> 13975 13976<pre> 13977<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> 13978</pre> 13979 13980 13981</DD> 13982 13983<DT><b><a name="smtpd_command_filter">smtpd_command_filter</a> 13984(default: empty)</b></DT><DD> 13985 13986<p> A mechanism to transform commands from remote SMTP clients. 13987This is a last-resort tool to work around client commands that break 13988interoperability with the Postfix SMTP server. Other uses involve 13989fault injection to test Postfix's handling of invalid commands. 13990</p> 13991 13992<p> Specify the name of a "<a href="DATABASE_README.html">type:table</a>" lookup table. The search 13993string is the SMTP command as received from the remote SMTP client, 13994except that initial whitespace and the trailing <CR><LF> 13995are removed. The result value is executed by the Postfix SMTP 13996server. </p> 13997 13998<p> There is no need to use <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> for the following 13999cases: </p> 14000 14001<ul> 14002 14003<li> <p> Use "<a href="postconf.5.html#resolve_numeric_domain">resolve_numeric_domain</a> = yes" to accept 14004"<i>user@ipaddress</i>". </p> 14005 14006<li> <p> Postfix already accepts the correct form 14007"<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> 14008to translate these into domain names if necessary. </p> 14009 14010<li> <p> Use "<a href="postconf.5.html#strict_rfc821_envelopes">strict_rfc821_envelopes</a> = no" to accept "RCPT TO:<<i>User 14011Name <user@example.com>></i>". Postfix will ignore the "<i>User 14012Name</i>" part and deliver to the <i><user@example.com></i> address. 14013</p> 14014 14015</ul> 14016 14017<p> Examples of problems that can be solved with the <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> 14018feature: </p> 14019 14020<pre> 14021/etc/postfix/<a href="postconf.5.html">main.cf</a>: 14022 <a href="postconf.5.html#smtpd_command_filter">smtpd_command_filter</a> = <a href="pcre_table.5.html">pcre</a>:/etc/postfix/command_filter 14023</pre> 14024 14025<pre> 14026/etc/postfix/command_filter: 14027 # Work around clients that send malformed HELO commands. 14028 /^HELO\s*$/ HELO domain.invalid 14029</pre> 14030 14031<pre> 14032 # Work around clients that send empty lines. 14033 /^\s*$/ NOOP 14034</pre> 14035 14036<pre> 14037 # Work around clients that send RCPT TO:<'user@domain'>. 14038 # WARNING: do not lose the parameters that follow the address. 14039 /^(RCPT\s+TO:\s*<)'([^[:space:]]+)'(>.*)/ $1$2$3 14040</pre> 14041 14042<pre> 14043 # Append XVERP to MAIL FROM commands to request VERP-style delivery. 14044 # See <a href="VERP_README.html">VERP_README</a> for more information on how to use Postfix VERP. 14045 /^(MAIL FROM:\s*<listname@example\.com>.*)/ $1 XVERP 14046</pre> 14047 14048<pre> 14049 # Bounce-never mail sink. Use <a href="postconf.5.html#notify_classes">notify_classes</a>=bounce,resource,software 14050 # to send bounced mail to the postmaster (with message body removed). 14051 /^(RCPT\s+TO:\s*<.*>.*)\s+NOTIFY=\S+(.*)/ $1 NOTIFY=NEVER$2 14052 /^(RCPT\s+TO:.*)/ $1 NOTIFY=NEVER 14053</pre> 14054 14055<p> This feature is available in Postfix 2.7. </p> 14056 14057 14058</DD> 14059 14060<DT><b><a name="smtpd_data_restrictions">smtpd_data_restrictions</a> 14061(default: empty)</b></DT><DD> 14062 14063<p> 14064Optional access restrictions that the Postfix SMTP server applies 14065in the context of the SMTP DATA command. 14066See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 14067restriction lists" for a discussion of evaluation context and time. 14068</p> 14069 14070<p> 14071This feature is available in Postfix 2.0 and later. 14072</p> 14073 14074<p> 14075Specify a list of restrictions, separated by commas and/or whitespace. 14076Continue long lines by starting the next line with whitespace. 14077Restrictions are applied in the order as specified; the first 14078restriction that matches wins. 14079</p> 14080 14081<p> 14082The following restrictions are valid in this context: 14083</p> 14084 14085<ul> 14086 14087<li><a href="#generic">Generic</a> restrictions that can be used 14088in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 14089 14090<li>SMTP command specific restrictions described under 14091<a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>, <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>, 14092<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>. 14093 14094<li>However, no recipient information is available in the case of 14095multi-recipient mail. Acting on only one recipient would be misleading, 14096because any decision will affect all recipients equally. Acting on 14097all recipients would require a possibly very large amount of memory, 14098and would also be misleading for the reasons mentioned before. 14099 14100</ul> 14101 14102<p> 14103Examples: 14104</p> 14105 14106<pre> 14107<a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> = <a href="postconf.5.html#reject_unauth_pipelining">reject_unauth_pipelining</a> 14108<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> 14109</pre> 14110 14111 14112</DD> 14113 14114<DT><b><a name="smtpd_delay_open_until_valid_rcpt">smtpd_delay_open_until_valid_rcpt</a> 14115(default: yes)</b></DT><DD> 14116 14117<p> Postpone the start of an SMTP mail transaction until a valid 14118RCPT TO command is received. Specify "no" to create a mail transaction 14119as soon as the Postfix SMTP server receives a valid MAIL FROM 14120command. </p> 14121 14122<p> With sites that reject lots of mail, the default setting reduces 14123the use of 14124disk, CPU and memory resources. The downside is that rejected 14125recipients are logged with NOQUEUE instead of a mail transaction 14126ID. This complicates the logfile analysis of multi-recipient mail. 14127</p> 14128 14129<p> This feature is available in Postfix 2.3 and later. </p> 14130 14131 14132</DD> 14133 14134<DT><b><a name="smtpd_delay_reject">smtpd_delay_reject</a> 14135(default: yes)</b></DT><DD> 14136 14137<p> 14138Wait until the RCPT TO command before evaluating 14139$<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 14140$<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, or wait until the ETRN command before 14141evaluating $<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>. 14142</p> 14143 14144<p> 14145This feature is turned on by default because some clients apparently 14146mis-behave when the Postfix SMTP server rejects commands before 14147RCPT TO. 14148</p> 14149 14150<p> 14151The default setting has one major benefit: it allows Postfix to log 14152recipient address information when rejecting a client name/address 14153or sender address, so that it is possible to find out whose mail 14154is being rejected. 14155</p> 14156 14157 14158</DD> 14159 14160<DT><b><a name="smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a> 14161(default: empty)</b></DT><DD> 14162 14163<p> Lookup tables, indexed by the remote SMTP client address, with 14164case insensitive lists of EHLO keywords (pipelining, starttls, auth, 14165etc.) that the Postfix SMTP server will not send in the EHLO response 14166to a 14167remote SMTP client. See <a href="postconf.5.html#smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> for details. 14168The tables are not searched by hostname for robustness reasons. </p> 14169 14170<p> 14171Specify zero or more "type:name" lookup tables, separated by 14172whitespace or comma. Tables will be searched in the specified order 14173until a match is found. 14174</p> 14175 14176<p> This feature is available in Postfix 2.2 and later. </p> 14177 14178 14179</DD> 14180 14181<DT><b><a name="smtpd_discard_ehlo_keywords">smtpd_discard_ehlo_keywords</a> 14182(default: empty)</b></DT><DD> 14183 14184<p> A case insensitive list of EHLO keywords (pipelining, starttls, 14185auth, etc.) that the Postfix SMTP server will not send in the EHLO 14186response 14187to a remote SMTP client. </p> 14188 14189<p> This feature is available in Postfix 2.2 and later. </p> 14190 14191<p> Notes: </p> 14192 14193<ul> 14194 14195<li> <p> Specify the <b>silent-discard</b> pseudo keyword to prevent 14196this action from being logged. </p> 14197 14198<li> <p> Use the <a href="postconf.5.html#smtpd_discard_ehlo_keyword_address_maps">smtpd_discard_ehlo_keyword_address_maps</a> feature 14199to discard EHLO keywords selectively. </p> 14200 14201</ul> 14202 14203 14204</DD> 14205 14206<DT><b><a name="smtpd_dns_reply_filter">smtpd_dns_reply_filter</a> 14207(default: empty)</b></DT><DD> 14208 14209<p> Optional filter for Postfix SMTP server DNS lookup results. 14210See <a href="postconf.5.html#smtp_dns_reply_filter">smtp_dns_reply_filter</a> for details including an example. 14211</p> 14212 14213<p> This feature is available in Postfix 3.0 and later. </p> 14214 14215 14216</DD> 14217 14218<DT><b><a name="smtpd_end_of_data_restrictions">smtpd_end_of_data_restrictions</a> 14219(default: empty)</b></DT><DD> 14220 14221<p> Optional access restrictions that the Postfix SMTP server 14222applies in the context of the SMTP END-OF-DATA command. 14223See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 14224restriction lists" for a discussion of evaluation context and time. 14225</p> 14226 14227<p> This feature is available in Postfix 2.2 and later. </p> 14228 14229<p> See <a href="postconf.5.html#smtpd_data_restrictions">smtpd_data_restrictions</a> for details and limitations. </p> 14230 14231 14232</DD> 14233 14234<DT><b><a name="smtpd_enforce_tls">smtpd_enforce_tls</a> 14235(default: no)</b></DT><DD> 14236 14237<p> Mandatory TLS: announce STARTTLS support to remote SMTP clients, 14238and require that clients use TLS encryption. According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> 14239this MUST NOT be applied in case of a publicly-referenced SMTP 14240server. This option is therefore off by default. </p> 14241 14242<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> 14243 14244<p> Note 2: when invoked via "<b>sendmail -bs</b>", Postfix will never offer 14245STARTTLS due to insufficient privileges to access the server private 14246key. This is intended behavior. </p> 14247 14248<p> This feature is available in Postfix 2.2 and later. With 14249Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p> 14250 14251 14252</DD> 14253 14254<DT><b><a name="smtpd_error_sleep_time">smtpd_error_sleep_time</a> 14255(default: 1s)</b></DT><DD> 14256 14257<p>With Postfix version 2.1 and later: the SMTP server response delay after 14258a client has made more than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors, and 14259fewer than $<a href="postconf.5.html#smtpd_hard_error_limit">smtpd_hard_error_limit</a> errors, without delivering mail. 14260</p> 14261 14262<p>With Postfix version 2.0 and earlier: the SMTP server delay before 14263sending a reject (4xx or 5xx) response, when the client has made 14264fewer than $<a href="postconf.5.html#smtpd_soft_error_limit">smtpd_soft_error_limit</a> errors without delivering 14265mail. </p> 14266 14267 14268</DD> 14269 14270<DT><b><a name="smtpd_etrn_restrictions">smtpd_etrn_restrictions</a> 14271(default: empty)</b></DT><DD> 14272 14273<p> 14274Optional restrictions that the Postfix SMTP server applies in the 14275context of a client ETRN command. 14276See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 14277restriction lists" for a discussion of evaluation context and time. 14278</p> 14279 14280<p> 14281The Postfix ETRN implementation accepts only destinations that are 14282eligible for the Postfix "fast flush" service. See the <a href="ETRN_README.html">ETRN_README</a> 14283file for details. 14284</p> 14285 14286<p> 14287Specify a list of restrictions, separated by commas and/or whitespace. 14288Continue long lines by starting the next line with whitespace. 14289Restrictions are applied in the order as specified; the first 14290restriction that matches wins. 14291</p> 14292 14293<p> 14294The following restrictions are specific to the domain name information 14295received with the ETRN command. 14296</p> 14297 14298<dl> 14299 14300<dt><b><a name="check_etrn_access">check_etrn_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 14301 14302<dd>Search the specified access database for the ETRN domain name 14303or its parent domains. See the <a href="access.5.html">access(5)</a> manual page for details. 14304</dd> 14305 14306</dl> 14307 14308<p> 14309Other restrictions that are valid in this context: 14310</p> 14311 14312<ul> 14313 14314<li><a href="#generic">Generic</a> restrictions that can be used 14315in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 14316 14317<li>SMTP command specific restrictions described under 14318<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>. 14319 14320</ul> 14321 14322<p> 14323Example: 14324</p> 14325 14326<pre> 14327<a href="postconf.5.html#smtpd_etrn_restrictions">smtpd_etrn_restrictions</a> = <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, reject 14328</pre> 14329 14330 14331</DD> 14332 14333<DT><b><a name="smtpd_expansion_filter">smtpd_expansion_filter</a> 14334(default: see "postconf -d" output)</b></DT><DD> 14335 14336<p> 14337What characters are allowed in $name expansions of RBL reply 14338templates. Characters not in the allowed set are replaced by "_". 14339Use C like escapes to specify special characters such as whitespace. 14340</p> 14341 14342<p> 14343This parameter is not subjected to $parameter expansion. 14344</p> 14345 14346<p> 14347This feature is available in Postfix 2.0 and later. 14348</p> 14349 14350 14351</DD> 14352 14353<DT><b><a name="smtpd_forbidden_commands">smtpd_forbidden_commands</a> 14354(default: CONNECT, GET, POST)</b></DT><DD> 14355 14356<p> 14357List of commands that cause the Postfix SMTP server to immediately 14358terminate the session with a 221 code. This can be used to disconnect 14359clients that obviously attempt to abuse the system. In addition to the 14360commands listed in this parameter, commands that follow the "Label:" 14361format of message headers will also cause a disconnect. 14362</p> 14363 14364<p> 14365This feature is available in Postfix 2.2 and later. 14366</p> 14367 14368 14369</DD> 14370 14371<DT><b><a name="smtpd_hard_error_limit">smtpd_hard_error_limit</a> 14372(default: normal: 20, overload: 1)</b></DT><DD> 14373 14374<p> 14375The maximal number of errors a remote SMTP client is allowed to 14376make without delivering mail. The Postfix SMTP server disconnects 14377when the limit is exceeded. Normally the default limit is 20, but 14378it changes under overload to just 1. With Postfix 2.5 and earlier, 14379the SMTP server always allows up to 20 errors by default. 14380 14381</p> 14382 14383 14384</DD> 14385 14386<DT><b><a name="smtpd_helo_required">smtpd_helo_required</a> 14387(default: no)</b></DT><DD> 14388 14389<p> 14390Require that a remote SMTP client introduces itself with the HELO 14391or EHLO command before sending the MAIL command or other commands 14392that require EHLO negotiation. 14393</p> 14394 14395<p> 14396Example: 14397</p> 14398 14399<pre> 14400<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes 14401</pre> 14402 14403 14404</DD> 14405 14406<DT><b><a name="smtpd_helo_restrictions">smtpd_helo_restrictions</a> 14407(default: empty)</b></DT><DD> 14408 14409<p> 14410Optional restrictions that the Postfix SMTP server applies in the 14411context of a client HELO command. 14412See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 14413restriction lists" for a discussion of evaluation context and time. 14414</p> 14415 14416<p> 14417The default is to permit everything. 14418</p> 14419 14420<p> Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this 14421restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can 14422simply skip <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> by not sending HELO or EHLO). 14423</p> 14424 14425<p> 14426Specify a list of restrictions, separated by commas and/or whitespace. 14427Continue long lines by starting the next line with whitespace. 14428Restrictions are applied in the order as specified; the first 14429restriction that matches wins. 14430</p> 14431 14432<p> 14433The following restrictions are specific to the hostname information 14434received with the HELO or EHLO command. 14435</p> 14436 14437<dl> 14438 14439<dt><b><a name="check_helo_access">check_helo_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 14440 14441<dd>Search the specified <a href="access.5.html">access(5)</a> database for the HELO or EHLO 14442hostname or parent domains, and execute the corresponding action. 14443Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this 14444restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can 14445simply skip <a href="postconf.5.html#check_helo_access">check_helo_access</a> by not sending HELO or EHLO). </dd> 14446 14447<dt><b><a name="check_helo_a_access">check_helo_a_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 14448 14449<dd>Search the specified <a href="access.5.html">access(5)</a> database for the IP addresses for 14450the HELO or EHLO hostname, and execute the corresponding action. 14451Note 1: a result of "OK" is not allowed for safety reasons. Instead, 14452use DUNNO in order to exclude specific hosts from blacklists. Note 144532: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this 14454restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can 14455simply skip check_helo_a_access by not sending HELO or EHLO). This 14456feature is available in Postfix 3.0 and later. 14457</dd> 14458 14459<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> 14460 14461<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for 14462the HELO or EHLO hostname, and execute the corresponding action. 14463Note 1: a result of "OK" is not allowed for safety reasons. Instead, 14464use DUNNO in order to exclude specific hosts from blacklists. Note 144652: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this 14466restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can 14467simply skip <a href="postconf.5.html#check_helo_mx_access">check_helo_mx_access</a> by not sending HELO or EHLO). This 14468feature is available in Postfix 2.1 and later. 14469</dd> 14470 14471<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> 14472 14473<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers 14474for the HELO or EHLO hostname, and execute the corresponding action. 14475Note 1: a result of "OK" is not allowed for safety reasons. Instead, 14476use DUNNO in order to exclude specific hosts from blacklists. Note 144772: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this 14478restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can 14479simply skip <a href="postconf.5.html#check_helo_ns_access">check_helo_ns_access</a> by not sending HELO or EHLO). This 14480feature is available in Postfix 2.1 and later. 14481</dd> 14482 14483<dt><b><a name="reject_invalid_helo_hostname">reject_invalid_helo_hostname</a></b> (with Postfix < 2.3: reject_invalid_hostname)</dt> 14484 14485<dd>Reject the request when the HELO or EHLO hostname is malformed. 14486Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce 14487this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can simply 14488skip <a href="postconf.5.html#reject_invalid_helo_hostname">reject_invalid_helo_hostname</a> by not sending HELO or EHLO). 14489<br> The <a href="postconf.5.html#invalid_hostname_reject_code">invalid_hostname_reject_code</a> specifies the response code 14490for rejected requests (default: 501).</dd> 14491 14492<dt><b><a name="reject_non_fqdn_helo_hostname">reject_non_fqdn_helo_hostname</a></b> (with Postfix < 2.3: reject_non_fqdn_hostname)</dt> 14493 14494<dd>Reject the request when the HELO or EHLO hostname is not in 14495fully-qualified domain or address literal form, as required by the 14496RFC. Note: specify 14497"<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully enforce this restriction 14498(without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a client can simply skip 14499<a href="postconf.5.html#reject_non_fqdn_helo_hostname">reject_non_fqdn_helo_hostname</a> by not sending HELO or EHLO). <br> 14500The <a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for 14501rejected requests (default: 504).</dd> 14502 14503<dt><b><a name="reject_rhsbl_helo">reject_rhsbl_helo <i>rbl_domain=d.d.d.d</i></a></b></dt> 14504 14505<dd>Reject the request when the HELO or EHLO hostname is 14506listed with the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> 14507(Postfix version 2.1 and later only). Each "<i>d</i>" is a number, 14508or a pattern inside "[]" that contains one or more ";"-separated 14509numbers or number..number ranges (Postfix version 2.8 and later). 14510If no "<i>=d.d.d.d</i>" is 14511specified, reject the request when the HELO or EHLO hostname is 14512listed with any A record under <i>rbl_domain</i>. See the 14513<a href="postconf.5.html#reject_rbl_client">reject_rbl_client</a> description for additional RBL related configuration 14514parameters. Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully 14515enforce this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a 14516client can simply skip <a href="postconf.5.html#reject_rhsbl_helo">reject_rhsbl_helo</a> by not sending HELO or 14517EHLO). This feature is available in Postfix 2.0 14518and later. </dd> 14519 14520<dt><b><a name="reject_unknown_helo_hostname">reject_unknown_helo_hostname</a></b> (with Postfix < 2.3: reject_unknown_hostname)</dt> 14521 14522<dd>Reject the request when the HELO or EHLO hostname has no DNS A 14523or MX record. <br> The reply is specified with the 14524<a href="postconf.5.html#unknown_hostname_reject_code">unknown_hostname_reject_code</a> parameter (default: 450) or 14525<a href="postconf.5.html#unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a> (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). 14526See the respective parameter descriptions for details. <br> 14527Note: specify "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes" to fully 14528enforce this restriction (without "<a href="postconf.5.html#smtpd_helo_required">smtpd_helo_required</a> = yes", a 14529client can simply skip <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> by not sending 14530HELO or EHLO). </dd> 14531 14532</dl> 14533 14534<p> 14535Other restrictions that are valid in this context: 14536</p> 14537 14538<ul> 14539 14540<li> <a href="#generic">Generic</a> restrictions that can be used 14541in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 14542 14543<li> Client hostname or network address specific restrictions 14544described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 14545 14546<li> SMTP command specific restrictions described under 14547<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 14548sender or recipient restrictions are listed under <a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a>, 14549they have effect only with "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes", so that 14550$<a href="postconf.5.html#smtpd_helo_restrictions">smtpd_helo_restrictions</a> is evaluated at the time of the RCPT TO 14551command. 14552 14553</ul> 14554 14555<p> 14556Examples: 14557</p> 14558 14559<pre> 14560<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> 14561<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> 14562</pre> 14563 14564 14565</DD> 14566 14567<DT><b><a name="smtpd_history_flush_threshold">smtpd_history_flush_threshold</a> 14568(default: 100)</b></DT><DD> 14569 14570<p> 14571The maximal number of lines in the Postfix SMTP server command history 14572before it is flushed upon receipt of EHLO, RSET, or end of DATA. 14573</p> 14574 14575 14576</DD> 14577 14578<DT><b><a name="smtpd_junk_command_limit">smtpd_junk_command_limit</a> 14579(default: normal: 100, overload: 1)</b></DT><DD> 14580 14581<p> 14582The number of junk commands (NOOP, VRFY, ETRN or RSET) that a remote 14583SMTP client can send before the Postfix SMTP server starts to 14584increment the error counter with each junk command. The junk 14585command count is reset after mail is delivered. See also the 14586<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 14587parameters. Normally the default limit is 100, but it changes under 14588overload to just 1. With Postfix 2.5 and earlier, the SMTP server 14589always allows up to 100 junk commands by default. </p> 14590 14591 14592</DD> 14593 14594<DT><b><a name="smtpd_log_access_permit_actions">smtpd_log_access_permit_actions</a> 14595(default: empty)</b></DT><DD> 14596 14597<p> Enable logging of the named "permit" actions in SMTP server 14598access lists (by default, the SMTP server logs "reject" actions but 14599not "permit" actions). This feature does not affect conditional 14600actions such as "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>". </p> 14601 14602<p> Specify a list of "permit" action names, "/file/name" or 14603"<a href="DATABASE_README.html">type:table</a>" patterns, separated by commas and/or whitespace. The 14604list is matched left to right, and the search stops on the first 14605match. A "/file/name" pattern is replaced by its contents; a 14606"<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a name matches a lookup 14607key (the lookup result is ignored). Continue long lines by starting 14608the next line with whitespace. Specify "!pattern" to exclude a name 14609from the list. </p> 14610 14611<p> Examples: </p> 14612 14613<pre> 14614/etc/postfix/<a href="postconf.5.html">main.cf</a>: 14615 # Log all "permit" actions. 14616 <a href="postconf.5.html#smtpd_log_access_permit_actions">smtpd_log_access_permit_actions</a> = <a href="DATABASE_README.html#types">static</a>:all 14617</pre> 14618 14619<pre> 14620/etc/postfix/<a href="postconf.5.html">main.cf</a>: 14621 # Log "<a href="postconf.5.html#permit_dnswl_client">permit_dnswl_client</a>" only. 14622 <a href="postconf.5.html#smtpd_log_access_permit_actions">smtpd_log_access_permit_actions</a> = <a href="postconf.5.html#permit_dnswl_client">permit_dnswl_client</a> 14623</pre> 14624 14625<p> This feature is available in Postfix 2.10 and later. </p> 14626 14627 14628</DD> 14629 14630<DT><b><a name="smtpd_milters">smtpd_milters</a> 14631(default: empty)</b></DT><DD> 14632 14633<p> A list of Milter (mail filter) applications for new mail that 14634arrives via the Postfix <a href="smtpd.8.html">smtpd(8)</a> server. Specify space or comma as 14635separator. See the <a href="MILTER_README.html">MILTER_README</a> document for details. </p> 14636 14637<p> This feature is available in Postfix 2.3 and later. </p> 14638 14639 14640</DD> 14641 14642<DT><b><a name="smtpd_noop_commands">smtpd_noop_commands</a> 14643(default: empty)</b></DT><DD> 14644 14645<p> 14646List of commands that the Postfix SMTP server replies to with "250 14647Ok", without doing any syntax checks and without changing state. 14648This list overrides any commands built into the Postfix SMTP server. 14649</p> 14650 14651 14652</DD> 14653 14654<DT><b><a name="smtpd_null_access_lookup_key">smtpd_null_access_lookup_key</a> 14655(default: <>)</b></DT><DD> 14656 14657<p> 14658The lookup key to be used in SMTP <a href="access.5.html">access(5)</a> tables instead of the 14659null sender address. 14660</p> 14661 14662 14663</DD> 14664 14665<DT><b><a name="smtpd_peername_lookup">smtpd_peername_lookup</a> 14666(default: yes)</b></DT><DD> 14667 14668<p> Attempt to look up the remote SMTP client hostname, and verify that 14669the name matches the client IP address. A client name is set to 14670"unknown" when it cannot be looked up or verified, or when name 14671lookup is disabled. Turning off name lookup reduces delays due to 14672DNS lookup and increases the maximal inbound delivery rate. </p> 14673 14674<p> This feature is available in Postfix 2.3 and later. </p> 14675 14676 14677</DD> 14678 14679<DT><b><a name="smtpd_per_record_deadline">smtpd_per_record_deadline</a> 14680(default: normal: no, overload: yes)</b></DT><DD> 14681 14682<p> Change the behavior of the <a href="postconf.5.html#smtpd_timeout">smtpd_timeout</a> and <a href="postconf.5.html#smtpd_starttls_timeout">smtpd_starttls_timeout</a> 14683time limits, from a 14684time limit per read or write system call, to a time limit to send 14685or receive a complete record (an SMTP command line, SMTP response 14686line, SMTP message content line, or TLS protocol message). This 14687limits the impact from hostile peers that trickle data one byte at 14688a time. </p> 14689 14690<p> Note: when per-record deadlines are enabled, a short timeout 14691may cause problems with TLS over very slow network connections. 14692The reasons are that a TLS protocol message can be up to 16 kbytes 14693long (with TLSv1), and that an entire TLS protocol message must be 14694sent or received within the per-record deadline. </p> 14695 14696<p> This feature is available in Postfix 2.9 and later. With older 14697Postfix releases, the behavior is as if this parameter is set to 14698"no". </p> 14699 14700 14701</DD> 14702 14703<DT><b><a name="smtpd_policy_service_default_action">smtpd_policy_service_default_action</a> 14704(default: 451 4.3.5 Server configuration problem)</b></DT><DD> 14705 14706<p> The default action when an SMTPD policy service request fails. 14707Specify "DUNNO" to behave as if the failed SMTPD policy service 14708request was not sent, and to continue processing other access 14709restrictions, if any. </p> 14710 14711<p> Limitations: </p> 14712 14713<ul> 14714 14715<li> <p> This parameter may specify any value that would be a valid 14716SMTPD policy server response (or <a href="access.5.html">access(5)</a> map lookup result). An 14717<a href="access.5.html">access(5)</a> map or policy server in this parameter value may need to 14718be declared in advance with a restriction_class setting. </p> 14719 14720<li> <p> If the specified action invokes another <a href="postconf.5.html#check_policy_service">check_policy_service</a> 14721request, that request will have the built-in default action. </p> 14722 14723</ul> 14724 14725<p> This feature is available in Postfix 3.0 and later. </p> 14726 14727 14728</DD> 14729 14730<DT><b><a name="smtpd_policy_service_max_idle">smtpd_policy_service_max_idle</a> 14731(default: 300s)</b></DT><DD> 14732 14733<p> 14734The time after which an idle SMTPD policy service connection is 14735closed. 14736</p> 14737 14738<p> 14739This feature is available in Postfix 2.1 and later. 14740</p> 14741 14742 14743</DD> 14744 14745<DT><b><a name="smtpd_policy_service_max_ttl">smtpd_policy_service_max_ttl</a> 14746(default: 1000s)</b></DT><DD> 14747 14748<p> 14749The time after which an active SMTPD policy service connection is 14750closed. 14751</p> 14752 14753<p> 14754This feature is available in Postfix 2.1 and later. 14755</p> 14756 14757 14758</DD> 14759 14760<DT><b><a name="smtpd_policy_service_policy_context">smtpd_policy_service_policy_context</a> 14761(default: empty)</b></DT><DD> 14762 14763<p> Optional information that the Postfix SMTP server specifies in 14764the "policy_context" attribute of a policy service request (originally, 14765to share the same service endpoint among multiple <a href="postconf.5.html#check_policy_service">check_policy_service</a> 14766clients). </p> 14767 14768<p> 14769This feature is available in Postfix 3.1 and later. 14770</p> 14771 14772 14773</DD> 14774 14775<DT><b><a name="smtpd_policy_service_request_limit">smtpd_policy_service_request_limit</a> 14776(default: 0)</b></DT><DD> 14777 14778<p> 14779The maximal number of requests per SMTPD policy service connection, 14780or zero (no limit). Once a connection reaches this limit, the 14781connection is closed and the next request will be sent over a new 14782connection. This is a workaround to avoid error-recovery delays 14783with policy servers that cannot maintain a persistent connection. 14784</p> 14785 14786<p> 14787This feature is available in Postfix 3.0 and later. 14788</p> 14789 14790 14791</DD> 14792 14793<DT><b><a name="smtpd_policy_service_retry_delay">smtpd_policy_service_retry_delay</a> 14794(default: 1s)</b></DT><DD> 14795 14796<p> The delay between attempts to resend a failed SMTPD policy 14797service request. Specify a value greater than zero. </p> 14798 14799<p> This feature is available in Postfix 3.0 and later. </p> 14800 14801 14802</DD> 14803 14804<DT><b><a name="smtpd_policy_service_timeout">smtpd_policy_service_timeout</a> 14805(default: 100s)</b></DT><DD> 14806 14807<p> 14808The time limit for connecting to, writing to, or receiving from a 14809delegated SMTPD policy server. 14810</p> 14811 14812<p> 14813This feature is available in Postfix 2.1 and later. 14814</p> 14815 14816 14817</DD> 14818 14819<DT><b><a name="smtpd_policy_service_try_limit">smtpd_policy_service_try_limit</a> 14820(default: 2)</b></DT><DD> 14821 14822<p> The maximal number of attempts to send an SMTPD policy service 14823request before giving up. Specify a value greater than zero. </p> 14824 14825<p> This feature is available in Postfix 3.0 and later. </p> 14826 14827 14828</DD> 14829 14830<DT><b><a name="smtpd_proxy_ehlo">smtpd_proxy_ehlo</a> 14831(default: $<a href="postconf.5.html#myhostname">myhostname</a>)</b></DT><DD> 14832 14833<p> 14834How the Postfix SMTP server announces itself to the proxy filter. 14835By default, the Postfix hostname is used. 14836</p> 14837 14838<p> 14839This feature is available in Postfix 2.1 and later. 14840</p> 14841 14842 14843</DD> 14844 14845<DT><b><a name="smtpd_proxy_filter">smtpd_proxy_filter</a> 14846(default: empty)</b></DT><DD> 14847 14848<p> The hostname and TCP port of the mail filtering proxy server. 14849The proxy receives all mail from the Postfix SMTP server, and is 14850supposed to give the result to another Postfix SMTP server process. 14851</p> 14852 14853<p> Specify "host:port" or "inet:host:port" for a TCP endpoint, or 14854"unix:pathname" for a UNIX-domain endpoint. The host can be specified 14855as an IP address or as a symbolic name; no MX lookups are done. 14856When no "host" or "host:" are specified, the local machine is 14857assumed. Pathname interpretation is relative to the Postfix queue 14858directory. </p> 14859 14860<p> This feature is available in Postfix 2.1 and later. </p> 14861 14862<p> The "inet:" and "unix:" prefixes are available in Postfix 2.3 14863and later. </p> 14864 14865 14866</DD> 14867 14868<DT><b><a name="smtpd_proxy_options">smtpd_proxy_options</a> 14869(default: empty)</b></DT><DD> 14870 14871<p> 14872List of options that control how the Postfix SMTP server 14873communicates with a before-queue content filter. Specify zero or 14874more of the following, separated by comma or whitespace. </p> 14875 14876<dl> 14877 14878<dt><b>speed_adjust</b></dt> 14879 14880<dd> <p> Do not connect to a before-queue content filter until an entire 14881message has been received. This reduces the number of simultaneous 14882before-queue content filter processes. </p> 14883 14884<p> NOTE 1: A filter must not <i>selectively</i> reject recipients 14885of a multi-recipient message. Rejecting all recipients is OK, as 14886is accepting all recipients. </p> 14887 14888<p> NOTE 2: This feature increases the minimum amount of free queue 14889space by $<a href="postconf.5.html#message_size_limit">message_size_limit</a>. The extra space is needed to save the 14890message to a temporary file. </p> </dd> 14891 14892</dl> 14893 14894<p> 14895This feature is available in Postfix 2.7 and later. 14896</p> 14897 14898 14899</DD> 14900 14901<DT><b><a name="smtpd_proxy_timeout">smtpd_proxy_timeout</a> 14902(default: 100s)</b></DT><DD> 14903 14904<p> 14905The time limit for connecting to a proxy filter and for sending or 14906receiving information. When a connection fails the client gets a 14907generic error message while more detailed information is logged to 14908the maillog file. 14909</p> 14910 14911<p> 14912Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 14913The default time unit is s (seconds). 14914</p> 14915 14916<p> 14917This feature is available in Postfix 2.1 and later. 14918</p> 14919 14920 14921</DD> 14922 14923<DT><b><a name="smtpd_recipient_limit">smtpd_recipient_limit</a> 14924(default: 1000)</b></DT><DD> 14925 14926<p> 14927The maximal number of recipients that the Postfix SMTP server 14928accepts per message delivery request. 14929</p> 14930 14931 14932</DD> 14933 14934<DT><b><a name="smtpd_recipient_overshoot_limit">smtpd_recipient_overshoot_limit</a> 14935(default: 1000)</b></DT><DD> 14936 14937<p> The number of recipients that a remote SMTP client can send in 14938excess of the limit specified with $<a href="postconf.5.html#smtpd_recipient_limit">smtpd_recipient_limit</a>, before 14939the Postfix SMTP server increments the per-session error count 14940for each excess recipient. </p> 14941 14942 14943</DD> 14944 14945<DT><b><a name="smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> 14946(default: see "postconf -d" output)</b></DT><DD> 14947 14948<p> 14949Optional restrictions that the Postfix SMTP server applies in the 14950context of a client RCPT TO command, after <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a>. 14951See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 14952restriction lists" for a discussion of evaluation context and time. 14953</p> 14954 14955<p> With Postfix versions before 2.10, the rules for relay permission 14956and spam blocking were combined under <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>, 14957resulting in error-prone configuration. As of Postfix 2.10, relay 14958permission rules are preferably implemented with <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a>, 14959so that a permissive spam blocking policy under 14960<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> will no longer result in a permissive 14961mail relay policy. </p> 14962 14963<p> For backwards compatibility, sites that migrate from Postfix 14964versions before 2.10 can set <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> to the empty 14965value, and use <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> exactly as before. </p> 14966 14967<p> 14968IMPORTANT: Either the <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> or the 14969<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameter must specify 14970at least one of the following restrictions. Otherwise Postfix will 14971refuse to receive mail: 14972</p> 14973 14974<blockquote> 14975<pre> 14976reject, <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> 14977</pre> 14978</blockquote> 14979 14980<blockquote> 14981<pre> 14982defer, <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>, <a href="postconf.5.html#defer_unauth_destination">defer_unauth_destination</a> 14983</pre> 14984</blockquote> 14985 14986<p> 14987Specify a list of restrictions, separated by commas and/or whitespace. 14988Continue long lines by starting the next line with whitespace. 14989Restrictions are applied in the order as specified; the first 14990restriction that matches wins. 14991</p> 14992 14993<p> 14994The following restrictions are specific to the recipient address 14995that is received with the RCPT TO command. 14996</p> 14997 14998<dl> 14999 15000<dt><b><a name="check_recipient_access">check_recipient_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 15001 15002<dd>Search the specified <a href="access.5.html">access(5)</a> database for the resolved RCPT 15003TO address, domain, parent domains, or localpart@, and execute the 15004corresponding action. </dd> 15005 15006<dt><b><a name="check_recipient_a_access">check_recipient_a_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 15007 15008<dd>Search the specified <a href="access.5.html">access(5)</a> database for the IP addresses for 15009the RCPT TO domain, and execute the corresponding action. Note: 15010a result of "OK" is not allowed for safety reasons. Instead, use 15011DUNNO in order to exclude specific hosts from blacklists. This 15012feature is available in Postfix 3.0 and later. </dd> 15013 15014<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> 15015 15016<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for 15017the RCPT TO domain, and execute the corresponding action. Note: 15018a result of "OK" is not allowed for safety reasons. Instead, use 15019DUNNO in order to exclude specific hosts from blacklists. This 15020feature is available in Postfix 2.1 and later. </dd> 15021 15022<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> 15023 15024<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers 15025for the RCPT TO domain, and execute the corresponding action. 15026Note: a result of "OK" is not allowed for safety reasons. Instead, 15027use DUNNO in order to exclude specific hosts from blacklists. This 15028feature is available in Postfix 2.1 and later. </dd> 15029 15030<dt><b><a name="permit_auth_destination">permit_auth_destination</a></b></dt> 15031 15032<dd>Permit the request when one of the following is true: 15033 15034<ul> 15035 15036<li> Postfix is mail forwarder: the resolved RCPT TO domain matches 15037$<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and the address contains no 15038sender-specified routing (user@elsewhere@domain), 15039 15040<li> Postfix is the final destination: the resolved RCPT TO domain 15041matches $<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>, 15042$<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 15043contains no sender-specified routing (user@elsewhere@domain). 15044 15045</ul></dd> 15046 15047<dt><b><a name="permit_mx_backup">permit_mx_backup</a></b></dt> 15048 15049<dd>Permit the request when the local mail system is backup MX for 15050the RCPT TO domain, or when the domain is an authorized destination 15051(see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> for definition). 15052 15053<ul> 15054 15055<li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> does not accept addresses that have 15056sender-specified routing information (example: user@elsewhere@domain). 15057 15058<li> Safety: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> can be vulnerable to mis-use when 15059access is not restricted with <a href="postconf.5.html#permit_mx_backup_networks">permit_mx_backup_networks</a>. 15060 15061<li> Safety: as of Postfix version 2.3, <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> no longer 15062accepts the address when the local mail system is primary MX for 15063the recipient domain. Exception: <a href="postconf.5.html#permit_mx_backup">permit_mx_backup</a> accepts the address 15064when it specifies an authorized destination (see <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> 15065for definition). 15066 15067<li> Limitation: mail may be rejected in case of a temporary DNS 15068lookup problem with Postfix prior to version 2.0. 15069 15070</ul></dd> 15071 15072<dt><b><a name="reject_non_fqdn_recipient">reject_non_fqdn_recipient</a></b></dt> 15073 15074<dd>Reject the request when the RCPT TO address is not in 15075fully-qualified domain form, as required by the RFC. <br> The 15076<a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for 15077rejected requests (default: 504). </dd> 15078 15079<dt><b><a name="reject_rhsbl_recipient">reject_rhsbl_recipient <i>rbl_domain=d.d.d.d</i></a></b></dt> 15080 15081<dd>Reject the request when the RCPT TO domain is listed with the 15082A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix version 150832.1 and later only). Each "<i>d</i>" is a number, or a pattern 15084inside "[]" that contains one or more ";"-separated numbers or 15085number..number ranges (Postfix version 2.8 and later). If no 15086"<i>=d.d.d.d</i>" is specified, reject 15087the request when the RCPT TO domain is listed with 15088any A record under <i>rbl_domain</i>. <br> The <a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> 15089parameter specifies the response code for rejected requests (default: 15090554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter specifies the default server 15091reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter specifies tables with server 15092replies indexed by <i>rbl_domain</i>. This feature is available 15093in Postfix version 2.0 and later.</dd> 15094 15095<dt><b><a name="reject_unauth_destination">reject_unauth_destination</a></b></dt> 15096 15097<dd>Reject the request unless one of the following is true: 15098 15099<ul> 15100 15101<li> Postfix is mail forwarder: the resolved RCPT TO domain matches 15102$<a href="postconf.5.html#relay_domains">relay_domains</a> or a subdomain thereof, and contains no sender-specified 15103routing (user@elsewhere@domain), 15104 15105<li> Postfix is the final destination: the resolved RCPT TO domain 15106matches $<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>, 15107$<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 15108no sender-specified routing (user@elsewhere@domain). 15109 15110</ul>The <a href="postconf.5.html#relay_domains_reject_code">relay_domains_reject_code</a> parameter specifies the response 15111code for rejected requests (default: 554). </dd> 15112 15113<dt><b><a name="defer_unauth_destination">defer_unauth_destination</a></b></dt> 15114 15115<dd> Reject the same requests as <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a>, with a 15116non-permanent error code. This feature is available in Postfix 151172.10 and later.</dd> 15118 15119<dt><b><a name="reject_unknown_recipient_domain">reject_unknown_recipient_domain</a></b></dt> 15120 15121<dd>Reject the request when Postfix is not final destination for 15122the recipient domain, and the RCPT TO domain has 1) no DNS MX and 15123no DNS A 15124record or 2) a malformed MX record such as a record with 15125a zero-length MX hostname (Postfix version 2.3 and later). <br> The 15126reply is specified with the <a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter 15127(default: 450), <a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> (default: 15128<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>), or 556 (nullmx, Postfix 3.0 and 15129later). See the respective parameter descriptions for details. 15130</dd> 15131 15132<dt><b><a name="reject_unlisted_recipient">reject_unlisted_recipient</a></b> (with Postfix version 2.0: check_recipient_maps)</dt> 15133 15134<dd> Reject the request when the RCPT TO address is not listed in 15135the list of valid recipients for its domain class. See the 15136<a href="postconf.5.html#smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a> parameter description for details. 15137This feature is available in Postfix 2.1 and later.</dd> 15138 15139<dt><b><a name="reject_unverified_recipient">reject_unverified_recipient</a></b></dt> 15140 15141<dd>Reject the request when mail to the RCPT TO address is known 15142to bounce, or when the recipient address destination is not reachable. 15143Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server; 15144see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details. <br> The 15145<a href="postconf.5.html#unverified_recipient_reject_code">unverified_recipient_reject_code</a> parameter specifies the numerical 15146response code when an address is known to bounce (default: 450, 15147change into 550 when you are confident that it is safe to do so). 15148<br>The <a href="postconf.5.html#unverified_recipient_defer_code">unverified_recipient_defer_code</a> parameter specifies the 15149numerical response code when an address probe failed due to a 15150temporary problem (default: 450). <br> The 15151<a href="postconf.5.html#unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a> parameter specifies the action 15152after address probe failure due to a temporary problem (default: 15153<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). <br> This feature is available in Postfix 2.1 15154and later. </dd> 15155 15156</dl> 15157 15158<p> 15159Other restrictions that are valid in this context: 15160</p> 15161 15162<ul> 15163 15164<li><a href="#generic">Generic</a> restrictions that can be used 15165in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 15166 15167<li>SMTP command specific restrictions described under 15168<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 15169<a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>. 15170 15171</ul> 15172 15173<p> 15174Example: 15175</p> 15176 15177<pre> 15178# The Postfix before 2.10 default mail relay policy. Later Postfix 15179# versions implement this preferably with <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a>. 15180<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> 15181</pre> 15182 15183 15184</DD> 15185 15186<DT><b><a name="smtpd_reject_footer">smtpd_reject_footer</a> 15187(default: empty)</b></DT><DD> 15188 15189<p> Optional information that is appended after each Postfix SMTP 15190server 151914XX or 5XX response. </p> 15192 15193<p> The following example uses "\c" at the start of the template 15194(supported in Postfix 2.10 and later) to suppress the line break 15195between the reply text and the footer text. With earlier Postfix 15196versions, the footer text always begins on a new line, and the "\c" 15197is output literally. </p> 15198 15199<pre> 15200/etc/postfix/<a href="postconf.5.html">main.cf</a>: 15201 <a href="postconf.5.html#smtpd_reject_footer">smtpd_reject_footer</a> = \c. For assistance, call 800-555-0101. 15202 Please provide the following information in your problem report: 15203 time ($localtime), client ($client_address) and server 15204 ($server_name). 15205</pre> 15206 15207<p> Server response: </p> 15208 15209<pre> 15210 550-5.5.1 <user@example> Recipient address rejected: User 15211 unknown. For assistance, call 800-555-0101. Please provide the 15212 following information in your problem report: time (Jan 4 15:42:00), 15213 client (192.168.1.248) and server (mail1.example.com). 15214</pre> 15215 15216<p> Note: the above text is meant to make it easier to find the 15217Postfix logfile records for a failed SMTP session. The text itself 15218is not logged to the Postfix SMTP server's maillog file. </p> 15219 15220<p> Be sure to keep the text as short as possible. Long text may 15221be truncated before it is logged to the remote SMTP client's maillog 15222file, or before it is returned to the sender in a delivery status 15223notification. </p> 15224 15225<p> This feature supports a limited number of $name attributes in 15226the footer text. These are replaced by their current value for the 15227SMTP session: </p> 15228 15229<dl> 15230 15231<dt> <b>client_address</b> </dt> <dd> The Client IP address that 15232is logged in the maillog file. </dd> 15233 15234<dt> <b>client_port</b> </dt> <dd> The client TCP port that is 15235logged in the maillog file. </dd> 15236 15237<dt> <b>localtime</b> </dt> <dd> The server local time (Mmm dd 15238hh:mm:ss) that is logged in the maillog file. </dd> 15239 15240<dt> <b>server_name</b> </dt> <dd> The server's <a href="postconf.5.html#myhostname">myhostname</a> value. 15241This attribute is made available for sites with multiple MTAs 15242(perhaps behind a load-balancer), where the server name can help 15243the server support team to quickly find the right log files. </dd> 15244 15245</dl> 15246 15247<p> Notes: </p> 15248 15249<ul> 15250 15251<li> <p> NOT SUPPORTED are other attributes such as sender, recipient, 15252or <a href="postconf.5.html">main.cf</a> parameters. </p> 15253 15254<li> <p> For safety reasons, text that does not match 15255$<a href="postconf.5.html#smtpd_expansion_filter">smtpd_expansion_filter</a> is censored. </p> 15256 15257</ul> 15258 15259<p> This feature supports the two-character sequence \n as a request 15260for a line break in the footer text. Postfix automatically inserts 15261after each line break the three-digit SMTP reply code (and optional 15262enhanced status code) from the original Postfix reject message. 15263</p> 15264 15265<p> To work around mail software that mis-handles multi-line replies, 15266specify the two-character sequence \c at the start of the template. 15267This suppresses the line break between the reply text and the footer 15268text (Postfix 2.10 and later). </p> 15269 15270<p> This feature is available in Postfix 2.8 and later. </p> 15271 15272 15273</DD> 15274 15275<DT><b><a name="smtpd_reject_unlisted_recipient">smtpd_reject_unlisted_recipient</a> 15276(default: yes)</b></DT><DD> 15277 15278<p> 15279Request that the Postfix SMTP server rejects mail for unknown 15280recipient addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_recipient">reject_unlisted_recipient</a> 15281access restriction is specified. This prevents the Postfix queue 15282from filling up with undeliverable MAILER-DAEMON messages. 15283</p> 15284 15285<p> An address is always considered "known" when it matches a 15286<a href="virtual.5.html">virtual(5)</a> alias or a <a href="canonical.5.html">canonical(5)</a> mapping. 15287 15288<ul> 15289 15290<li> The recipient domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> 15291or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the recipient is not listed in 15292$<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. 15293 15294<li> The recipient domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the 15295recipient is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>. 15296 15297<li> The recipient domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the 15298recipient 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> 15299is not null. 15300 15301<li> The recipient domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the recipient 15302is 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> 15303is not null. 15304 15305</ul> 15306 15307<p> 15308This feature is available in Postfix 2.1 and later. 15309</p> 15310 15311 15312</DD> 15313 15314<DT><b><a name="smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a> 15315(default: no)</b></DT><DD> 15316 15317<p> Request that the Postfix SMTP server rejects mail from unknown 15318sender addresses, even when no explicit <a href="postconf.5.html#reject_unlisted_sender">reject_unlisted_sender</a> 15319access restriction is specified. This can slow down an explosion 15320of forged mail from worms or viruses. </p> 15321 15322<p> An address is always considered "known" when it matches a 15323<a href="virtual.5.html">virtual(5)</a> alias or a <a href="canonical.5.html">canonical(5)</a> mapping. 15324 15325<ul> 15326 15327<li> The sender domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> or 15328$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>, but the sender is not listed in 15329$<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. 15330 15331<li> The sender domain matches $<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> but the sender 15332is not listed in $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>. 15333 15334<li> The sender domain matches $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a> but the 15335sender 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> 15336is not null. 15337 15338<li> The sender domain matches $<a href="postconf.5.html#relay_domains">relay_domains</a> but the sender is 15339not 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 15340not null. 15341 15342</ul> 15343 15344<p> 15345This feature is available in Postfix 2.1 and later. 15346</p> 15347 15348 15349</DD> 15350 15351<DT><b><a name="smtpd_relay_restrictions">smtpd_relay_restrictions</a> 15352(default: <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, <a href="postconf.5.html#defer_unauth_destination">defer_unauth_destination</a>)</b></DT><DD> 15353 15354<p> Access restrictions for mail relay control that the Postfix 15355SMTP server applies in the context of the RCPT TO command, before 15356<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. 15357See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 15358restriction lists" for a discussion of evaluation context and time. 15359</p> 15360 15361<p> With Postfix versions before 2.10, the rules for relay permission 15362and spam blocking were combined under <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>, 15363resulting in error-prone configuration. As of Postfix 2.10, relay 15364permission rules are preferably implemented with <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a>, 15365so that a permissive spam blocking policy under 15366<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> will no longer result in a permissive 15367mail relay policy. </p> 15368 15369<p> For backwards compatibility, sites that migrate from Postfix 15370versions before 2.10 can set <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> to the empty 15371value, and use <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> exactly as before. </p> 15372 15373<p> 15374By default, the Postfix SMTP server accepts: 15375</p> 15376 15377<ul> 15378 15379<li> Mail from clients whose IP address matches $<a href="postconf.5.html#mynetworks">mynetworks</a>, or: 15380 15381<li> Mail to remote destinations that match $<a href="postconf.5.html#relay_domains">relay_domains</a>, except 15382for addresses that contain sender-specified routing 15383(user@elsewhere@domain), or: 15384 15385<li> Mail to local destinations that match $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a> 15386or $<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 15387$<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>. 15388 15389</ul> 15390 15391<p> 15392IMPORTANT: Either the <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> or the 15393<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> parameter must specify 15394at least one of the following restrictions. Otherwise Postfix will 15395refuse to receive mail: 15396</p> 15397 15398<blockquote> 15399<pre> 15400reject, <a href="postconf.5.html#reject_unauth_destination">reject_unauth_destination</a> 15401</pre> 15402</blockquote> 15403 15404<blockquote> 15405<pre> 15406defer, <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>, <a href="postconf.5.html#defer_unauth_destination">defer_unauth_destination</a> 15407</pre> 15408</blockquote> 15409 15410<p> 15411Specify a list of restrictions, separated by commas and/or whitespace. 15412Continue long lines by starting the next line with whitespace. 15413The same restrictions are available as documented under 15414<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. 15415</p> 15416 15417<p> This feature is available in Postix 2.10 and later. </p> 15418 15419 15420</DD> 15421 15422<DT><b><a name="smtpd_restriction_classes">smtpd_restriction_classes</a> 15423(default: empty)</b></DT><DD> 15424 15425<p> 15426User-defined aliases for groups of access restrictions. The aliases 15427can be specified in <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> etc., and on the 15428right-hand side of a Postfix <a href="access.5.html">access(5)</a> table. 15429</p> 15430 15431<p> 15432One major application is for implementing per-recipient UCE control. 15433See the <a href="RESTRICTION_CLASS_README.html">RESTRICTION_CLASS_README</a> document for other examples. 15434</p> 15435 15436 15437</DD> 15438 15439<DT><b><a name="smtpd_sasl_application_name">smtpd_sasl_application_name</a> 15440(default: smtpd)</b></DT><DD> 15441 15442<p> 15443The application name that the Postfix SMTP server uses for SASL 15444server initialization. This 15445controls the name of the SASL configuration file. The default value 15446is <b>smtpd</b>, corresponding to a SASL configuration file named 15447<b>smtpd.conf</b>. 15448</p> 15449 15450<p> 15451This feature is available in Postfix 2.1 and 2.2. With Postfix 2.3 15452it was renamed to <a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a>. 15453</p> 15454 15455 15456</DD> 15457 15458<DT><b><a name="smtpd_sasl_auth_enable">smtpd_sasl_auth_enable</a> 15459(default: no)</b></DT><DD> 15460 15461<p> 15462Enable SASL authentication in the Postfix SMTP server. By default, 15463the Postfix SMTP server does not use authentication. 15464</p> 15465 15466<p> 15467If a remote SMTP client is authenticated, the <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a> 15468access restriction can be used to permit relay access, like this: 15469</p> 15470 15471<blockquote> 15472<pre> 15473# With Postfix 2.10 and later, the mail relay policy is 15474# preferably specified under <a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a>. 15475<a href="postconf.5.html#smtpd_relay_restrictions">smtpd_relay_restrictions</a> = 15476 <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, ... 15477</pre> 15478 15479<pre> 15480# With Postfix before 2.10, the relay policy can be 15481# specified only under <a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. 15482<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a> = 15483 <a href="postconf.5.html#permit_mynetworks">permit_mynetworks</a>, <a href="postconf.5.html#permit_sasl_authenticated">permit_sasl_authenticated</a>, ... 15484</pre> 15485</blockquote> 15486 15487<p> To reject all SMTP connections from unauthenticated clients, 15488specify "<a href="postconf.5.html#smtpd_delay_reject">smtpd_delay_reject</a> = yes" (which is the default) and use: 15489</p> 15490 15491<blockquote> 15492<pre> 15493<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 15494</pre> 15495</blockquote> 15496 15497<p> 15498See the <a href="SASL_README.html">SASL_README</a> file for SASL configuration and operation details. 15499</p> 15500 15501 15502</DD> 15503 15504<DT><b><a name="smtpd_sasl_authenticated_header">smtpd_sasl_authenticated_header</a> 15505(default: no)</b></DT><DD> 15506 15507<p> Report the SASL authenticated user name in the <a href="smtpd.8.html">smtpd(8)</a> Received 15508message header. </p> 15509 15510<p> This feature is available in Postfix 2.3 and later. </p> 15511 15512 15513</DD> 15514 15515<DT><b><a name="smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> 15516(default: empty)</b></DT><DD> 15517 15518<p> 15519What remote SMTP clients the Postfix SMTP server will not offer 15520AUTH support to. 15521</p> 15522 15523<p> 15524Some clients (Netscape 4 at least) have a bug that causes them to 15525require a login and password whenever AUTH is offered, whether it's 15526necessary or not. To work around this, specify, for example, 15527$<a href="postconf.5.html#mynetworks">mynetworks</a> to prevent Postfix from offering AUTH to local clients. 15528</p> 15529 15530<p> 15531Specify a list of network/netmask patterns, separated by commas 15532and/or whitespace. The mask specifies the number of bits in the 15533network part of a host address. You can also "/file/name" or 15534"<a href="DATABASE_README.html">type:table</a>" patterns. A "/file/name" pattern is replaced by its 15535contents; a "<a href="DATABASE_README.html">type:table</a>" lookup table is matched when a table entry 15536matches a lookup string (the lookup result is ignored). Continue 15537long lines by starting the next line with whitespace. Specify 15538"!pattern" to exclude an address or network block from the list. 15539The form "!/file/name" is supported only in Postfix version 2.4 and 15540later. </p> 15541 15542<p> Note: IP version 6 address information must be specified inside 15543<tt>[]</tt> in the <a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> value, and in 15544files specified with "/file/name". IP version 6 addresses contain 15545the ":" character, and would otherwise be confused with a "<a href="DATABASE_README.html">type:table</a>" 15546pattern. </p> 15547 15548<p> 15549Example: 15550</p> 15551 15552<pre> 15553<a href="postconf.5.html#smtpd_sasl_exceptions_networks">smtpd_sasl_exceptions_networks</a> = $<a href="postconf.5.html#mynetworks">mynetworks</a> 15554</pre> 15555 15556<p> 15557This feature is available in Postfix 2.1 and later. 15558</p> 15559 15560 15561</DD> 15562 15563<DT><b><a name="smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> 15564(default: empty)</b></DT><DD> 15565 15566<p> 15567The name of the Postfix SMTP server's local SASL authentication 15568realm. 15569</p> 15570 15571<p> 15572By default, the local authentication realm name is the null string. 15573</p> 15574 15575<p> 15576Examples: 15577</p> 15578 15579<pre> 15580<a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#mydomain">mydomain</a> 15581<a href="postconf.5.html#smtpd_sasl_local_domain">smtpd_sasl_local_domain</a> = $<a href="postconf.5.html#myhostname">myhostname</a> 15582</pre> 15583 15584 15585</DD> 15586 15587<DT><b><a name="smtpd_sasl_path">smtpd_sasl_path</a> 15588(default: smtpd)</b></DT><DD> 15589 15590<p> Implementation-specific information that the Postfix SMTP server 15591passes through to 15592the SASL plug-in implementation that is selected with 15593<b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>. Typically this specifies the name of a 15594configuration file or rendezvous point. </p> 15595 15596<p> This feature is available in Postfix 2.3 and later. In earlier 15597releases it was called <b><a href="postconf.5.html#smtpd_sasl_application_name">smtpd_sasl_application_name</a></b>. </p> 15598 15599 15600</DD> 15601 15602<DT><b><a name="smtpd_sasl_security_options">smtpd_sasl_security_options</a> 15603(default: noanonymous)</b></DT><DD> 15604 15605<p> Postfix SMTP server SASL security options; as of Postfix 2.3 15606the list of available 15607features depends on the SASL server implementation that is selected 15608with <b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b>. </p> 15609 15610<p> The following security features are defined for the <b>cyrus</b> 15611server SASL implementation: </p> 15612 15613<p> 15614Restrict what authentication mechanisms the Postfix SMTP server 15615will offer to the client. The list of available authentication 15616mechanisms is system dependent. 15617</p> 15618 15619<p> 15620Specify zero or more of the following: 15621</p> 15622 15623<dl> 15624 15625<dt><b>noplaintext</b></dt> 15626 15627<dd>Disallow methods that use plaintext passwords. </dd> 15628 15629<dt><b>noactive</b></dt> 15630 15631<dd>Disallow methods subject to active (non-dictionary) attack. </dd> 15632 15633<dt><b>nodictionary</b></dt> 15634 15635<dd>Disallow methods subject to passive (dictionary) attack. </dd> 15636 15637<dt><b>noanonymous</b></dt> 15638 15639<dd>Disallow methods that allow anonymous authentication. </dd> 15640 15641<dt><b>forward_secrecy</b></dt> 15642 15643<dd>Only allow methods that support forward secrecy (Dovecot only). 15644</dd> 15645 15646<dt><b>mutual_auth</b></dt> 15647 15648<dd>Only allow methods that provide mutual authentication (not available 15649with Cyrus SASL version 1). </dd> 15650 15651</dl> 15652 15653<p> 15654By default, the Postfix SMTP server accepts plaintext passwords but 15655not anonymous logins. 15656</p> 15657 15658<p> 15659Warning: it appears that clients try authentication methods in the 15660order as advertised by the server (e.g., PLAIN ANONYMOUS CRAM-MD5) 15661which means that if you disable plaintext passwords, clients will 15662log in anonymously, even when they should be able to use CRAM-MD5. 15663So, if you disable plaintext logins, disable anonymous logins too. 15664Postfix treats anonymous login as no authentication. 15665</p> 15666 15667<p> 15668Example: 15669</p> 15670 15671<pre> 15672<a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a> = noanonymous, noplaintext 15673</pre> 15674 15675 15676</DD> 15677 15678<DT><b><a name="smtpd_sasl_service">smtpd_sasl_service</a> 15679(default: smtp)</b></DT><DD> 15680 15681<p> The service name that is passed to the SASL plug-in that is 15682selected with <b><a href="postconf.5.html#smtpd_sasl_type">smtpd_sasl_type</a></b> and <b><a href="postconf.5.html#smtpd_sasl_path">smtpd_sasl_path</a></b>. 15683</p> 15684 15685<p> This feature is available in Postfix 2.11 and later. Prior 15686versions behave as if "<b>smtp</b>" is specified. </p> 15687 15688 15689</DD> 15690 15691<DT><b><a name="smtpd_sasl_tls_security_options">smtpd_sasl_tls_security_options</a> 15692(default: $<a href="postconf.5.html#smtpd_sasl_security_options">smtpd_sasl_security_options</a>)</b></DT><DD> 15693 15694<p> The SASL authentication security options that the Postfix SMTP 15695server uses for TLS encrypted SMTP sessions. </p> 15696 15697<p> This feature is available in Postfix 2.2 and later. </p> 15698 15699 15700</DD> 15701 15702<DT><b><a name="smtpd_sasl_type">smtpd_sasl_type</a> 15703(default: cyrus)</b></DT><DD> 15704 15705<p> The SASL plug-in type that the Postfix SMTP server should use 15706for authentication. The available types are listed with the 15707"<b>postconf -a</b>" command. </p> 15708 15709<p> This feature is available in Postfix 2.3 and later. </p> 15710 15711 15712</DD> 15713 15714<DT><b><a name="smtpd_sender_login_maps">smtpd_sender_login_maps</a> 15715(default: empty)</b></DT><DD> 15716 15717<p> 15718Optional lookup table with the SASL login names that own the sender 15719(MAIL FROM) addresses. 15720</p> 15721 15722<p> 15723Specify zero or more "type:name" lookup tables, separated by 15724whitespace or comma. Tables will be searched in the specified order 15725until a match is found. With lookups from 15726indexed files such as DB or DBM, or from networked tables such as 15727NIS, LDAP or SQL, the following search operations are done with a 15728sender address of <i>user@domain</i>: </p> 15729 15730<dl> 15731 15732<dt> 1) <i>user@domain</i> </dt> 15733 15734<dd>This table lookup is always done and has the highest precedence. </dd> 15735 15736<dt> 2) <i>user</i> </dt> 15737 15738<dd>This table lookup is done only when the <i>domain</i> part of the 15739sender 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> 15740or $<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a>. </dd> 15741 15742<dt> 3) <i>@domain</i> </dt> 15743 15744<dd>This table lookup is done last and has the lowest precedence. </dd> 15745 15746</dl> 15747 15748<p> 15749In all cases the result of table lookup must be either "not found" 15750or a list of SASL login names separated by comma and/or whitespace. 15751</p> 15752 15753 15754</DD> 15755 15756<DT><b><a name="smtpd_sender_restrictions">smtpd_sender_restrictions</a> 15757(default: empty)</b></DT><DD> 15758 15759<p> 15760Optional restrictions that the Postfix SMTP server applies in the 15761context of a client MAIL FROM command. 15762See <a href="SMTPD_ACCESS_README.html">SMTPD_ACCESS_README</a>, section "Delayed evaluation of SMTP access 15763restriction lists" for a discussion of evaluation context and time. 15764</p> 15765 15766<p> 15767The default is to permit everything. 15768</p> 15769 15770<p> 15771Specify a list of restrictions, separated by commas and/or whitespace. 15772Continue long lines by starting the next line with whitespace. 15773Restrictions are applied in the order as specified; the first 15774restriction that matches wins. 15775</p> 15776 15777<p> 15778The following restrictions are specific to the sender address 15779received with the MAIL FROM command. 15780</p> 15781 15782<dl> 15783 15784<dt><b><a name="check_sender_access">check_sender_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 15785 15786<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MAIL FROM 15787address, domain, parent domains, or localpart@, and execute the 15788corresponding action. </dd> 15789 15790<dt><b><a name="check_sender_a_access">check_sender_a_access</a> <i><a href="DATABASE_README.html">type:table</a></i></b></dt> 15791 15792<dd>Search the specified <a href="access.5.html">access(5)</a> database for the IP addresses for 15793the MAIL FROM domain, and execute the corresponding action. Note: 15794a result of "OK" is not allowed for safety reasons. Instead, use 15795DUNNO in order to exclude specific hosts from blacklists. This 15796feature is available in Postfix 3.0 and later. </dd> 15797 15798<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> 15799 15800<dd>Search the specified <a href="access.5.html">access(5)</a> database for the MX hosts for 15801the MAIL FROM domain, and execute the corresponding action. Note: 15802a result of "OK" is not allowed for safety reasons. Instead, use 15803DUNNO in order to exclude specific hosts from blacklists. This 15804feature is available in Postfix 2.1 and later. </dd> 15805 15806<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> 15807 15808<dd>Search the specified <a href="access.5.html">access(5)</a> database for the DNS servers 15809for the MAIL FROM domain, and execute the corresponding action. 15810Note: a result of "OK" is not allowed for safety reasons. Instead, 15811use DUNNO in order to exclude specific hosts from blacklists. This 15812feature is available in Postfix 2.1 and later. </dd> 15813 15814<dt><b><a name="reject_authenticated_sender_login_mismatch">reject_authenticated_sender_login_mismatch</a></b></dt> 15815 15816<dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for 15817authenticated clients only. This feature is available in 15818Postfix version 2.1 and later. </dd> 15819 15820<dt><b><a name="reject_known_sender_login_mismatch">reject_known_sender_login_mismatch</a></b></dt> 15821 15822<dd>Apply the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction only to MAIL 15823FROM addresses that are known in $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a>. This 15824feature is available in Postfix version 2.11 and later. </dd> 15825 15826<dt><b><a name="reject_non_fqdn_sender">reject_non_fqdn_sender</a></b></dt> 15827 15828<dd>Reject the request when the MAIL FROM address is not in 15829fully-qualified domain form, as required by the RFC. <br> The 15830<a href="postconf.5.html#non_fqdn_reject_code">non_fqdn_reject_code</a> parameter specifies the response code for 15831rejected requests (default: 504). </dd> 15832 15833<dt><b><a name="reject_rhsbl_sender">reject_rhsbl_sender <i>rbl_domain=d.d.d.d</i></a></b></dt> 15834 15835<dd>Reject the request when the MAIL FROM domain is listed with 15836the A record "<i>d.d.d.d</i>" under <i>rbl_domain</i> (Postfix 15837version 2.1 and later only). Each "<i>d</i>" is a number, or a 15838pattern inside "[]" that contains one or more ";"-separated numbers 15839or number..number ranges (Postfix version 2.8 and later). If no 15840"<i>=d.d.d.d</i>" is specified, 15841reject the request when the MAIL FROM domain is 15842listed with any A record under <i>rbl_domain</i>. <br> The 15843<a href="postconf.5.html#maps_rbl_reject_code">maps_rbl_reject_code</a> parameter specifies the response code for 15844rejected requests (default: 554); the <a href="postconf.5.html#default_rbl_reply">default_rbl_reply</a> parameter 15845specifies the default server reply; and the <a href="postconf.5.html#rbl_reply_maps">rbl_reply_maps</a> parameter 15846specifies tables with server replies indexed by <i>rbl_domain</i>. 15847This feature is available in Postfix 2.0 and later.</dd> 15848 15849<dt><b><a name="reject_sender_login_mismatch">reject_sender_login_mismatch</a></b></dt> 15850 15851<dd>Reject the request when $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a> specifies an 15852owner for the MAIL FROM address, but the client is not (SASL) logged 15853in as that MAIL FROM address owner; or when the client is (SASL) 15854logged in, but the client login name doesn't own the MAIL FROM 15855address according to $<a href="postconf.5.html#smtpd_sender_login_maps">smtpd_sender_login_maps</a>.</dd> 15856 15857<dt><b><a name="reject_unauthenticated_sender_login_mismatch">reject_unauthenticated_sender_login_mismatch</a></b></dt> 15858 15859<dd>Enforces the <a href="postconf.5.html#reject_sender_login_mismatch">reject_sender_login_mismatch</a> restriction for 15860unauthenticated clients only. This feature is available in 15861Postfix version 2.1 and later. </dd> 15862 15863<dt><b><a name="reject_unknown_sender_domain">reject_unknown_sender_domain</a></b></dt> 15864 15865<dd>Reject the request when Postfix is not final destination for 15866the sender address, and the MAIL FROM domain has 1) no DNS MX and 15867no DNS A 15868record, or 2) a malformed MX record such as a record with 15869a zero-length MX hostname (Postfix version 2.3 and later). <br> The 15870reply is specified with the <a href="postconf.5.html#unknown_address_reject_code">unknown_address_reject_code</a> parameter 15871(default: 450), <a href="postconf.5.html#unknown_address_tempfail_action">unknown_address_tempfail_action</a> (default: 15872<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>), or 550 (nullmx, Postfix 3.0 and 15873later). See the respective parameter descriptions for details. 15874</dd> 15875 15876<dt><b><a name="reject_unlisted_sender">reject_unlisted_sender</a></b></dt> 15877 15878<dd>Reject the request when the MAIL FROM address is not listed in 15879the list of valid recipients for its domain class. See the 15880<a href="postconf.5.html#smtpd_reject_unlisted_sender">smtpd_reject_unlisted_sender</a> parameter description for details. 15881This feature is available in Postfix 2.1 and later.</dd> 15882 15883<dt><b><a name="reject_unverified_sender">reject_unverified_sender</a></b></dt> 15884 15885<dd>Reject the request when mail to the MAIL FROM address is known to 15886bounce, or when the sender address destination is not reachable. 15887Address verification information is managed by the <a href="verify.8.html">verify(8)</a> server; 15888see the <a href="ADDRESS_VERIFICATION_README.html">ADDRESS_VERIFICATION_README</a> file for details. <br> The 15889<a href="postconf.5.html#unverified_sender_reject_code">unverified_sender_reject_code</a> parameter specifies the numerical 15890response code when an address is known to bounce (default: 450, 15891change into 550 when you are confident that it is safe to do so). 15892<br>The <a href="postconf.5.html#unverified_sender_defer_code">unverified_sender_defer_code</a> specifies the numerical response 15893code when an address probe failed due to a temporary problem 15894(default: 450). <br> The <a href="postconf.5.html#unverified_sender_tempfail_action">unverified_sender_tempfail_action</a> parameter 15895specifies the action after address probe failure due to a temporary 15896problem (default: <a href="postconf.5.html#defer_if_permit">defer_if_permit</a>). <br> This feature is available 15897in Postfix 2.1 and later. </dd> 15898 15899</dl> 15900 15901<p> 15902Other restrictions that are valid in this context: 15903</p> 15904 15905<ul> 15906 15907<li> <a href="#generic">Generic</a> restrictions that can be used 15908in any SMTP command context, described under <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a>. 15909 15910<li> SMTP command specific restrictions described under 15911<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>. 15912 15913<li> SMTP command specific restrictions described under 15914<a href="postconf.5.html#smtpd_recipient_restrictions">smtpd_recipient_restrictions</a>. When recipient restrictions are listed 15915under <a href="postconf.5.html#smtpd_sender_restrictions">smtpd_sender_restrictions</a>, they have effect only with 15916"<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 15917evaluated at the time of the RCPT TO command. 15918 15919</ul> 15920 15921<p> 15922Examples: 15923</p> 15924 15925<pre> 15926<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> 15927<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>, 15928 <a href="postconf.5.html#check_sender_access">check_sender_access</a> <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/access 15929</pre> 15930 15931 15932</DD> 15933 15934<DT><b><a name="smtpd_service_name">smtpd_service_name</a> 15935(default: smtpd)</b></DT><DD> 15936 15937<p> The internal service that <a href="postscreen.8.html">postscreen(8)</a> hands off allowed 15938connections to. In a future version there may be different 15939classes of SMTP service. </p> 15940 15941<p> This feature is available in Postfix 2.8. </p> 15942 15943 15944</DD> 15945 15946<DT><b><a name="smtpd_soft_error_limit">smtpd_soft_error_limit</a> 15947(default: 10)</b></DT><DD> 15948 15949<p> 15950The number of errors a remote SMTP client is allowed to make without 15951delivering mail before the Postfix SMTP server slows down all its 15952responses. 15953</p> 15954 15955<ul> 15956 15957<li><p>With Postfix version 2.1 and later, the Postfix SMTP server 15958delays all responses by $<a href="postconf.5.html#smtpd_error_sleep_time">smtpd_error_sleep_time</a> seconds. </p> 15959 15960<li><p>With Postfix versions 2.0 and earlier, the Postfix SMTP 15961server delays all responses by (number of errors) seconds. </p> 15962 15963</ul> 15964 15965 15966</DD> 15967 15968<DT><b><a name="smtpd_starttls_timeout">smtpd_starttls_timeout</a> 15969(default: see "postconf -d" output)</b></DT><DD> 15970 15971<p> The time limit for Postfix SMTP server write and read operations 15972during TLS startup and shutdown handshake procedures. The current 15973default value is stress-dependent. Before Postfix version 2.8, it 15974was fixed at 300s. </p> 15975 15976<p> This feature is available in Postfix 2.2 and later. </p> 15977 15978 15979</DD> 15980 15981<DT><b><a name="smtpd_timeout">smtpd_timeout</a> 15982(default: normal: 300s, overload: 10s)</b></DT><DD> 15983 15984<p> 15985The time limit for sending a Postfix SMTP server response and for 15986receiving a remote SMTP client request. Normally the default limit 15987is 300s, but it changes under overload to just 10s. With Postfix 159882.5 and earlier, the SMTP server always uses a time limit of 300s 15989by default. 15990</p> 15991 15992<p> 15993Note: if you set SMTP time limits to very large values you may have 15994to update the global <a href="postconf.5.html#ipc_timeout">ipc_timeout</a> parameter. 15995</p> 15996 15997<p> 15998Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 15999The default time unit is s (seconds). 16000</p> 16001 16002 16003</DD> 16004 16005<DT><b><a name="smtpd_tls_CAfile">smtpd_tls_CAfile</a> 16006(default: empty)</b></DT><DD> 16007 16008<p> A file containing (PEM format) CA certificates of root CAs trusted 16009to sign either remote SMTP client certificates or intermediate CA 16010certificates. These are loaded into memory before the <a href="smtpd.8.html">smtpd(8)</a> server 16011enters the chroot jail. If the number of trusted roots is large, consider 16012using <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> instead, but note that the latter directory must 16013be present in the chroot jail if the <a href="smtpd.8.html">smtpd(8)</a> server is chrooted. This 16014file may also be used to augment the server certificate trust chain, 16015but it is best to include all the required certificates directly in the 16016server certificate file. </p> 16017 16018<p> Specify "<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> = /path/to/system_CA_file" to use ONLY 16019the system-supplied default Certification Authority certificates. 16020</p> 16021 16022<p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from 16023appending the system-supplied default CAs and trusting third-party 16024certificates. </p> 16025 16026<p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are not 16027requested, and <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> should remain empty. If you do make use 16028of client certificates, the distinguished names (DNs) of the Certification 16029Authorities listed in <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> are sent to the remote SMTP client 16030in the client certificate request message. MUAs with multiple client 16031certificates may use the list of preferred Certification Authorities 16032to select the correct client certificate. You may want to put your 16033"preferred" CA or CAs in this file, and install other trusted CAs in 16034$<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p> 16035 16036<p> Example: </p> 16037 16038<pre> 16039<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> = /etc/postfix/CAcert.pem 16040</pre> 16041 16042<p> This feature is available in Postfix 2.2 and later. </p> 16043 16044 16045</DD> 16046 16047<DT><b><a name="smtpd_tls_CApath">smtpd_tls_CApath</a> 16048(default: empty)</b></DT><DD> 16049 16050<p> A directory containing (PEM format) CA certificates of root CAs 16051trusted to sign either remote SMTP client certificates or intermediate CA 16052certificates. Do not forget to create the necessary "hash" links with, 16053for example, "$OPENSSL_HOME/bin/c_rehash /etc/postfix/certs". To use 16054<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> in chroot mode, this directory (or a copy) must be 16055inside the chroot jail. </p> 16056 16057<p> Specify "<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> = /path/to/system_CA_directory" to 16058use ONLY the system-supplied default Certification Authority certificates. 16059</p> 16060 16061<p> Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = no" to prevent Postfix from 16062appending the system-supplied default CAs and trusting third-party 16063certificates. </p> 16064 16065<p> By default (see <a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>), client certificates are 16066not requested, and <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> should remain empty. In contrast 16067to <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, DNs of Certification Authorities installed 16068in $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> are not included in the client certificate 16069request message. MUAs with multiple client certificates may use the 16070list of preferred Certification Authorities to select the correct 16071client certificate. You may want to put your "preferred" CA or 16072CAs in $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, and install the remaining trusted CAs in 16073$<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>. </p> 16074 16075<p> Example: </p> 16076 16077<pre> 16078<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> = /etc/postfix/certs 16079</pre> 16080 16081<p> This feature is available in Postfix 2.2 and later. </p> 16082 16083 16084</DD> 16085 16086<DT><b><a name="smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> 16087(default: yes)</b></DT><DD> 16088 16089<p> Force the Postfix SMTP server to issue a TLS session id, even 16090when TLS session caching is turned off (<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a> 16091is empty). This behavior is compatible with Postfix < 2.3. </p> 16092 16093<p> With Postfix 2.3 and later the Postfix SMTP server can disable 16094session id generation when TLS session caching is turned off. This 16095keeps remote SMTP clients from caching sessions that almost certainly cannot 16096be re-used. </p> 16097 16098<p> By default, the Postfix SMTP server always generates TLS session 16099ids. This works around a known defect in mail client applications 16100such as MS Outlook, and may also prevent interoperability issues 16101with other MTAs. </p> 16102 16103<p> Example: </p> 16104 16105<pre> 16106<a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> = no 16107</pre> 16108 16109<p> This feature is available in Postfix 2.3 and later. </p> 16110 16111 16112</DD> 16113 16114<DT><b><a name="smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> 16115(default: no)</b></DT><DD> 16116 16117<p> Ask a remote SMTP client for a client certificate. This 16118information is needed for certificate based mail relaying with, 16119for example, the <a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a> feature. </p> 16120 16121<p> Some clients such as Netscape will either complain if no 16122certificate is available (for the list of CAs in $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>) 16123or will offer multiple client certificates to choose from. This 16124may be annoying, so this option is "off" by default. </p> 16125 16126<p> This feature is available in Postfix 2.2 and later. </p> 16127 16128 16129</DD> 16130 16131<DT><b><a name="smtpd_tls_auth_only">smtpd_tls_auth_only</a> 16132(default: no)</b></DT><DD> 16133 16134<p> When TLS encryption is optional in the Postfix SMTP server, do 16135not announce or accept SASL authentication over unencrypted 16136connections. </p> 16137 16138<p> This feature is available in Postfix 2.2 and later. </p> 16139 16140 16141</DD> 16142 16143<DT><b><a name="smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a> 16144(default: 9)</b></DT><DD> 16145 16146<p> The verification depth for remote SMTP client certificates. A 16147depth of 1 is sufficient if the issuing CA is listed in a local CA 16148file. </p> 16149 16150<p> The default verification depth is 9 (the OpenSSL default) for 16151compatibility with earlier Postfix behavior. Prior to Postfix 2.5, 16152the default value was 5, but the limit was not actually enforced. If 16153you have set this to a lower non-default value, certificates with longer 16154trust chains may now fail to verify. Certificate chains with 1 or 2 16155CAs are common, deeper chains are more rare and any number between 5 16156and 9 should suffice in practice. You can choose a lower number if, 16157for example, you trust certificates directly signed by an issuing CA 16158but not any CAs it delegates to. </p> 16159 16160<p> This feature is available in Postfix 2.2 and later. </p> 16161 16162 16163</DD> 16164 16165<DT><b><a name="smtpd_tls_cert_file">smtpd_tls_cert_file</a> 16166(default: empty)</b></DT><DD> 16167 16168<p> File with the Postfix SMTP server RSA certificate in PEM format. 16169This file may also contain the Postfix SMTP server private RSA key. </p> 16170 16171<p> Public Internet MX hosts without certificates signed by a "reputable" 16172CA must generate, and be prepared to present to most clients, a 16173self-signed or private-CA signed certificate. The client will not be 16174able to authenticate the server, but unless it is running Postfix 2.3 or 16175similar software, it will still insist on a server certificate. </p> 16176 16177<p> For servers that are <b>not</b> public Internet MX hosts, Postfix 161782.3 supports configurations with no certificates. This entails the 16179use of just the anonymous TLS ciphers, which are not supported by 16180typical SMTP clients. Since such clients will not, as a rule, fall 16181back to plain text after a TLS handshake failure, the server will 16182be unable to receive email from TLS enabled clients. To avoid 16183accidental configurations with no certificates, Postfix 2.3 enables 16184certificate-less operation only when the administrator explicitly 16185sets "<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = none". This ensures that new Postfix 16186configurations will not accidentally run with no certificates. </p> 16187 16188<p> Both RSA and DSA certificates are supported. When both types 16189are present, the cipher used determines which certificate will be 16190presented to the client. For Netscape and OpenSSL clients without 16191special cipher choices the RSA certificate is preferred. </p> 16192 16193<p> To enable a remote SMTP client to verify the Postfix SMTP server 16194certificate, the issuing CA certificates must be made available to the 16195client. You should include the required certificates in the server 16196certificate file, the server certificate first, then the issuing 16197CA(s) (bottom-up order). </p> 16198 16199<p> Example: the certificate for "server.example.com" was issued by 16200"intermediate CA" which itself has a certificate of "root CA". 16201Create the server.pem file with "cat server_cert.pem intermediate_CA.pem 16202root_CA.pem > server.pem". </p> 16203 16204<p> If you also want to verify client certificates issued by these 16205CAs, you can add the CA certificates to the <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>, in which 16206case it is not necessary to have them in the <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> or 16207<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p> 16208 16209<p> A certificate supplied here must be usable as an SSL server certificate 16210and hence pass the "openssl verify -purpose sslserver ..." test. </p> 16211 16212<p> Example: </p> 16213 16214<pre> 16215<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> = /etc/postfix/server.pem 16216</pre> 16217 16218<p> This feature is available in Postfix 2.2 and later. </p> 16219 16220 16221</DD> 16222 16223<DT><b><a name="smtpd_tls_cipherlist">smtpd_tls_cipherlist</a> 16224(default: empty)</b></DT><DD> 16225 16226<p> Obsolete Postfix < 2.3 control for the Postfix SMTP server TLS 16227cipher list. It is easy to create interoperability problems by choosing 16228a non-default cipher list. Do not use a non-default TLS cipherlist for 16229MX hosts on the public Internet. Clients that begin the TLS handshake, 16230but are unable to agree on a common cipher, may not be able to send any 16231email to the SMTP server. Using a restricted cipher list may be more 16232appropriate for a dedicated MSA or an internal mailhub, where one can 16233exert some control over the TLS software and settings of the connecting 16234clients. </p> 16235 16236<p> <b>Note:</b> do not use "" quotes around the parameter value. </p> 16237 16238<p>This feature is available with Postfix version 2.2. It is not used with 16239Postfix 2.3 and later; use <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> instead. </p> 16240 16241 16242</DD> 16243 16244<DT><b><a name="smtpd_tls_ciphers">smtpd_tls_ciphers</a> 16245(default: medium)</b></DT><DD> 16246 16247<p> The minimum TLS cipher grade that the Postfix SMTP server 16248will use with opportunistic TLS encryption. Cipher types listed in 16249<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> are excluded from the base definition of 16250the selected cipher grade. The default value is "medium" for Postfix 16251releases after the middle of 2015, "export" for older releases. 16252</p> 16253 16254<p> When TLS is mandatory the cipher grade is chosen via the 16255<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> configuration parameter, see there for syntax 16256details. </p> 16257 16258<p> This feature is available in Postfix 2.6 and later. With earlier Postfix 16259releases only the <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> parameter is implemented, 16260and opportunistic TLS always uses "export" or better (i.e. all) ciphers. </p> 16261 16262 16263</DD> 16264 16265<DT><b><a name="smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> 16266(default: empty)</b></DT><DD> 16267 16268<p> File with the Postfix SMTP server DSA certificate in PEM format. 16269This file may also contain the Postfix SMTP server private DSA key. </p> 16270 16271<p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details. 16272</p> 16273 16274<p> Example: </p> 16275 16276<pre> 16277<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> = /etc/postfix/server-dsa.pem 16278</pre> 16279 16280<p> This feature is available in Postfix 2.2 and later. </p> 16281 16282 16283</DD> 16284 16285<DT><b><a name="smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> 16286(default: empty)</b></DT><DD> 16287 16288<p> File with DH parameters that the Postfix SMTP server should 16289use with non-export EDH ciphers. </p> 16290 16291<p> Instead of using the exact same parameter sets as distributed 16292with other TLS packages, it is more secure to generate your own 16293set of parameters with something like the following commands: </p> 16294 16295<blockquote> 16296<pre> 16297openssl dhparam -out /etc/postfix/dh512.pem 512 16298openssl dhparam -out /etc/postfix/dh1024.pem 1024 16299openssl dhparam -out /etc/postfix/dh2048.pem 2048 16300</pre> 16301</blockquote> 16302 16303<p> It is safe to share the same DH parameters between multiple 16304Postfix instances. If you prefer, you can generate separate 16305parameters for each instance. </p> 16306 16307<p> If you want to take maximal advantage of ciphers that offer <a 16308href="FORWARD_SECRECY_README.html#dfn_fs">forward secrecy</a> see 16309the <a href="FORWARD_SECRECY_README.html#quick-start">Getting 16310started</a> section of <a 16311href="FORWARD_SECRECY_README.html">FORWARD_SECRECY_README</a>. The 16312full document conveniently presents all information about Postfix 16313"perfect" forward secrecy support in one place: what forward secrecy 16314is, how to tweak settings, and what you can expect to see when 16315Postfix uses ciphers with forward secrecy. </p> 16316 16317<p> Example: </p> 16318 16319<pre> 16320<a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> = /etc/postfix/dh2048.pem 16321</pre> 16322 16323<p>This feature is available with Postfix version 2.2.</p> 16324 16325 16326</DD> 16327 16328<DT><b><a name="smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> 16329(default: empty)</b></DT><DD> 16330 16331<p> File with DH parameters that the Postfix SMTP server should 16332use with export-grade EDH ciphers. The default SMTP server cipher 16333grade is "medium" with Postfix releases after the middle of 2015, 16334and as a result export-grade cipher suites are by default not used. 16335</p> 16336 16337<p> See also the discussion under the <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> 16338configuration parameter. </p> 16339 16340<p> Example: </p> 16341 16342<pre> 16343<a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> = /etc/postfix/dh_512.pem 16344</pre> 16345 16346<p>This feature is available with Postfix version 2.2.</p> 16347 16348 16349</DD> 16350 16351<DT><b><a name="smtpd_tls_dkey_file">smtpd_tls_dkey_file</a> 16352(default: $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>)</b></DT><DD> 16353 16354<p> File with the Postfix SMTP server DSA private key in PEM format. 16355This file may be combined with the Postfix SMTP server DSA certificate 16356file specified with $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. </p> 16357 16358<p> The private key must be accessible without a pass-phrase, i.e. it 16359must not be encrypted. File permissions should grant read-only 16360access to the system superuser account ("root"), and no access 16361to anyone else. </p> 16362 16363<p> This feature is available in Postfix 2.2 and later. </p> 16364 16365 16366</DD> 16367 16368<DT><b><a name="smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> 16369(default: empty)</b></DT><DD> 16370 16371<p> File with the Postfix SMTP server ECDSA certificate in PEM format. 16372This file may also contain the Postfix SMTP server private ECDSA key. </p> 16373 16374<p> See the discussion under <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for more details. </p> 16375 16376<p> Example: </p> 16377 16378<pre> 16379<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> = /etc/postfix/ecdsa-scert.pem 16380</pre> 16381 16382<p> This feature is available in Postfix 2.6 and later, when Postfix is 16383compiled and linked with OpenSSL 1.0.0 or later. </p> 16384 16385 16386</DD> 16387 16388<DT><b><a name="smtpd_tls_eckey_file">smtpd_tls_eckey_file</a> 16389(default: $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>)</b></DT><DD> 16390 16391<p> File with the Postfix SMTP server ECDSA private key in PEM format. 16392This file may be combined with the Postfix SMTP server ECDSA certificate 16393file specified with $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>. </p> 16394 16395<p> The private key must be accessible without a pass-phrase, i.e. it 16396must not be encrypted. File permissions should grant read-only 16397access to the system superuser account ("root"), and no access 16398to anyone else. </p> 16399 16400<p> This feature is available in Postfix 2.6 and later, when Postfix is 16401compiled and linked with OpenSSL 1.0.0 or later. </p> 16402 16403 16404</DD> 16405 16406<DT><b><a name="smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> 16407(default: see "postconf -d" output)</b></DT><DD> 16408 16409<p> The Postfix SMTP server security grade for ephemeral elliptic-curve 16410Diffie-Hellman (EECDH) key exchange. </p> 16411 16412<p> The available choices are: </p> 16413 16414<dl> 16415 16416<dt><b>none</b></dt> <dd> Don't use EECDH. Ciphers based on EECDH key 16417exchange will be disabled. This is the default in Postfix versions 164182.6 and 2.7. </dd> 16419 16420<dt><b>strong</b></dt> <dd> Use EECDH with approximately 128 16421bits of security at a reasonable computational cost. This is the 16422current best-practice trade-off between security and computational 16423efficiency. This is the default in Postfix version 2.8 and later. 16424</dd> 16425 16426<dt><b>ultra</b></dt> <dd> Use EECDH with approximately 192 bits of 16427security at computational cost that is approximately twice as high 16428as 128 bit strength ECC. Barring significant progress in attacks on 16429elliptic curve crypto-systems, the "strong" curve is sufficient for most 16430users. </dd> 16431 16432</dl> 16433 16434<p> If you want to take maximal advantage of ciphers that offer <a 16435href="FORWARD_SECRECY_README.html#dfn_fs">forward secrecy</a> see 16436the <a href="FORWARD_SECRECY_README.html#quick-start">Getting 16437started</a> section of <a 16438href="FORWARD_SECRECY_README.html">FORWARD_SECRECY_README</a>. The 16439full document conveniently presents all information about Postfix 16440"perfect" forward secrecy support in one place: what forward secrecy 16441is, how to tweak settings, and what you can expect to see when 16442Postfix uses ciphers with forward secrecy. </p> 16443 16444<p> This feature is available in Postfix 2.6 and later, when it is 16445compiled and linked with OpenSSL 1.0.0 or later on platforms 16446where EC algorithms have not been disabled by the vendor. </p> 16447 16448 16449</DD> 16450 16451<DT><b><a name="smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> 16452(default: empty)</b></DT><DD> 16453 16454<p> List of ciphers or cipher types to exclude from the SMTP server 16455cipher list at all TLS security levels. Excluding valid ciphers 16456can create interoperability problems. DO NOT exclude ciphers unless it 16457is essential to do so. This is not an OpenSSL cipherlist; it is a simple 16458list separated by whitespace and/or commas. The elements are a single 16459cipher, or one or more "+" separated cipher properties, in which case 16460only ciphers matching <b>all</b> the properties are excluded. </p> 16461 16462<p> Examples (some of these will cause problems): </p> 16463 16464<blockquote> 16465<pre> 16466<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL 16467<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = MD5, DES 16468<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = DES+MD5 16469<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = AES256-SHA, DES-CBC3-MD5 16470<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = kEDH+aRSA 16471</pre> 16472</blockquote> 16473 16474<p> The first setting disables anonymous ciphers. The next setting 16475disables ciphers that use the MD5 digest algorithm or the (single) DES 16476encryption algorithm. The next setting disables ciphers that use MD5 and 16477DES together. The next setting disables the two ciphers "AES256-SHA" 16478and "DES-CBC3-MD5". The last setting disables ciphers that use "EDH" 16479key exchange with RSA authentication. </p> 16480 16481<p> This feature is available in Postfix 2.3 and later. </p> 16482 16483 16484</DD> 16485 16486<DT><b><a name="smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> 16487(default: md5)</b></DT><DD> 16488 16489<p> The message digest algorithm to construct remote SMTP 16490client-certificate 16491fingerprints or public key fingerprints (Postfix 2.9 and later) 16492for <b><a href="postconf.5.html#check_ccert_access">check_ccert_access</a></b> and <b><a href="postconf.5.html#permit_tls_clientcerts">permit_tls_clientcerts</a></b>. The 16493default algorithm is <b>md5</b>, for backwards compatibility with Postfix 16494releases prior to 2.5. </p> 16495 16496<p> Advances in hash 16497function cryptanalysis have led to md5 being deprecated in favor of sha1. 16498However, as long as there are no known "second pre-image" attacks 16499against md5, its use in this context can still be considered safe. 16500</p> 16501 16502<p> While additional digest algorithms are often available with OpenSSL's 16503libcrypto, only those used by libssl in SSL cipher suites are available to 16504Postfix. </p> 16505 16506<p> To find the fingerprint of a specific certificate file, with a 16507specific digest algorithm, run: </p> 16508 16509<blockquote> 16510<pre> 16511$ openssl x509 -noout -fingerprint -<i>digest</i> -in <i>certfile</i>.pem 16512</pre> 16513</blockquote> 16514 16515<p> The text to the right of "=" sign is the desired fingerprint. 16516For example: </p> 16517 16518<blockquote> 16519<pre> 16520$ openssl x509 -noout -fingerprint -sha1 -in cert.pem 16521SHA1 Fingerprint=D4:6A:AB:19:24:79:F8:32:BB:A6:CB:66:82:C0:8E:9B:EE:29:A8:1A 16522</pre> 16523</blockquote> 16524 16525<p> To extract the public key fingerprint from an X.509 certificate, 16526you need to extract the public key from the certificate and compute 16527the appropriate digest of its DER (ASN.1) encoding. With OpenSSL 16528the "-pubkey" option of the "x509" command extracts the public 16529key always in "PEM" format. We pipe the result to another OpenSSL 16530command that converts the key to DER and then to the "dgst" command 16531to compute the fingerprint. </p> 16532 16533<p> The actual command to transform the key to DER format depends 16534on the version of OpenSSL used. With OpenSSL 1.0.0 and later, the 16535"pkey" command supports all key types. With OpenSSL 0.9.8 and 16536earlier, the key type is always RSA (nobody uses DSA, and EC 16537keys are not fully supported by 0.9.8), so the "rsa" command is 16538used. </p> 16539<blockquote> 16540<pre> 16541# OpenSSL 1.0 with all certificates and SHA-1 fingerprints. 16542$ openssl x509 -in cert.pem -noout -pubkey | 16543 openssl pkey -pubin -outform DER | 16544 openssl dgst -sha1 -c 16545(stdin)= 64:3f:1f:f6:e5:1e:d4:2a:56:8b:fc:09:1a:61:98:b5:bc:7c:60:58 16546</pre> 16547</blockquote> 16548 16549<blockquote> 16550<pre> 16551# OpenSSL 0.9.8 with RSA certificates and MD5 fingerprints. 16552$ openssl x509 -in cert.pem -noout -pubkey | 16553 openssl rsa -pubin -outform DER | 16554 openssl dgst -md5 -c 16555(stdin)= f4:62:60:f6:12:8f:d5:8d:28:4d:13:a7:db:b2:ff:50 16556</pre> 16557</blockquote> 16558 16559<p> The Postfix SMTP server and client log the peer (leaf) certificate 16560fingerprint and public key fingerprint when the TLS loglevel is 2 or 16561higher. </p> 16562 16563<p> <b>Note:</b> Postfix 2.9.0–2.9.5 computed the public key 16564fingerprint incorrectly. To use public-key fingerprints, upgrade 16565to Postfix 2.9.6 or later. </p> 16566 16567<p> Example: client-certificate access table, with sha1 fingerprints: </p> 16568 16569<blockquote> 16570<pre> 16571/etc/postfix/<a href="postconf.5.html">main.cf</a>: 16572 <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> = sha1 16573 <a href="postconf.5.html#smtpd_client_restrictions">smtpd_client_restrictions</a> = 16574 <a href="postconf.5.html#check_ccert_access">check_ccert_access</a> <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/access, 16575 reject 16576</pre> 16577<pre> 16578/etc/postfix/access: 16579 # Action folded to next line... 16580 AF:88:7C:AD:51:95:6F:36:96:F6:01:FB:2E:48:CD:AB:49:25:A2:3B 16581 OK 16582 85:16:78:FD:73:6E:CE:70:E0:31:5F:0D:3C:C8:6D:C4:2C:24:59:E1 16583 <a href="postconf.5.html#permit_auth_destination">permit_auth_destination</a> 16584</pre> 16585</blockquote> 16586 16587<p> This feature is available in Postfix 2.5 and later. </p> 16588 16589 16590</DD> 16591 16592<DT><b><a name="smtpd_tls_key_file">smtpd_tls_key_file</a> 16593(default: $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>)</b></DT><DD> 16594 16595<p> File with the Postfix SMTP server RSA private key in PEM format. 16596This file may be combined with the Postfix SMTP server RSA certificate 16597file specified with $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>. </p> 16598 16599<p> The private key must be accessible without a pass-phrase, i.e. it 16600must not be encrypted. File permissions should grant read-only 16601access to the system superuser account ("root"), and no access 16602to anyone else. </p> 16603 16604 16605</DD> 16606 16607<DT><b><a name="smtpd_tls_loglevel">smtpd_tls_loglevel</a> 16608(default: 0)</b></DT><DD> 16609 16610<p> Enable additional Postfix SMTP server logging of TLS activity. 16611Each logging level also includes the information that is logged at 16612a lower logging level. </p> 16613 16614<dl compact> 16615 16616<dt> </dt> <dd> 0 Disable logging of TLS activity. </dd> 16617 16618<dt> </dt> <dd> 1 Log only a summary message on TLS handshake completion 16619— no logging of client certificate trust-chain verification errors 16620if client certificate verification is not required. With Postfix 2.8 and 16621earlier, log the summary message, peer certificate summary information 16622and unconditionally log trust-chain verification errors. </dd> 16623 16624<dt> </dt> <dd> 2 Also log levels during TLS negotiation. </dd> 16625 16626<dt> </dt> <dd> 3 Also log hexadecimal and ASCII dump of TLS negotiation 16627process. </dd> 16628 16629<dt> </dt> <dd> 4 Also log hexadecimal and ASCII dump of complete 16630transmission after STARTTLS. </dd> 16631 16632</dl> 16633 16634<p> Do not use "<a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a> = 2" or higher except in case 16635of problems. Use of loglevel 4 is strongly discouraged. </p> 16636 16637<p> This feature is available in Postfix 2.2 and later. </p> 16638 16639 16640</DD> 16641 16642<DT><b><a name="smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> 16643(default: medium)</b></DT><DD> 16644 16645<p> The minimum TLS cipher grade that the Postfix SMTP server will 16646use with mandatory TLS encryption. The default grade ("medium") is 16647sufficiently strong that any benefit from globally restricting TLS 16648sessions to a more stringent grade is likely negligible, especially 16649given the fact that many implementations still do not offer any stronger 16650("high" grade) ciphers, while those that do, will always use "high" 16651grade ciphers. So insisting on "high" grade ciphers is generally 16652counter-productive. Allowing "export" or "low" ciphers is typically 16653not a good idea, as systems limited to just these are limited to 16654obsolete browsers. No known SMTP clients fail to support at least 16655one "medium" or "high" grade cipher. </p> 16656 16657<p> The following cipher grades are supported: </p> 16658 16659<dl> 16660<dt><b>export</b></dt> 16661<dd> Enable "EXPORT" grade or stronger OpenSSL ciphers. The 16662underlying cipherlist is specified via the <a href="postconf.5.html#tls_export_cipherlist">tls_export_cipherlist</a> 16663configuration parameter, which you are strongly encouraged to not 16664change. This choice is insecure and SHOULD NOT be used. </dd> 16665 16666<dt><b>low</b></dt> 16667<dd> Enable "LOW" grade or stronger OpenSSL ciphers. The underlying 16668cipherlist is specified via the <a href="postconf.5.html#tls_low_cipherlist">tls_low_cipherlist</a> configuration 16669parameter, which you are strongly encouraged to not change. This 16670choice is insecure and SHOULD NOT be used. </dd> 16671 16672<dt><b>medium</b></dt> 16673<dd> Enable "MEDIUM" grade or stronger OpenSSL ciphers. These use 128-bit 16674or longer symmetric bulk-encryption keys. This is the default minimum 16675strength for mandatory TLS encryption. The underlying cipherlist is 16676specified via the <a href="postconf.5.html#tls_medium_cipherlist">tls_medium_cipherlist</a> configuration parameter, which 16677you are strongly encouraged to not change. </dd> 16678 16679<dt><b>high</b></dt> 16680<dd> Enable only "HIGH" grade OpenSSL ciphers. The 16681underlying cipherlist is specified via the <a href="postconf.5.html#tls_high_cipherlist">tls_high_cipherlist</a> 16682configuration parameter, which you are strongly encouraged to 16683not change. </dd> 16684 16685<dt><b>null</b></dt> 16686<dd> Enable only the "NULL" OpenSSL ciphers, these provide authentication 16687without encryption. This setting is only appropriate in the rare 16688case that all clients are prepared to use NULL ciphers (not normally 16689enabled in TLS clients). The underlying cipherlist is specified via the 16690<a href="postconf.5.html#tls_null_cipherlist">tls_null_cipherlist</a> configuration parameter, which you are strongly 16691encouraged to not change. </dd> 16692 16693</dl> 16694 16695<p> Cipher types listed in 16696<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 16697excluded from the base definition of the selected cipher grade. See 16698<a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> for cipher controls that apply to opportunistic 16699TLS. </p> 16700 16701<p> The underlying cipherlists for grades other than "null" include 16702anonymous ciphers, but these are automatically filtered out if the 16703server is configured to ask for remote SMTP client certificates. You are very 16704unlikely to need to take any steps to exclude anonymous ciphers, they 16705are excluded automatically as required. If you must exclude anonymous 16706ciphers even when Postfix does not need or use peer certificates, set 16707"<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> = aNULL". To exclude anonymous ciphers only 16708when TLS is enforced, set "<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> = aNULL". </p> 16709 16710<p> This feature is available in Postfix 2.3 and later. </p> 16711 16712 16713</DD> 16714 16715<DT><b><a name="smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> 16716(default: empty)</b></DT><DD> 16717 16718<p> Additional list of ciphers or cipher types to exclude from the 16719Postfix SMTP server cipher list at mandatory TLS security levels. 16720This list 16721works in addition to the exclusions listed with <a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> 16722(see there for syntax details). </p> 16723 16724<p> This feature is available in Postfix 2.3 and later. </p> 16725 16726 16727</DD> 16728 16729<DT><b><a name="smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> 16730(default: !SSLv2, !SSLv3)</b></DT><DD> 16731 16732<p> The SSL/TLS protocols accepted by the Postfix SMTP server with 16733mandatory TLS encryption. If the list is empty, the server supports 16734all available SSL/TLS protocol versions. A non-empty value is a 16735list of protocol names separated by whitespace, commas or colons. 16736The supported protocol names are "SSLv2", "SSLv3" and "TLSv1", and 16737are not case sensitive. The default value is "!SSLv2, !SSLv3" for 16738Postfix releases after the middle of 2015, "!SSLv2" for older 16739releases. </p> 16740 16741<p> With Postfix ≥ 2.5 the parameter syntax was expanded to support 16742protocol exclusions. One can explicitly exclude "SSLv2" by setting 16743"<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2". To exclude both "SSLv2" and 16744"SSLv3" set "<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3". Listing 16745the protocols to include, rather than protocols to exclude, is 16746supported, but not recommended. The exclusion form more closely 16747matches the underlying OpenSSL interface semantics. </p> 16748 16749<p> Note: As of OpenSSL 1.0.1 two new protocols are defined, "TLSv1.1" 16750and "TLSv1.2". When Postfix ≤ 2.5 is linked against OpenSSL 1.0.1 16751or later, these, or any other new protocol versions, cannot be 16752disabled. The latest patch levels of Postfix ≥ 2.6, and all 16753versions of Postfix ≥ 2.10 can disable support for "TLSv1.1" or 16754"TLSv1.2". </p> 16755 16756<p> Example: </p> 16757 16758<pre> 16759# Preferred syntax with Postfix ≥ 2.5: 16760<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = !SSLv2, !SSLv3 16761# Legacy syntax: 16762<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> = TLSv1 16763</pre> 16764 16765<p> This feature is available in Postfix 2.3 and later. </p> 16766 16767 16768</DD> 16769 16770<DT><b><a name="smtpd_tls_protocols">smtpd_tls_protocols</a> 16771(default: !SSLv2, !SSLv3)</b></DT><DD> 16772 16773<p> List of TLS protocols that the Postfix SMTP server will exclude 16774or include with opportunistic TLS encryption. The default value is 16775"!SSLv2, !SSLv3" for Postfix releases after the middle of 2015, 16776empty for older releases allowing all protocols to be 16777used with opportunistic TLS. A non-empty value is a list of protocol 16778names separated by whitespace, commas or colons. The supported 16779protocol names are "SSLv2", "SSLv3" and "TLSv1", and are not case 16780sensitive. </p> 16781 16782<p> Note: As of OpenSSL 1.0.1 two new protocols are defined, "TLSv1.1" 16783and "TLSv1.2". The latest patch levels of Postfix ≥ 2.6, and all 16784versions of Postfix ≥ 2.10 can disable support for "TLSv1.1" or 16785"TLSv1.2". </p> 16786 16787<p> To include a protocol list its name, to exclude it, prefix the name 16788with a "!" character. To exclude SSLv2 for opportunistic TLS set 16789"<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2". To exclude both "SSLv2" and "SSLv3" set 16790"<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2, !SSLv3". Explicitly listing the protocols to 16791include, rather than protocols to exclude, is supported, but not 16792recommended. The exclusion form more closely matches the underlying 16793OpenSSL interface semantics. </p> 16794 16795<p> Example: </p> 16796<pre> 16797<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> = !SSLv2, !SSLv3 16798</pre> 16799 16800<p> This feature is available in Postfix 2.6 and later. </p> 16801 16802 16803</DD> 16804 16805<DT><b><a name="smtpd_tls_received_header">smtpd_tls_received_header</a> 16806(default: no)</b></DT><DD> 16807 16808<p> Request that the Postfix SMTP server produces Received: message 16809headers that include information about the protocol and cipher used, 16810as well as the remote SMTP client CommonName and client certificate issuer 16811CommonName. This is disabled by default, as the information may 16812be modified in transit through other mail servers. Only information 16813that was recorded by the final destination can be trusted. </p> 16814 16815<p> This feature is available in Postfix 2.2 and later. </p> 16816 16817 16818</DD> 16819 16820<DT><b><a name="smtpd_tls_req_ccert">smtpd_tls_req_ccert</a> 16821(default: no)</b></DT><DD> 16822 16823<p> With mandatory TLS encryption, require a trusted remote SMTP client 16824certificate in order to allow TLS connections to proceed. This 16825option implies "<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> = yes". </p> 16826 16827<p> When TLS encryption is optional, this setting is ignored with 16828a warning written to the mail log. </p> 16829 16830<p> This feature is available in Postfix 2.2 and later. </p> 16831 16832 16833</DD> 16834 16835<DT><b><a name="smtpd_tls_security_level">smtpd_tls_security_level</a> 16836(default: empty)</b></DT><DD> 16837 16838<p> The SMTP TLS security level for the Postfix SMTP server; when 16839a non-empty value is specified, this overrides the obsolete parameters 16840<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 16841"<a href="postconf.5.html#smtpd_tls_wrappermode">smtpd_tls_wrappermode</a> = yes". </p> 16842 16843<p> Specify one of the following security levels: </p> 16844 16845<dl> 16846 16847<dt><b>none</b></dt> <dd> TLS will not be used. </dd> 16848 16849<dt><b>may</b></dt> <dd> Opportunistic TLS: announce STARTTLS support 16850to remote SMTP clients, but do not require that clients use TLS encryption. 16851</dd> 16852 16853<dt><b>encrypt</b></dt> <dd>Mandatory TLS encryption: announce 16854STARTTLS support to remote SMTP clients, and require that clients use TLS 16855encryption. According to <a href="http://tools.ietf.org/html/rfc2487">RFC 2487</a> this MUST NOT be applied in case 16856of a publicly-referenced SMTP server. Instead, this option should 16857be used only on dedicated servers. </dd> 16858 16859</dl> 16860 16861<p> Note 1: the "fingerprint", "verify" and "secure" levels are not 16862supported here. 16863The Postfix SMTP server logs a warning and uses "encrypt" instead. 16864To verify remote SMTP client certificates, see <a href="TLS_README.html">TLS_README</a> for a discussion 16865of 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> 16866features. </p> 16867 16868<p> Note 2: The parameter setting "<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> = 16869encrypt" implies "<a href="postconf.5.html#smtpd_tls_auth_only">smtpd_tls_auth_only</a> = yes".</p> 16870 16871<p> Note 3: when invoked via "sendmail -bs", Postfix will never 16872offer STARTTLS due to insufficient privileges to access the server 16873private key. This is intended behavior.</p> 16874 16875<p> This feature is available in Postfix 2.3 and later. </p> 16876 16877 16878</DD> 16879 16880<DT><b><a name="smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a> 16881(default: empty)</b></DT><DD> 16882 16883<p> Name of the file containing the optional Postfix SMTP server 16884TLS session cache. Specify a database type that supports enumeration, 16885such as <b>btree</b> or <b>sdbm</b>; there is no need to support 16886concurrent access. The file is created if it does not exist. The <a href="smtpd.8.html">smtpd(8)</a> 16887daemon does not use this parameter directly, rather the cache is 16888implemented indirectly in the <a href="tlsmgr.8.html">tlsmgr(8)</a> daemon. This means that 16889per-smtpd-instance <a href="master.5.html">master.cf</a> overrides of this parameter are not 16890effective. Note, that each of the cache databases supported by <a href="tlsmgr.8.html">tlsmgr(8)</a> 16891daemon: $<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> 16892(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 16893stored separately. It is not at this time possible to store multiple 16894caches in a single database. </p> 16895 16896<p> Note: <b>dbm</b> databases are not suitable. TLS 16897session objects are too large. </p> 16898 16899<p> As of version 2.5, Postfix no longer uses root privileges when 16900opening this file. The file should now be stored under the Postfix-owned 16901<a href="postconf.5.html#data_directory">data_directory</a>. As a migration aid, an attempt to open the file 16902under a non-Postfix directory is redirected to the Postfix-owned 16903<a href="postconf.5.html#data_directory">data_directory</a>, and a warning is logged. </p> 16904 16905<p> As of Postfix 2.11 the preferred mechanism for session resumption 16906is <a href="http://tools.ietf.org/html/rfc5077">RFC 5077</a> TLS session tickets, which don't require server-side 16907storage. Consequently, for Postfix ≥ 2.11 this parameter should 16908generally be left empty. TLS session tickets require an OpenSSL 16909library (at least version 0.9.8h) that provides full support for 16910this TLS extension. See also <a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>. </p> 16911 16912<p> Example: </p> 16913 16914<pre> 16915<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a> = <a href="DATABASE_README.html#types">btree</a>:/var/db/postfix/smtpd_scache 16916</pre> 16917 16918<p> This feature is available in Postfix 2.2 and later. </p> 16919 16920 16921</DD> 16922 16923<DT><b><a name="smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> 16924(default: 3600s)</b></DT><DD> 16925 16926<p> The expiration time of Postfix SMTP server TLS session cache 16927information. A cache cleanup is performed periodically 16928every $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a> seconds. As with 16929$<a href="postconf.5.html#smtpd_tls_session_cache_database">smtpd_tls_session_cache_database</a>, this parameter is implemented in the 16930<a href="tlsmgr.8.html">tlsmgr(8)</a> daemon and therefore per-smtpd-instance <a href="master.5.html">master.cf</a> overrides 16931are not possible. </p> 16932 16933<p> As of Postfix 2.11 this setting cannot exceed 100 days. If set 16934≤ 0, session caching is disabled, not just via the database, but 16935also via <a href="http://tools.ietf.org/html/rfc5077">RFC 5077</a> TLS session tickets, which don't require server-side 16936storage. If set to a positive value less than 2 minutes, the minimum 16937value of 2 minutes is used instead. TLS session tickets require 16938an OpenSSL library (at least version 0.9.8h) that provides full 16939support for this TLS extension. </p> 16940 16941<p> This feature is available in Postfix 2.2 and later, and updated 16942for TLS session ticket support in Postfix 2.11. </p> 16943 16944 16945</DD> 16946 16947<DT><b><a name="smtpd_tls_wrappermode">smtpd_tls_wrappermode</a> 16948(default: no)</b></DT><DD> 16949 16950<p> Run the Postfix SMTP server in the non-standard "wrapper" mode, 16951instead of using the STARTTLS command. </p> 16952 16953<p> If you want to support this service, enable a special port in 16954<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 16955server's command line. Port 465 (smtps) was once chosen for this 16956purpose. </p> 16957 16958<p> This feature is available in Postfix 2.2 and later. </p> 16959 16960 16961</DD> 16962 16963<DT><b><a name="smtpd_upstream_proxy_protocol">smtpd_upstream_proxy_protocol</a> 16964(default: empty)</b></DT><DD> 16965 16966<p> The name of the proxy protocol used by an optional before-smtpd 16967proxy agent. When a proxy agent is used, this protocol conveys local 16968and remote address and port information. Specify 16969"<a href="postconf.5.html#smtpd_upstream_proxy_protocol">smtpd_upstream_proxy_protocol</a> = haproxy" to enable the haproxy 16970protocol. </p> 16971 16972<p> NOTE: To use the nginx proxy with <a href="smtpd.8.html">smtpd(8)</a>, enable the XCLIENT 16973protocol with <a href="postconf.5.html#smtpd_authorized_xclient_hosts">smtpd_authorized_xclient_hosts</a>. This supports SASL 16974authentication in the proxy agent (Postfix 2.9 and later). <p> 16975 16976<p> This feature is available in Postfix 2.10 and later. </p> 16977 16978 16979</DD> 16980 16981<DT><b><a name="smtpd_upstream_proxy_timeout">smtpd_upstream_proxy_timeout</a> 16982(default: 5s)</b></DT><DD> 16983 16984<p> The time limit for the proxy protocol specified with the 16985<a href="postconf.5.html#smtpd_upstream_proxy_protocol">smtpd_upstream_proxy_protocol</a> parameter. </p> 16986 16987<p> This feature is available in Postfix 2.10 and later. </p> 16988 16989 16990</DD> 16991 16992<DT><b><a name="smtpd_use_tls">smtpd_use_tls</a> 16993(default: no)</b></DT><DD> 16994 16995<p> Opportunistic TLS: announce STARTTLS support to remote SMTP clients, 16996but do not require that clients use TLS encryption. </p> 16997 16998<p> Note: when invoked via "<b>sendmail -bs</b>", Postfix will never offer 16999STARTTLS due to insufficient privileges to access the server private 17000key. This is intended behavior. </p> 17001 17002<p> This feature is available in Postfix 2.2 and later. With 17003Postfix 2.3 and later use <a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> instead. </p> 17004 17005 17006</DD> 17007 17008<DT><b><a name="smtputf8_autodetect_classes">smtputf8_autodetect_classes</a> 17009(default: sendmail, verify)</b></DT><DD> 17010 17011<p> Detect that a message requires SMTPUTF8 support for the specified 17012mail origin classes. This is a workaround to avoid chicken-and-egg 17013problems during the initial SMTPUTF8 roll-out in environments with 17014pre-existing mail flows that contain UTF8. Those mail flows should 17015not break because Postfix suddenly refuses to deliver such mail 17016to down-stream MTAs that don't announce SMTPUTF8 support. </p> 17017 17018<p> The problem is that Postfix cannot rely solely on the sender's 17019declaration that a message requires SMTPUTF8 support, because UTF8 17020may be introduced during local processing (for example, the client 17021hostname in Postfix's Received: header, adding @$<a href="postconf.5.html#myorigin">myorigin</a> or 17022.$<a href="postconf.5.html#mydomain">mydomain</a> to an incomplete address, address rewriting, alias 17023expansion, automatic BCC recipients, local forwarding, and changes 17024made by header checks or Milter applications). </p> 17025 17026<p> For now, the default is to enable "SMTPUTF8 required" autodetection 17027only for Postfix sendmail command-line submissions and address 17028verification probes. This may change once SMTPUTF8 support achieves 17029world domination. However, sites that add UTF8 content via local 17030processing (see above) should autodetect the need for SMTPUTF8 17031support for all email.</p> 17032 17033<p> Specify one or more of the following: </p> 17034 17035<dl compact> 17036 17037<dt> <b> sendmail </b> </dt> <dd> Submission with the Postfix 17038<a href="sendmail.1.html">sendmail(1)</a> command. </dd> 17039 17040<dt> <b> smtpd </b> </dt> <dd> Mail received with the <a href="smtpd.8.html">smtpd(8)</a> 17041daemon. </dd> 17042 17043<dt> <b> qmqpd </b> </dt> <dd> Mail received with the <a href="qmqpd.8.html">qmqpd(8)</a> 17044daemon. </dd> 17045 17046<dt> <b> forward </b> </dt> <dd> Local forwarding or aliasing. When 17047a message is received with "SMTPUTF8 required", then the forwarded 17048(aliased) message always has "SMTPUTF8 required". </dd> 17049 17050<dt> <b> bounce </b> </dt> <dd> Submission by the <a href="bounce.8.html">bounce(8)</a> daemon. 17051When a message is received with "SMTPUTF8 required", then the 17052delivery status notification always has "SMTPUTF8 required". </dd> 17053 17054<dt> <b> notify </b> </dt> <dd> Postmaster notification from the 17055<a href="smtp.8.html">smtp(8)</a> or <a href="smtpd.8.html">smtpd(8)</a> daemon. </dd> 17056 17057<dt> <b> verify </b> </dt> <dd> Address verification probe from the 17058<a href="verify.8.html">verify(8)</a> daemon. </dd> 17059 17060<dt> <b> all </b> </dt> <dd> Enable SMTPUTF8 autodetection for all 17061mail. </dd> 17062 17063</dl> 17064 17065<p> This feature is available in Postfix 3.0 and later. </p> 17066 17067 17068</DD> 17069 17070<DT><b><a name="smtputf8_enable">smtputf8_enable</a> 17071(default: yes)</b></DT><DD> 17072 17073<p> Enable preliminary SMTPUTF8 support for the protocols described 17074in <a href="http://tools.ietf.org/html/rfc6531">RFC 6531</a>..6533. This requires that Postfix is built to support 17075these protocols. </p> 17076 17077<p> This feature is available in Postfix 3.0 and later. </p> 17078 17079 17080</DD> 17081 17082<DT><b><a name="soft_bounce">soft_bounce</a> 17083(default: no)</b></DT><DD> 17084 17085<p> 17086Safety net to keep mail queued that would otherwise be returned to 17087the sender. This parameter disables locally-generated bounces, 17088changes the handling of negative responses from remote servers, 17089content filters or plugins, 17090and prevents the Postfix SMTP server from rejecting mail permanently 17091by changing 5xx reply codes into 4xx. However, <a href="postconf.5.html#soft_bounce">soft_bounce</a> is no 17092cure for address rewriting mistakes or mail routing mistakes. 17093</p> 17094 17095<p> 17096Note: "<a href="postconf.5.html#soft_bounce">soft_bounce</a> = yes" is in some cases implemented by modifying 17097server responses. Therefore, the response that Postfix logs may 17098differ from the response that Postfix actually sends or receives. 17099</p> 17100 17101<p> 17102Example: 17103</p> 17104 17105<pre> 17106<a href="postconf.5.html#soft_bounce">soft_bounce</a> = yes 17107</pre> 17108 17109 17110</DD> 17111 17112<DT><b><a name="stale_lock_time">stale_lock_time</a> 17113(default: 500s)</b></DT><DD> 17114 17115<p> 17116The time after which a stale exclusive mailbox lockfile is removed. 17117This is used for delivery to file or mailbox. 17118</p> 17119 17120<p> 17121Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 17122The default time unit is s (seconds). 17123</p> 17124 17125 17126</DD> 17127 17128<DT><b><a name="stress">stress</a> 17129(default: empty)</b></DT><DD> 17130 17131<p> This feature is documented in the <a href="STRESS_README.html">STRESS_README</a> document. </p> 17132 17133<p> This feature is available in Postfix 2.5 and later. </p> 17134 17135 17136</DD> 17137 17138<DT><b><a name="strict_7bit_headers">strict_7bit_headers</a> 17139(default: no)</b></DT><DD> 17140 17141<p> 17142Reject mail with 8-bit text in message headers. This blocks mail 17143from poorly written applications. 17144</p> 17145 17146<p> 17147This feature should not be enabled on a general purpose mail server, 17148because it is likely to reject legitimate email. 17149</p> 17150 17151<p> 17152This feature is available in Postfix 2.0 and later. 17153</p> 17154 17155 17156</DD> 17157 17158<DT><b><a name="strict_8bitmime">strict_8bitmime</a> 17159(default: no)</b></DT><DD> 17160 17161<p> 17162Enable 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>. 17163</p> 17164 17165<p> 17166This feature should not be enabled on a general purpose mail server, 17167because it is likely to reject legitimate email. 17168</p> 17169 17170<p> 17171This feature is available in Postfix 2.0 and later. 17172</p> 17173 17174 17175</DD> 17176 17177<DT><b><a name="strict_8bitmime_body">strict_8bitmime_body</a> 17178(default: no)</b></DT><DD> 17179 17180<p> 17181Reject 8-bit message body text without 8-bit MIME content encoding 17182information. This blocks mail from poorly written applications. 17183</p> 17184 17185<p> 17186Unfortunately, this also rejects majordomo approval requests when 17187the included request contains valid 8-bit MIME mail, and it rejects 17188bounces from mailers that do not MIME encapsulate 8-bit content 17189(for example, bounces from qmail or from old versions of Postfix). 17190</p> 17191 17192<p> 17193This feature should not be enabled on a general purpose mail server, 17194because it is likely to reject legitimate email. 17195</p> 17196 17197<p> 17198This feature is available in Postfix 2.0 and later. 17199</p> 17200 17201 17202</DD> 17203 17204<DT><b><a name="strict_mailbox_ownership">strict_mailbox_ownership</a> 17205(default: yes)</b></DT><DD> 17206 17207<p> Defer delivery when a mailbox file is not owned by its recipient. 17208The default setting is not backwards compatible. </p> 17209 17210<p> This feature is available in Postfix 2.5.3 and later. </p> 17211 17212 17213</DD> 17214 17215<DT><b><a name="strict_mime_encoding_domain">strict_mime_encoding_domain</a> 17216(default: no)</b></DT><DD> 17217 17218<p> 17219Reject mail with invalid Content-Transfer-Encoding: information 17220for the message/* or multipart/* MIME content types. This blocks 17221mail from poorly written software. 17222</p> 17223 17224<p> 17225This feature should not be enabled on a general purpose mail server, 17226because it will reject mail after a single violation. 17227</p> 17228 17229<p> 17230This feature is available in Postfix 2.0 and later. 17231</p> 17232 17233 17234</DD> 17235 17236<DT><b><a name="strict_rfc821_envelopes">strict_rfc821_envelopes</a> 17237(default: no)</b></DT><DD> 17238 17239<p> 17240Require that addresses received in SMTP MAIL FROM and RCPT TO 17241commands are enclosed with <>, and that those addresses do 17242not contain <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> style comments or phrases. This stops mail 17243from poorly written software. 17244</p> 17245 17246<p> 17247By default, the Postfix SMTP server accepts <a href="http://tools.ietf.org/html/rfc822">RFC 822</a> syntax in MAIL 17248FROM and RCPT TO addresses. 17249</p> 17250 17251 17252</DD> 17253 17254<DT><b><a name="strict_smtputf8">strict_smtputf8</a> 17255(default: no)</b></DT><DD> 17256 17257<p> Enable stricter enforcement of the SMTPUTF8 protocol. The Postfix 17258SMTP server accepts UTF8 sender or recipient addresses only when 17259the client requests an SMTPUTF8 mail transaction. </p> 17260 17261<p> This feature is available in Postfix 3.0 and later. </p> 17262 17263 17264</DD> 17265 17266<DT><b><a name="sun_mailtool_compatibility">sun_mailtool_compatibility</a> 17267(default: no)</b></DT><DD> 17268 17269<p> 17270Obsolete SUN mailtool compatibility feature. Instead, use 17271"<a href="postconf.5.html#mailbox_delivery_lock">mailbox_delivery_lock</a> = dotlock". 17272</p> 17273 17274 17275</DD> 17276 17277<DT><b><a name="swap_bangpath">swap_bangpath</a> 17278(default: yes)</b></DT><DD> 17279 17280<p> 17281Enable the rewriting of "site!user" into "user@site". This is 17282necessary if your machine is connected to UUCP networks. It is 17283enabled by default. 17284</p> 17285 17286<p> Note: with Postfix version 2.2, message header address rewriting 17287happens only when one of the following conditions is true: </p> 17288 17289<ul> 17290 17291<li> The message is received with the Postfix <a href="sendmail.1.html">sendmail(1)</a> command, 17292 17293<li> The message is received from a network client that matches 17294$<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a>, 17295 17296<li> The message is received from the network, and the 17297<a href="postconf.5.html#remote_header_rewrite_domain">remote_header_rewrite_domain</a> parameter specifies a non-empty value. 17298 17299</ul> 17300 17301<p> To get the behavior before Postfix version 2.2, specify 17302"<a href="postconf.5.html#local_header_rewrite_clients">local_header_rewrite_clients</a> = <a href="DATABASE_README.html#types">static</a>:all". </p> 17303 17304<p> 17305Example: 17306</p> 17307 17308<pre> 17309<a href="postconf.5.html#swap_bangpath">swap_bangpath</a> = no 17310</pre> 17311 17312 17313</DD> 17314 17315<DT><b><a name="syslog_facility">syslog_facility</a> 17316(default: mail)</b></DT><DD> 17317 17318<p> 17319The syslog facility of Postfix logging. Specify a facility as 17320defined in syslog.conf(5). The default facility is "mail". 17321</p> 17322 17323<p> 17324Warning: a non-default <a href="postconf.5.html#syslog_facility">syslog_facility</a> setting takes effect only 17325after a Postfix process has completed initialization. Errors during 17326process initialization will be logged with the default facility. 17327Examples are errors while parsing the command line arguments, and 17328errors while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file. 17329</p> 17330 17331 17332</DD> 17333 17334<DT><b><a name="syslog_name">syslog_name</a> 17335(default: see "postconf -d" output)</b></DT><DD> 17336 17337<p> 17338The mail system name that is prepended to the process name in syslog 17339records, so that "smtpd" becomes, for example, "postfix/smtpd". 17340</p> 17341 17342<p> 17343Warning: a non-default <a href="postconf.5.html#syslog_name">syslog_name</a> setting takes effect only after 17344a Postfix process has completed initialization. Errors during 17345process initialization will be logged with the default name. Examples 17346are errors while parsing the command line arguments, and errors 17347while accessing the Postfix <a href="postconf.5.html">main.cf</a> configuration file. 17348</p> 17349 17350 17351</DD> 17352 17353<DT><b><a name="tcp_windowsize">tcp_windowsize</a> 17354(default: 0)</b></DT><DD> 17355 17356<p> An optional workaround for routers that break TCP window scaling. 17357Specify a value > 0 and < 65536 to enable this feature. With 17358Postfix TCP servers (<a href="smtpd.8.html">smtpd(8)</a>, <a href="qmqpd.8.html">qmqpd(8)</a>), this feature is implemented 17359by the Postfix <a href="master.8.html">master(8)</a> daemon. </p> 17360 17361<p> To change this parameter without stopping Postfix, you need to 17362first terminate all Postfix TCP servers: </p> 17363 17364<blockquote> 17365<pre> 17366# postconf -e <a href="postconf.5.html#master_service_disable">master_service_disable</a>=inet 17367# postfix reload 17368</pre> 17369</blockquote> 17370 17371<p> This immediately terminates all processes that accept network 17372connections. Next, you enable Postfix TCP servers with the updated 17373<a href="postconf.5.html#tcp_windowsize">tcp_windowsize</a> setting: </p> 17374 17375<blockquote> 17376<pre> 17377# 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>= 17378# postfix reload 17379</pre> 17380</blockquote> 17381 17382<p> If you skip these steps with a running Postfix system, then the 17383<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>, 17384<a href="lmtp.8.html">lmtp(8)</a>). </p> 17385 17386<p> This feature is available in Postfix 2.6 and later. </p> 17387 17388 17389</DD> 17390 17391<DT><b><a name="tls_append_default_CA">tls_append_default_CA</a> 17392(default: no)</b></DT><DD> 17393 17394<p> Append the system-supplied default Certification Authority 17395certificates to the ones specified with *_tls_CApath or *_tls_CAfile. 17396The default is "no"; this prevents Postfix from trusting third-party 17397certificates and giving them relay permission with 17398<a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a>. </p> 17399 17400<p> This feature is available in Postfix 2.4.15, 2.5.11, 2.6.8, 174012.7.2 and later versions. Specify "<a href="postconf.5.html#tls_append_default_CA">tls_append_default_CA</a> = yes" for 17402backwards compatibility, to avoid breaking certificate verification 17403with sites that don't use <a href="postconf.5.html#permit_tls_all_clientcerts">permit_tls_all_clientcerts</a>. </p> 17404 17405 17406</DD> 17407 17408<DT><b><a name="tls_daemon_random_bytes">tls_daemon_random_bytes</a> 17409(default: 32)</b></DT><DD> 17410 17411<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> 17412process requests from the <a href="tlsmgr.8.html">tlsmgr(8)</a> server in order to seed its 17413internal pseudo random number generator (PRNG). The default of 32 17414bytes (equivalent to 256 bits) is sufficient to generate a 128bit 17415(or 168bit) session key. </p> 17416 17417<p> This feature is available in Postfix 2.2 and later. </p> 17418 17419 17420</DD> 17421 17422<DT><b><a name="tls_dane_digest_agility">tls_dane_digest_agility</a> 17423(default: on)</b></DT><DD> 17424 17425<p> Configure DANE TLSA digest algorithm agility. When digest 17426algorithm agility is enabled, and the server and client support a 17427common strong digest algorithm, TLSA records with weaker digest 17428algorithms are ignored. </p> 17429 17430<p> Specify one of the following: </p> 17431 17432<dl> 17433 17434<dt><b>off</b></dt> 17435<dd> DANE verification examines each well-formed record in the TLSA 17436RRset whose matching type is either "0" (no hash used) or is one of 17437the digest algorithms listed in $<a href="postconf.5.html#tls_dane_digests">tls_dane_digests</a>. This setting 17438is not recommended. </dd> 17439 17440<dt><b>on</b></dt> 17441<dd> From each group of well-formed TLSA RRs a non-zero digest 17442matching type with the same certificate usage and selector, DANE 17443verification examines only those records whose matching type has 17444the highest precedence (appear earliest in $<a href="postconf.5.html#tls_dane_digests">tls_dane_digests</a>). 17445</dd> 17446 17447<dt><b>maybe</b></dt> 17448<dd> For compatibility with digest algorithm agility, each certificate 17449or public key whose digest is included in a DANE TLSA RRset, SHOULD 17450be published with the same set of digest matching type values as 17451any other with the same usage and selector. Therefore, compatible 17452TLSA RRsets will contain an identical count of well-formed RRs with 17453each non-zero digest matching type for any fixed combination of 17454usage and selector. When this constraint is violated, or any of 17455the digest records are malformed, digest algorithm agility will 17456disabled. Otherwise, digest algorithm agility is enabled. </dd> 17457 17458</dl> 17459 17460<p> Digest algorithm agility ensures that the strongest digest 17461supported by both the Postfix SMTP client and the remote server is 17462used, and weaker digests are ignored. This supports non-disruptive 17463deprecation of outdated digest algorithms. </p> 17464 17465<p> To ensure compatibility with digest algorithm agility during 17466key rotation, when a certificate or public key is being replaced 17467with another, and both are published during the transition, both 17468the old and the new certificate MUST be specified with the same set 17469of digests. One can change the list of digest algorithms later, 17470once old keys are retired. At any given time, change either the 17471list of digests without changing the list of certificates or public 17472keys or the list of certificates or public keys without changing 17473the list of digests. Full value matching type "0" records are not 17474subject to this constraint, but are discouraged due to the size of 17475the resulting DNS records. </p> 17476 17477<p> It is expected that this algorithm agility mechanism will be 17478published in a standards track RFC for SMTP with DANE, and also in 17479an eventual update to <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a>. </p> 17480 17481<p> This feature is available in Postfix 2.11 and later. </p> 17482 17483 17484</DD> 17485 17486<DT><b><a name="tls_dane_digests">tls_dane_digests</a> 17487(default: sha512 sha256)</b></DT><DD> 17488 17489<p> <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> TLSA resource-record "matching type" digest algorithms 17490in descending preference order. All the specified algorithms must 17491be supported by the underlying OpenSSL library, otherwise the Postfix 17492SMTP client will not support DANE TLSA security. </p> 17493 17494<p> Specify a list of digest names separated by commas and/or 17495whitespace. Each digest name may be followed by an optional 17496"=<number>" suffix. For example, "sha512" may instead be specified 17497as "sha512=2" and "sha256" may instead be specified as "sha256=1". 17498The optional number must match the <a 17499href="https://www.iana.org/assignments/dane-parameters/dane-parameters.xhtml#matching-types" 17500>IANA</a> assigned TLSA matching type number the algorithm in question. 17501Postfix will check this constraint for the algorithms it knows about. 17502Additional matching type algorithms registered with IANA can be added 17503with explicit numbers provided they are supported by OpenSSL. </p> 17504 17505<p> Invalid list elements are logged with a warning and disable DANE 17506support. TLSA RRs that specify digests not included in the list are 17507ignored with a warning. </p> 17508 17509<p> Note: It is unwise to omit sha256 from the digest list. This 17510digest algorithm is the only mandatory to implement digest algorithm 17511in <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a>, and many servers are expected publish TLSA records 17512with just sha256 digests. Unless one of the standard digests is 17513seriously compromised and servers have had ample time to update their 17514TLSA records you should not omit any standard digests, just arrange 17515them in order from strongest to weakest. </p> 17516 17517<p> When for a particular combination of "certificate usage" and 17518"selector" the TLSA RRset contains records with more than one digest 17519matching type, the tls_dane_digest_agility parameter determines 17520whether all the RRs are used, or only those with the most preferred 17521digest matching type. </p> 17522 17523<p> The <a href="postconf.5.html#tls_dane_trust_anchor_digest_enable">tls_dane_trust_anchor_digest_enable</a> parameter controls 17524whether any digest TLSA records are acceptable in usage "2" (trust 17525anchor assertion) TLSA records. </p> 17526 17527<p> This feature is available in Postfix 2.11 and later. </p> 17528 17529 17530</DD> 17531 17532<DT><b><a name="tls_dane_trust_anchor_digest_enable">tls_dane_trust_anchor_digest_enable</a> 17533(default: yes)</b></DT><DD> 17534 17535<p> <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> trust-anchor digest support in the Postfix TLS library. 17536Enable support for <a href="http://tools.ietf.org/html/rfc6698">RFC 6698</a> (DANE TLSA) DNS records that contain 17537digests of trust-anchors with certificate usage "2". In this case 17538the certificate usage logically requires the server administrator 17539to configure the server to include the trust-anchor certificate in 17540the server's SSL certificate chain. If enough domains mess this 17541up, you can disable support for these TLSA records, but you'll no 17542longer have secure connections that get it right and only publish 17543trust anchor records. </p> 17544 17545<p> At the <a href="TLS_README.html#client_tls_dane">dane</a> 17546security level, when a TLSA RRset includes only unusable associations, 17547the Postfix SMTP client will automatically switch the connection 17548to the <a href="TLS_README.html#client_tls_encrypt">encrypt</a> 17549security level. At the <a 17550href="TLS_README.html#client_tls_dane">dane-only</a> security level, 17551the server in question is skipped and delivery is deferred if no 17552secure servers are found. </p> 17553 17554<p> The <a href="postconf.5.html#tls_dane_digests">tls_dane_digests</a> parameter controls the list of digest 17555algorithms that are supported in TLSA records. The tls_dane_digest_agility 17556parameter controls digest algorithm downgrade attack resistance. 17557</p> 17558 17559<p> This feature is available in Postfix 2.11 and later. </p> 17560 17561 17562</DD> 17563 17564<DT><b><a name="tls_disable_workarounds">tls_disable_workarounds</a> 17565(default: see "postconf -d" output)</b></DT><DD> 17566 17567<p> List or bit-mask of OpenSSL bug work-arounds to disable. </p> 17568 17569<p> The OpenSSL toolkit includes a set of work-arounds for buggy SSL/TLS 17570implementations. Applications, such as Postfix, that want to maximize 17571interoperability ask the OpenSSL library to enable the full set of 17572recommended work-arounds. </p> 17573 17574<p> From time to time, it is discovered that a work-around creates a 17575security issue, and should no longer be used. If upgrading OpenSSL 17576to a fixed version is not an option or an upgrade is not available 17577in a timely manner, or in closed environments where no buggy clients 17578or servers exist, it may be appropriate to disable some or all of the 17579OpenSSL interoperability work-arounds. This parameter specifies which 17580bug work-arounds to disable. </p> 17581 17582<p> If the value of the parameter is a hexadecimal long integer starting 17583with "0x", the bug work-arounds corresponding to the bits specified in 17584its value are removed from the <b>SSL_OP_ALL</b> work-around bit-mask 17585(see openssl/ssl.h and SSL_CTX_set_options(3)). You can specify more 17586bits than are present in SSL_OP_ALL, excess bits are ignored. Specifying 175870xFFFFFFFF disables all bug-workarounds on a 32-bit system. This should 17588also be sufficient on 64-bit systems, until OpenSSL abandons support 17589for 32-bit systems and starts using the high 32 bits of a 64-bit 17590bug-workaround mask. </p> 17591 17592<p> Otherwise, the parameter is a white-space or comma separated list 17593of specific named bug work-arounds chosen from the list below. It 17594is possible that your OpenSSL version includes new bug work-arounds 17595added after your Postfix source code was last updated, in that case 17596you can only disable one of these via the hexadecimal syntax above. </p> 17597 17598<dl> 17599 17600<dt><b>MICROSOFT_SESS_ID_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd> 17601 17602<dt><b>NETSCAPE_CHALLENGE_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd> 17603 17604<dt><b>LEGACY_SERVER_CONNECT</b></dt> <dd>See SSL_CTX_set_options(3)</dd> 17605 17606<dt><b>NETSCAPE_REUSE_CIPHER_CHANGE_BUG</b></dt> <dd> also aliased 17607as <b>CVE-2010-4180</b>. Postfix 2.8 disables this work-around by 17608default with OpenSSL versions that may predate the fix. Fixed in 17609OpenSSL 0.9.8q and OpenSSL 1.0.0c.</dd> 17610 17611<dt><b>SSLREF2_REUSE_CERT_TYPE_BUG</b></dt> <dd>See 17612SSL_CTX_set_options(3)</dd> 17613 17614<dt><b>MICROSOFT_BIG_SSLV3_BUFFER</b></dt> <dd>See 17615SSL_CTX_set_options(3)</dd> 17616 17617<dt><b>MSIE_SSLV2_RSA_PADDING</b></dt> <dd> also aliased as 17618<b>CVE-2005-2969</b>. Postfix 2.8 disables this work-around by 17619default with OpenSSL versions that may predate the fix. Fixed in 17620OpenSSL 0.9.7h and OpenSSL 0.9.8a.</dd> 17621 17622<dt><b>SSLEAY_080_CLIENT_DH_BUG</b></dt> <dd>See 17623SSL_CTX_set_options(3)</dd> 17624 17625<dt><b>TLS_D5_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd> 17626 17627<dt><b>TLS_BLOCK_PADDING_BUG</b></dt> <dd>See SSL_CTX_set_options(3)</dd> 17628 17629<dt><b>TLS_ROLLBACK_BUG</b></dt> <dd>See SSL_CTX_set_options(3). 17630This is disabled in OpenSSL 0.9.7 and later. Nobody should still 17631be using 0.9.6! </dd> 17632 17633<dt><b>DONT_INSERT_EMPTY_FRAGMENTS</b></dt> <dd>See 17634SSL_CTX_set_options(3)</dd> 17635 17636<dt><b>CRYPTOPRO_TLSEXT_BUG</b></dt> <dd>New with GOST support in 17637OpenSSL 1.0.0.</dd> 17638 17639</dl> 17640 17641<p> This feature is available in Postfix 2.8 and later. </p> 17642 17643 17644</DD> 17645 17646<DT><b><a name="tls_eecdh_strong_curve">tls_eecdh_strong_curve</a> 17647(default: prime256v1)</b></DT><DD> 17648 17649<p> The elliptic curve used by the Postfix SMTP server for sensibly 17650strong 17651ephemeral ECDH key exchange. This curve is used by the Postfix SMTP 17652server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong". The phrase "sensibly 17653strong" means approximately 128-bit security based on best known 17654attacks. The selected curve must be implemented by OpenSSL (as 17655reported by ecparam(1) with the "-list_curves" option) and be one 17656of the curves listed in Section 5.1.1 of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not 17657generally change this setting. Remote SMTP client implementations 17658must support this curve for EECDH key exchange to take place. It 17659is unwise to choose an "exotic" curve supported by only a small subset 17660of clients. </p> 17661 17662<p> The default "strong" curve is rated in NSA <a 17663href="http://www.nsa.gov/ia/programs/suiteb_cryptography/">Suite 17664B</a> for information classified up to SECRET. </p> 17665 17666<p> Note: elliptic curve names are poorly standardized; different 17667standards groups are assigning different names to the same underlying 17668curves. The curve with the X9.62 name "prime256v1" is also known 17669under the SECG name "secp256r1", but OpenSSL does not recognize the 17670latter name. </p> 17671 17672<p> If you want to take maximal advantage of ciphers that offer <a 17673href="FORWARD_SECRECY_README.html#dfn_fs">forward secrecy</a> see 17674the <a href="FORWARD_SECRECY_README.html#quick-start">Getting 17675started</a> section of <a 17676href="FORWARD_SECRECY_README.html">FORWARD_SECRECY_README</a>. The 17677full document conveniently presents all information about Postfix 17678"perfect" forward secrecy support in one place: what forward secrecy 17679is, how to tweak settings, and what you can expect to see when 17680Postfix uses ciphers with forward secrecy. </p> 17681 17682<p> This feature is available in Postfix 2.6 and later, when it is 17683compiled and linked with OpenSSL 1.0.0 or later on platforms where 17684EC algorithms have not been disabled by the vendor. </p> 17685 17686 17687</DD> 17688 17689<DT><b><a name="tls_eecdh_ultra_curve">tls_eecdh_ultra_curve</a> 17690(default: secp384r1)</b></DT><DD> 17691 17692<p> The elliptic curve used by the Postfix SMTP server for maximally 17693strong 17694ephemeral ECDH key exchange. This curve is used by the Postfix SMTP 17695server when "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = ultra". The phrase "maximally 17696strong" means approximately 192-bit security based on best known attacks. 17697This additional strength comes at a significant computational cost, most 17698users should instead set "<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> = strong". The selected 17699curve must be implemented by OpenSSL (as reported by ecparam(1) with the 17700"-list_curves" option) and be one of the curves listed in Section 5.1.1 17701of <a href="http://tools.ietf.org/html/rfc4492">RFC 4492</a>. You should not generally change this setting. </p> 17702 17703<p> This default "ultra" curve is rated in NSA <a 17704href="http://www.nsa.gov/ia/programs/suiteb_cryptography/">Suite 17705B</a> for information classified up to TOP SECRET. </p> 17706 17707<p> If you want to take maximal advantage of ciphers that offer <a 17708href="FORWARD_SECRECY_README.html#dfn_fs">forward secrecy</a> see 17709the <a href="FORWARD_SECRECY_README.html#quick-start">Getting 17710started</a> section of <a 17711href="FORWARD_SECRECY_README.html">FORWARD_SECRECY_README</a>. The 17712full document conveniently presents all information about Postfix 17713"perfect" forward secrecy support in one place: what forward secrecy 17714is, how to tweak settings, and what you can expect to see when 17715Postfix uses ciphers with forward secrecy. </p> 17716 17717<p> This feature is available in Postfix 2.6 and later, when it is 17718compiled and linked with OpenSSL 1.0.0 or later on platforms where 17719EC algorithms have not been disabled by the vendor. </p> 17720 17721 17722</DD> 17723 17724<DT><b><a name="tls_export_cipherlist">tls_export_cipherlist</a> 17725(default: see "postconf -d" output)</b></DT><DD> 17726 17727<p> The OpenSSL cipherlist for "export" or higher grade ciphers. This 17728defines the meaning of the "export" setting in <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>, 17729<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>, <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>, 17730<a href="postconf.5.html#lmtp_tls_ciphers">lmtp_tls_ciphers</a>, and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. With Postfix 17731releases before the middle of 2015 this is the default cipherlist 17732for the opportunistic ("may") TLS client security level and also 17733the default cipherlist for the SMTP server. You are strongly 17734encouraged to not change this setting. </p> 17735 17736<p> This feature is available in Postfix 2.3 and later. </p> 17737 17738 17739</DD> 17740 17741<DT><b><a name="tls_high_cipherlist">tls_high_cipherlist</a> 17742(default: see "postconf -d" output)</b></DT><DD> 17743 17744<p> The OpenSSL cipherlist for "high" grade ciphers. This defines 17745the meaning of the "high" setting in <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>, 17746<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>, <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>, 17747<a href="postconf.5.html#lmtp_tls_ciphers">lmtp_tls_ciphers</a>, and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are strongly 17748encouraged to not change this setting. </p> 17749 17750<p> This feature is available in Postfix 2.3 and later. </p> 17751 17752 17753</DD> 17754 17755<DT><b><a name="tls_legacy_public_key_fingerprints">tls_legacy_public_key_fingerprints</a> 17756(default: no)</b></DT><DD> 17757 17758<p> A temporary migration aid for sites that use certificate 17759<i>public-key</i> fingerprints with Postfix 2.9.0..2.9.5, which use 17760an incorrect algorithm. This parameter has no effect on the certificate 17761fingerprint support that is available since Postfix 2.2. </p> 17762 17763<p> Specify "<a href="postconf.5.html#tls_legacy_public_key_fingerprint">tls_legacy_public_key_fingerprints</a> = yes" temporarily, 17764pending a migration from configuration files with incorrect Postfix 177652.9.0..2.9.5 certificate public-key finger prints, to the correct 17766fingerprints used by Postfix 2.9.6 and later. To compute the correct 17767certificate public-key fingerprints, see <a href="TLS_README.html">TLS_README</a>. </p> 17768 17769<p> This feature is available in Postfix 2.9.6 and later. </p> 17770 17771 17772</DD> 17773 17774<DT><b><a name="tls_low_cipherlist">tls_low_cipherlist</a> 17775(default: see "postconf -d" output)</b></DT><DD> 17776 17777<p> The OpenSSL cipherlist for "low" or higher grade ciphers. This defines 17778the meaning of the "low" setting in <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>, 17779<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>, <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>, 17780<a href="postconf.5.html#lmtp_tls_ciphers">lmtp_tls_ciphers</a>, and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are strongly 17781encouraged to not change this setting. </p> 17782 17783<p> This feature is available in Postfix 2.3 and later. </p> 17784 17785 17786</DD> 17787 17788<DT><b><a name="tls_medium_cipherlist">tls_medium_cipherlist</a> 17789(default: see "postconf -d" output)</b></DT><DD> 17790 17791<p> The OpenSSL cipherlist for "medium" or higher grade ciphers. This 17792defines the meaning of the "medium" setting in <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>, 17793<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>, <a href="postconf.5.html#smtp_tls_ciphers">smtp_tls_ciphers</a>, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a>, 17794<a href="postconf.5.html#lmtp_tls_ciphers">lmtp_tls_ciphers</a>, and <a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. This is the 17795default cipherlist for mandatory TLS encryption in the TLS client 17796(with anonymous ciphers disabled when verifying server certificates). 17797This is the default cipherlist for opportunistic TLS with Postfix 17798releases after the middle of 2015. You are strongly encouraged to 17799not change this setting. </p> 17800 17801<p> This feature is available in Postfix 2.3 and later. </p> 17802 17803 17804</DD> 17805 17806<DT><b><a name="tls_null_cipherlist">tls_null_cipherlist</a> 17807(default: eNULL:!aNULL)</b></DT><DD> 17808 17809<p> The OpenSSL cipherlist for "NULL" grade ciphers that provide 17810authentication without encryption. This defines the meaning of the "null" 17811setting in smtpd_mandatory_tls_ciphers, <a href="postconf.5.html#smtp_tls_mandatory_ciphers">smtp_tls_mandatory_ciphers</a> and 17812<a href="postconf.5.html#lmtp_tls_mandatory_ciphers">lmtp_tls_mandatory_ciphers</a>. You are strongly encouraged to not 17813change this setting. </p> 17814 17815<p> This feature is available in Postfix 2.3 and later. </p> 17816 17817 17818</DD> 17819 17820<DT><b><a name="tls_preempt_cipherlist">tls_preempt_cipherlist</a> 17821(default: no)</b></DT><DD> 17822 17823<p> With SSLv3 and later, use the Postfix SMTP server's cipher 17824preference order instead of the remote client's cipher preference 17825order. </p> 17826 17827<p> By default, the OpenSSL server selects the client's most preferred 17828cipher that the server supports. With SSLv3 and later, the server may 17829choose its own most preferred cipher that is supported (offered) by 17830the client. Setting "<a href="postconf.5.html#tls_preempt_cipherlist">tls_preempt_cipherlist</a> = yes" enables server cipher 17831preferences. </p> 17832 17833<p> While server cipher selection may in some cases lead to a more secure 17834or performant cipher choice, there is some risk of interoperability 17835issues. In the past, some SSL clients have listed lower priority ciphers 17836that they did not implement correctly. If the server chooses a cipher 17837that the client prefers less, it may select a cipher whose client 17838implementation is flawed. Most notably Windows 2003 Microsoft 17839Exchange servers have flawed implementations of DES-CBC3-SHA, which 17840OpenSSL considers stronger than RC4-SHA. Enabling server cipher-suite 17841selection may create interoperability issues with Windows 2003 17842Microsoft Exchange clients. </p> 17843 17844<p> This feature is available in Postfix 2.8 and later, in combination 17845with OpenSSL 0.9.7 and later. </p> 17846 17847 17848</DD> 17849 17850<DT><b><a name="tls_random_bytes">tls_random_bytes</a> 17851(default: 32)</b></DT><DD> 17852 17853<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> 17854when (re)seeding the in-memory pseudo random number generator (PRNG) 17855pool. The default of 32 bytes (256 bits) is good enough for 128bit 17856symmetric keys. If using EGD or a device file, a maximum of 255 17857bytes is read. </p> 17858 17859<p> This feature is available in Postfix 2.2 and later. </p> 17860 17861 17862</DD> 17863 17864<DT><b><a name="tls_random_exchange_name">tls_random_exchange_name</a> 17865(default: see "postconf -d" output)</b></DT><DD> 17866 17867<p> Name of the pseudo random number generator (PRNG) state file 17868that is maintained by <a href="tlsmgr.8.html">tlsmgr(8)</a>. The file is created when it does 17869not exist, and its length is fixed at 1024 bytes. </p> 17870 17871<p> As of version 2.5, Postfix no longer uses root privileges when 17872opening this file, and the default file location was changed from 17873${<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 17874a migration aid, an attempt to open the file under a non-Postfix 17875directory is redirected to the Postfix-owned <a href="postconf.5.html#data_directory">data_directory</a>, and a 17876warning is logged. </p> 17877 17878<p> This feature is available in Postfix 2.2 and later. </p> 17879 17880 17881</DD> 17882 17883<DT><b><a name="tls_random_prng_update_period">tls_random_prng_update_period</a> 17884(default: 3600s)</b></DT><DD> 17885 17886<p> The time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to save the state of 17887the pseudo random number generator (PRNG) to the file specified 17888with $<a href="postconf.5.html#tls_random_exchange_name">tls_random_exchange_name</a>. </p> 17889 17890<p> This feature is available in Postfix 2.2 and later. </p> 17891 17892 17893</DD> 17894 17895<DT><b><a name="tls_random_reseed_period">tls_random_reseed_period</a> 17896(default: 3600s)</b></DT><DD> 17897 17898<p> The maximal time between attempts by <a href="tlsmgr.8.html">tlsmgr(8)</a> to re-seed the 17899in-memory pseudo random number generator (PRNG) pool from external 17900sources. The actual time between re-seeding attempts is calculated 17901using the PRNG, and is between 0 and the time specified. </p> 17902 17903<p> This feature is available in Postfix 2.2 and later. </p> 17904 17905 17906</DD> 17907 17908<DT><b><a name="tls_random_source">tls_random_source</a> 17909(default: see "postconf -d" output)</b></DT><DD> 17910 17911<p> The external entropy source for the in-memory <a href="tlsmgr.8.html">tlsmgr(8)</a> pseudo 17912random number generator (PRNG) pool. Be sure to specify a non-blocking 17913source. If this source is not a regular file, the entropy source 17914type must be prepended: egd:/path/to/egd_socket for a source with 17915EGD compatible socket interface, or dev:/path/to/device for a 17916device file. </p> 17917 17918<p> Note: on OpenBSD systems specify /dev/arandom when /dev/urandom 17919gives timeout errors. </p> 17920 17921<p> This feature is available in Postfix 2.2 and later. </p> 17922 17923 17924</DD> 17925 17926<DT><b><a name="tls_session_ticket_cipher">tls_session_ticket_cipher</a> 17927(default: Postfix ≥ 3.0: aes-256-cbc, Postfix < 3.0: aes-128-cbc)</b></DT><DD> 17928 17929<p> Algorithm used to encrypt <a href="http://tools.ietf.org/html/rfc5077">RFC5077</a> TLS session tickets. This 17930algorithm must use CBC mode, have a 128-bit block size, and must 17931have a key length between 128 and 256 bits. The default is 17932aes-256-cbc. Overriding the default to choose a different algorithm 17933is discouraged. </p> 17934 17935<p> Setting this parameter empty disables session ticket support 17936in the Postfix SMTP server. Another way to disable session ticket 17937support is via the <a href="postconf.5.html#tls_ssl_options">tls_ssl_options</a> parameter. </p> 17938 17939<p> This feature is available in Postfix 3.0 and later. </p> 17940 17941 17942</DD> 17943 17944<DT><b><a name="tls_ssl_options">tls_ssl_options</a> 17945(default: empty)</b></DT><DD> 17946 17947<p> List or bit-mask of OpenSSL options to enable. </p> 17948 17949<p> The OpenSSL toolkit provides a set of options that applications 17950can enable to tune the OpenSSL behavior. Some of these work around 17951bugs in other implementations and are on by default. You can use 17952the <a href="postconf.5.html#tls_disable_workarounds">tls_disable_workarounds</a> parameter to selectively disable some 17953or all of the bug work-arounds, making OpenSSL more strict at the 17954cost of non-interoperability with SSL clients or servers that exhibit 17955the bugs. </p> 17956 17957<p> Other options are off by default, and typically enable or disable 17958features rather than bug work-arounds. These may be turned on (with 17959care) via the <a href="postconf.5.html#tls_ssl_options">tls_ssl_options</a> parameter. The value is a white-space 17960or comma separated list of named options chosen from the list below. 17961The names are not case-sensitive, you can use lower-case if you 17962prefer. The upper case values below match the corresponding macro 17963name in the ssl.h header file with the SSL_OP_ prefix removed. It 17964is possible that your OpenSSL version includes new options added 17965after your Postfix source code was last updated, in that case you 17966can only enable one of these via the hexadecimal syntax below. </p> 17967 17968<p> You should only enable features via the hexadecimal mask when 17969the need to control the feature is critical (to deal with a new 17970vulnerability or a serious interoperability problem). Postfix DOES 17971NOT promise backwards compatible behavior with respect to the mask 17972bits. A feature enabled via the mask in one release may be enabled 17973by other means in a later release, and the mask bit will then be 17974ignored. Therefore, use of the hexadecimal mask is only a temporary 17975measure until a new Postfix or OpenSSL release provides a better 17976solution. </p> 17977 17978<p> If the value of the parameter is a hexadecimal long integer 17979starting with "0x", the options corresponding to the bits specified 17980in its value are enabled (see openssl/ssl.h and SSL_CTX_set_options(3)). 17981You can only enable options not already controlled by other Postfix 17982settings. For example, you cannot disable protocols or enable 17983server cipher preference. Do not attempt to turn all features by 17984specifying 0xFFFFFFFF, this is unlikely to be a good idea. </p> 17985 17986<dl> 17987 17988<dt><b>LEGACY_SERVER_CONNECT</b></dt> <dd>See SSL_CTX_set_options(3).</dd> 17989 17990<dt><b>NO_TICKET</b></dt> <dd>See SSL_CTX_set_options(3).</dd> 17991 17992<dt><b>NO_COMPRESSION</b></dt> <dd>Disable SSL compression even if 17993supported by the OpenSSL library. Compression is CPU-intensive, 17994and compression before encryption does not always improve security. </dd> 17995 17996</dl> 17997 17998<p> This feature is available in Postfix 2.11 and later. </p> 17999 18000 18001</DD> 18002 18003<DT><b><a name="tls_wildcard_matches_multiple_labels">tls_wildcard_matches_multiple_labels</a> 18004(default: yes)</b></DT><DD> 18005 18006<p> Match multiple DNS labels with "*" in wildcard certificates. 18007</p> 18008 18009<p> Some mail service providers prepend the customer domain name 18010to a base domain for which they have a wildcard TLS certificate. 18011For example, the MX records for example.com hosted by example.net 18012may be: </p> 18013 18014<blockquote> 18015<pre> 18016example.com. IN MX 0 example.com.mx1.example.net. 18017example.com. IN MX 0 example.com.mx2.example.net. 18018</pre> 18019</blockquote> 18020 18021<p> and the TLS certificate may be for "*.example.net". The "*" 18022then corresponds with multiple labels in the mail server domain 18023name. While multi-label wildcards are not widely supported, and 18024are not blessed by any standard, there is little to be gained by 18025disallowing their use in this context. </p> 18026 18027<p> Notes: <p> 18028 18029<ul> 18030 18031<li> <p> In a certificate name, the "*" is special only when it is 18032used as the first label. </p> 18033 18034<li> <p> While Postfix (2.11 or later) can match "*" with multiple 18035domain name labels, other implementations likely will not. </p> 18036 18037<li> <p> Earlier Postfix implementations behave as if 18038"<a href="postconf.5.html#tls_wildcard_matches_multiple_labels">tls_wildcard_matches_multiple_labels</a> = no". </p> 18039 18040</ul> 18041 18042<p> This feature is available in Postfix 2.11 and later. </p> 18043 18044 18045</DD> 18046 18047<DT><b><a name="tlsmgr_service_name">tlsmgr_service_name</a> 18048(default: tlsmgr)</b></DT><DD> 18049 18050<p> The name of the <a href="tlsmgr.8.html">tlsmgr(8)</a> service entry in <a href="master.5.html">master.cf</a>. This 18051service maintains TLS session caches and other information in support 18052of TLS. </p> 18053 18054<p> This feature is available in Postfix 2.11 and later. </p> 18055 18056 18057</DD> 18058 18059<DT><b><a name="tlsproxy_enforce_tls">tlsproxy_enforce_tls</a> 18060(default: $<a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a>)</b></DT><DD> 18061 18062<p> Mandatory TLS: announce STARTTLS support to remote SMTP clients, and 18063require that clients use TLS encryption. See <a href="postconf.5.html#smtpd_enforce_tls">smtpd_enforce_tls</a> for 18064further details. </p> 18065 18066<p> This feature is available in Postfix 2.8 and later. </p> 18067 18068 18069</DD> 18070 18071<DT><b><a name="tlsproxy_service_name">tlsproxy_service_name</a> 18072(default: tlsproxy)</b></DT><DD> 18073 18074<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 18075service performs plaintext <=> TLS ciphertext conversion. <p> 18076 18077<p> This feature is available in Postfix 2.8 and later. </p> 18078 18079 18080</DD> 18081 18082<DT><b><a name="tlsproxy_tls_CAfile">tlsproxy_tls_CAfile</a> 18083(default: $<a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a>)</b></DT><DD> 18084 18085<p> A file containing (PEM format) CA certificates of root CAs 18086trusted to sign either remote SMTP client certificates or intermediate 18087CA certificates. See <a href="postconf.5.html#smtpd_tls_CAfile">smtpd_tls_CAfile</a> for further details. </p> 18088 18089<p> This feature is available in Postfix 2.8 and later. </p> 18090 18091 18092</DD> 18093 18094<DT><b><a name="tlsproxy_tls_CApath">tlsproxy_tls_CApath</a> 18095(default: $<a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a>)</b></DT><DD> 18096 18097<p> A directory containing (PEM format) CA certificates of root CAs 18098trusted to sign either remote SMTP client certificates or intermediate 18099CA certificates. See <a href="postconf.5.html#smtpd_tls_CApath">smtpd_tls_CApath</a> for further details. </p> 18100 18101<p> This feature is available in Postfix 2.8 and later. </p> 18102 18103 18104</DD> 18105 18106<DT><b><a name="tlsproxy_tls_always_issue_session_ids">tlsproxy_tls_always_issue_session_ids</a> 18107(default: $<a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a>)</b></DT><DD> 18108 18109<p> Force the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server to issue a TLS session id, 18110even when TLS session caching is turned off. See 18111<a href="postconf.5.html#smtpd_tls_always_issue_session_ids">smtpd_tls_always_issue_session_ids</a> for further details. </p> 18112 18113<p> This feature is available in Postfix 2.8 and later. </p> 18114 18115 18116</DD> 18117 18118<DT><b><a name="tlsproxy_tls_ask_ccert">tlsproxy_tls_ask_ccert</a> 18119(default: $<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a>)</b></DT><DD> 18120 18121<p> Ask a remote SMTP client for a client certificate. See 18122<a href="postconf.5.html#smtpd_tls_ask_ccert">smtpd_tls_ask_ccert</a> for further details. </p> 18123 18124<p> This feature is available in Postfix 2.8 and later. </p> 18125 18126 18127</DD> 18128 18129<DT><b><a name="tlsproxy_tls_ccert_verifydepth">tlsproxy_tls_ccert_verifydepth</a> 18130(default: $<a href="postconf.5.html#smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a>)</b></DT><DD> 18131 18132<p> The verification depth for remote SMTP client certificates. A 18133depth of 1 is sufficient if the issuing CA is listed in a local CA 18134file. See <a href="postconf.5.html#smtpd_tls_ccert_verifydepth">smtpd_tls_ccert_verifydepth</a> for further details. </p> 18135 18136<p> This feature is available in Postfix 2.8 and later. </p> 18137 18138 18139</DD> 18140 18141<DT><b><a name="tlsproxy_tls_cert_file">tlsproxy_tls_cert_file</a> 18142(default: $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>)</b></DT><DD> 18143 18144<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server RSA certificate in PEM 18145format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18146private RSA key. See <a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a> for further details. </p> 18147 18148<p> This feature is available in Postfix 2.8 and later. </p> 18149 18150 18151</DD> 18152 18153<DT><b><a name="tlsproxy_tls_ciphers">tlsproxy_tls_ciphers</a> 18154(default: $<a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a>)</b></DT><DD> 18155 18156<p> The minimum TLS cipher grade that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18157will use with opportunistic TLS encryption. See <a href="postconf.5.html#smtpd_tls_ciphers">smtpd_tls_ciphers</a> 18158for further details. </p> 18159 18160<p> This feature is available in Postfix 2.8 and later. </p> 18161 18162 18163</DD> 18164 18165<DT><b><a name="tlsproxy_tls_dcert_file">tlsproxy_tls_dcert_file</a> 18166(default: $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>)</b></DT><DD> 18167 18168<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server DSA certificate in PEM 18169format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18170private DSA key. See <a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a> for further details. 18171</p> 18172 18173<p> This feature is available in Postfix 2.8 and later. </p> 18174 18175 18176</DD> 18177 18178<DT><b><a name="tlsproxy_tls_dh1024_param_file">tlsproxy_tls_dh1024_param_file</a> 18179(default: $<a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a>)</b></DT><DD> 18180 18181<p> File with DH parameters that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18182should use with non-export EDH ciphers. See <a href="postconf.5.html#smtpd_tls_dh1024_param_file">smtpd_tls_dh1024_param_file</a> 18183for further details. </p> 18184 18185<p> This feature is available in Postfix 2.8 and later. </p> 18186 18187 18188</DD> 18189 18190<DT><b><a name="tlsproxy_tls_dh512_param_file">tlsproxy_tls_dh512_param_file</a> 18191(default: $<a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a>)</b></DT><DD> 18192 18193<p> File with DH parameters that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18194should use with export-grade EDH ciphers. See <a href="postconf.5.html#smtpd_tls_dh512_param_file">smtpd_tls_dh512_param_file</a> 18195for further details. The default SMTP server cipher grade is 18196"medium" with Postfix releases after the middle of 2015, and as a 18197result export-grade cipher suites are by default not used. </p> 18198 18199<p> This feature is available in Postfix 2.8 and later. </p> 18200 18201 18202</DD> 18203 18204<DT><b><a name="tlsproxy_tls_dkey_file">tlsproxy_tls_dkey_file</a> 18205(default: $<a href="postconf.5.html#smtpd_tls_dkey_file">smtpd_tls_dkey_file</a>)</b></DT><DD> 18206 18207<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server DSA private key in PEM 18208format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> 18209server DSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_dcert_file">smtpd_tls_dcert_file</a>. 18210See <a href="postconf.5.html#smtpd_tls_dkey_file">smtpd_tls_dkey_file</a> for further details. </p> 18211 18212<p> This feature is available in Postfix 2.8 and later. </p> 18213 18214 18215</DD> 18216 18217<DT><b><a name="tlsproxy_tls_eccert_file">tlsproxy_tls_eccert_file</a> 18218(default: $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>)</b></DT><DD> 18219 18220<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server ECDSA certificate in 18221PEM format. This file may also contain the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> 18222server private ECDSA key. See <a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a> for further 18223details. </p> 18224 18225<p> This feature is available in Postfix 2.8 and later. </p> 18226 18227 18228</DD> 18229 18230<DT><b><a name="tlsproxy_tls_eckey_file">tlsproxy_tls_eckey_file</a> 18231(default: $<a href="postconf.5.html#smtpd_tls_eckey_file">smtpd_tls_eckey_file</a>)</b></DT><DD> 18232 18233<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server ECDSA private key in 18234PEM format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> 18235server ECDSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_eccert_file">smtpd_tls_eccert_file</a>. 18236See <a href="postconf.5.html#smtpd_tls_eckey_file">smtpd_tls_eckey_file</a> for further details. </p> 18237 18238<p> This feature is available in Postfix 2.8 and later. </p> 18239 18240 18241</DD> 18242 18243<DT><b><a name="tlsproxy_tls_eecdh_grade">tlsproxy_tls_eecdh_grade</a> 18244(default: $<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a>)</b></DT><DD> 18245 18246<p> The Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server security grade for ephemeral 18247elliptic-curve Diffie-Hellman (EECDH) key exchange. See 18248<a href="postconf.5.html#smtpd_tls_eecdh_grade">smtpd_tls_eecdh_grade</a> for further details. </p> 18249 18250<p> This feature is available in Postfix 2.8 and later. </p> 18251 18252 18253</DD> 18254 18255<DT><b><a name="tlsproxy_tls_exclude_ciphers">tlsproxy_tls_exclude_ciphers</a> 18256(default: $<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a>)</b></DT><DD> 18257 18258<p> List of ciphers or cipher types to exclude from the <a href="tlsproxy.8.html">tlsproxy(8)</a> 18259server cipher list at all TLS security levels. See 18260<a href="postconf.5.html#smtpd_tls_exclude_ciphers">smtpd_tls_exclude_ciphers</a> for further details. </p> 18261 18262<p> This feature is available in Postfix 2.8 and later. </p> 18263 18264 18265</DD> 18266 18267<DT><b><a name="tlsproxy_tls_fingerprint_digest">tlsproxy_tls_fingerprint_digest</a> 18268(default: $<a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a>)</b></DT><DD> 18269 18270<p> The message digest algorithm to construct remote SMTP 18271client-certificate 18272fingerprints. See <a href="postconf.5.html#smtpd_tls_fingerprint_digest">smtpd_tls_fingerprint_digest</a> for further details. 18273</p> 18274 18275<p> This feature is available in Postfix 2.8 and later. </p> 18276 18277 18278</DD> 18279 18280<DT><b><a name="tlsproxy_tls_key_file">tlsproxy_tls_key_file</a> 18281(default: $<a href="postconf.5.html#smtpd_tls_key_file">smtpd_tls_key_file</a>)</b></DT><DD> 18282 18283<p> File with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server RSA private key in PEM 18284format. This file may be combined with the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> 18285server RSA certificate file specified with $<a href="postconf.5.html#smtpd_tls_cert_file">smtpd_tls_cert_file</a>. 18286See <a href="postconf.5.html#smtpd_tls_key_file">smtpd_tls_key_file</a> for further details. </p> 18287 18288<p> This feature is available in Postfix 2.8 and later. </p> 18289 18290 18291</DD> 18292 18293<DT><b><a name="tlsproxy_tls_loglevel">tlsproxy_tls_loglevel</a> 18294(default: $<a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a>)</b></DT><DD> 18295 18296<p> Enable additional Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server logging of TLS 18297activity. Each logging level also includes the information that 18298is logged at a lower logging level. See <a href="postconf.5.html#smtpd_tls_loglevel">smtpd_tls_loglevel</a> for 18299further details. </p> 18300 18301<p> This feature is available in Postfix 2.8 and later. </p> 18302 18303 18304</DD> 18305 18306<DT><b><a name="tlsproxy_tls_mandatory_ciphers">tlsproxy_tls_mandatory_ciphers</a> 18307(default: $<a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a>)</b></DT><DD> 18308 18309<p> The minimum TLS cipher grade that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18310will use with mandatory TLS encryption. See <a href="postconf.5.html#smtpd_tls_mandatory_ciphers">smtpd_tls_mandatory_ciphers</a> 18311for further details. </p> 18312 18313<p> This feature is available in Postfix 2.8 and later. </p> 18314 18315 18316</DD> 18317 18318<DT><b><a name="tlsproxy_tls_mandatory_exclude_ciphers">tlsproxy_tls_mandatory_exclude_ciphers</a> 18319(default: $<a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a>)</b></DT><DD> 18320 18321<p> Additional list of ciphers or cipher types to exclude from the 18322<a href="tlsproxy.8.html">tlsproxy(8)</a> server cipher list at mandatory TLS security levels. 18323See <a href="postconf.5.html#smtpd_tls_mandatory_exclude_ciphers">smtpd_tls_mandatory_exclude_ciphers</a> for further details. </p> 18324 18325<p> This feature is available in Postfix 2.8 and later. </p> 18326 18327 18328</DD> 18329 18330<DT><b><a name="tlsproxy_tls_mandatory_protocols">tlsproxy_tls_mandatory_protocols</a> 18331(default: $<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a>)</b></DT><DD> 18332 18333<p> The SSL/TLS protocols accepted by the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server 18334with mandatory TLS encryption. If the list is empty, the server 18335supports all available SSL/TLS protocol versions. See 18336<a href="postconf.5.html#smtpd_tls_mandatory_protocols">smtpd_tls_mandatory_protocols</a> for further details. </p> 18337 18338<p> This feature is available in Postfix 2.8 and later. </p> 18339 18340 18341</DD> 18342 18343<DT><b><a name="tlsproxy_tls_protocols">tlsproxy_tls_protocols</a> 18344(default: $<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a>)</b></DT><DD> 18345 18346<p> List of TLS protocols that the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server will 18347exclude or include with opportunistic TLS encryption. See 18348<a href="postconf.5.html#smtpd_tls_protocols">smtpd_tls_protocols</a> for further details. </p> 18349 18350<p> This feature is available in Postfix 2.8 and later. </p> 18351 18352 18353</DD> 18354 18355<DT><b><a name="tlsproxy_tls_req_ccert">tlsproxy_tls_req_ccert</a> 18356(default: $<a href="postconf.5.html#smtpd_tls_req_ccert">smtpd_tls_req_ccert</a>)</b></DT><DD> 18357 18358<p> With mandatory TLS encryption, require a trusted remote SMTP 18359client certificate in order to allow TLS connections to proceed. 18360See <a href="postconf.5.html#smtpd_tls_req_ccert">smtpd_tls_req_ccert</a> for further details. </p> 18361 18362<p> This feature is available in Postfix 2.8 and later. </p> 18363 18364 18365</DD> 18366 18367<DT><b><a name="tlsproxy_tls_security_level">tlsproxy_tls_security_level</a> 18368(default: $<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a>)</b></DT><DD> 18369 18370<p> The SMTP TLS security level for the Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server; 18371when a non-empty value is specified, this overrides the obsolete 18372parameters <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 18373<a href="postconf.5.html#smtpd_tls_security_level">smtpd_tls_security_level</a> for further details. </p> 18374 18375<p> This feature is available in Postfix 2.8 and later. </p> 18376 18377 18378</DD> 18379 18380<DT><b><a name="tlsproxy_tls_session_cache_timeout">tlsproxy_tls_session_cache_timeout</a> 18381(default: $<a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>)</b></DT><DD> 18382 18383<p> Obsolete expiration time of Postfix <a href="tlsproxy.8.html">tlsproxy(8)</a> server TLS session 18384cache information. Since the cache is shared with <a href="smtpd.8.html">smtpd(8)</a> and managed 18385by <a href="tlsmgr.8.html">tlsmgr(8)</a>, there is only one expiration time for the SMTP server cache 18386shared by all three services, namely <a href="postconf.5.html#smtpd_tls_session_cache_timeout">smtpd_tls_session_cache_timeout</a>. </p> 18387 18388<p> This feature is available in Postfix 2.8 and later. </p> 18389 18390 18391</DD> 18392 18393<DT><b><a name="tlsproxy_use_tls">tlsproxy_use_tls</a> 18394(default: $<a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a>)</b></DT><DD> 18395 18396<p> Opportunistic TLS: announce STARTTLS support to remote SMTP clients, 18397but do not require that clients use TLS encryption. See <a href="postconf.5.html#smtpd_use_tls">smtpd_use_tls</a> 18398for further details. </p> 18399 18400<p> This feature is available in Postfix 2.8 and later. </p> 18401 18402 18403</DD> 18404 18405<DT><b><a name="tlsproxy_watchdog_timeout">tlsproxy_watchdog_timeout</a> 18406(default: 10s)</b></DT><DD> 18407 18408<p> How much time a <a href="tlsproxy.8.html">tlsproxy(8)</a> process may take to process local 18409or remote I/O before it is terminated by a built-in watchdog timer. 18410This is a safety mechanism that prevents <a href="tlsproxy.8.html">tlsproxy(8)</a> from becoming 18411non-responsive due to a bug in Postfix itself or in system software. 18412To avoid false alarms and unnecessary cache corruption this limit 18413cannot be set under 10s. </p> 18414 18415<p> Specify a non-zero time value (an integral value plus an optional 18416one-letter suffix that specifies the time unit). Time units: s 18417(seconds), m (minutes), h (hours), d (days), w (weeks). </p> 18418 18419<p> This feature is available in Postfix 2.8. </p> 18420 18421 18422</DD> 18423 18424<DT><b><a name="trace_service_name">trace_service_name</a> 18425(default: trace)</b></DT><DD> 18426 18427<p> 18428The name of the trace service. This service is implemented by the 18429<a href="bounce.8.html">bounce(8)</a> daemon and maintains a record 18430of mail deliveries and produces a mail delivery report when verbose 18431delivery is requested with "<b>sendmail -v</b>". 18432</p> 18433 18434<p> 18435This feature is available in Postfix 2.1 and later. 18436</p> 18437 18438 18439</DD> 18440 18441<DT><b><a name="transport_delivery_slot_cost">transport_delivery_slot_cost</a> 18442(default: $<a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a>)</b></DT><DD> 18443 18444<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_cost">default_delivery_slot_cost</a> 18445parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18446the message delivery transport. </p> 18447 18448<p> Note: <a href="postconf.5.html#transport_delivery_slot_cost"><i>transport</i>_delivery_slot_cost</a> parameters will not 18449show up in "postconf" command output before Postfix version 2.9. 18450This limitation applies to many parameters whose name is a combination 18451of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in this case: 18452"_delivery_slot_cost"). </p> 18453 18454 18455</DD> 18456 18457<DT><b><a name="transport_delivery_slot_discount">transport_delivery_slot_discount</a> 18458(default: $<a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a>)</b></DT><DD> 18459 18460<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_discount">default_delivery_slot_discount</a> 18461parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18462the message delivery transport. </p> 18463 18464<p> Note: <a href="postconf.5.html#transport_delivery_slot_discount"><i>transport</i>_delivery_slot_discount</a> parameters will 18465not show up in "postconf" command output before Postfix version 184662.9. This limitation applies to many parameters whose name is a 18467combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18468this case: "_delivery_slot_discount"). </p> 18469 18470 18471</DD> 18472 18473<DT><b><a name="transport_delivery_slot_loan">transport_delivery_slot_loan</a> 18474(default: $<a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a>)</b></DT><DD> 18475 18476<p> A transport-specific override for the <a href="postconf.5.html#default_delivery_slot_loan">default_delivery_slot_loan</a> 18477parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18478the message delivery transport. </p> 18479 18480<p> Note: <a href="postconf.5.html#transport_delivery_slot_loan"><i>transport</i>_delivery_slot_loan</a> parameters will not 18481show up in "postconf" command output before Postfix version 2.9. 18482This limitation applies to many parameters whose name is a combination 18483of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in this case: 18484"_delivery_slot_loan"). </p> 18485 18486 18487</DD> 18488 18489<DT><b><a name="transport_destination_concurrency_failed_cohort_limit">transport_destination_concurrency_failed_cohort_limit</a> 18490(default: $<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a>)</b></DT><DD> 18491 18492<p> A transport-specific override for the 18493<a href="postconf.5.html#default_destination_concurrency_failed_cohort_limit">default_destination_concurrency_failed_cohort_limit</a> parameter value, 18494where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery 18495transport. </p> 18496 18497<p> Note: some <a href="postconf.5.html#transport_destination_concurrency_failed_cohort_limit"><i>transport</i>_destination_concurrency_failed_cohort_limit</a> 18498parameters will not show up in "postconf" command output before 18499Postfix version 2.9. This limitation applies to many parameters 18500whose name is a combination of a <a href="master.5.html">master.cf</a> service name and a 18501built-in suffix (in this case: 18502"_destination_concurrency_failed_cohort_limit"). </p> 18503 18504<p> This feature is available in Postfix 2.5 and later. </p> 18505 18506 18507</DD> 18508 18509<DT><b><a name="transport_destination_concurrency_limit">transport_destination_concurrency_limit</a> 18510(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD> 18511 18512<p> A transport-specific override for the 18513<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a> parameter value, where 18514<i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery 18515transport. </p> 18516 18517<p> Note: some <a href="postconf.5.html#transport_destination_concurrency_limit"><i>transport</i>_destination_concurrency_limit</a> 18518parameters will not show up in "postconf" command output before 18519Postfix version 2.9. This limitation applies to many parameters 18520whose name is a combination of a <a href="master.5.html">master.cf</a> service name and a 18521built-in suffix (in this case: "_destination_concurrency_limit"). 18522</p> 18523 18524 18525</DD> 18526 18527<DT><b><a name="transport_destination_concurrency_negative_feedback">transport_destination_concurrency_negative_feedback</a> 18528(default: $<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a>)</b></DT><DD> 18529 18530<p> A transport-specific override for the 18531<a href="postconf.5.html#default_destination_concurrency_negative_feedback">default_destination_concurrency_negative_feedback</a> parameter value, 18532where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery 18533transport. </p> 18534 18535<p> Note: some <a href="postconf.5.html#transport_destination_concurrency_negative_feedback"><i>transport</i>_destination_concurrency_negative_feedback</a> 18536parameters will not show up in "postconf" command output before 18537Postfix version 2.9. This limitation applies to many parameters 18538whose name is a combination of a <a href="master.5.html">master.cf</a> service name and a 18539built-in suffix (in this case: 18540"_destination_concurrency_negative_feedback"). </p> 18541 18542<p> This feature is available in Postfix 2.5 and later. </p> 18543 18544 18545</DD> 18546 18547<DT><b><a name="transport_destination_concurrency_positive_feedback">transport_destination_concurrency_positive_feedback</a> 18548(default: $<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a>)</b></DT><DD> 18549 18550<p> A transport-specific override for the 18551<a href="postconf.5.html#default_destination_concurrency_positive_feedback">default_destination_concurrency_positive_feedback</a> parameter value, 18552where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery 18553transport. </p> 18554 18555<p> Note: some <a href="postconf.5.html#transport_destination_concurrency_positive_feedback"><i>transport</i>_destination_concurrency_positive_feedback</a> 18556parameters will not show up in "postconf" command output before 18557Postfix version 2.9. This limitation applies to many parameters 18558whose name is a combination of a <a href="master.5.html">master.cf</a> service name and a 18559built-in suffix (in this case: 18560"_destination_concurrency_positive_feedback"). </p> 18561 18562<p> This feature is available in Postfix 2.5 and later. </p> 18563 18564 18565</DD> 18566 18567<DT><b><a name="transport_destination_rate_delay">transport_destination_rate_delay</a> 18568(default: $<a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a>)</b></DT><DD> 18569 18570<p> A transport-specific override for the <a href="postconf.5.html#default_destination_rate_delay">default_destination_rate_delay</a> 18571parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18572the message delivery transport. </p> 18573 18574<p> Note: some <a href="postconf.5.html#transport_destination_rate_delay"><i>transport</i>_destination_rate_delay</a> parameters 18575will not show up in "postconf" command output before Postfix version 185762.9. This limitation applies to many parameters whose name is a 18577combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18578this case: "_destination_rate_delay"). </p> 18579 18580<p> This feature is available in Postfix 2.5 and later. </p> 18581 18582 18583</DD> 18584 18585<DT><b><a name="transport_destination_recipient_limit">transport_destination_recipient_limit</a> 18586(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD> 18587 18588<p> A transport-specific override for the 18589<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a> parameter value, where 18590<i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message delivery 18591transport. </p> 18592 18593<p> Note: some <a href="postconf.5.html#transport_destination_recipient_limit"><i>transport</i>_destination_recipient_limit</a> parameters 18594will not show up in "postconf" command output before Postfix version 185952.9. This limitation applies to many parameters whose name is a 18596combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18597this case: "_destination_recipient_limit"). </p> 18598 18599 18600</DD> 18601 18602<DT><b><a name="transport_extra_recipient_limit">transport_extra_recipient_limit</a> 18603(default: $<a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a>)</b></DT><DD> 18604 18605<p> A transport-specific override for the <a href="postconf.5.html#default_extra_recipient_limit">default_extra_recipient_limit</a> 18606parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18607the message delivery transport. </p> 18608 18609<p> Note: <a href="postconf.5.html#transport_extra_recipient_limit"><i>transport</i>_extra_recipient_limit</a> parameters will 18610not show up in "postconf" command output before Postfix version 186112.9. This limitation applies to many parameters whose name is a 18612combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18613this case: "_extra_recipient_limit"). </p> 18614 18615 18616</DD> 18617 18618<DT><b><a name="transport_initial_destination_concurrency">transport_initial_destination_concurrency</a> 18619(default: $<a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a>)</b></DT><DD> 18620 18621<p> A transport-specific override for the <a href="postconf.5.html#initial_destination_concurrency">initial_destination_concurrency</a> 18622parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18623the message delivery transport. </p> 18624 18625<p> Note: some <a href="postconf.5.html#transport_initial_destination_concurrency"><i>transport</i>_initial_destination_concurrency</a> 18626parameters will not show up in "postconf" command output before 18627Postfix version 2.9. This limitation applies to many parameters 18628whose name is a combination of a <a href="master.5.html">master.cf</a> service name and a 18629built-in suffix (in this case: "_initial_destination_concurrency"). 18630</p> 18631 18632<p> This feature is available in Postfix 2.5 and later. </p> 18633 18634 18635</DD> 18636 18637<DT><b><a name="transport_maps">transport_maps</a> 18638(default: empty)</b></DT><DD> 18639 18640<p> 18641Optional lookup tables with mappings from recipient address to 18642(message delivery transport, next-hop destination). See <a href="transport.5.html">transport(5)</a> 18643for details. 18644</p> 18645 18646<p> 18647Specify zero or more "<a href="DATABASE_README.html">type:table</a>" lookup tables, separated by 18648whitespace or comma. Tables will be searched in the specified order 18649until a match is found. If you use this 18650feature with local files, run "<b>postmap /etc/postfix/transport</b>" 18651after making a change. </p> 18652 18653<p> Pattern matching of domain names is controlled by the presence 18654or absence of "<a href="postconf.5.html#transport_maps">transport_maps</a>" in the <a href="postconf.5.html#parent_domain_matches_subdomains">parent_domain_matches_subdomains</a> 18655parameter value. </p> 18656 18657<p> For safety reasons, as of Postfix 2.3 this feature does not 18658allow $number substitutions in regular expression maps. </p> 18659 18660<p> 18661Examples: 18662</p> 18663 18664<pre> 18665<a href="postconf.5.html#transport_maps">transport_maps</a> = <a href="DATABASE_README.html#types">dbm</a>:/etc/postfix/transport 18666<a href="postconf.5.html#transport_maps">transport_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/transport 18667</pre> 18668 18669 18670</DD> 18671 18672<DT><b><a name="transport_minimum_delivery_slots">transport_minimum_delivery_slots</a> 18673(default: $<a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a>)</b></DT><DD> 18674 18675<p> A transport-specific override for the <a href="postconf.5.html#default_minimum_delivery_slots">default_minimum_delivery_slots</a> 18676parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18677the message delivery transport. </p> 18678 18679<p> Note: <a href="postconf.5.html#transport_minimum_delivery_slots"><i>transport</i>_minimum_delivery_slots</a> parameters will 18680not show up in "postconf" command output before Postfix version 186812.9. This limitation applies to many parameters whose name is a 18682combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18683this case: "_minimum_delivery_slots"). </p> 18684 18685 18686</DD> 18687 18688<DT><b><a name="transport_recipient_limit">transport_recipient_limit</a> 18689(default: $<a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a>)</b></DT><DD> 18690 18691<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_limit">default_recipient_limit</a> 18692parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18693the message delivery transport. </p> 18694 18695<p> Note: some <a href="postconf.5.html#transport_recipient_limit"><i>transport</i>_recipient_limit</a> parameters will not 18696show up in "postconf" command output before Postfix version 2.9. 18697This limitation applies to many parameters whose name is a combination 18698of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in this case: 18699"_recipient_limit"). </p> 18700 18701 18702</DD> 18703 18704<DT><b><a name="transport_recipient_refill_delay">transport_recipient_refill_delay</a> 18705(default: $<a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a>)</b></DT><DD> 18706 18707<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_delay">default_recipient_refill_delay</a> 18708parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18709the message delivery transport. </p> 18710 18711<p> Note: <a href="postconf.5.html#transport_recipient_refill_delay"><i>transport</i>_recipient_refill_delay</a> parameters will 18712not show up in "postconf" command output before Postfix version 187132.9. This limitation applies to many parameters whose name is a 18714combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18715this case: "_recipient_refill_delay"). </p> 18716 18717<p> This feature is available in Postfix 2.4 and later. </p> 18718 18719 18720</DD> 18721 18722<DT><b><a name="transport_recipient_refill_limit">transport_recipient_refill_limit</a> 18723(default: $<a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a>)</b></DT><DD> 18724 18725<p> A transport-specific override for the <a href="postconf.5.html#default_recipient_refill_limit">default_recipient_refill_limit</a> 18726parameter value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of 18727the message delivery transport. </p> 18728 18729<p> Note: <a href="postconf.5.html#transport_recipient_refill_limit"><i>transport</i>_recipient_refill_limit</a> parameters will 18730not show up in "postconf" command output before Postfix version 187312.9. This limitation applies to many parameters whose name is a 18732combination of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in 18733this case: "_recipient_refill_limit"). </p> 18734 18735<p> This feature is available in Postfix 2.4 and later. </p> 18736 18737 18738</DD> 18739 18740<DT><b><a name="transport_retry_time">transport_retry_time</a> 18741(default: 60s)</b></DT><DD> 18742 18743<p> 18744The time between attempts by the Postfix queue manager to contact 18745a malfunctioning message delivery transport. 18746</p> 18747 18748<p> 18749Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 18750The default time unit is s (seconds). 18751</p> 18752 18753 18754</DD> 18755 18756<DT><b><a name="transport_time_limit">transport_time_limit</a> 18757(default: $<a href="postconf.5.html#command_time_limit">command_time_limit</a>)</b></DT><DD> 18758 18759<p> A transport-specific override for the <a href="postconf.5.html#command_time_limit">command_time_limit</a> parameter 18760value, where <i>transport</i> is the <a href="master.5.html">master.cf</a> name of the message 18761delivery transport. </p> 18762 18763<p> Note: <a href="postconf.5.html#transport_time_limit"><i>transport</i>_time_limit</a> parameters will not show up 18764in "postconf" command output before Postfix version 2.9. This 18765limitation applies to many parameters whose name is a combination 18766of a <a href="master.5.html">master.cf</a> service name and a built-in suffix (in this case: 18767"_time_limit"). </p> 18768 18769 18770</DD> 18771 18772<DT><b><a name="transport_transport_rate_delay">transport_transport_rate_delay</a> 18773(default: $<a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a>)</b></DT><DD> 18774 18775<p> A transport-specific override for the <a href="postconf.5.html#default_transport_rate_delay">default_transport_rate_delay</a> 18776parameter value, where the initial <i>transport</i> in the parameter 18777name is the <a href="master.5.html">master.cf</a> name of the message delivery transport. </p> 18778 18779 18780</DD> 18781 18782<DT><b><a name="trigger_timeout">trigger_timeout</a> 18783(default: 10s)</b></DT><DD> 18784 18785<p> 18786The time limit for sending a trigger to a Postfix daemon (for 18787example, the <a href="pickup.8.html">pickup(8)</a> or <a href="qmgr.8.html">qmgr(8)</a> daemon). This time limit prevents 18788programs from getting stuck when the mail system is under heavy 18789load. 18790</p> 18791 18792<p> 18793Time units: s (seconds), m (minutes), h (hours), d (days), w (weeks). 18794The default time unit is s (seconds). 18795</p> 18796 18797 18798</DD> 18799 18800<DT><b><a name="undisclosed_recipients_header">undisclosed_recipients_header</a> 18801(default: see "postconf -d" output)</b></DT><DD> 18802 18803<p> 18804Message header that the Postfix <a href="cleanup.8.html">cleanup(8)</a> server inserts when a 18805message contains no To: or Cc: message header. With Postfix 2.8 18806and later, the default value is empty. With Postfix 2.4-2.7, 18807specify an empty value to disable this feature. </p> 18808 18809<p> Example: </p> 18810 18811<pre> 18812# Default value before Postfix 2.8. 18813# Note: the ":" and ";" are both required. 18814<a href="postconf.5.html#undisclosed_recipients_header">undisclosed_recipients_header</a> = To: undisclosed-recipients:; 18815</pre> 18816 18817 18818</DD> 18819 18820<DT><b><a name="unknown_address_reject_code">unknown_address_reject_code</a> 18821(default: 450)</b></DT><DD> 18822 18823<p> 18824The numerical response code when the Postfix SMTP server rejects a 18825sender or recipient address because its domain is unknown. This 18826is one of the possible replies from the restrictions 18827<a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a> and <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a>. 18828</p> 18829 18830<p> 18831Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 18832</p> 18833 18834 18835</DD> 18836 18837<DT><b><a name="unknown_address_tempfail_action">unknown_address_tempfail_action</a> 18838(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD> 18839 18840<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_sender_domain">reject_unknown_sender_domain</a> 18841or <a href="postconf.5.html#reject_unknown_recipient_domain">reject_unknown_recipient_domain</a> fail due to a temporary error 18842condition. Specify "defer" to defer the remote SMTP client request 18843immediately. With the default "<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix 18844SMTP server continues to look for opportunities to reject mail, and 18845defers the client request only if it would otherwise be accepted. 18846</p> 18847 18848<p> This feature is available in Postfix 2.6 and later. </p> 18849 18850 18851</DD> 18852 18853<DT><b><a name="unknown_client_reject_code">unknown_client_reject_code</a> 18854(default: 450)</b></DT><DD> 18855 18856<p> 18857The numerical Postfix SMTP server response code when a client 18858without valid address <=> name mapping is rejected by the 18859<a href="postconf.5.html#reject_unknown_client_hostname">reject_unknown_client_hostname</a> restriction. The SMTP server always replies 18860with 450 when the mapping failed due to a temporary error condition. 18861</p> 18862 18863<p> 18864Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 18865</p> 18866 18867 18868</DD> 18869 18870<DT><b><a name="unknown_helo_hostname_tempfail_action">unknown_helo_hostname_tempfail_action</a> 18871(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD> 18872 18873<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> 18874fails due to an temporary error condition. Specify "defer" to defer 18875the remote SMTP client request immediately. With the default 18876"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look 18877for opportunities to reject mail, and defers the client request 18878only if it would otherwise be accepted. </p> 18879 18880<p> This feature is available in Postfix 2.6 and later. </p> 18881 18882 18883</DD> 18884 18885<DT><b><a name="unknown_hostname_reject_code">unknown_hostname_reject_code</a> 18886(default: 450)</b></DT><DD> 18887 18888<p> 18889The numerical Postfix SMTP server response code when the hostname 18890specified with the HELO or EHLO command is rejected by the 18891<a href="postconf.5.html#reject_unknown_helo_hostname">reject_unknown_helo_hostname</a> restriction. 18892</p> 18893 18894<p> 18895Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 18896</p> 18897 18898 18899</DD> 18900 18901<DT><b><a name="unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> 18902(default: 550)</b></DT><DD> 18903 18904<p> 18905The numerical Postfix SMTP server response code when a recipient 18906address is local, and $<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> specifies a list of 18907lookup tables that does not match the recipient. A recipient 18908address is local when its domain matches $<a href="postconf.5.html#mydestination">mydestination</a>, 18909$<a href="postconf.5.html#proxy_interfaces">proxy_interfaces</a> or $<a href="postconf.5.html#inet_interfaces">inet_interfaces</a>. 18910</p> 18911 18912<p> 18913The default setting is 550 (reject mail) but it is safer to initially 18914use 450 (try again later) so you have time to find out if your 18915<a href="postconf.5.html#local_recipient_maps">local_recipient_maps</a> settings are OK. 18916</p> 18917 18918<p> 18919Example: 18920</p> 18921 18922<pre> 18923<a href="postconf.5.html#unknown_local_recipient_reject_code">unknown_local_recipient_reject_code</a> = 450 18924</pre> 18925 18926<p> 18927This feature is available in Postfix 2.0 and later. 18928</p> 18929 18930 18931</DD> 18932 18933<DT><b><a name="unknown_relay_recipient_reject_code">unknown_relay_recipient_reject_code</a> 18934(default: 550)</b></DT><DD> 18935 18936<p> 18937The numerical Postfix SMTP server reply code when a recipient 18938address 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 18939a list of lookup tables that does not match the recipient address. 18940</p> 18941 18942<p> 18943This feature is available in Postfix 2.0 and later. 18944</p> 18945 18946 18947</DD> 18948 18949<DT><b><a name="unknown_virtual_alias_reject_code">unknown_virtual_alias_reject_code</a> 18950(default: 550)</b></DT><DD> 18951 18952<p> 18953The Postfix SMTP server reply code when a recipient address matches 18954$<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 18955of lookup tables that does not match the recipient address. 18956</p> 18957 18958<p> 18959This feature is available in Postfix 2.0 and later. 18960</p> 18961 18962 18963</DD> 18964 18965<DT><b><a name="unknown_virtual_mailbox_reject_code">unknown_virtual_mailbox_reject_code</a> 18966(default: 550)</b></DT><DD> 18967 18968<p> 18969The Postfix SMTP server reply code when a recipient address matches 18970$<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 18971of lookup tables that does not match the recipient address. 18972</p> 18973 18974<p> 18975This feature is available in Postfix 2.0 and later. 18976</p> 18977 18978 18979</DD> 18980 18981<DT><b><a name="unverified_recipient_defer_code">unverified_recipient_defer_code</a> 18982(default: 450)</b></DT><DD> 18983 18984<p> 18985The numerical Postfix SMTP server response when a recipient address 18986probe fails due to a temporary error condition. 18987</p> 18988 18989<p> 18990Unlike elsewhere in Postfix, you can specify 250 in order to 18991accept the address anyway. 18992</p> 18993 18994<p> 18995Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 18996</p> 18997 18998<p> 18999This feature is available in Postfix 2.6 and later. 19000</p> 19001 19002 19003</DD> 19004 19005<DT><b><a name="unverified_recipient_reject_code">unverified_recipient_reject_code</a> 19006(default: 450)</b></DT><DD> 19007 19008<p> 19009The numerical Postfix SMTP server response when a recipient address 19010is rejected by the <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> restriction. 19011</p> 19012 19013<p> 19014Unlike elsewhere in Postfix, you can specify 250 in order to 19015accept the address anyway. 19016</p> 19017 19018<p> 19019Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 19020</p> 19021 19022<p> 19023This feature is available in Postfix 2.1 and later. 19024</p> 19025 19026 19027</DD> 19028 19029<DT><b><a name="unverified_recipient_reject_reason">unverified_recipient_reject_reason</a> 19030(default: empty)</b></DT><DD> 19031 19032<p> The Postfix SMTP server's reply when rejecting mail with 19033<a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a>. Do not include the numeric SMTP reply 19034code or the enhanced status code. By default, the response includes 19035actual address verification details. 19036 19037<p> Example: </p> 19038 19039<pre> 19040<a href="postconf.5.html#unverified_recipient_reject_reason">unverified_recipient_reject_reason</a> = Recipient address lookup failed 19041</pre> 19042 19043<p> This feature is available in Postfix 2.6 and later. </p> 19044 19045 19046</DD> 19047 19048<DT><b><a name="unverified_recipient_tempfail_action">unverified_recipient_tempfail_action</a> 19049(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD> 19050 19051<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_recipient">reject_unverified_recipient</a> 19052fails due to a temporary error condition. Specify "defer" to defer 19053the remote SMTP client request immediately. With the default 19054"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look 19055for opportunities to reject mail, and defers the client request 19056only if it would otherwise be accepted. </p> 19057 19058<p> This feature is available in Postfix 2.6 and later. </p> 19059 19060 19061</DD> 19062 19063<DT><b><a name="unverified_sender_defer_code">unverified_sender_defer_code</a> 19064(default: 450)</b></DT><DD> 19065 19066<p> 19067The numerical Postfix SMTP server response code when a sender address 19068probe fails due to a temporary error condition. 19069</p> 19070 19071<p> 19072Unlike elsewhere in Postfix, you can specify 250 in order to 19073accept the address anyway. 19074</p> 19075 19076<p> 19077Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 19078</p> 19079 19080<p> 19081This feature is available in Postfix 2.6 and later. 19082</p> 19083 19084 19085</DD> 19086 19087<DT><b><a name="unverified_sender_reject_code">unverified_sender_reject_code</a> 19088(default: 450)</b></DT><DD> 19089 19090<p> 19091The numerical Postfix SMTP server response code when a recipient 19092address is rejected by the <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> restriction. 19093</p> 19094 19095<p> 19096Unlike elsewhere in Postfix, you can specify 250 in order to 19097accept the address anyway. 19098</p> 19099 19100<p> 19101Do not change this unless you have a complete understanding of <a href="http://tools.ietf.org/html/rfc5321">RFC 5321</a>. 19102</p> 19103 19104<p> 19105This feature is available in Postfix 2.1 and later. 19106</p> 19107 19108 19109</DD> 19110 19111<DT><b><a name="unverified_sender_reject_reason">unverified_sender_reject_reason</a> 19112(default: empty)</b></DT><DD> 19113 19114<p> The Postfix SMTP server's reply when rejecting mail with 19115<a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a>. Do not include the numeric SMTP reply 19116code or the enhanced status code. By default, the response includes 19117actual address verification details. 19118 19119<p> Example: </p> 19120 19121<pre> 19122<a href="postconf.5.html#unverified_sender_reject_reason">unverified_sender_reject_reason</a> = Sender address lookup failed 19123</pre> 19124 19125<p> This feature is available in Postfix 2.6 and later. </p> 19126 19127 19128</DD> 19129 19130<DT><b><a name="unverified_sender_tempfail_action">unverified_sender_tempfail_action</a> 19131(default: $<a href="postconf.5.html#reject_tempfail_action">reject_tempfail_action</a>)</b></DT><DD> 19132 19133<p> The Postfix SMTP server's action when <a href="postconf.5.html#reject_unverified_sender">reject_unverified_sender</a> 19134fails due to a temporary error condition. Specify "defer" to defer 19135the remote SMTP client request immediately. With the default 19136"<a href="postconf.5.html#defer_if_permit">defer_if_permit</a>" action, the Postfix SMTP server continues to look 19137for opportunities to reject mail, and defers the client request 19138only if it would otherwise be accepted. </p> 19139 19140<p> This feature is available in Postfix 2.6 and later. </p> 19141 19142 19143</DD> 19144 19145<DT><b><a name="verp_delimiter_filter">verp_delimiter_filter</a> 19146(default: -=+)</b></DT><DD> 19147 19148<p> 19149The characters Postfix accepts as VERP delimiter characters on the 19150Postfix <a href="sendmail.1.html">sendmail(1)</a> command line and in SMTP commands. 19151</p> 19152 19153<p> 19154This feature is available in Postfix 1.1 and later. 19155</p> 19156 19157 19158</DD> 19159 19160<DT><b><a name="virtual_alias_address_length_limit">virtual_alias_address_length_limit</a> 19161(default: 1000)</b></DT><DD> 19162 19163<p> 19164The maximal length of an email address after virtual alias expansion. 19165This stops virtual aliasing loops that increase the address length 19166exponentially. 19167</p> 19168 19169<p> 19170This feature is available in Postfix 3.0 and later. 19171</p> 19172 19173 19174</DD> 19175 19176<DT><b><a name="virtual_alias_domains">virtual_alias_domains</a> 19177(default: $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>)</b></DT><DD> 19178 19179<p> Postfix is final destination for the specified list of virtual 19180alias domains, that is, domains for which all addresses are aliased 19181to addresses in other local or remote domains. The SMTP server 19182validates recipient addresses with $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> and rejects 19183non-existent recipients. See also the <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domain</a> class 19184in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file </p> 19185 19186<p> 19187This feature is available in Postfix 2.0 and later. The default 19188value is backwards compatible with Postfix version 1.1. 19189</p> 19190 19191<p> 19192The default value is $<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> so that you can keep all 19193information about <a href="ADDRESS_CLASS_README.html#virtual_alias_class">virtual alias domains</a> in one place. If you have 19194many users, it is better to separate information that changes more 19195frequently (virtual address -> local or remote address mapping) 19196from information that changes less frequently (the list of virtual 19197domain names). 19198</p> 19199 19200<p> Specify a list of host or domain names, "/file/name" or 19201"<a href="DATABASE_README.html">type:table</a>" patterns, separated by commas and/or whitespace. A 19202"/file/name" pattern is replaced by its contents; a "<a href="DATABASE_README.html">type:table</a>" 19203lookup table is matched when a table entry matches a lookup string 19204(the lookup result is ignored). Continue long lines by starting 19205the next line with whitespace. Specify "!pattern" to exclude a host 19206or domain name from the list. The form "!/file/name" is supported 19207only in Postfix version 2.4 and later. </p> 19208 19209<p> 19210See also the <a href="VIRTUAL_README.html">VIRTUAL_README</a> and <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> documents 19211for further information. 19212</p> 19213 19214<p> 19215Example: 19216</p> 19217 19218<pre> 19219<a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> = virtual1.tld virtual2.tld 19220</pre> 19221 19222 19223</DD> 19224 19225<DT><b><a name="virtual_alias_expansion_limit">virtual_alias_expansion_limit</a> 19226(default: 1000)</b></DT><DD> 19227 19228<p> 19229The maximal number of addresses that virtual alias expansion produces 19230from each original recipient. 19231</p> 19232 19233<p> 19234This feature is available in Postfix 2.1 and later. 19235</p> 19236 19237 19238</DD> 19239 19240<DT><b><a name="virtual_alias_maps">virtual_alias_maps</a> 19241(default: $<a href="postconf.5.html#virtual_maps">virtual_maps</a>)</b></DT><DD> 19242 19243<p> 19244Optional lookup tables that alias specific mail addresses or domains 19245to other local or remote address. The table format and lookups 19246are documented in <a href="virtual.5.html">virtual(5)</a>. For an overview of Postfix address 19247manipulations see the <a href="ADDRESS_REWRITING_README.html">ADDRESS_REWRITING_README</a> document. 19248</p> 19249 19250<p> 19251This feature is available in Postfix 2.0 and later. The default 19252value is backwards compatible with Postfix version 1.1. 19253</p> 19254 19255<p> 19256Specify zero or more "type:name" lookup tables, separated by 19257whitespace or comma. Tables will be searched in the specified order 19258until a match is found. 19259Note: these lookups are recursive. 19260</p> 19261 19262<p> 19263If you use this feature with indexed files, run "<b>postmap 19264/etc/postfix/virtual</b>" after changing the file. 19265</p> 19266 19267<p> 19268Examples: 19269</p> 19270 19271<pre> 19272<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = <a href="DATABASE_README.html#types">dbm</a>:/etc/postfix/virtual 19273<a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a> = <a href="DATABASE_README.html#types">hash</a>:/etc/postfix/virtual 19274</pre> 19275 19276 19277</DD> 19278 19279<DT><b><a name="virtual_alias_recursion_limit">virtual_alias_recursion_limit</a> 19280(default: 1000)</b></DT><DD> 19281 19282<p> 19283The maximal nesting depth of virtual alias expansion. Currently 19284the recursion limit is applied only to the left branch of the 19285expansion graph, so the depth of the tree can in the worst case 19286reach the sum of the expansion and recursion limits. This may 19287change in the future. 19288</p> 19289 19290<p> 19291This feature is available in Postfix 2.1 and later. 19292</p> 19293 19294 19295</DD> 19296 19297<DT><b><a name="virtual_delivery_status_filter">virtual_delivery_status_filter</a> 19298(default: $<a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a>)</b></DT><DD> 19299 19300<p> Optional filter for the <a href="virtual.8.html">virtual(8)</a> delivery agent to change the 19301delivery status code or explanatory text of successful or unsuccessful 19302deliveries. See <a href="postconf.5.html#default_delivery_status_filter">default_delivery_status_filter</a> for details. </p> 19303 19304<p> This feature is available in Postfix 3.0 and later. </p> 19305 19306 19307</DD> 19308 19309<DT><b><a name="virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a> 19310(default: $<a href="postconf.5.html#default_destination_concurrency_limit">default_destination_concurrency_limit</a>)</b></DT><DD> 19311 19312<p> The maximal number of parallel deliveries to the same destination 19313via the virtual message delivery transport. This limit is enforced 19314by the queue manager. The message delivery transport name is the 19315first field in the entry in the <a href="master.5.html">master.cf</a> file. </p> 19316 19317 19318</DD> 19319 19320<DT><b><a name="virtual_destination_recipient_limit">virtual_destination_recipient_limit</a> 19321(default: $<a href="postconf.5.html#default_destination_recipient_limit">default_destination_recipient_limit</a>)</b></DT><DD> 19322 19323<p> The maximal number of recipients per message for the virtual 19324message delivery transport. This limit is enforced by the queue 19325manager. The message delivery transport name is the first field in 19326the entry in the <a href="master.5.html">master.cf</a> file. </p> 19327 19328<p> Setting this parameter to a value of 1 changes the meaning of 19329<a href="postconf.5.html#virtual_destination_concurrency_limit">virtual_destination_concurrency_limit</a> from concurrency per domain 19330into concurrency per recipient. </p> 19331 19332 19333</DD> 19334 19335<DT><b><a name="virtual_gid_maps">virtual_gid_maps</a> 19336(default: empty)</b></DT><DD> 19337 19338<p> 19339Lookup tables with the per-recipient group ID for <a href="virtual.8.html">virtual(8)</a> mailbox 19340delivery. 19341</p> 19342 19343<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19344It does not apply when mail is delivered with a different mail 19345delivery program. </p> 19346 19347<p> 19348Specify zero or more "type:name" lookup tables, separated by 19349whitespace or comma. Tables will be searched in the specified order 19350until a match is found. 19351</p> 19352 19353<p> 19354In a lookup table, specify a left-hand side of "@domain.tld" to 19355match any user in the specified domain that does not have a specific 19356"user@domain.tld" entry. 19357</p> 19358 19359<p> 19360When a recipient address has an optional address extension 19361(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up 19362the full address first, and when the lookup fails, it looks up the 19363unextended address (user@domain.tld). 19364</p> 19365 19366<p> 19367Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows 19368regular expression substitution of $1 etc. in regular expression 19369lookup tables, because that would open a security hole. 19370</p> 19371 19372<p> 19373Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will 19374silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead 19375it will open the table directly. Before Postfix version 2.2, the 19376<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error. 19377</p> 19378 19379 19380</DD> 19381 19382<DT><b><a name="virtual_mailbox_base">virtual_mailbox_base</a> 19383(default: empty)</b></DT><DD> 19384 19385<p> 19386A prefix that the <a href="virtual.8.html">virtual(8)</a> delivery agent prepends to all pathname 19387results from $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> table lookups. This is a safety 19388measure to ensure that an out of control map doesn't litter the 19389file system with mailboxes. While <a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> could be 19390set to "/", this setting isn't recommended. 19391</p> 19392 19393<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19394It does not apply when mail is delivered with a different mail 19395delivery program. </p> 19396 19397<p> 19398Example: 19399</p> 19400 19401<pre> 19402<a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> = /var/mail 19403</pre> 19404 19405 19406</DD> 19407 19408<DT><b><a name="virtual_mailbox_domains">virtual_mailbox_domains</a> 19409(default: $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a>)</b></DT><DD> 19410 19411<p> Postfix is final destination for the specified list of domains; 19412mail is delivered via the $<a href="postconf.5.html#virtual_transport">virtual_transport</a> mail delivery transport. 19413By default this is the Postfix <a href="virtual.8.html">virtual(8)</a> delivery agent. The SMTP 19414server validates recipient addresses with $<a href="postconf.5.html#virtual_mailbox_maps">virtual_mailbox_maps</a> 19415and rejects mail for non-existent recipients. See also the virtual 19416mailbox domain class in the <a href="ADDRESS_CLASS_README.html">ADDRESS_CLASS_README</a> file. </p> 19417 19418<p> This parameter expects the same syntax as the <a href="postconf.5.html#mydestination">mydestination</a> 19419configuration parameter. </p> 19420 19421<p> 19422This feature is available in Postfix 2.0 and later. The default 19423value is backwards compatible with Postfix version 1.1. 19424</p> 19425 19426 19427</DD> 19428 19429<DT><b><a name="virtual_mailbox_limit">virtual_mailbox_limit</a> 19430(default: 51200000)</b></DT><DD> 19431 19432<p> 19433The maximal size in bytes of an individual <a href="virtual.8.html">virtual(8)</a> mailbox or 19434maildir file, or zero (no limit). </p> 19435 19436<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19437It does not apply when mail is delivered with a different mail 19438delivery program. </p> 19439 19440 19441</DD> 19442 19443<DT><b><a name="virtual_mailbox_lock">virtual_mailbox_lock</a> 19444(default: see "postconf -d" output)</b></DT><DD> 19445 19446<p> 19447How to lock a UNIX-style <a href="virtual.8.html">virtual(8)</a> mailbox before attempting 19448delivery. For a list of available file locking methods, use the 19449"<b>postconf -l</b>" command. 19450</p> 19451 19452<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19453It does not apply when mail is delivered with a different mail 19454delivery program. </p> 19455 19456<p> 19457This setting is ignored with <b>maildir</b> style delivery, because 19458such deliveries are safe without application-level locks. 19459</p> 19460 19461<p> 19462Note 1: the <b>dotlock</b> method requires that the recipient UID 19463or GID has write access to the parent directory of the recipient's 19464mailbox file. 19465</p> 19466 19467<p> 19468Note 2: the default setting of this parameter is system dependent. 19469</p> 19470 19471 19472</DD> 19473 19474<DT><b><a name="virtual_mailbox_maps">virtual_mailbox_maps</a> 19475(default: empty)</b></DT><DD> 19476 19477<p> 19478Optional lookup tables with all valid addresses in the domains that 19479match $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>. 19480</p> 19481 19482<p> 19483Specify zero or more "type:name" lookup tables, separated by 19484whitespace or comma. Tables will be searched in the specified order 19485until a match is found. 19486</p> 19487 19488<p> 19489In a lookup table, specify a left-hand side of "@domain.tld" to 19490match any user in the specified domain that does not have a specific 19491"user@domain.tld" entry. 19492</p> 19493 19494<p> The remainder of this text is specific to the <a href="virtual.8.html">virtual(8)</a> delivery 19495agent. It does not apply when mail is delivered with a different 19496mail delivery program. </p> 19497 19498<p> 19499The <a href="virtual.8.html">virtual(8)</a> delivery agent uses this table to look up the 19500per-recipient mailbox or maildir pathname. If the lookup result 19501ends in a slash ("/"), maildir-style delivery is carried out, 19502otherwise the path is assumed to specify a UNIX-style mailbox file. 19503Note that $<a href="postconf.5.html#virtual_mailbox_base">virtual_mailbox_base</a> is unconditionally prepended to 19504this path. 19505</p> 19506 19507<p> 19508When a recipient address has an optional address extension 19509(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up 19510the full address first, and when the lookup fails, it looks up the 19511unextended address (user@domain.tld). 19512</p> 19513 19514<p> 19515Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows 19516regular expression substitution of $1 etc. in regular expression 19517lookup tables, because that would open a security hole. 19518</p> 19519 19520<p> 19521Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will 19522silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead 19523it will open the table directly. Before Postfix version 2.2, the 19524<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error. 19525</p> 19526 19527 19528</DD> 19529 19530<DT><b><a name="virtual_maps">virtual_maps</a> 19531(default: empty)</b></DT><DD> 19532 19533<p> Optional lookup tables with a) names of domains for which all 19534addresses are aliased to addresses in other local or remote domains, 19535and b) addresses that are aliased to addresses in other local or 19536remote domains. Available before Postfix version 2.0. With Postfix 19537version 2.0 and later, this is replaced by separate controls: <a href="postconf.5.html#virtual_alias_domains">virtual_alias_domains</a> 19538and <a href="postconf.5.html#virtual_alias_maps">virtual_alias_maps</a>. </p> 19539 19540 19541</DD> 19542 19543<DT><b><a name="virtual_minimum_uid">virtual_minimum_uid</a> 19544(default: 100)</b></DT><DD> 19545 19546<p> 19547The minimum user ID value that the <a href="virtual.8.html">virtual(8)</a> delivery agent accepts 19548as a result from $<a href="postconf.5.html#virtual_uid_maps">virtual_uid_maps</a> table lookup. Returned 19549values less than this will be rejected, and the message will be 19550deferred. 19551</p> 19552 19553<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19554It does not apply when mail is delivered with a different mail 19555delivery program. </p> 19556 19557 19558</DD> 19559 19560<DT><b><a name="virtual_transport">virtual_transport</a> 19561(default: virtual)</b></DT><DD> 19562 19563<p> 19564The default mail delivery transport and next-hop destination for 19565final delivery to domains listed with $<a href="postconf.5.html#virtual_mailbox_domains">virtual_mailbox_domains</a>. 19566This information can be overruled with the <a href="transport.5.html">transport(5)</a> table. 19567</p> 19568 19569<p> 19570Specify a string of the form <i>transport:nexthop</i>, where <i>transport</i> 19571is the name of a mail delivery transport defined in <a href="master.5.html">master.cf</a>. 19572The <i>:nexthop</i> destination is optional; its syntax is documented 19573in the manual page of the corresponding delivery agent. 19574</p> 19575 19576<p> 19577This feature is available in Postfix 2.0 and later. 19578</p> 19579 19580 19581</DD> 19582 19583<DT><b><a name="virtual_uid_maps">virtual_uid_maps</a> 19584(default: empty)</b></DT><DD> 19585 19586<p> 19587Lookup tables with the per-recipient user ID that the <a href="virtual.8.html">virtual(8)</a> 19588delivery agent uses while writing to the recipient's mailbox. 19589</p> 19590 19591<p> This parameter is specific to the <a href="virtual.8.html">virtual(8)</a> delivery agent. 19592It does not apply when mail is delivered with a different mail 19593delivery program. </p> 19594 19595<p> 19596Specify zero or more "type:name" lookup tables, separated by 19597whitespace or comma. Tables will be searched in the specified order 19598until a match is found. 19599</p> 19600 19601<p> 19602In a lookup table, specify a left-hand side of "@domain.tld" 19603to match any user in the specified domain that does not have a 19604specific "user@domain.tld" entry. 19605</p> 19606 19607<p> 19608When a recipient address has an optional address extension 19609(user+foo@domain.tld), the <a href="virtual.8.html">virtual(8)</a> delivery agent looks up 19610the full address first, and when the lookup fails, it looks up the 19611unextended address (user@domain.tld). 19612</p> 19613 19614<p> 19615Note 1: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent disallows 19616regular expression substitution of $1 etc. in regular expression 19617lookup tables, because that would open a security hole. 19618</p> 19619 19620<p> 19621Note 2: for security reasons, the <a href="virtual.8.html">virtual(8)</a> delivery agent will 19622silently ignore requests to use the <a href="proxymap.8.html">proxymap(8)</a> server. Instead 19623it will open the table directly. Before Postfix version 2.2, the 19624<a href="virtual.8.html">virtual(8)</a> delivery agent will terminate with a fatal error. 19625</p> 19626 19627 19628</DD> 19629 19630</dl> 19631 19632</body> 19633 19634</html> 19635