2
2
Hooking up your mail server
3
3
===========================
5
Mailman needs to be hooked up to your mail server (a.k.a. *mail transport
6
agent* or *MTA*) both to accept incoming mail and to deliver outgoing mail.
7
Mailman itself never delivers messages to the end user; it lets its immediate
8
upstream mail server do that.
10
The preferred way to allow Mailman to accept incoming messages from your mail
11
server is to use the `Local Mail Transfer Protocol`_ (LMTP_) interface. Most
12
open source mail server support LMTP for local delivery, and this is much more
13
efficient than spawning a process just to do the delivery.
15
Your mail server should also accept `Simple Mail Transfer Protocol`_ (SMTP_)
16
connections from Mailman, for all outgoing messages.
18
The specific instructions for hooking your mail server up to Mailman differs
19
depending on which mail server you're using. The following are instructions
20
for the popular open source mail servers.
22
Note that Mailman provides lots of configuration variables that you can use to
23
tweak performance for your operating environment. See the
5
Mailman needs to communicate with your *MTA* (*mail transport agent*
6
or *mail server*, the software which handles sending mail across the
7
Internet), both to accept incoming mail and to deliver outgoing mail.
8
Mailman itself never delivers messages to the end user. It sends them
9
to its immediate upstream MTA, which delivers them. In the same way,
10
Mailman never receives mail directly. Mail from outside always comes
13
Mailman accepts incoming messages from the MTA using the `Local Mail
14
Transfer Protocol`_ (LMTP_) interface. Mailman can use other incoming
15
transports, but LMTP is much more efficient than spawning a process
16
just to do the delivery. Most open source MTAs support LMTP for local
17
delivery. If yours doesn't, and you need to use a different
18
interface, please ask on the `mailing list or on IRC`_.
20
Mailman passes all outgoing messages to the MTA using the `Simple Mail
21
Transfer Protocol`_ (SMTP_).
23
Cooperation between Mailman and the MTA requires some configuration of
24
both. MTA configuration differs for each of the available MTAs, and
25
there is a section for each one. Instructions for Postfix are given
26
below. We would really appreciate contributions of configurations for
27
Exim and Sendmail, and welcome information about other popular open
30
Configuring Mailman to communicate with the MTA is straightforward,
31
and basically the same for all MTAs. In your ``mailman.cfg`` file,
32
add (or edit) a section like the following::
35
incoming: mailman.mta.postfix.LMTP
36
outgoing: mailman.mta.deliver.deliver
42
This configuration is for a system where Mailman and the MTA are on
45
The ``incoming`` and ``outgoing`` parameters identify the Python
46
objects used to communicate with the MTA. The ``deliver`` module used
47
in ``outgoing`` is pretty standard across all MTAs. The ``postfix``
48
module in ``incoming`` is specific to Postfix. See the section for
49
your MTA below for details on these parameters.
51
``lmtp_host`` and ``lmtp_port`` are parameters which are used by
52
Mailman, but also will be passed to the MTA to identify the Mailman
53
host. The "same host" case is special; some MTAs (including Postfix)
54
do not recognize "localhost", and need the numerical IP address. If
55
they are on different hosts, ``lmtp_host`` should be set to the domain
56
name or IP address of the Mailman host. ``lmtp_port`` is fairly
57
arbitrary (there is no standard port for LMTP). Use any port
58
convenient for your site. "8024" is as good as any, unless another
61
``smtp_host`` and ``smtp_port`` are parameters used to identify the
62
MTA to Mailman. If the MTA and Mailman are on separate hosts,
63
``smtp_host`` should be set to the domain name or IP address of the
64
MTA host. ``smtp_port`` will almost always be 25, which is the
65
standard port for SMTP. (Some special site configurations set it to a
66
different port. If you need this, you probably already know that,
67
know why, and what to do, too!)
69
Mailman also provides many other configuration variables that you can
70
use to tweak performance for your operating environment. See the
24
71
``src/mailman/config/schema.cfg`` file for details.
30
Contributions are welcome!