{
    "content": [
        {
            "type": "text",
            "text": "# smtp (info)\n\n## NAME\n\nsmtp - Postfix SMTP+LMTP client\n\n## SYNOPSIS\n\nsmtp [generic Postfix daemon options] [flags=DORX]\n\n## DESCRIPTION\n\nThe Postfix SMTP+LMTP client implements the SMTP and LMTP mail delivery\nprotocols. It processes message delivery requests from the  queue  man-\nager.  Each  request specifies a queue file, a sender address, a domain\nor host to deliver to, and recipient information.  This program expects\nto be run from the master(8) process manager.\n\n## Sections\n\n- **NAME**\n- **SYNOPSIS**\n- **DESCRIPTION**\n- **SMTP DESTINATION SYNTAX**\n- **LMTP DESTINATION SYNTAX**\n- **SINGLE-RECIPIENT DELIVERY**\n- **COMMAND ATTRIBUTE SYNTAX**\n- **SECURITY**\n- **STANDARDS**\n- **DIAGNOSTICS**\n- **BUGS**\n- **CONFIGURATION PARAMETERS**\n- **COMPATIBILITY CONTROLS**\n- **MIME PROCESSING CONTROLS**\n- **EXTERNAL CONTENT INSPECTION CONTROLS**\n- **SASL AUTHENTICATION CONTROLS**\n- **STARTTLS SUPPORT CONTROLS**\n- **OBSOLETE STARTTLS CONTROLS**\n- **RESOURCE AND RATE CONTROLS**\n- **SMTPUTF8 CONTROLS**\n- **TROUBLE SHOOTING CONTROLS**\n- **MISCELLANEOUS CONTROLS**\n- **SEE ALSO**\n- **README FILES**\n- **LICENSE**\n\nUse structuredContent.sections for detailed options, examples, and full documentation.\n"
        }
    ],
    "structuredContent": {
        "command": "smtp",
        "section": "",
        "mode": "info",
        "summary": "smtp - Postfix SMTP+LMTP client",
        "synopsis": "smtp [generic Postfix daemon options] [flags=DORX]",
        "tldr_summary": null,
        "tldr_examples": [],
        "tldr_source": null,
        "flags": [],
        "examples": [],
        "see_also": [
            {
                "name": "generic",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/generic/5/json"
            },
            {
                "name": "headerchecks",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/headerchecks/5/json"
            },
            {
                "name": "bodychecks",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/bodychecks/5/json"
            },
            {
                "name": "qmgr",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/qmgr/8/json"
            },
            {
                "name": "bounce",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/bounce/8/json"
            },
            {
                "name": "scache",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/scache/8/json"
            },
            {
                "name": "postconf",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/postconf/5/json"
            },
            {
                "name": "master",
                "section": "5",
                "url": "https://www.chedong.com/phpMan.php/man/master/5/json"
            },
            {
                "name": "master",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/master/8/json"
            },
            {
                "name": "tlsmgr",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/tlsmgr/8/json"
            },
            {
                "name": "postlogd",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/postlogd/8/json"
            },
            {
                "name": "syslogd",
                "section": "8",
                "url": "https://www.chedong.com/phpMan.php/man/syslogd/8/json"
            }
        ],
        "section_outline": [
            {
                "name": "NAME",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "SYNOPSIS",
                "lines": 2,
                "subsections": []
            },
            {
                "name": "DESCRIPTION",
                "lines": 27,
                "subsections": []
            },
            {
                "name": "SMTP DESTINATION SYNTAX",
                "lines": 23,
                "subsections": []
            },
            {
                "name": "LMTP DESTINATION SYNTAX",
                "lines": 22,
                "subsections": []
            },
            {
                "name": "SINGLE-RECIPIENT DELIVERY",
                "lines": 10,
                "subsections": []
            },
            {
                "name": "COMMAND ATTRIBUTE SYNTAX",
                "lines": 34,
                "subsections": []
            },
            {
                "name": "SECURITY",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "STANDARDS",
                "lines": 21,
                "subsections": []
            },
            {
                "name": "DIAGNOSTICS",
                "lines": 7,
                "subsections": []
            },
            {
                "name": "BUGS",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "CONFIGURATION PARAMETERS",
                "lines": 16,
                "subsections": []
            },
            {
                "name": "COMPATIBILITY CONTROLS",
                "lines": 182,
                "subsections": []
            },
            {
                "name": "MIME PROCESSING CONTROLS",
                "lines": 11,
                "subsections": []
            },
            {
                "name": "EXTERNAL CONTENT INSPECTION CONTROLS",
                "lines": 6,
                "subsections": []
            },
            {
                "name": "SASL AUTHENTICATION CONTROLS",
                "lines": 58,
                "subsections": []
            },
            {
                "name": "STARTTLS SUPPORT CONTROLS",
                "lines": 212,
                "subsections": []
            },
            {
                "name": "OBSOLETE STARTTLS CONTROLS",
                "lines": 26,
                "subsections": []
            },
            {
                "name": "RESOURCE AND RATE CONTROLS",
                "lines": 122,
                "subsections": []
            },
            {
                "name": "SMTPUTF8 CONTROLS",
                "lines": 17,
                "subsections": []
            },
            {
                "name": "TROUBLE SHOOTING CONTROLS",
                "lines": 24,
                "subsections": []
            },
            {
                "name": "MISCELLANEOUS CONTROLS",
                "lines": 124,
                "subsections": []
            },
            {
                "name": "SEE ALSO",
                "lines": 13,
                "subsections": []
            },
            {
                "name": "README FILES",
                "lines": 5,
                "subsections": []
            },
            {
                "name": "LICENSE",
                "lines": 38,
                "subsections": []
            }
        ],
        "sections": {
            "NAME": {
                "content": "smtp - Postfix SMTP+LMTP client\n",
                "subsections": []
            },
            "SYNOPSIS": {
                "content": "smtp [generic Postfix daemon options] [flags=DORX]\n",
                "subsections": []
            },
            "DESCRIPTION": {
                "content": "The Postfix SMTP+LMTP client implements the SMTP and LMTP mail delivery\nprotocols. It processes message delivery requests from the  queue  man-\nager.  Each  request specifies a queue file, a sender address, a domain\nor host to deliver to, and recipient information.  This program expects\nto be run from the master(8) process manager.\n\nThe  SMTP+LMTP  client  updates  the queue file and marks recipients as\nfinished, or it informs the queue manager that delivery should be tried\nagain  at  a  later  time.  Delivery  status  reports  are  sent to the\nbounce(8), defer(8) or trace(8) daemon as appropriate.\n\nThe SMTP+LMTP client looks up a list of mail  exchanger  addresses  for\nthe  destination  host,  sorts  the list by preference, and connects to\neach listed address until it finds a server that responds.\n\nWhen a server is not reachable, or when mail delivery fails  due  to  a\nrecoverable  error  condition, the SMTP+LMTP client will try to deliver\nthe mail to an alternate host.\n\nAfter a successful mail transaction, a connection may be saved  to  the\nscache(8)  connection  cache  server,  so  that  it  may be used by any\nSMTP+LMTP client for a subsequent transaction.\n\nBy default, connection caching is enabled temporarily for  destinations\nthat have a high volume of mail in the active queue. Connection caching\ncan be enabled permanently for specific destinations.\n",
                "subsections": []
            },
            "SMTP DESTINATION SYNTAX": {
                "content": "The Postfix SMTP+LMTP client supports multiple  destinations  separated\nby comma or whitespace (Postfix 3.5 and later).  SMTP destinations have\nthe following form:\n\ndomainname\n\ndomainname:port\nLook up the mail exchangers for the specified domain,  and  con-\nnect to the specified port (default: smtp).\n\n[hostname]\n\n[hostname]:port\nLook  up  the  address(es) of the specified host, and connect to\nthe specified port (default: smtp).\n\n[address]\n\n[address]:port\nConnect to the host at the specified address, and connect to the\nspecified  port (default: smtp). An IPv6 address must be format-\nted as [ipv6:address].\n",
                "subsections": []
            },
            "LMTP DESTINATION SYNTAX": {
                "content": "The Postfix SMTP+LMTP client supports multiple  destinations  separated\nby comma or whitespace (Postfix 3.5 and later).  LMTP destinations have\nthe following form:\n\nunix:pathname\nConnect to the local UNIX-domain server that  is  bound  to  the\nspecified  pathname.  If  the process runs chrooted, an absolute\npathname is interpreted relative to the Postfix queue directory.\n\ninet:hostname\n\ninet:hostname:port\n\ninet:[address]\n\ninet:[address]:port\nConnect to the specified TCP port on the specified local or  re-\nmote  host. If no port is specified, connect to the port defined\nas lmtp in services(4).   If  no  such  service  is  found,  the\nlmtptcpport configuration parameter (default value of 24) will\nbe used.  An IPv6 address must be formatted as [ipv6:address].\n",
                "subsections": []
            },
            "SINGLE-RECIPIENT DELIVERY": {
                "content": "By default, the Postfix SMTP+LMTP client delivers mail to multiple  re-\ncipients  per  delivery  request. This is undesirable when prepending a\nDelivered-to: or X-Original-To: message header. To prevent Postfix from\nsending multiple recipients per delivery request, specify\n\ntransportdestinationrecipientlimit = 1\n\nin  the  Postfix main.cf file, where transport is the name in the first\ncolumn of the Postfix master.cf entry for this mail delivery service.\n",
                "subsections": []
            },
            "COMMAND ATTRIBUTE SYNTAX": {
                "content": "flags=DORX (optional)\nOptional message processing flags.\n\nD      Prepend a \"Delivered-To: recipient\" message  header  with\nthe  envelope  recipient address. Note: for this to work,\nthe transportdestinationrecipientlimit must be 1  (see\nSINGLE-RECIPIENT DELIVERY above for details).\n\nThe D flag also enforces loop detection: if a message al-\nready contains a Delivered-To: header with the  same  re-\ncipient address, then the message is returned as undeliv-\nerable. The address comparison is case insensitive.\n\nThis feature is available as of Postfix 3.5.\n\nO      Prepend an \"X-Original-To: recipient\" message header with\nthe recipient address as given to Postfix. Note: for this\nto work, the  transportdestinationrecipientlimit  must\nbe 1 (see SINGLE-RECIPIENT DELIVERY above for details).\n\nThis feature is available as of Postfix 3.5.\n\nR      Prepend a \"Return-Path: <sender>\" message header with the\nenvelope sender address.\n\nThis feature is available as of Postfix 3.5.\n\nX      Indicates that the delivery is final. This  flag  affects\nthe status reported in \"success\" DSN (delivery status no-\ntification) messages, and changes it from \"relayed\"  into\n\"delivered\".\n\nThis feature is available as of Postfix 3.5.\n",
                "subsections": []
            },
            "SECURITY": {
                "content": "The SMTP+LMTP client is moderately security-sensitive. It\ntalks to SMTP or LMTP servers and to DNS servers on the\nnetwork. The SMTP+LMTP client can be run chrooted at fixed\nlow privilege.\n",
                "subsections": []
            },
            "STANDARDS": {
                "content": "RFC 821 (SMTP protocol)\nRFC 822 (ARPA Internet Text Messages)\nRFC 1651 (SMTP service extensions)\nRFC 1652 (8bit-MIME transport)\nRFC 1870 (Message Size Declaration)\nRFC 2033 (LMTP protocol)\nRFC 2034 (SMTP Enhanced Error Codes)\nRFC 2045 (MIME: Format of Internet Message Bodies)\nRFC 2046 (MIME: Media Types)\nRFC 2554 (AUTH command)\nRFC 2821 (SMTP protocol)\nRFC 2920 (SMTP Pipelining)\nRFC 3207 (STARTTLS command)\nRFC 3461 (SMTP DSN Extension)\nRFC 3463 (Enhanced Status Codes)\nRFC 4954 (AUTH command)\nRFC 5321 (SMTP protocol)\nRFC 6531 (Internationalized SMTP)\nRFC 6533 (Internationalized Delivery Status Notifications)\nRFC 7672 (SMTP security via opportunistic DANE TLS)\n",
                "subsections": []
            },
            "DIAGNOSTICS": {
                "content": "Problems  and  transactions  are  logged  to syslogd(8) or postlogd(8).\nCorrupted message files are marked so that the queue manager  can  move\nthem to the corrupt queue for further inspection.\n\nDepending  on the setting of the notifyclasses parameter, the postmas-\nter is notified of bounces, protocol problems, and of other trouble.\n",
                "subsections": []
            },
            "BUGS": {
                "content": "SMTP and LMTP connection reuse for TLS (without  closing  the  SMTP  or\nLMTP connection) is not supported before Postfix 3.4.\n\nSMTP  and LMTP connection reuse assumes that SASL credentials are valid\nfor all destinations that map onto the same IP address and TCP port.\n",
                "subsections": []
            },
            "CONFIGURATION PARAMETERS": {
                "content": "Before Postfix version 2.3, the LMTP client is a separate program  that\nimplements  only  a  subset  of  the functionality available with SMTP:\nthere is no support for TLS, and  connections  are  cached  in-process,\nmaking it ineffective when the client is used for multiple domains.\n\nMost smtpxxx configuration parameters have an lmtpxxx \"mirror\" param-\neter for the equivalent LMTP  feature.  This  document  describes  only\nthose LMTP-related parameters that aren't simply \"mirror\" parameters.\n\nChanges  to  main.cf  are picked up automatically, as smtp(8) processes\nrun for only a limited amount of time. Use the command \"postfix reload\"\nto speed up a change.\n\nThe  text  below provides only a parameter summary. See postconf(5) for\nmore details including examples.\n",
                "subsections": []
            },
            "COMPATIBILITY CONTROLS": {
                "content": "ignoremxlookuperror (no)\nIgnore DNS MX lookups that produce no response.\n\nsmtpalwayssendehlo (yes)\nAlways send EHLO at the start of an SMTP session.\n\nsmtpneversendehlo (no)\nNever send EHLO at the start of an SMTP session.\n\nsmtpdeferifnomxaddressfound (no)\nDefer mail delivery when no MX record resolves to an IP address.\n\nsmtplinelengthlimit (998)\nThe maximal length of message header and body lines that Postfix\nwill send via SMTP.\n\nsmtppixworkarounddelaytime (10s)\nHow   long   the  Postfix  SMTP  client  pauses  before  sending\n\".<CR><LF>\"  in  order  to  work   around   the   PIX   firewall\n\"<CR><LF>.<CR><LF>\" bug.\n\nsmtppixworkaroundthresholdtime (500s)\nHow long a message must be queued before the Postfix SMTP client\nturns on the PIX firewall \"<CR><LF>.<CR><LF>\" bug workaround for\ndelivery through firewalls with \"smtp fixup\" mode turned on.\n\nsmtppixworkarounds (disableesmtp, delaydotcrlf)\nA  list  that  specifies  zero or more workarounds for CISCO PIX\nfirewall bugs.\n\nsmtppixworkaroundmaps (empty)\nLookup tables, indexed by the remote SMTP server  address,  with\nper-destination workarounds for CISCO PIX firewall bugs.\n\nsmtpquoterfc821envelope (yes)\nQuote  addresses  in  Postfix  SMTP client MAIL FROM and RCPT TO\ncommands as required by RFC 5321.\n\nsmtpreplyfilter (empty)\nA mechanism to transform replies from remote  SMTP  servers  one\nline at a time.\n\nsmtpskip5xxgreeting (yes)\nSkip remote SMTP servers that greet with a 5XX status code.\n\nsmtpskipquitresponse (yes)\nDo not wait for the response to the SMTP QUIT command.\n\nAvailable in Postfix version 2.0 and earlier:\n\nsmtpskip4xxgreeting (yes)\nSkip  SMTP  servers  that greet with a 4XX status code (go away,\ntry again later).\n\nAvailable in Postfix version 2.2 and later:\n\nsmtpdiscardehlokeywordaddressmaps (empty)\nLookup tables, indexed by the remote SMTP server  address,  with\ncase  insensitive  lists of EHLO keywords (pipelining, starttls,\nauth, etc.) that the Postfix SMTP client will ignore in the EHLO\nresponse from a remote SMTP server.\n\nsmtpdiscardehlokeywords (empty)\nA  case insensitive list of EHLO keywords (pipelining, starttls,\nauth, etc.) that the Postfix SMTP client will ignore in the EHLO\nresponse from a remote SMTP server.\n\nsmtpgenericmaps (empty)\nOptional  lookup  tables  that  perform address rewriting in the\nPostfix SMTP client, typically to transform a locally valid  ad-\ndress into a globally valid address when sending mail across the\nInternet.\n\nAvailable in Postfix version 2.2.9 and later:\n\nsmtpcnameoverridesservername (version dependent)\nWhen the remote SMTP servername is  a  DNS  CNAME,  replace  the\nservername  with the result from CNAME expansion for the purpose\nof logging, SASL password lookup, TLS policy decisions,  or  TLS\ncertificate verification.\n\nAvailable in Postfix version 2.3 and later:\n\nlmtpdiscardlhlokeywordaddressmaps (empty)\nLookup  tables,  indexed by the remote LMTP server address, with\ncase insensitive lists of LHLO keywords  (pipelining,  starttls,\nauth, etc.) that the Postfix LMTP client will ignore in the LHLO\nresponse from a remote LMTP server.\n\nlmtpdiscardlhlokeywords (empty)\nA case insensitive list of LHLO keywords (pipelining,  starttls,\nauth, etc.) that the Postfix LMTP client will ignore in the LHLO\nresponse from a remote LMTP server.\n\nAvailable in Postfix version 2.4.4 and later:\n\nsendcyrussaslauthzid (no)\nWhen authenticating to a remote SMTP or LMTP server with the de-\nfault  setting  \"no\",  send  no SASL authoriZation ID (authzid);\nsend only the SASL authentiCation ID (authcid)  plus  the  auth-\ncid's password.\n\nAvailable in Postfix version 2.5 and later:\n\nsmtpheaderchecks (empty)\nRestricted headerchecks(5) tables for the Postfix SMTP client.\n\nsmtpmimeheaderchecks (empty)\nRestricted  mimeheaderchecks(5)  tables  for  the Postfix SMTP\nclient.\n\nsmtpnestedheaderchecks (empty)\nRestricted nestedheaderchecks(5) tables for the  Postfix  SMTP\nclient.\n\nsmtpbodychecks (empty)\nRestricted bodychecks(5) tables for the Postfix SMTP client.\n\nAvailable in Postfix version 2.6 and later:\n\ntcpwindowsize (0)\nAn  optional  workaround for routers that break TCP window scal-\ning.\n\nAvailable in Postfix version 2.8 and later:\n\nsmtpdnsresolveroptions (empty)\nDNS Resolver options for the Postfix SMTP client.\n\nAvailable in Postfix version 2.9 and later:\n\nsmtpperrecorddeadline (no)\nChange the behavior of the smtp*timeout time  limits,  from  a\ntime  limit  per  read  or write system call, to a time limit to\nsend or receive a complete record (an SMTP  command  line,  SMTP\nresponse  line,  SMTP message content line, or TLS protocol mes-\nsage).\n\nsmtpsenddummymailauth (no)\nWhether or not to append the \"AUTH=<>\" option to the  MAIL  FROM\ncommand in SASL-authenticated SMTP sessions.\n\nAvailable in Postfix version 2.11 and later:\n\nsmtpdnssupportlevel (empty)\nLevel of DNS support in the Postfix SMTP client.\n\nAvailable in Postfix version 3.0 and later:\n\nsmtpdeliverystatusfilter ($defaultdeliverystatusfilter)\nOptional filter for the smtp(8) delivery agent to change the de-\nlivery status code or explanatory text of successful  or  unsuc-\ncessful deliveries.\n\nsmtpdnsreplyfilter (empty)\nOptional filter for Postfix SMTP client DNS lookup results.\n\nAvailable in Postfix version 3.3 and later:\n\nsmtpbalanceinetprotocols (yes)\nWhen  a remote destination resolves to a combination of IPv4 and\nIPv6 addresses, ensure that the Postfix SMTP client can try both\naddress types before it runs into the smtpmxaddresslimit.\n\nAvailable in Postfix 3.5 and later:\n\ninfologaddressformat (external)\nThe  email  address  form that will be used in non-debug logging\n(info, warning, etc.).\n\nAvailable in Postfix 3.6 and later:\n\ndnssecprobe (ns:.)\nThe DNS query type (default: \"ns\") and DNS query name  (default:\n\".\") that Postfix may use to determine whether DNSSEC validation\nis available.\n\nknowntcpports  (lmtp=24,  smtp=25,   smtps=submissions=465,   submis-\nsion=587)\nOptional  setting  that  avoids lookups in the services(5) data-\nbase.\n",
                "subsections": []
            },
            "MIME PROCESSING CONTROLS": {
                "content": "Available in Postfix version 2.0 and later:\n\ndisablemimeoutputconversion (no)\nDisable the conversion of 8BITMIME format to 7BIT format.\n\nmimeboundarylengthlimit (2048)\nThe maximal length of MIME multipart boundary strings.\n\nmimenestinglimit (100)\nThe maximal recursion level that the MIME processor will handle.\n",
                "subsections": []
            },
            "EXTERNAL CONTENT INSPECTION CONTROLS": {
                "content": "Available in Postfix version 2.1 and later:\n\nsmtpsendxforwardcommand (no)\nSend the non-standard XFORWARD command  when  the  Postfix  SMTP\nserver EHLO response announces XFORWARD support.\n",
                "subsections": []
            },
            "SASL AUTHENTICATION CONTROLS": {
                "content": "smtpsaslauthenable (no)\nEnable SASL authentication in the Postfix SMTP client.\n\nsmtpsaslpasswordmaps (empty)\nOptional  Postfix  SMTP  client  lookup  tables  with  one user-\nname:password entry per sender, remote hostname or next-hop  do-\nmain.\n\nsmtpsaslsecurityoptions (noplaintext, noanonymous)\nPostfix SMTP client SASL security options; as of Postfix 2.3 the\nlist of available features depends on the SASL client  implemen-\ntation that is selected with smtpsasltype.\n\nAvailable in Postfix version 2.2 and later:\n\nsmtpsaslmechanismfilter (empty)\nIf  non-empty,  a Postfix SMTP client filter for the remote SMTP\nserver's list of offered SASL mechanisms.\n\nAvailable in Postfix version 2.3 and later:\n\nsmtpsenderdependentauthentication (no)\nEnable  sender-dependent  authentication  in  the  Postfix  SMTP\nclient;  this  is  available  only with SASL authentication, and\ndisables SMTP connection caching to ensure that mail  from  dif-\nferent senders will use the appropriate credentials.\n\nsmtpsaslpath (empty)\nImplementation-specific information that the Postfix SMTP client\npasses through to the SASL plug-in implementation  that  is  se-\nlected with smtpsasltype.\n\nsmtpsasltype (cyrus)\nThe  SASL  plug-in  type that the Postfix SMTP client should use\nfor authentication.\n\nAvailable in Postfix version 2.5 and later:\n\nsmtpsaslauthcachename (empty)\nAn optional table to prevent repeated SASL authentication  fail-\nures  with  the  same  remote SMTP server hostname, username and\npassword.\n\nsmtpsaslauthcachetime (90d)\nThe maximal age of an smtpsaslauthcachename entry before  it\nis removed.\n\nsmtpsaslauthsoftbounce (yes)\nWhen  a remote SMTP server rejects a SASL authentication request\nwith a 535 reply code, defer mail delivery instead of  returning\nmail as undeliverable.\n\nAvailable in Postfix version 2.9 and later:\n\nsmtpsenddummymailauth (no)\nWhether  or  not to append the \"AUTH=<>\" option to the MAIL FROM\ncommand in SASL-authenticated SMTP sessions.\n",
                "subsections": []
            },
            "STARTTLS SUPPORT CONTROLS": {
                "content": "Detailed information about STARTTLS configuration may be found  in  the\nTLSREADME document.\n\nsmtptlssecuritylevel (empty)\nThe default SMTP TLS security level for the Postfix SMTP client;\nwhen a non-empty value is specified, this overrides the obsolete\nparameters   smtpusetls,  smtpenforcetls,  and  smtptlsen-\nforcepeername.\n\nsmtpsasltlssecurityoptions ($smtpsaslsecurityoptions)\nThe SASL authentication security options that the  Postfix  SMTP\nclient uses for TLS encrypted SMTP sessions.\n\nsmtpstarttlstimeout (300s)\nTime  limit  for  Postfix  SMTP client write and read operations\nduring TLS startup and shutdown handshake procedures.\n\nsmtptlsCAfile (empty)\nA file containing CA certificates of root CAs  trusted  to  sign\neither  remote  SMTP server certificates or intermediate CA cer-\ntificates.\n\nsmtptlsCApath (empty)\nDirectory with PEM format Certification  Authority  certificates\nthat the Postfix SMTP client uses to verify a remote SMTP server\ncertificate.\n\nsmtptlscertfile (empty)\nFile with the Postfix SMTP client RSA certificate in PEM format.\n\nsmtptlsmandatoryciphers (medium)\nThe minimum TLS cipher grade that the Postfix SMTP  client  will\nuse with mandatory TLS encryption.\n\nsmtptlsexcludeciphers (empty)\nList of ciphers or cipher types to exclude from the Postfix SMTP\nclient cipher list at all TLS security levels.\n\nsmtptlsmandatoryexcludeciphers (empty)\nAdditional list of ciphers or cipher types to exclude  from  the\nPostfix  SMTP  client cipher list at mandatory TLS security lev-\nels.\n\nsmtptlsdcertfile (empty)\nFile with the Postfix SMTP client DSA certificate in PEM format.\n\nsmtptlsdkeyfile ($smtptlsdcertfile)\nFile with the Postfix SMTP client DSA private key in PEM format.\n\nsmtptlskeyfile ($smtptlscertfile)\nFile with the Postfix SMTP client RSA private key in PEM format.\n\nsmtptlsloglevel (0)\nEnable additional Postfix SMTP client logging of TLS activity.\n\nsmtptlsnotestarttlsoffer (no)\nLog the hostname of a remote SMTP server that  offers  STARTTLS,\nwhen TLS is not already enabled for that server.\n\nsmtptlspolicymaps (empty)\nOptional lookup tables with the Postfix SMTP client TLS security\npolicy by next-hop destination; when a non-empty value is speci-\nfied, this overrides the obsolete smtptlspersite parameter.\n\nsmtptlsmandatoryprotocols (see 'postconf -d' output)\nTLS  protocols that the Postfix SMTP client will use with manda-\ntory TLS encryption.\n\nsmtptlsscertverifydepth (9)\nThe verification depth for remote SMTP server certificates.\n\nsmtptlssecurecertmatch (nexthop, dot-nexthop)\nHow the Postfix SMTP  client  verifies  the  server  certificate\npeername for the \"secure\" TLS security level.\n\nsmtptlssessioncachedatabase (empty)\nName of the file containing the optional Postfix SMTP client TLS\nsession cache.\n\nsmtptlssessioncachetimeout (3600s)\nThe expiration time of Postfix SMTP client TLS session cache in-\nformation.\n\nsmtptlsverifycertmatch (hostname)\nHow  the  Postfix  SMTP  client  verifies the server certificate\npeername for the \"verify\" TLS security level.\n\ntlsdaemonrandombytes (32)\nThe number of pseudo-random bytes that an  smtp(8)  or  smtpd(8)\nprocess  requests from the tlsmgr(8) server in order to seed its\ninternal pseudo random number generator (PRNG).\n\ntlshighcipherlist (see 'postconf -d' output)\nThe OpenSSL cipherlist for \"high\" grade ciphers.\n\ntlsmediumcipherlist (see 'postconf -d' output)\nThe OpenSSL cipherlist for \"medium\" or higher grade ciphers.\n\ntlslowcipherlist (see 'postconf -d' output)\nThe OpenSSL cipherlist for \"low\" or higher grade ciphers.\n\ntlsexportcipherlist (see 'postconf -d' output)\nThe OpenSSL cipherlist for \"export\" or higher grade ciphers.\n\ntlsnullcipherlist (eNULL:!aNULL)\nThe OpenSSL cipherlist for \"NULL\" grade ciphers that provide au-\nthentication without encryption.\n\nAvailable in Postfix version 2.4 and later:\n\nsmtpsasltlsverifiedsecurityoptions    ($smtpsasltlssecurityop-\ntions)\nThe SASL authentication security options that the  Postfix  SMTP\nclient  uses  for  TLS  encrypted  SMTP sessions with a verified\nserver certificate.\n\nAvailable in Postfix version 2.5 and later:\n\nsmtptlsfingerprintcertmatch (empty)\nList of acceptable remote SMTP server  certificate  fingerprints\nfor   the   \"fingerprint\"  TLS  security  level  (smtptlssecu-\nritylevel = fingerprint).\n\nsmtptlsfingerprintdigest (see 'postconf -d' output)\nThe message digest  algorithm  used  to  construct  remote  SMTP\nserver certificate fingerprints.\n\nAvailable in Postfix version 2.6 and later:\n\nsmtptlsprotocols (see postconf -d output)\nTLS  protocols that the Postfix SMTP client will use with oppor-\ntunistic TLS encryption.\n\nsmtptlsciphers (medium)\nThe minimum TLS cipher grade that the Postfix SMTP  client  will\nuse with opportunistic TLS encryption.\n\nsmtptlseccertfile (empty)\nFile  with the Postfix SMTP client ECDSA certificate in PEM for-\nmat.\n\nsmtptlseckeyfile ($smtptlseccertfile)\nFile with the Postfix SMTP client ECDSA private key in PEM  for-\nmat.\n\nAvailable in Postfix version 2.7 and later:\n\nsmtptlsblockearlymailreply (no)\nTry  to  detect  a mail hijacking attack based on a TLS protocol\nvulnerability (CVE-2009-3555), where an attacker prepends  mali-\ncious  HELO,  MAIL, RCPT, DATA commands to a Postfix SMTP client\nTLS session.\n\nAvailable in Postfix version 2.8 and later:\n\ntlsdisableworkarounds (see 'postconf -d' output)\nList or bit-mask of OpenSSL bug work-arounds to disable.\n\nAvailable in Postfix version 2.11-3.1:\n\ntlsdanedigestagility (on)\nConfigure RFC7671 DANE TLSA digest algorithm agility.\n\ntlsdanetrustanchordigestenable (yes)\nEnable support for RFC 6698 (DANE TLSA) DNS records that contain\ndigests of trust-anchors with certificate usage \"2\".\n\nAvailable in Postfix version 2.11 and later:\n\nsmtptlstrustanchorfile (empty)\nZero  or  more  PEM-format  files with trust-anchor certificates\nand/or public keys.\n\nsmtptlsforceinsecurehosttlsalookup (no)\nLookup the associated DANE TLSA RRset even when  a  hostname  is\nnot an alias and its address records lie in an unsigned zone.\n\ntlsmgrservicename (tlsmgr)\nThe name of the tlsmgr(8) service entry in master.cf.\n\nAvailable in Postfix version 3.0 and later:\n\nsmtptlswrappermode (no)\nRequest  that  the Postfix SMTP client connects using the legacy\nSMTPS protocol instead of using the STARTTLS command.\n\nAvailable in Postfix version 3.1 and later:\n\nsmtptlsdaneinsecuremxpolicy (see 'postconf -d' output)\nThe TLS policy for MX hosts with \"secure\" TLSA records when  the\nnexthop  destination  security  level is dane, but the MX record\nwas found via an \"insecure\" MX lookup.\n\nAvailable in Postfix version 3.4 and later:\n\nsmtptlsconnectionreuse (no)\nTry to make multiple deliveries per TLS-encrypted connection.\n\nsmtptlschainfiles (empty)\nList of one or more PEM files, each holding one or more  private\nkeys directly followed by a corresponding certificate chain.\n\nsmtptlsservername (empty)\nOptional  name  to  send  to  the  remote SMTP server in the TLS\nServer Name Indication (SNI) extension.\n\nAvailable in Postfix 3.5, 3.4.6, 3.3.5, 3.2.10, 3.1.13 and later:\n\ntlsfastshutdownenable (yes)\nA workaround for implementations that hang Postfix  while  shut-\nting down a TLS session, until Postfix times out.\n",
                "subsections": []
            },
            "OBSOLETE STARTTLS CONTROLS": {
                "content": "The  following  configuration  parameters  exist for compatibility with\nPostfix versions before 2.3. Support for these will be removed in a fu-\nture release.\n\nsmtpusetls (no)\nOpportunistic  mode: use TLS when a remote SMTP server announces\nSTARTTLS support, otherwise send the mail in the clear.\n\nsmtpenforcetls (no)\nEnforcement mode: require that remote SMTP servers use  TLS  en-\ncryption, and never send mail in the clear.\n\nsmtptlsenforcepeername (yes)\nWith  mandatory  TLS  encryption,  require  that the remote SMTP\nserver hostname matches  the  information  in  the  remote  SMTP\nserver certificate.\n\nsmtptlspersite (empty)\nOptional  lookup  tables  with the Postfix SMTP client TLS usage\npolicy by next-hop destination and by remote SMTP  server  host-\nname.\n\nsmtptlscipherlist (empty)\nObsolete  Postfix  < 2.3 control for the Postfix SMTP client TLS\ncipher list.\n",
                "subsections": []
            },
            "RESOURCE AND RATE CONTROLS": {
                "content": "smtpconnecttimeout (30s)\nThe Postfix SMTP client time limit for completing a TCP  connec-\ntion, or zero (use the operating system built-in time limit).\n\nsmtphelotimeout (300s)\nThe  Postfix SMTP client time limit for sending the HELO or EHLO\ncommand, and for receiving the initial remote  SMTP  server  re-\nsponse.\n\nlmtplhlotimeout (300s)\nThe Postfix LMTP client time limit for sending the LHLO command,\nand for receiving the initial remote LMTP server response.\n\nsmtpxforwardtimeout (300s)\nThe Postfix SMTP client time limit for sending the XFORWARD com-\nmand, and for receiving the remote SMTP server response.\n\nsmtpmailtimeout (300s)\nThe  Postfix  SMTP  client  time limit for sending the MAIL FROM\ncommand, and for receiving the remote SMTP server response.\n\nsmtprcpttimeout (300s)\nThe Postfix SMTP client time limit for sending the SMTP RCPT  TO\ncommand, and for receiving the remote SMTP server response.\n\nsmtpdatainittimeout (120s)\nThe  Postfix  SMTP  client  time limit for sending the SMTP DATA\ncommand, and for receiving the remote SMTP server response.\n\nsmtpdataxfertimeout (180s)\nThe Postfix SMTP client time limit for sending the SMTP  message\ncontent.\n\nsmtpdatadonetimeout (600s)\nThe Postfix SMTP client time limit for sending the SMTP \".\", and\nfor receiving the remote SMTP server response.\n\nsmtpquittimeout (300s)\nThe Postfix SMTP client time limit for sending the QUIT command,\nand for receiving the remote SMTP server response.\n\nAvailable in Postfix version 2.1 and later:\n\nsmtpmxaddresslimit (5)\nThe  maximal number of MX (mail exchanger) IP addresses that can\nresult from Postfix SMTP client mail exchanger lookups, or  zero\n(no limit).\n\nsmtpmxsessionlimit (2)\nThe  maximal number of SMTP sessions per delivery request before\nthe Postfix SMTP client gives up or delivers to a fall-back  re-\nlay host, or zero (no limit).\n\nsmtprsettimeout (20s)\nThe Postfix SMTP client time limit for sending the RSET command,\nand for receiving the remote SMTP server response.\n\nAvailable in Postfix version 2.2 and earlier:\n\nlmtpcacheconnection (yes)\nKeep Postfix LMTP client connections open for  up  to  $maxidle\nseconds.\n\nAvailable in Postfix version 2.2 and later:\n\nsmtpconnectioncachedestinations (empty)\nPermanently  enable  SMTP  connection  caching for the specified\ndestinations.\n\nsmtpconnectioncacheondemand (yes)\nTemporarily enable SMTP connection caching while  a  destination\nhas a high volume of mail in the active queue.\n\nsmtpconnectionreusetimelimit (300s)\nThe amount of time during which Postfix will use an SMTP connec-\ntion repeatedly.\n\nsmtpconnectioncachetimelimit (2s)\nWhen SMTP connection caching is enabled, the amount of time that\nan unused SMTP client socket is kept open before it is closed.\n\nAvailable in Postfix version 2.3 and later:\n\nconnectioncacheprotocoltimeout (5s)\nTime  limit for connection cache connect, send or receive opera-\ntions.\n\nAvailable in Postfix version 2.9 and later:\n\nsmtpperrecorddeadline (no)\nChange the behavior of the smtp*timeout time  limits,  from  a\ntime  limit  per  read  or write system call, to a time limit to\nsend or receive a complete record (an SMTP  command  line,  SMTP\nresponse  line,  SMTP message content line, or TLS protocol mes-\nsage).\n\nAvailable in Postfix version 2.11 and later:\n\nsmtpconnectionreusecountlimit (0)\nWhen SMTP connection caching is enabled,  the  number  of  times\nthat  an SMTP session may be reused before it is closed, or zero\n(no limit).\n\nAvailable in Postfix version 3.4 and later:\n\nsmtptlsconnectionreuse (no)\nTry to make multiple deliveries per TLS-encrypted connection.\n\nImplemented in the qmgr(8) daemon:\n\ntransportdestinationconcurrencylimit   ($defaultdestinationconcur-\nrencylimit)\nA  transport-specific  override for the defaultdestinationcon-\ncurrencylimit parameter value, where transport is the master.cf\nname of the message delivery transport.\n\ntransportdestinationrecipientlimit     ($defaultdestinationrecipi-\nentlimit)\nA transport-specific override for the defaultdestinationrecip-\nientlimit  parameter  value,  where  transport is the master.cf\nname of the message delivery transport.\n",
                "subsections": []
            },
            "SMTPUTF8 CONTROLS": {
                "content": "Preliminary SMTPUTF8 support is introduced with Postfix 3.0.\n\nsmtputf8enable (yes)\nEnable preliminary SMTPUTF8 support for the protocols  described\nin RFC 6531..6533.\n\nsmtputf8autodetectclasses (sendmail, verify)\nDetect  that  a message requires SMTPUTF8 support for the speci-\nfied mail origin classes.\n\nAvailable in Postfix version 3.2 and later:\n\nenableidna2003compatibility (no)\nEnable  'transitional'  compatibility   between   IDNA2003   and\nIDNA2008,  when  converting UTF-8 domain names to/from the ASCII\nform that is used for DNS lookups.\n",
                "subsections": []
            },
            "TROUBLE SHOOTING CONTROLS": {
                "content": "debugpeerlevel (2)\nThe increment in verbose logging level when a  nexthop  destina-\ntion,  remote client or server name or network address matches a\npattern given with the debugpeerlist parameter.\n\ndebugpeerlist (empty)\nOptional list of nexthop destination, remote  client  or  server\nname  or  network  address  patterns that, if matched, cause the\nverbose logging level to increase by  the  amount  specified  in\n$debugpeerlevel.\n\nerrornoticerecipient (postmaster)\nThe  recipient  of  postmaster notifications about mail delivery\nproblems that are caused by policy, resource, software or proto-\ncol errors.\n\ninternalmailfilterclasses (empty)\nWhat  categories  of  Postfix-generated  mail are subject to be-\nfore-queue    content    inspection    by     nonsmtpdmilters,\nheaderchecks and bodychecks.\n\nnotifyclasses (resource, software)\nThe list of error classes that are reported to the postmaster.\n",
                "subsections": []
            },
            "MISCELLANEOUS CONTROLS": {
                "content": "bestmxtransport (empty)\nWhere  the  Postfix  SMTP client should deliver mail when it de-\ntects a \"mail loops back to myself\" error condition.\n\nconfigdirectory (see 'postconf -d' output)\nThe default location of the Postfix main.cf and  master.cf  con-\nfiguration files.\n\ndaemontimeout (18000s)\nHow  much time a Postfix daemon process may take to handle a re-\nquest before it is terminated by a built-in watchdog timer.\n\ndelayloggingresolutionlimit (2)\nThe maximal number of digits after the decimal point  when  log-\nging sub-second delay values.\n\ndisablednslookups (no)\nDisable DNS lookups in the Postfix SMTP and LMTP clients.\n\ninetinterfaces (all)\nThe  network  interface addresses that this mail system receives\nmail on.\n\ninetprotocols (see 'postconf -d output')\nThe Internet protocols Postfix will attempt to use  when  making\nor accepting connections.\n\nipctimeout (3600s)\nThe  time limit for sending or receiving information over an in-\nternal communication channel.\n\nlmtpassumefinal (no)\nWhen a remote LMTP server announces no DSN support, assume  that\nthe  server performs final delivery, and send \"delivered\" deliv-\nery status notifications instead of \"relayed\".\n\nlmtptcpport (24)\nThe default TCP port that the Postfix LMTP client connects to.\n\nmaxidle (100s)\nThe maximum amount of time that an idle Postfix  daemon  process\nwaits for an incoming connection before terminating voluntarily.\n\nmaxuse (100)\nThe maximal number of incoming connections that a Postfix daemon\nprocess will service before terminating voluntarily.\n\nprocessid (read-only)\nThe process ID of a Postfix command or daemon process.\n\nprocessname (read-only)\nThe process name of a Postfix command or daemon process.\n\nproxyinterfaces (empty)\nThe network interface addresses that this mail  system  receives\nmail on by way of a proxy or network address translation unit.\n\nsmtpaddresspreference (any)\nThe address type (\"ipv6\", \"ipv4\" or \"any\") that the Postfix SMTP\nclient will try first, when a destination has IPv6 and IPv4  ad-\ndresses with equal MX preference.\n\nsmtpbindaddress (empty)\nAn  optional  numerical  network  address  that the Postfix SMTP\nclient should bind to when making an IPv4 connection.\n\nsmtpbindaddress6 (empty)\nAn optional numerical network  address  that  the  Postfix  SMTP\nclient should bind to when making an IPv6 connection.\n\nsmtpheloname ($myhostname)\nThe hostname to send in the SMTP HELO or EHLO command.\n\nlmtplhloname ($myhostname)\nThe hostname to send in the LMTP LHLO command.\n\nsmtphostlookup (dns)\nWhat mechanisms the Postfix SMTP client uses to look up a host's\nIP address.\n\nsmtprandomizeaddresses (yes)\nRandomize the order of equal-preference MX host addresses.\n\nsyslogfacility (mail)\nThe syslog facility of Postfix logging.\n\nsyslogname (see 'postconf -d' output)\nA prefix that  is  prepended  to  the  process  name  in  syslog\nrecords, so that, for example, \"smtpd\" becomes \"prefix/smtpd\".\n\nAvailable with Postfix 2.2 and earlier:\n\nfallbackrelay (empty)\nOptional list of relay hosts for SMTP destinations that can't be\nfound or that are unreachable.\n\nAvailable with Postfix 2.3 and later:\n\nsmtpfallbackrelay ($fallbackrelay)\nOptional list of relay hosts for SMTP destinations that can't be\nfound or that are unreachable.\n\nAvailable with Postfix 3.0 and later:\n\nsmtpaddressverifytarget (rcpt)\nIn  the context of email address verification, the SMTP protocol\nstage that determines whether an email address is deliverable.\n\nAvailable with Postfix 3.1 and later:\n\nlmtpfallbackrelay (empty)\nOptional list of relay hosts for LMTP destinations that can't be\nfound or that are unreachable.\n\nAvailable with Postfix 3.2 and later:\n\nsmtptcpport (smtp)\nThe default TCP port that the Postfix SMTP client connects to.\n\nAvailable in Postfix 3.3 and later:\n\nservicename (read-only)\nThe master.cf service name of a Postfix daemon process.\n",
                "subsections": []
            },
            "SEE ALSO": {
                "content": "generic(5), output address rewriting\nheaderchecks(5), message header content inspection\nbodychecks(5), body parts content inspection\nqmgr(8), queue manager\nbounce(8), delivery status reports\nscache(8), connection cache server\npostconf(5), configuration parameters\nmaster(5), generic daemon options\nmaster(8), process manager\ntlsmgr(8), TLS session and PRNG management\npostlogd(8), Postfix logging\nsyslogd(8), system logging\n",
                "subsections": []
            },
            "README FILES": {
                "content": "Use  \"postconf readmedirectory\" or \"postconf htmldirectory\" to locate\nthis information.\nSASLREADME, Postfix SASL howto\nTLSREADME, Postfix STARTTLS howto\n",
                "subsections": []
            },
            "LICENSE": {
                "content": "The Secure Mailer license must be distributed with this software.\n\nAUTHOR(S)\nWietse Venema\nIBM T.J. Watson Research\nP.O. Box 704\nYorktown Heights, NY 10598, USA\n\nWietse Venema\nGoogle, Inc.\n111 8th Avenue\nNew York, NY 10011, USA\n\nCommand pipelining in cooperation with:\nJon Ribbens\nOaktree Internet Solutions Ltd.,\nInternet House,\nCanal Basin,\nCoventry,\nCV1 4LY, United Kingdom.\n\nSASL support originally by:\nTill Franke\nSuSE Rhein/Main AG\n65760 Eschborn, Germany\n\nTLS support originally by:\nLutz Jaenicke\nBTU Cottbus\nAllgemeine Elektrotechnik\nUniversitaetsplatz 3-4\nD-03044 Cottbus, Germany\n\nRevised TLS and SMTP connection cache support by:\nVictor Duchovni\nMorgan Stanley\n\nSMTP(8postfix)",
                "subsections": []
            }
        }
    }
}