SMTP(8)                                                   SMTP(8)

NAME
       smtp - Postfix remote delivery via SMTP

SYNOPSIS
       smtp [generic Postfix daemon options]

DESCRIPTION
       The  SMTP  client processes message delivery requests from
       the queue manager. Each request specifies a queue file,  a
       sender address, a domain or host to deliver to, and recip-
       ient information.  This program expects to be run from the
       master(8) process manager.

       The  SMTP  client updates the queue file and marks recipi-
       ents as finished, or it informs  the  queue  manager  that
       delivery  should  be tried again at a later time. Delivery
       status reports are sent  to  the  bounce(8),  defer(8)  or
       trace(8) daemon as appropriate.

       The  SMTP  client  looks  up  a  list  of  mail  exchanger
       addresses for the destination  host,  sorts  the  list  by
       preference,  and  connects to each listed address until it
       finds a server that responds.

       When a server is not  reachable,  or  when  mail  delivery
       fails  due  to  a  recoverable  error  condition, the SMTP
       client will try to deliver the mail to an alternate  host.

       After  a  successful  mail  transaction,  a session may be
       saved to the scache(8) connection cache server, so that it
       may  be  used by any SMTP client for a subsequent transac-
       tion.

       By default, connection caching is enabled temporarily  for
       destinations that have a high volume of mail in the active
       queue. Session caching can be enabled permanently for spe-
       cific destinations.

SECURITY
       The SMTP client is moderately security-sensitive. It talks
       to SMTP servers and to DNS servers  on  the  network.  The
       SMTP client can be run chrooted at fixed low privilege.

STANDARDS
       RFC 821 (SMTP protocol)
       RFC 822 (ARPA Internet Text Messages)
       RFC 1651 (SMTP service extensions)
       RFC 1652 (8bit-MIME transport)
       RFC 1870 (Message Size Declaration)
       RFC 2045 (MIME: Format of Internet Message Bodies)
       RFC 2046 (MIME: Media Types)
       RFC 2554 (AUTH command)
       RFC 2821 (SMTP protocol)
       RFC 2920 (SMTP Pipelining)

DIAGNOSTICS
       Problems  and transactions are logged to syslogd(8).  Cor-
       rupted message files are marked so that the queue  manager
       can move them to the corrupt queue for further inspection.

       Depending on the setting of the notify_classes  parameter,
       the  postmaster is notified of bounces, protocol problems,
       and of other trouble.

BUGS
       SMTP connection caching does not work with TLS. The neces-
       sary  support for TLS object passivation and re-activation
       does not exist without closing the session, which  defeats
       the purpose.

       SMTP  connection caching assumes that SASL credentials are
       valid for all destinations  that  map  onto  the  same  IP
       address  and  TCP  port,  and for all sender and recipient
       addresses.

CONFIGURATION PARAMETERS
       Changes to main.cf are picked up automatically, as smtp(8)
       processes  run  for only a limited amount of time. Use the
       command "postfix reload" to speed up a change.

       The text below provides  only  a  parameter  summary.  See
       postconf(5) for more details including examples.

COMPATIBILITY CONTROLS
       ignore_mx_lookup_error (no)
              Ignore DNS MX lookups that produce no response.

       smtp_always_send_ehlo (yes)
              Always send EHLO at the start of an SMTP session.

       smtp_never_send_ehlo (no)
              Never send EHLO at the start of an SMTP session.

       smtp_defer_if_no_mx_address_found (no)
              Defer  mail  delivery when no MX record resolves to
              an IP address.

       smtp_line_length_limit (990)
              The maximal length of message header and body lines
              that Postfix will send via SMTP.

       smtp_pix_workaround_delay_time (10s)
              How  long  the  Postfix  SMTP  client pauses before
              sending ".<CR><LF>" in order to work around the PIX
              firewall "<CR><LF>.<CR><LF>" bug.

       smtp_pix_workaround_threshold_time (500s)
              How  long  a  message must be queued before the PIX
              firewall  "<CR><LF>.<CR><LF>"  bug  workaround   is
              turned on.

       smtp_quote_rfc821_envelope (yes)
              Quote  addresses in SMTP MAIL FROM and RCPT TO com-
              mands as required by RFC 821.

       smtp_skip_5xx_greeting (yes)
              Skip SMTP servers that greet with a 5XX status code
              (go away, do not try again later).

       smtp_skip_quit_response (yes)
              Do  not wait for the response to the SMTP QUIT com-
              mand.

       Available in Postfix version 2.0 and earlier:

       smtp_skip_4xx_greeting (yes)
              Skip SMTP servers that greet with a 4XX status code
              (go away, try again later).

