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