1SMTPD(8) System Manager's Manual SMTPD(8)
2
3
4
6 smtpd - Postfix SMTP server
7
9 smtpd [generic Postfix daemon options]
10
11 sendmail -bs
12
14 The SMTP server accepts network connection requests and performs zero
15 or more SMTP transactions per connection. Each received message is
16 piped through the cleanup(8) daemon, and is placed into the incoming
17 queue as one single queue file. For this mode of operation, the pro‐
18 gram expects to be run from the master(8) process manager.
19
20 Alternatively, the SMTP server be can run in stand-alone mode; this is
21 traditionally obtained with "sendmail -bs". When the SMTP server runs
22 stand-alone with non $mail_owner privileges, it receives mail even
23 while the mail system is not running, deposits messages directly into
24 the maildrop queue, and disables the SMTP server's access policies. As
25 of Postfix version 2.3, the SMTP server refuses to receive mail from
26 the network when it runs with non $mail_owner privileges.
27
28 The SMTP server implements a variety of policies for connection
29 requests, and for parameters given to HELO, ETRN, MAIL FROM, VRFY and
30 RCPT TO commands. They are detailed below and in the main.cf configura‐
31 tion file.
32
34 The SMTP server is moderately security-sensitive. It talks to SMTP
35 clients and to DNS servers on the network. The SMTP server can be run
36 chrooted at fixed low privilege.
37
39 RFC 821 (SMTP protocol)
40 RFC 1123 (Host requirements)
41 RFC 1652 (8bit-MIME transport)
42 RFC 1869 (SMTP service extensions)
43 RFC 1870 (Message size declaration)
44 RFC 1985 (ETRN command)
45 RFC 2034 (SMTP enhanced status codes)
46 RFC 2554 (AUTH command)
47 RFC 2821 (SMTP protocol)
48 RFC 2920 (SMTP pipelining)
49 RFC 3207 (STARTTLS command)
50 RFC 3461 (SMTP DSN extension)
51 RFC 3463 (Enhanced status codes)
52 RFC 3848 (ESMTP transmission types)
53 RFC 4409 (Message submission)
54 RFC 4954 (AUTH command)
55 RFC 5321 (SMTP protocol)
56
58 Problems and transactions are logged to syslogd(8).
59
60 Depending on the setting of the notify_classes parameter, the postmas‐
61 ter is notified of bounces, protocol problems, policy violations, and
62 of other trouble.
63
65 Changes to main.cf are picked up automatically, as smtpd(8) processes
66 run for only a limited amount of time. Use the command "postfix reload"
67 to speed up a change.
68
69 The text below provides only a parameter summary. See postconf(5) for
70 more details including examples.
71
73 The following parameters work around implementation errors in other
74 software, and/or allow you to override standards in order to prevent
75 undesirable use.
76
77 broken_sasl_auth_clients (no)
78 Enable inter-operability with remote SMTP clients that implement
79 an obsolete version of the AUTH command (RFC 4954).
80
81 disable_vrfy_command (no)
82 Disable the SMTP VRFY command.
83
84 smtpd_noop_commands (empty)
85 List of commands that the Postfix SMTP server replies to with
86 "250 Ok", without doing any syntax checks and without changing
87 state.
88
89 strict_rfc821_envelopes (no)
90 Require that addresses received in SMTP MAIL FROM and RCPT TO
91 commands are enclosed with <>, and that those addresses do not
92 contain RFC 822 style comments or phrases.
93
94 Available in Postfix version 2.1 and later:
95
96 resolve_null_domain (no)
97 Resolve an address that ends in the "@" null domain as if the
98 local hostname were specified, instead of rejecting the address
99 as invalid.
100
101 smtpd_reject_unlisted_sender (no)
102 Request that the Postfix SMTP server rejects mail from unknown
103 sender addresses, even when no explicit reject_unlisted_sender
104 access restriction is specified.
105
106 smtpd_sasl_exceptions_networks (empty)
107 What remote SMTP clients the Postfix SMTP server will not offer
108 AUTH support to.
109
110 Available in Postfix version 2.2 and later:
111
112 smtpd_discard_ehlo_keyword_address_maps (empty)
113 Lookup tables, indexed by the remote SMTP client address, with
114 case insensitive lists of EHLO keywords (pipelining, starttls,
115 auth, etc.) that the Postfix SMTP server will not send in the
116 EHLO response to a remote SMTP client.
117
118 smtpd_discard_ehlo_keywords (empty)
119 A case insensitive list of EHLO keywords (pipelining, starttls,
120 auth, etc.) that the Postfix SMTP server will not send in the
121 EHLO response to a remote SMTP client.
122
123 smtpd_delay_open_until_valid_rcpt (yes)
124 Postpone the start of an SMTP mail transaction until a valid
125 RCPT TO command is received.
126
127 Available in Postfix version 2.3 and later:
128
129 smtpd_tls_always_issue_session_ids (yes)
130 Force the Postfix SMTP server to issue a TLS session id, even
131 when TLS session caching is turned off (smtpd_tls_ses‐
132 sion_cache_database is empty).
133
134 Available in Postfix version 2.6 and later:
135
136 tcp_windowsize (0)
137 An optional workaround for routers that break TCP window scal‐
138 ing.
139
140 Available in Postfix version 2.7 and later:
141
142 smtpd_command_filter (empty)
143 A mechanism to transform commands from remote SMTP clients.
144
145 Available in Postfix version 2.9 and later:
146
147 smtpd_per_record_deadline (normal: no, overload: yes)
148 Change the behavior of the smtpd_timeout time limit, from a time
149 limit per read or write system call, to a time limit to send or
150 receive a complete record (an SMTP command line, SMTP response
151 line, SMTP message content line, or TLS protocol message).
152
154 See the ADDRESS_REWRITING_README document for a detailed discussion of
155 Postfix address rewriting.
156
157 receive_override_options (empty)
158 Enable or disable recipient validation, built-in content filter‐
159 ing, or address mapping.
160
161 Available in Postfix version 2.2 and later:
162
163 local_header_rewrite_clients (permit_inet_interfaces)
164 Rewrite message header addresses in mail from these clients and
165 update incomplete addresses with the domain name in $myorigin or
166 $mydomain; either don't rewrite message headers from other
167 clients at all, or rewrite message headers and update incomplete
168 addresses with the domain specified in the remote_header_re‐
169 write_domain parameter.
170
172 Available in Postfix version 2.10 and later:
173
174 smtpd_upstream_proxy_protocol (empty)
175 The name of the proxy protocol used by an optional before-smtpd
176 proxy agent.
177
178 smtpd_upstream_proxy_timeout (5s)
179 The time limit for the proxy protocol specified with the
180 smtpd_upstream_proxy_protocol parameter.
181
183 As of version 1.0, Postfix can be configured to send new mail to an
184 external content filter AFTER the mail is queued. This content filter
185 is expected to inject mail back into a (Postfix or other) MTA for fur‐
186 ther delivery. See the FILTER_README document for details.
187
188 content_filter (empty)
189 After the message is queued, send the entire message to the
190 specified transport:destination.
191
193 As of version 2.1, the Postfix SMTP server can be configured to send
194 incoming mail to a real-time SMTP-based content filter BEFORE mail is
195 queued. This content filter is expected to inject mail back into Post‐
196 fix. See the SMTPD_PROXY_README document for details on how to config‐
197 ure and operate this feature.
198
199 smtpd_proxy_filter (empty)
200 The hostname and TCP port of the mail filtering proxy server.
201
202 smtpd_proxy_ehlo ($myhostname)
203 How the Postfix SMTP server announces itself to the proxy fil‐
204 ter.
205
206 smtpd_proxy_options (empty)
207 List of options that control how the Postfix SMTP server commu‐
208 nicates with a before-queue content filter.
209
210 smtpd_proxy_timeout (100s)
211 The time limit for connecting to a proxy filter and for sending
212 or receiving information.
213
215 As of version 2.3, Postfix supports the Sendmail version 8 Milter (mail
216 filter) protocol. These content filters run outside Postfix. They can
217 inspect the SMTP command stream and the message content, and can
218 request modifications before mail is queued. For details see the MIL‐
219 TER_README document.
220
221 smtpd_milters (empty)
222 A list of Milter (mail filter) applications for new mail that
223 arrives via the Postfix smtpd(8) server.
224
225 milter_protocol (6)
226 The mail filter protocol version and optional protocol exten‐
227 sions for communication with a Milter application; prior to
228 Postfix 2.6 the default protocol is 2.
229
230 milter_default_action (tempfail)
231 The default action when a Milter (mail filter) application is
232 unavailable or mis-configured.
233
234 milter_macro_daemon_name ($myhostname)
235 The {daemon_name} macro value for Milter (mail filter) applica‐
236 tions.
237
238 milter_macro_v ($mail_name $mail_version)
239 The {v} macro value for Milter (mail filter) applications.
240
241 milter_connect_timeout (30s)
242 The time limit for connecting to a Milter (mail filter) applica‐
243 tion, and for negotiating protocol options.
244
245 milter_command_timeout (30s)
246 The time limit for sending an SMTP command to a Milter (mail
247 filter) application, and for receiving the response.
248
249 milter_content_timeout (300s)
250 The time limit for sending message content to a Milter (mail
251 filter) application, and for receiving the response.
252
253 milter_connect_macros (see 'postconf -d' output)
254 The macros that are sent to Milter (mail filter) applications
255 after completion of an SMTP connection.
256
257 milter_helo_macros (see 'postconf -d' output)
258 The macros that are sent to Milter (mail filter) applications
259 after the SMTP HELO or EHLO command.
260
261 milter_mail_macros (see 'postconf -d' output)
262 The macros that are sent to Milter (mail filter) applications
263 after the SMTP MAIL FROM command.
264
265 milter_rcpt_macros (see 'postconf -d' output)
266 The macros that are sent to Milter (mail filter) applications
267 after the SMTP RCPT TO command.
268
269 milter_data_macros (see 'postconf -d' output)
270 The macros that are sent to version 4 or higher Milter (mail
271 filter) applications after the SMTP DATA command.
272
273 milter_unknown_command_macros (see 'postconf -d' output)
274 The macros that are sent to version 3 or higher Milter (mail
275 filter) applications after an unknown SMTP command.
276
277 milter_end_of_header_macros (see 'postconf -d' output)
278 The macros that are sent to Milter (mail filter) applications
279 after the end of the message header.
280
281 milter_end_of_data_macros (see 'postconf -d' output)
282 The macros that are sent to Milter (mail filter) applications
283 after the message end-of-data.
284
286 The following parameters are applicable for both built-in and external
287 content filters.
288
289 Available in Postfix version 2.1 and later:
290
291 receive_override_options (empty)
292 Enable or disable recipient validation, built-in content filter‐
293 ing, or address mapping.
294
296 The following parameters are applicable for both before-queue and
297 after-queue content filtering.
298
299 Available in Postfix version 2.1 and later:
300
301 smtpd_authorized_xforward_hosts (empty)
302 What remote SMTP clients are allowed to use the XFORWARD fea‐
303 ture.
304
306 Postfix SASL support (RFC 4954) can be used to authenticate remote SMTP
307 clients to the Postfix SMTP server, and to authenticate the Postfix
308 SMTP client to a remote SMTP server. See the SASL_README document for
309 details.
310
311 broken_sasl_auth_clients (no)
312 Enable inter-operability with remote SMTP clients that implement
313 an obsolete version of the AUTH command (RFC 4954).
314
315 smtpd_sasl_auth_enable (no)
316 Enable SASL authentication in the Postfix SMTP server.
317
318 smtpd_sasl_local_domain (empty)
319 The name of the Postfix SMTP server's local SASL authentication
320 realm.
321
322 smtpd_sasl_security_options (noanonymous)
323 Postfix SMTP server SASL security options; as of Postfix 2.3 the
324 list of available features depends on the SASL server implemen‐
325 tation that is selected with smtpd_sasl_type.
326
327 smtpd_sender_login_maps (empty)
328 Optional lookup table with the SASL login names that own sender
329 (MAIL FROM) addresses.
330
331 Available in Postfix version 2.1 and later:
332
333 smtpd_sasl_exceptions_networks (empty)
334 What remote SMTP clients the Postfix SMTP server will not offer
335 AUTH support to.
336
337 Available in Postfix version 2.1 and 2.2:
338
339 smtpd_sasl_application_name (smtpd)
340 The application name that the Postfix SMTP server uses for SASL
341 server initialization.
342
343 Available in Postfix version 2.3 and later:
344
345 smtpd_sasl_authenticated_header (no)
346 Report the SASL authenticated user name in the smtpd(8) Received
347 message header.
348
349 smtpd_sasl_path (smtpd)
350 Implementation-specific information that the Postfix SMTP server
351 passes through to the SASL plug-in implementation that is
352 selected with smtpd_sasl_type.
353
354 smtpd_sasl_type (cyrus)
355 The SASL plug-in type that the Postfix SMTP server should use
356 for authentication.
357
358 Available in Postfix version 2.5 and later:
359
360 cyrus_sasl_config_path (empty)
361 Search path for Cyrus SASL application configuration files, cur‐
362 rently used only to locate the $smtpd_sasl_path.conf file.
363
365 Detailed information about STARTTLS configuration may be found in the
366 TLS_README document.
367
368 smtpd_tls_security_level (empty)
369 The SMTP TLS security level for the Postfix SMTP server; when a
370 non-empty value is specified, this overrides the obsolete param‐
371 eters smtpd_use_tls and smtpd_enforce_tls.
372
373 smtpd_sasl_tls_security_options ($smtpd_sasl_security_options)
374 The SASL authentication security options that the Postfix SMTP
375 server uses for TLS encrypted SMTP sessions.
376
377 smtpd_starttls_timeout (see 'postconf -d' output)
378 The time limit for Postfix SMTP server write and read operations
379 during TLS startup and shutdown handshake procedures.
380
381 smtpd_tls_CAfile (empty)
382 A file containing (PEM format) CA certificates of root CAs
383 trusted to sign either remote SMTP client certificates or inter‐
384 mediate CA certificates.
385
386 smtpd_tls_CApath (empty)
387 A directory containing (PEM format) CA certificates of root CAs
388 trusted to sign either remote SMTP client certificates or inter‐
389 mediate CA certificates.
390
391 smtpd_tls_always_issue_session_ids (yes)
392 Force the Postfix SMTP server to issue a TLS session id, even
393 when TLS session caching is turned off (smtpd_tls_ses‐
394 sion_cache_database is empty).
395
396 smtpd_tls_ask_ccert (no)
397 Ask a remote SMTP client for a client certificate.
398
399 smtpd_tls_auth_only (no)
400 When TLS encryption is optional in the Postfix SMTP server, do
401 not announce or accept SASL authentication over unencrypted con‐
402 nections.
403
404 smtpd_tls_ccert_verifydepth (9)
405 The verification depth for remote SMTP client certificates.
406
407 smtpd_tls_cert_file (empty)
408 File with the Postfix SMTP server RSA certificate in PEM format.
409
410 smtpd_tls_exclude_ciphers (empty)
411 List of ciphers or cipher types to exclude from the SMTP server
412 cipher list at all TLS security levels.
413
414 smtpd_tls_dcert_file (empty)
415 File with the Postfix SMTP server DSA certificate in PEM format.
416
417 smtpd_tls_dh1024_param_file (empty)
418 File with DH parameters that the Postfix SMTP server should use
419 with EDH ciphers.
420
421 smtpd_tls_dh512_param_file (empty)
422 File with DH parameters that the Postfix SMTP server should use
423 with EDH ciphers.
424
425 smtpd_tls_dkey_file ($smtpd_tls_dcert_file)
426 File with the Postfix SMTP server DSA private key in PEM format.
427
428 smtpd_tls_key_file ($smtpd_tls_cert_file)
429 File with the Postfix SMTP server RSA private key in PEM format.
430
431 smtpd_tls_loglevel (0)
432 Enable additional Postfix SMTP server logging of TLS activity.
433
434 smtpd_tls_mandatory_ciphers (medium)
435 The minimum TLS cipher grade that the Postfix SMTP server will
436 use with mandatory TLS encryption.
437
438 smtpd_tls_mandatory_exclude_ciphers (empty)
439 Additional list of ciphers or cipher types to exclude from the
440 Postfix SMTP server cipher list at mandatory TLS security lev‐
441 els.
442
443 smtpd_tls_mandatory_protocols (!SSLv2)
444 The SSL/TLS protocols accepted by the Postfix SMTP server with
445 mandatory TLS encryption.
446
447 smtpd_tls_received_header (no)
448 Request that the Postfix SMTP server produces Received: message
449 headers that include information about the protocol and cipher
450 used, as well as the remote SMTP client CommonName and client
451 certificate issuer CommonName.
452
453 smtpd_tls_req_ccert (no)
454 With mandatory TLS encryption, require a trusted remote SMTP
455 client certificate in order to allow TLS connections to proceed.
456
457 smtpd_tls_session_cache_database (empty)
458 Name of the file containing the optional Postfix SMTP server TLS
459 session cache.
460
461 smtpd_tls_session_cache_timeout (3600s)
462 The expiration time of Postfix SMTP server TLS session cache
463 information.
464
465 smtpd_tls_wrappermode (no)
466 Run the Postfix SMTP server in the non-standard "wrapper" mode,
467 instead of using the STARTTLS command.
468
469 tls_daemon_random_bytes (32)
470 The number of pseudo-random bytes that an smtp(8) or smtpd(8)
471 process requests from the tlsmgr(8) server in order to seed its
472 internal pseudo random number generator (PRNG).
473
474 tls_high_cipherlist (ALL:!EXPORT:!LOW:!MEDIUM:+RC4:@STRENGTH)
475 The OpenSSL cipherlist for "HIGH" grade ciphers.
476
477 tls_medium_cipherlist (ALL:!EXPORT:!LOW:+RC4:@STRENGTH)
478 The OpenSSL cipherlist for "MEDIUM" or higher grade ciphers.
479
480 tls_low_cipherlist (ALL:!EXPORT:+RC4:@STRENGTH)
481 The OpenSSL cipherlist for "LOW" or higher grade ciphers.
482
483 tls_export_cipherlist (ALL:+RC4:@STRENGTH)
484 The OpenSSL cipherlist for "EXPORT" or higher grade ciphers.
485
486 tls_null_cipherlist (eNULL:!aNULL)
487 The OpenSSL cipherlist for "NULL" grade ciphers that provide
488 authentication without encryption.
489
490 Available in Postfix version 2.5 and later:
491
492 smtpd_tls_fingerprint_digest (md5)
493 The message digest algorithm to construct remote SMTP client-
494 certificate fingerprints or public key fingerprints (Postfix 2.9
495 and later) for check_ccert_access and permit_tls_clientcerts.
496
497 Available in Postfix version 2.6 and later:
498
499 smtpd_tls_protocols (empty)
500 List of TLS protocols that the Postfix SMTP server will exclude
501 or include with opportunistic TLS encryption.
502
503 smtpd_tls_ciphers (export)
504 The minimum TLS cipher grade that the Postfix SMTP server will
505 use with opportunistic TLS encryption.
506
507 smtpd_tls_eccert_file (empty)
508 File with the Postfix SMTP server ECDSA certificate in PEM for‐
509 mat.
510
511 smtpd_tls_eckey_file ($smtpd_tls_eccert_file)
512 File with the Postfix SMTP server ECDSA private key in PEM for‐
513 mat.
514
515 smtpd_tls_eecdh_grade (see 'postconf -d' output)
516 The Postfix SMTP server security grade for ephemeral elliptic-
517 curve Diffie-Hellman (EECDH) key exchange.
518
519 tls_eecdh_strong_curve (prime256v1)
520 The elliptic curve used by the Postfix SMTP server for sensibly
521 strong ephemeral ECDH key exchange.
522
523 tls_eecdh_ultra_curve (secp384r1)
524 The elliptic curve used by the Postfix SMTP server for maximally
525 strong ephemeral ECDH key exchange.
526
527 Available in Postfix version 2.8 and later:
528
529 tls_preempt_cipherlist (no)
530 With SSLv3 and later, use the Postfix SMTP server's cipher pref‐
531 erence order instead of the remote client's cipher preference
532 order.
533
534 tls_disable_workarounds (see 'postconf -d' output)
535 List or bit-mask of OpenSSL bug work-arounds to disable.
536
538 The following configuration parameters exist for compatibility with
539 Postfix versions before 2.3. Support for these will be removed in a
540 future release.
541
542 smtpd_use_tls (no)
543 Opportunistic TLS: announce STARTTLS support to remote SMTP
544 clients, but do not require that clients use TLS encryption.
545
546 smtpd_enforce_tls (no)
547 Mandatory TLS: announce STARTTLS support to remote SMTP clients,
548 and require that clients use TLS encryption.
549
550 smtpd_tls_cipherlist (empty)
551 Obsolete Postfix < 2.3 control for the Postfix SMTP server TLS
552 cipher list.
553
555 With VERP style delivery, each recipient of a message receives a cus‐
556 tomized copy of the message with his/her own recipient address encoded
557 in the envelope sender address. The VERP_README file describes config‐
558 uration and operation details of Postfix support for variable envelope
559 return path addresses. VERP style delivery is requested with the SMTP
560 XVERP command or with the "sendmail -V" command-line option and is
561 available in Postfix version 1.1 and later.
562
563 default_verp_delimiters (+=)
564 The two default VERP delimiter characters.
565
566 verp_delimiter_filter (-=+)
567 The characters Postfix accepts as VERP delimiter characters on
568 the Postfix sendmail(1) command line and in SMTP commands.
569
570 Available in Postfix version 1.1 and 2.0:
571
572 authorized_verp_clients ($mynetworks)
573 What remote SMTP clients are allowed to specify the XVERP com‐
574 mand.
575
576 Available in Postfix version 2.1 and later:
577
578 smtpd_authorized_verp_clients ($authorized_verp_clients)
579 What remote SMTP clients are allowed to specify the XVERP com‐
580 mand.
581
583 The DEBUG_README document describes how to debug parts of the Postfix
584 mail system. The methods vary from making the software log a lot of
585 detail, to running some daemon processes under control of a call tracer
586 or debugger.
587
588 debug_peer_level (2)
589 The increment in verbose logging level when a remote client or
590 server matches a pattern in the debug_peer_list parameter.
591
592 debug_peer_list (empty)
593 Optional list of remote client or server hostname or network
594 address patterns that cause the verbose logging level to
595 increase by the amount specified in $debug_peer_level.
596
597 error_notice_recipient (postmaster)
598 The recipient of postmaster notifications about mail delivery
599 problems that are caused by policy, resource, software or proto‐
600 col errors.
601
602 internal_mail_filter_classes (empty)
603 What categories of Postfix-generated mail are subject to before-
604 queue content inspection by non_smtpd_milters, header_checks and
605 body_checks.
606
607 notify_classes (resource, software)
608 The list of error classes that are reported to the postmaster.
609
610 smtpd_reject_footer (empty)
611 Optional information that is appended after each Postfix SMTP
612 server 4XX or 5XX response.
613
614 soft_bounce (no)
615 Safety net to keep mail queued that would otherwise be returned
616 to the sender.
617
618 Available in Postfix version 2.1 and later:
619
620 smtpd_authorized_xclient_hosts (empty)
621 What remote SMTP clients are allowed to use the XCLIENT feature.
622
623 Available in Postfix version 2.10 and later:
624
625 smtpd_log_access_permit_actions (empty)
626 Enable logging of the named "permit" actions in SMTP server
627 access lists.
628
630 As of Postfix version 2.0, the SMTP server rejects mail for unknown
631 recipients. This prevents the mail queue from clogging up with undeliv‐
632 erable MAILER-DAEMON messages. Additional information on this topic is
633 in the LOCAL_RECIPIENT_README and ADDRESS_CLASS_README documents.
634
635 show_user_unknown_table_name (yes)
636 Display the name of the recipient table in the "User unknown"
637 responses.
638
639 canonical_maps (empty)
640 Optional address mapping lookup tables for message headers and
641 envelopes.
642
643 recipient_canonical_maps (empty)
644 Optional address mapping lookup tables for envelope and header
645 recipient addresses.
646
647 Parameters concerning known/unknown local recipients:
648
649 mydestination ($myhostname, localhost.$mydomain, localhost)
650 The list of domains that are delivered via the $local_transport
651 mail delivery transport.
652
653 inet_interfaces (all)
654 The network interface addresses that this mail system receives
655 mail on.
656
657 proxy_interfaces (empty)
658 The network interface addresses that this mail system receives
659 mail on by way of a proxy or network address translation unit.
660
661 inet_protocols (all)
662 The Internet protocols Postfix will attempt to use when making
663 or accepting connections.
664
665 local_recipient_maps (proxy:unix:passwd.byname $alias_maps)
666 Lookup tables with all names or addresses of local recipients: a
667 recipient address is local when its domain matches $mydestina‐
668 tion, $inet_interfaces or $proxy_interfaces.
669
670 unknown_local_recipient_reject_code (550)
671 The numerical Postfix SMTP server response code when a recipient
672 address is local, and $local_recipient_maps specifies a list of
673 lookup tables that does not match the recipient.
674
675 Parameters concerning known/unknown recipients of relay destinations:
676
677 relay_domains ($mydestination)
678 What destination domains (and subdomains thereof) this system
679 will relay mail to.
680
681 relay_recipient_maps (empty)
682 Optional lookup tables with all valid addresses in the domains
683 that match $relay_domains.
684
685 unknown_relay_recipient_reject_code (550)
686 The numerical Postfix SMTP server reply code when a recipient
687 address matches $relay_domains, and relay_recipient_maps speci‐
688 fies a list of lookup tables that does not match the recipient
689 address.
690
691 Parameters concerning known/unknown recipients in virtual alias
692 domains:
693
694 virtual_alias_domains ($virtual_alias_maps)
695 Postfix is final destination for the specified list of virtual
696 alias domains, that is, domains for which all addresses are
697 aliased to addresses in other local or remote domains.
698
699 virtual_alias_maps ($virtual_maps)
700 Optional lookup tables that alias specific mail addresses or
701 domains to other local or remote address.
702
703 unknown_virtual_alias_reject_code (550)
704 The Postfix SMTP server reply code when a recipient address
705 matches $virtual_alias_domains, and $virtual_alias_maps speci‐
706 fies a list of lookup tables that does not match the recipient
707 address.
708
709 Parameters concerning known/unknown recipients in virtual mailbox
710 domains:
711
712 virtual_mailbox_domains ($virtual_mailbox_maps)
713 Postfix is final destination for the specified list of domains;
714 mail is delivered via the $virtual_transport mail delivery
715 transport.
716
717 virtual_mailbox_maps (empty)
718 Optional lookup tables with all valid addresses in the domains
719 that match $virtual_mailbox_domains.
720
721 unknown_virtual_mailbox_reject_code (550)
722 The Postfix SMTP server reply code when a recipient address
723 matches $virtual_mailbox_domains, and $virtual_mailbox_maps
724 specifies a list of lookup tables that does not match the recip‐
725 ient address.
726
728 The following parameters limit resource usage by the SMTP server and/or
729 control client request rates.
730
731 line_length_limit (2048)
732 Upon input, long lines are chopped up into pieces of at most
733 this length; upon delivery, long lines are reconstructed.
734
735 queue_minfree (0)
736 The minimal amount of free space in bytes in the queue file sys‐
737 tem that is needed to receive mail.
738
739 message_size_limit (10240000)
740 The maximal size in bytes of a message, including envelope
741 information.
742
743 smtpd_recipient_limit (1000)
744 The maximal number of recipients that the Postfix SMTP server
745 accepts per message delivery request.
746
747 smtpd_timeout (normal: 300s, overload: 10s)
748 The time limit for sending a Postfix SMTP server response and
749 for receiving a remote SMTP client request.
750
751 smtpd_history_flush_threshold (100)
752 The maximal number of lines in the Postfix SMTP server command
753 history before it is flushed upon receipt of EHLO, RSET, or end
754 of DATA.
755
756 Available in Postfix version 2.3 and later:
757
758 smtpd_peername_lookup (yes)
759 Attempt to look up the remote SMTP client hostname, and verify
760 that the name matches the client IP address.
761
762 The per SMTP client connection count and request rate limits are imple‐
763 mented in co-operation with the anvil(8) service, and are available in
764 Postfix version 2.2 and later.
765
766 smtpd_client_connection_count_limit (50)
767 How many simultaneous connections any client is allowed to make
768 to this service.
769
770 smtpd_client_connection_rate_limit (0)
771 The maximal number of connection attempts any client is allowed
772 to make to this service per time unit.
773
774 smtpd_client_message_rate_limit (0)
775 The maximal number of message delivery requests that any client
776 is allowed to make to this service per time unit, regardless of
777 whether or not Postfix actually accepts those messages.
778
779 smtpd_client_recipient_rate_limit (0)
780 The maximal number of recipient addresses that any client is
781 allowed to send to this service per time unit, regardless of
782 whether or not Postfix actually accepts those recipients.
783
784 smtpd_client_event_limit_exceptions ($mynetworks)
785 Clients that are excluded from smtpd_client_*_count/rate_limit
786 restrictions.
787
788 Available in Postfix version 2.3 and later:
789
790 smtpd_client_new_tls_session_rate_limit (0)
791 The maximal number of new (i.e., uncached) TLS sessions that a
792 remote SMTP client is allowed to negotiate with this service per
793 time unit.
794
795 Available in Postfix version 2.9 and later:
796
797 smtpd_per_record_deadline (normal: no, overload: yes)
798 Change the behavior of the smtpd_timeout time limit, from a time
799 limit per read or write system call, to a time limit to send or
800 receive a complete record (an SMTP command line, SMTP response
801 line, SMTP message content line, or TLS protocol message).
802
804 When a remote SMTP client makes errors, the Postfix SMTP server can
805 insert delays before responding. This can help to slow down run-away
806 software. The behavior is controlled by an error counter that counts
807 the number of errors within an SMTP session that a client makes without
808 delivering mail.
809
810 smtpd_error_sleep_time (1s)
811 With Postfix version 2.1 and later: the SMTP server response
812 delay after a client has made more than $smtpd_soft_error_limit
813 errors, and fewer than $smtpd_hard_error_limit errors, without
814 delivering mail.
815
816 smtpd_soft_error_limit (10)
817 The number of errors a remote SMTP client is allowed to make
818 without delivering mail before the Postfix SMTP server slows
819 down all its responses.
820
821 smtpd_hard_error_limit (normal: 20, overload: 1)
822 The maximal number of errors a remote SMTP client is allowed to
823 make without delivering mail.
824
825 smtpd_junk_command_limit (normal: 100, overload: 1)
826 The number of junk commands (NOOP, VRFY, ETRN or RSET) that a
827 remote SMTP client can send before the Postfix SMTP server
828 starts to increment the error counter with each junk command.
829
830 Available in Postfix version 2.1 and later:
831
832 smtpd_recipient_overshoot_limit (1000)
833 The number of recipients that a remote SMTP client can send in
834 excess of the limit specified with $smtpd_recipient_limit,
835 before the Postfix SMTP server increments the per-session error
836 count for each excess recipient.
837
839 As of version 2.1, Postfix can be configured to delegate access policy
840 decisions to an external server that runs outside Postfix. See the
841 file SMTPD_POLICY_README for more information.
842
843 smtpd_policy_service_max_idle (300s)
844 The time after which an idle SMTPD policy service connection is
845 closed.
846
847 smtpd_policy_service_max_ttl (1000s)
848 The time after which an active SMTPD policy service connection
849 is closed.
850
851 smtpd_policy_service_timeout (100s)
852 The time limit for connecting to, writing to or receiving from a
853 delegated SMTPD policy server.
854
856 The SMTPD_ACCESS_README document gives an introduction to all the SMTP
857 server access control features.
858
859 smtpd_delay_reject (yes)
860 Wait until the RCPT TO command before evaluating
861 $smtpd_client_restrictions, $smtpd_helo_restrictions and
862 $smtpd_sender_restrictions, or wait until the ETRN command
863 before evaluating $smtpd_client_restrictions and
864 $smtpd_helo_restrictions.
865
866 parent_domain_matches_subdomains (see 'postconf -d' output)
867 What Postfix features match subdomains of "domain.tld" automati‐
868 cally, instead of requiring an explicit ".domain.tld" pattern.
869
870 smtpd_client_restrictions (empty)
871 Optional restrictions that the Postfix SMTP server applies in
872 the context of a client connection request.
873
874 smtpd_helo_required (no)
875 Require that a remote SMTP client introduces itself with the
876 HELO or EHLO command before sending the MAIL command or other
877 commands that require EHLO negotiation.
878
879 smtpd_helo_restrictions (empty)
880 Optional restrictions that the Postfix SMTP server applies in
881 the context of a client HELO command.
882
883 smtpd_sender_restrictions (empty)
884 Optional restrictions that the Postfix SMTP server applies in
885 the context of a client MAIL FROM command.
886
887 smtpd_recipient_restrictions (see 'postconf -d' output)
888 Optional restrictions that the Postfix SMTP server applies in
889 the context of a client RCPT TO command, after
890 smtpd_relay_restrictions.
891
892 smtpd_etrn_restrictions (empty)
893 Optional restrictions that the Postfix SMTP server applies in
894 the context of a client ETRN command.
895
896 allow_untrusted_routing (no)
897 Forward mail with sender-specified routing
898 (user[@%!]remote[@%!]site) from untrusted clients to destina‐
899 tions matching $relay_domains.
900
901 smtpd_restriction_classes (empty)
902 User-defined aliases for groups of access restrictions.
903
904 smtpd_null_access_lookup_key (<>)
905 The lookup key to be used in SMTP access(5) tables instead of
906 the null sender address.
907
908 permit_mx_backup_networks (empty)
909 Restrict the use of the permit_mx_backup SMTP access feature to
910 only domains whose primary MX hosts match the listed networks.
911
912 Available in Postfix version 2.0 and later:
913
914 smtpd_data_restrictions (empty)
915 Optional access restrictions that the Postfix SMTP server
916 applies in the context of the SMTP DATA command.
917
918 smtpd_expansion_filter (see 'postconf -d' output)
919 What characters are allowed in $name expansions of RBL reply
920 templates.
921
922 Available in Postfix version 2.1 and later:
923
924 smtpd_reject_unlisted_sender (no)
925 Request that the Postfix SMTP server rejects mail from unknown
926 sender addresses, even when no explicit reject_unlisted_sender
927 access restriction is specified.
928
929 smtpd_reject_unlisted_recipient (yes)
930 Request that the Postfix SMTP server rejects mail for unknown
931 recipient addresses, even when no explicit
932 reject_unlisted_recipient access restriction is specified.
933
934 Available in Postfix version 2.2 and later:
935
936 smtpd_end_of_data_restrictions (empty)
937 Optional access restrictions that the Postfix SMTP server
938 applies in the context of the SMTP END-OF-DATA command.
939
940 Available in Postfix version 2.10 and later:
941
942 smtpd_relay_restrictions (permit_mynetworks, reject_unauth_destination)
943 Access restrictions for mail relay control that the Postfix SMTP
944 server applies in the context of the RCPT TO command, before
945 smtpd_recipient_restrictions.
946
948 Postfix version 2.1 introduces sender and recipient address verifica‐
949 tion. This feature is implemented by sending probe email messages that
950 are not actually delivered. This feature is requested via the
951 reject_unverified_sender and reject_unverified_recipient access
952 restrictions. The status of verification probes is maintained by the
953 verify(8) server. See the file ADDRESS_VERIFICATION_README for infor‐
954 mation about how to configure and operate the Postfix sender/recipient
955 address verification service.
956
957 address_verify_poll_count (normal: 3, overload: 1)
958 How many times to query the verify(8) service for the completion
959 of an address verification request in progress.
960
961 address_verify_poll_delay (3s)
962 The delay between queries for the completion of an address veri‐
963 fication request in progress.
964
965 address_verify_sender ($double_bounce_sender)
966 The sender address to use in address verification probes; prior
967 to Postfix 2.5 the default was "postmaster".
968
969 unverified_sender_reject_code (450)
970 The numerical Postfix SMTP server response code when a recipient
971 address is rejected by the reject_unverified_sender restriction.
972
973 unverified_recipient_reject_code (450)
974 The numerical Postfix SMTP server response when a recipient
975 address is rejected by the reject_unverified_recipient restric‐
976 tion.
977
978 Available in Postfix version 2.6 and later:
979
980 unverified_sender_defer_code (450)
981 The numerical Postfix SMTP server response code when a sender
982 address probe fails due to a temporary error condition.
983
984 unverified_recipient_defer_code (450)
985 The numerical Postfix SMTP server response when a recipient
986 address probe fails due to a temporary error condition.
987
988 unverified_sender_reject_reason (empty)
989 The Postfix SMTP server's reply when rejecting mail with
990 reject_unverified_sender.
991
992 unverified_recipient_reject_reason (empty)
993 The Postfix SMTP server's reply when rejecting mail with
994 reject_unverified_recipient.
995
996 unverified_sender_tempfail_action ($reject_tempfail_action)
997 The Postfix SMTP server's action when reject_unverified_sender
998 fails due to a temporary error condition.
999
1000 unverified_recipient_tempfail_action ($reject_tempfail_action)
1001 The Postfix SMTP server's action when reject_unverified_recipi‐
1002 ent fails due to a temporary error condition.
1003
1004 Available with Postfix 2.9 and later:
1005
1006 address_verify_sender_ttl (0s)
1007 The time between changes in the time-dependent portion of
1008 address verification probe sender addresses.
1009
1011 The following parameters control numerical SMTP reply codes and/or text
1012 responses.
1013
1014 access_map_reject_code (554)
1015 The numerical Postfix SMTP server response code for an access(5)
1016 map "reject" action.
1017
1018 defer_code (450)
1019 The numerical Postfix SMTP server response code when a remote
1020 SMTP client request is rejected by the "defer" restriction.
1021
1022 invalid_hostname_reject_code (501)
1023 The numerical Postfix SMTP server response code when the client
1024 HELO or EHLO command parameter is rejected by the
1025 reject_invalid_helo_hostname restriction.
1026
1027 maps_rbl_reject_code (554)
1028 The numerical Postfix SMTP server response code when a remote
1029 SMTP client request is blocked by the reject_rbl_client,
1030 reject_rhsbl_client, reject_rhsbl_reverse_client,
1031 reject_rhsbl_sender or reject_rhsbl_recipient restriction.
1032
1033 non_fqdn_reject_code (504)
1034 The numerical Postfix SMTP server reply code when a client
1035 request is rejected by the reject_non_fqdn_helo_hostname,
1036 reject_non_fqdn_sender or reject_non_fqdn_recipient restriction.
1037
1038 plaintext_reject_code (450)
1039 The numerical Postfix SMTP server response code when a request
1040 is rejected by the reject_plaintext_session restriction.
1041
1042 reject_code (554)
1043 The numerical Postfix SMTP server response code when a remote
1044 SMTP client request is rejected by the "reject" restriction.
1045
1046 relay_domains_reject_code (554)
1047 The numerical Postfix SMTP server response code when a client
1048 request is rejected by the reject_unauth_destination recipient
1049 restriction.
1050
1051 unknown_address_reject_code (450)
1052 The numerical Postfix SMTP server response code when a sender or
1053 recipient address is rejected by the
1054 reject_unknown_sender_domain or reject_unknown_recipient_domain
1055 restriction.
1056
1057 unknown_client_reject_code (450)
1058 The numerical Postfix SMTP server response code when a client
1059 without valid address <=> name mapping is rejected by the
1060 reject_unknown_client_hostname restriction.
1061
1062 unknown_hostname_reject_code (450)
1063 The numerical Postfix SMTP server response code when the host‐
1064 name specified with the HELO or EHLO command is rejected by the
1065 reject_unknown_helo_hostname restriction.
1066
1067 Available in Postfix version 2.0 and later:
1068
1069 default_rbl_reply (see 'postconf -d' output)
1070 The default Postfix SMTP server response template for a request
1071 that is rejected by an RBL-based restriction.
1072
1073 multi_recipient_bounce_reject_code (550)
1074 The numerical Postfix SMTP server response code when a remote
1075 SMTP client request is blocked by the reject_multi_recipi‐
1076 ent_bounce restriction.
1077
1078 rbl_reply_maps (empty)
1079 Optional lookup tables with RBL response templates.
1080
1081 Available in Postfix version 2.6 and later:
1082
1083 access_map_defer_code (450)
1084 The numerical Postfix SMTP server response code for an access(5)
1085 map "defer" action, including "defer_if_permit" or
1086 "defer_if_reject".
1087
1088 reject_tempfail_action (defer_if_permit)
1089 The Postfix SMTP server's action when a reject-type restriction
1090 fails due to a temporary error condition.
1091
1092 unknown_helo_hostname_tempfail_action ($reject_tempfail_action)
1093 The Postfix SMTP server's action when reject_unknown_helo_host‐
1094 name fails due to an temporary error condition.
1095
1096 unknown_address_tempfail_action ($reject_tempfail_action)
1097 The Postfix SMTP server's action when
1098 reject_unknown_sender_domain or reject_unknown_recipient_domain
1099 fail due to a temporary error condition.
1100
1102 config_directory (see 'postconf -d' output)
1103 The default location of the Postfix main.cf and master.cf con‐
1104 figuration files.
1105
1106 daemon_timeout (18000s)
1107 How much time a Postfix daemon process may take to handle a
1108 request before it is terminated by a built-in watchdog timer.
1109
1110 command_directory (see 'postconf -d' output)
1111 The location of all postfix administrative commands.
1112
1113 double_bounce_sender (double-bounce)
1114 The sender address of postmaster notifications that are gener‐
1115 ated by the mail system.
1116
1117 ipc_timeout (3600s)
1118 The time limit for sending or receiving information over an
1119 internal communication channel.
1120
1121 mail_name (Postfix)
1122 The mail system name that is displayed in Received: headers, in
1123 the SMTP greeting banner, and in bounced mail.
1124
1125 mail_owner (postfix)
1126 The UNIX system account that owns the Postfix queue and most
1127 Postfix daemon processes.
1128
1129 max_idle (100s)
1130 The maximum amount of time that an idle Postfix daemon process
1131 waits for an incoming connection before terminating voluntarily.
1132
1133 max_use (100)
1134 The maximal number of incoming connections that a Postfix daemon
1135 process will service before terminating voluntarily.
1136
1137 myhostname (see 'postconf -d' output)
1138 The internet hostname of this mail system.
1139
1140 mynetworks (see 'postconf -d' output)
1141 The list of "trusted" remote SMTP clients that have more privi‐
1142 leges than "strangers".
1143
1144 myorigin ($myhostname)
1145 The domain name that locally-posted mail appears to come from,
1146 and that locally posted mail is delivered to.
1147
1148 process_id (read-only)
1149 The process ID of a Postfix command or daemon process.
1150
1151 process_name (read-only)
1152 The process name of a Postfix command or daemon process.
1153
1154 queue_directory (see 'postconf -d' output)
1155 The location of the Postfix top-level queue directory.
1156
1157 recipient_delimiter (empty)
1158 The separator between user names and address extensions
1159 (user+foo).
1160
1161 smtpd_banner ($myhostname ESMTP $mail_name)
1162 The text that follows the 220 status code in the SMTP greeting
1163 banner.
1164
1165 syslog_facility (mail)
1166 The syslog facility of Postfix logging.
1167
1168 syslog_name (see 'postconf -d' output)
1169 The mail system name that is prepended to the process name in
1170 syslog records, so that "smtpd" becomes, for example, "post‐
1171 fix/smtpd".
1172
1173 Available in Postfix version 2.2 and later:
1174
1175 smtpd_forbidden_commands (CONNECT, GET, POST)
1176 List of commands that cause the Postfix SMTP server to immedi‐
1177 ately terminate the session with a 221 code.
1178
1179 Available in Postfix version 2.5 and later:
1180
1181 smtpd_client_port_logging (no)
1182 Enable logging of the remote SMTP client port in addition to the
1183 hostname and IP address.
1184
1186 anvil(8), connection/rate limiting
1187 cleanup(8), message canonicalization
1188 tlsmgr(8), TLS session and PRNG management
1189 trivial-rewrite(8), address resolver
1190 verify(8), address verification service
1191 postconf(5), configuration parameters
1192 master(5), generic daemon options
1193 master(8), process manager
1194 syslogd(8), system logging
1195
1197 Use "postconf readme_directory" or "postconf html_directory" to locate
1198 this information.
1199 ADDRESS_CLASS_README, blocking unknown hosted or relay recipients
1200 ADDRESS_REWRITING_README Postfix address manipulation
1201 FILTER_README, external after-queue content filter
1202 LOCAL_RECIPIENT_README, blocking unknown local recipients
1203 MILTER_README, before-queue mail filter applications
1204 SMTPD_ACCESS_README, built-in access policies
1205 SMTPD_POLICY_README, external policy server
1206 SMTPD_PROXY_README, external before-queue content filter
1207 SASL_README, Postfix SASL howto
1208 TLS_README, Postfix STARTTLS howto
1209 VERP_README, Postfix XVERP extension
1210 XCLIENT_README, Postfix XCLIENT extension
1211 XFORWARD_README, Postfix XFORWARD extension
1212
1214 The Secure Mailer license must be distributed with this software.
1215
1217 Wietse Venema
1218 IBM T.J. Watson Research
1219 P.O. Box 704
1220 Yorktown Heights, NY 10598, USA
1221
1222 SASL support originally by:
1223 Till Franke
1224 SuSE Rhein/Main AG
1225 65760 Eschborn, Germany
1226
1227 TLS support originally by:
1228 Lutz Jaenicke
1229 BTU Cottbus
1230 Allgemeine Elektrotechnik
1231 Universitaetsplatz 3-4
1232 D-03044 Cottbus, Germany
1233
1234 Revised TLS support by:
1235 Victor Duchovni
1236 Morgan Stanley
1237
1238
1239
1240 SMTPD(8)