MIME PROCESSING CONTROLS
       Available in Postfix version 2.0 and later:

       disable_mime_output_conversion (no)
              Disable  the  conversion of 8BITMIME format to 7BIT
              format.

       mime_boundary_length_limit (2048)
              The  maximal  length  of  MIME  multipart  boundary
              strings.

       mime_nesting_limit (100)
              The maximal recursion level that the MIME processor
              will handle.

EXTERNAL CONTENT INSPECTION CONTROLS
       Available in Postfix version 2.1 and later:

       smtp_send_xforward_command (no)
              Send the non-standard  XFORWARD  command  when  the
              Postfix  SMTP  server EHLO response announces XFOR-
              WARD support.

SASL AUTHENTICATION CONTROLS
       smtp_sasl_auth_enable (no)
              Enable SASL  authentication  in  the  Postfix  SMTP
              client.

       smtp_sasl_password_maps (empty)
              Optional  SMTP  client lookup tables with one user-
              name:password entry per remote hostname or  domain.

       smtp_sasl_security_options (noplaintext, noanonymous)
              What  authentication  mechanisms  the  Postfix SMTP
              client is allowed to use.

       Available in Postfix version 2.2 and later:

       smtp_sasl_mechanism_filter (empty)
              If non-empty, filters the  SMTP  server's  list  of
              offered SASL mechanisms.

RESOURCE AND RATE CONTROLS
       smtp_destination_concurrency_limit      ($default_destina-
       tion_concurrency_limit)
              The  maximal  number  of parallel deliveries to the
              same destination  via  the  smtp  message  delivery
              transport.

       smtp_destination_recipient_limit        ($default_destina-
       tion_recipient_limit)
              The  maximal  number of recipients per delivery via
              the smtp message delivery transport.

       smtp_connect_timeout (30s)
              The SMTP client time limit  for  completing  a  TCP
              connection,  or  zero  (use  the  operating  system
              built-in time limit).

       smtp_helo_timeout (300s)
              The SMTP client time limit for sending the HELO  or
              EHLO  command, and for receiving the initial server
              response.

       smtp_xforward_timeout (300s)
              The SMTP client time limit for sending the XFORWARD
              command, and for receiving the server response.

       smtp_mail_timeout (300s)
              The  SMTP  client  time  limit for sending the MAIL
              FROM  command,  and  for   receiving   the   server
              response.

       smtp_rcpt_timeout (300s)
              The  SMTP  client  time  limit for sending the SMTP
              RCPT TO  command,  and  for  receiving  the  server
              response.

       smtp_data_init_timeout (120s)
              The  SMTP  client  time  limit for sending the SMTP
              DATA  command,  and  for   receiving   the   server
              response.

       smtp_data_xfer_timeout (180s)
              The  SMTP  client  time  limit for sending the SMTP
              message content.

       smtp_data_done_timeout (600s)
              The SMTP client time limit  for  sending  the  SMTP
              ".", and for receiving the server response.

       smtp_quit_timeout (300s)
              The  SMTP  client  time  limit for sending the QUIT
              command, and for receiving the server response.

       Available in Postfix version 2.1 and later:

       smtp_mx_address_limit (0)
              The  maximal  number  of  MX  (mail  exchanger)  IP
              addresses  that  can  result  from  mail  exchanger
              lookups, or zero (no limit).

       smtp_mx_session_limit (2)
              The maximal number of SMTP  sessions  per  delivery
              request  before  giving up or delivering to a fall-
              back relay host, or zero (no limit).

       smtp_rset_timeout (20s)
              The SMTP client time limit  for  sending  the  RSET
              command, and for receiving the server response.

       Available in Postfix version 2.2 and later:

       smtp_connection_cache_destinations (empty)
              Permanently  enable SMTP connection caching for the
              specified destinations.

       smtp_connection_cache_on_demand (yes)
              Temporarily enable SMTP connection caching while  a
              destination has a high volume of mail in the active
              queue.

       smtp_connection_cache_reuse_limit (10)
              When SMTP connection caching is enabled, the number
              of  times  that an SMTP session is reused before it
              is closed.

       smtp_connection_cache_time_limit (2s)
              When SMTP connection caching is enabled, the amount
              of  time  that an unused SMTP client socket is kept
              open before it is closed.

