X-Git-Url: https://git.exim.org/exim-website.git/blobdiff_plain/4bec300304fbfa4a6881b15145437ddaef530acd..6bc094771cb3ac2e80fb8669432dde5cf3740c8d:/howto/mailman.html diff --git a/howto/mailman.html b/howto/mailman.html index 9b375e0..a547de2 100644 --- a/howto/mailman.html +++ b/howto/mailman.html @@ -1,192 +1,33 @@ - +
-Mailman is a list manager with web front end and built in - archiving functions. Details can be found at http://www.list.org/
+Mailman is a Mailing List + Manager (MLM). There are 2 sets of documents on integration of + Mailman with exim:-
-There is no mailman configuration needed other than the - standard options detailed in the mailman install documentation. - The exim configuration is transparent to mailman. The uid/gid - settings for mailman must match those in the config fragments - given below.
+The exim configuration is built so that a list created within - mailman automagically appears to exim without the need for - additional alias files etc to be changed.
- -The drawback of this configuration is that it will work poorly - on systems supporting lists in several different mail domains - - for that matter mailman itself has poor support for this right - now. This may change in the future
- -The configuration file segments included are to be built on top - of an already functional exim configuration, which accepts mail - for the domain which the list resides in (ie that domain is - already in local_domains - should this domain be separate - from the others handled by this exim, then add the list domain to - local_domains, add a domains=my.list.domain - option to each of the directors and you may wish to exclude that - domain from the other directors.
- -Your exim configuration also needs a working alias - configuration, with entries (within the list domain) for - mailman, mailman-request and - mailman-admin (plus any other global contact addresses - for the list master.
- -There are 3 config file sections below which need pasting into - the appropriate parts of the main exim config file. The first one - may also need tailoring to your mailman configuration
- --## Top section of config file - macro definitions -## Tailor these to fit your installation -## pretty much everything else should just fit... -## -# home dir for mailman -MAILMAN_HOME=/home/mailman -# wrapper script for mailman -MAILMAN_WRAP=MAILMAN_HOME/mail/wrapper -# user and group for mailman -MAILMAN_UID=exim -MAILMAN_GID=exim --
-## Transports section -## -## Three transports for list mail, request mail and admin mail -## respectively -## Mailman is installed in MAILMAN_HOME -## Mailman is configured to be invoked as user exim -list_transport: - driver = pipe - command = MAILMAN_WRAP post ${lc:$local_part} - current_directory = MAILMAN_HOME - home_directory = MAILMAN_HOME - user = MAILMAN_UID - group = MAILMAN_GID - -list_request_transport: - driver = pipe - command = MAILMAN_WRAP mailcmd ${lc:$local_part} - current_directory = MAILMAN_HOME - home_directory = MAILMAN_HOME - user = MAILMAN_UID - group = MAILMAN_GID - -list_admin_transport: - driver = pipe - command = MAILMAN_WRAP mailowner ${lc:$local_part} - current_directory = MAILMAN_HOME - home_directory = MAILMAN_HOME - user = MAILMAN_UID - group = MAILMAN_GID - -### end of transports section fragment --
-## Directors section [this deals with local addresses] -## -## First 2 directors rewrite list-owner or owner-list to list-admin -## This is only done if the list exists. -## List existence checks are done by seeing if the file -## MAILMAN_HOME/lists/- -/config.db -## exists. - -list_owner_director: - driver = smartuser - require_files = MAILMAN_HOME/lists/${lc:$local_part}/config.db - suffix = "-owner" - new_address = "${lc:$local_part}-admin@${domain}" - -owner_list_director: - driver = smartuser - require_files = MAILMAN_HOME/lists/${lc:$local_part}/config.db - prefix = "owner-" - new_address = "${lc:$local_part}-admin@${domain}" - -## -## Next 3 directors direct admin, request and list mail to the appropriate -## transport. List existence is checked as above. - -list_admin_director: - driver = smartuser - suffix = -admin - require_files = MAILMAN_HOME/lists/${lc:$local_part}/config.db - transport = list_admin_transport - -list_request_director: - driver = smartuser - suffix = -request - require_files = MAILMAN_HOME/lists/${lc:$local_part}/config.db - transport = list_request_transport - -list_director: - driver = smartuser - require_files = MAILMAN_HOME/lists/${lc:$local_part}/config.db - transport = list_transport - -## End of directors fragment -## End of config files bits -
Exim should be configured to allow reasonable volume - ie no -setting max_recipients down to a silly value, and with normal -degrees of security - ie allowing relaying from 127.0.0.1 -(thats vital), but pretty much nothing else. Parallel deliveries and -other tweaks can also be used. Delay warning messages should be -switched off or configured to only happen for non-list mail - unless -you like receiving tons of mail when a host is down.
- -One solution passed to me for handling virtual domains was - - Since I use mailman in a virtual domain configuration with a - separate installation for each virtual domain, I did a slight - modification like this:
- --## transport configurations - -command = "/virtual/${domain}/mailman/mail/wrapper post ${lc:$local_part}" -current_directory = /virtual/${domain}/mailman -home_directory = /virtual/${domain}/mailman - -## and in the director part: - -require_files = /virtual/${domain}/mailman/lists/${lc:$local_part}/config.db - -+