diff options
| author | Stephen J. Turnbull | 2013-07-04 03:09:15 +0900 |
|---|---|---|
| committer | Stephen J. Turnbull | 2013-07-04 03:09:15 +0900 |
| commit | eabec04a40cd3e69690f2cc98f93d11efd575c8d (patch) | |
| tree | e7742146272345f6a9e8d355f03bd80040f37e10 /src | |
| parent | bab445a705ca4257f89baed025dd613870b835fd (diff) | |
| download | mailman-eabec04a40cd3e69690f2cc98f93d11efd575c8d.tar.gz mailman-eabec04a40cd3e69690f2cc98f93d11efd575c8d.tar.zst mailman-eabec04a40cd3e69690f2cc98f93d11efd575c8d.zip | |
Diffstat (limited to 'src')
| -rw-r--r-- | src/mailman/docs/MTA.rst | 80 |
1 files changed, 63 insertions, 17 deletions
diff --git a/src/mailman/docs/MTA.rst b/src/mailman/docs/MTA.rst index 6e7b4cf9f..7165c30b9 100644 --- a/src/mailman/docs/MTA.rst +++ b/src/mailman/docs/MTA.rst @@ -2,27 +2,72 @@ Hooking up your mail server =========================== -Mailman needs to be hooked up to your mail server (a.k.a. *mail transport -agent* or *MTA*) both to accept incoming mail and to deliver outgoing mail. -Mailman itself never delivers messages to the end user; it lets its immediate -upstream mail server do that. +Mailman needs to communicate with your *MTA* (*mail transport agent* +or *mail server*, the software which handles sending mail across the +Internet), both to accept incoming mail and to deliver outgoing mail. +Mailman itself never delivers messages to the end user. It sends them +to its immediate upstream MTA, which delivers them. In the same way, +Mailman never receives mail directly. Mail from outside always comes +via the MTA. -The preferred way to allow Mailman to accept incoming messages from your mail -server is to use the `Local Mail Transfer Protocol`_ (LMTP_) interface. Most -open source mail servers support LMTP for local delivery. This is much more -efficient than spawning a process just to do the delivery. +Mailman accepts incoming messages from the MTA using the `Local Mail +Transfer Protocol`_ (LMTP_) interface. Mailman can use other incoming +transports, but LMTP is much more efficient than spawning a process +just to do the delivery. Most open source MTAs support LMTP for local +delivery. If yours doesn't, and you need to use a different +interface, please ask on the `mailing list or on IRC`_. -Your mail server must also accept `Simple Mail Transfer Protocol`_ (SMTP_) -connections from Mailman, for all outgoing messages. +Mailman passes all outgoing messages to the MTA using the `Simple Mail +Transfer Protocol`_ (SMTP_). -The specific instructions for hooking your mail server up to Mailman differs -depending on which mail server you're using. Following are instructions for -Postfix. We would really appreciate contributions of configurations for Exim -and Sendmail, and welcome information about other popular open source mail -servers. +Cooperation between Mailman and the MTA requires some configuration of +both. MTA configuration differs for each of the available MTAs, and +there is a section for each one. Instructions for Postfix are given +below. We would really appreciate contributions of configurations for +Exim and Sendmail, and welcome information about other popular open +source mail servers. -Note that Mailman provides lots of configuration variables that you can use to -tweak performance for your operating environment. See the +Configuring Mailman to communicate with the MTA is straightforward, +and basically the same for all MTAs. In your ``mailman.cfg`` file, +add (or edit) a section like the following:: + + [mta] + incoming: mailman.mta.postfix.LMTP + outgoing: mailman.mta.deliver.deliver + lmtp_host: 127.0.0.1 + lmtp_port: 8024 + smtp_host: localhost + smtp_port: 25 + +This configuration is for a system where Mailman and the MTA are on +the same host. + +The ``incoming`` and ``outgoing`` parameters identify the Python +objects used to communicate with the MTA. The ``deliver`` module used +in ``outgoing`` is pretty standard across all MTAs. The ``postfix`` +module in ``incoming`` is specific to Postfix. See the section for +your MTA below for details on these parameters. + +``lmtp_host`` and ``lmtp_port`` are parameters which are used by +Mailman, but also will be passed to the MTA to identify the Mailman +host. The "same host" case is special; some MTAs (including Postfix) +do not recognize "localhost", and need the numerical IP address. If +they are on different hosts, ``lmtp_host`` should be set to the domain +name or IP address of the Mailman host. ``lmtp_port`` is fairly +arbitrary (there is no standard port for LMTP). Use any port +convenient for your site. "8024" is as good as any, unless another +service is using it. + +``smtp_host`` and ``smtp_port`` are parameters used to identify the +MTA to Mailman. If the MTA and Mailman are on separate hosts, +``smtp_host`` should be set to the domain name or IP address of the +MTA host. ``smtp_port`` will almost always be 25, which is the +standard port for SMTP. (Some special site configurations set it to a +different port. If you need this, you probably already know that, +know why, and what to do, too!) + +Mailman also provides many other configuration variables that you can +use to tweak performance for your operating environment. See the ``src/mailman/config/schema.cfg`` file for details. @@ -139,6 +184,7 @@ Sendmail Contributions are welcome! +.. _`mailing list or on IRC`: START.html#contact-us .. _`Local Mail Transfer Protocol`: http://en.wikipedia.org/wiki/Local_Mail_Transfer_Protocol .. _LMTP: http://www.faqs.org/rfcs/rfc2033.html |