TROUBLE SHOOTING CONTROLS
       debug_peer_level (2)
              The increment  in  verbose  logging  level  when  a
              remote  client  or  server matches a pattern in the
              debug_peer_list parameter.

       debug_peer_list (empty)
              Optional list of remote client or  server  hostname
              or  network address patterns that cause the verbose
              logging level to increase by the  amount  specified
              in $debug_peer_level.

       error_notice_recipient (postmaster)
              The  recipient  of  postmaster  notifications about
              mail delivery problems that are caused  by  policy,
              resource, software or protocol errors.

       notify_classes (resource, software)
              The  list of error classes that are reported to the
              postmaster.

MISCELLANEOUS CONTROLS
       best_mx_transport (empty)
              Where the Postfix SMTP client should  deliver  mail
              when it detects a "mail loops back to myself" error
              condition.

       config_directory (see 'postconf -d' output)
              The default location of  the  Postfix  main.cf  and
              master.cf configuration files.

       daemon_timeout (18000s)
              How  much time a Postfix daemon process may take to
              handle a request  before  it  is  terminated  by  a
              built-in watchdog timer.

       disable_dns_lookups (no)
              Disable  DNS  lookups  in the Postfix SMTP and LMTP
              clients.

       fallback_relay (empty)
              Optional list of relay hosts for SMTP  destinations
              that can't be found or that are unreachable.

       inet_interfaces (all)
              The network interface addresses that this mail sys-
              tem receives mail on.

       ipc_timeout (3600s)
              The time limit for sending or receiving information
              over an internal communication channel.

       max_idle (100s)
              The  maximum  amount  of  time that an idle Postfix
              daemon process waits for the next  service  request
              before exiting.

       max_use (100)
              The  maximal number of connection requests before a
              Postfix daemon process terminates.

       process_id (read-only)
              The process ID of a Postfix command or daemon  pro-
              cess.

       process_name (read-only)
              The  process  name  of  a Postfix command or daemon
              process.

       proxy_interfaces (empty)
              The network interface addresses that this mail sys-
              tem  receives  mail on by way of a proxy or network
              address translation unit.

       smtp_bind_address (empty)
              An optional numerical network address that the SMTP
              client should bind to when making a connection.

       smtp_helo_name ($myhostname)
              The  hostname to send in the SMTP EHLO or HELO com-
              mand.

       smtp_host_lookup (dns)
              What mechanisms when the SMTP client uses  to  look
              up a host's IP address.

       smtp_randomize_addresses (yes)
              Randomize  the  order  of  equal-preference MX host
              addresses.

       syslog_facility (mail)
              The syslog facility of Postfix logging.

       syslog_name (postfix)
              The mail system name that is prepended to the  pro-
              cess  name  in  syslog  records,  so  that  "smtpd"
              becomes, for example, "postfix/smtpd".

SEE ALSO
       qmgr(8), queue manager
       bounce(8), delivery status reports
       scache(8), connection cache server
       postconf(5), configuration parameters
       master(8), process manager
       syslogd(8), system logging

README FILES
       SASL_README, Postfix SASL howto

LICENSE
       The  Secure  Mailer  license must be distributed with this
       software.

AUTHOR(S)
       Wietse Venema
       IBM T.J. Watson Research
       P.O. Box 704
       Yorktown Heights, NY 10598, USA

       Command pipelining in cooperation with:
       Jon Ribbens
       Oaktree Internet Solutions Ltd.,
       Internet House,
       Canal Basin,
       Coventry,
       CV1 4LY, United Kingdom.

       Connection caching in cooperation with:
       Victor Duchovni
       Morgan Stanley

                                                          SMTP(8)