[Pkg-exim4-users] Debian, Exim4, GID, desperated...
Thomas Koch
thkoch at ruhrgebietswiki.de
Tue Mar 6 17:26:51 CET 2007
Hallo Marc,
my informations come from
/usr/share/doc/mailman/README.Exim4.Debian
I've not found this file anywhere on the net, so I post it at the end of this
mail. Maybe you find any problem in it.
There's no /usr/share/doc/mailman/README.EXIM.gz on my system.
With Debian Sarge Testing I mean running a Debian Sarge with mostly all
packages from testing, which means that it's more an Etch now.
Best Regards, Thomas
/usr/share/doc/mailman/README.Exim4.Debian:
Here's a way to integrate mailman with Exim4 that will automatically
play nice with mailman's virtual domains support and VERP. It does not
require dedicating domain(s) to mailman.
Configure your Mailman (in /etc/mailman/mm_cfg.py) with:
MTA = 'Postfix'
POSTFIX_ALIAS_CMD = '/bin/true'
POSTFIX_MAP_CMD = 'chgrp Debian-exim'
and list all your Mailman domains in "POSTFIX_STYLE_VIRTUAL_DOMAINS".
Please note that the chgrp command above will not work when creating a
list in the web interface: the user www-data will not be allowed to do
this. You can circumvent this problem by creating new lists with the
'newlist' command line command or using instead:
POSTFIX_MAP_CMD = 'chmod o+r'
This will allow local users (with shell access to the list server) to
see the list of all Mailman mailing lists, but not much more.
Put this in your exim4 main configuration (if you use a split config,
for example /etc/exim4/conf.d/main/04_local_mailman_macros)
---------------------- BEGIN EXIM4 MAIN ----------------------------
# Home dir for your Mailman installation -- aka Mailman's prefix
# directory.
MAILMAN_HOME=/var/lib/mailman
MAILMAN_WRAP=MAILMAN_HOME/mail/mailman
# User and group for Mailman, should match your --with-mail-gid
# switch to Mailman's configure script.
MAILMAN_USER=list
MAILMAN_GROUP=daemon
---------------------- END EXIM4 MAIN ----------------------------
Put this in your exim4 router configuration (if you use a split
config, then for example /etc/exim4/conf.d/router/970_local_mailman)
---------------------- BEGIN EXIM4 ROUTER ----------------------------
# Messages get sent out with
# envelope from "mailman-bounces at virtual_domain"
# But mailman doesn't put such addresses
# in the aliases. Recognise these here.
mailman_workaround:
domains = +local_domains
require_files = MAILMAN_HOME/lists/$local_part/config.pck
driver = accept
local_parts = mailman
local_part_suffix_optional
local_part_suffix = -bounces : -bounces+* : \
-confirm+* : -join : -leave : \
-subscribe : -unsubscribe : \
-owner : -request : -admin
transport = mailman_transport
group = MAILMAN_GROUP
# Mailman lists
mailman_router:
domains = +local_domains
condition =
${lookup{$local_part@$domain}lsearch{MAILMAN_HOME/data/virtual-mailman}{1}
{0}}
require_files = MAILMAN_HOME/lists/$local_part/config.pck
driver = accept
local_part_suffix_optional
local_part_suffix = -bounces : -bounces+* : \
-confirm+* : -join : -leave : \
-subscribe : -unsubscribe : \
-owner : -request : -admin
transport = mailman_transport
group = MAILMAN_GROUP
---------------------- END EXIM4 ROUTER ----------------------------
Put this in your exim4 transport configuration (if you use a split
config, then for example /etc/exim4/conf.d/transport/40_local_mailman)
---------------------- BEGIN EXIM4 TRANSPORT -------------------------
mailman_transport:
driver = pipe
command = MAILMAN_WRAP \
'${if def:local_part_suffix \
{${sg{$local_part_suffix}{-(\\w+)(\\+.*)?}{\$1}}} \
{post}}' \
$local_part
current_directory = MAILMAN_HOME
home_directory = MAILMAN_HOME
user = MAILMAN_USER
group = MAILMAN_GROUP
freeze_exec_fail = true
---------------------- END EXIM4 TRANSPORT -------------------------
You are done!
-- Lionel Elie Mamane <lmamane at debian.org>, Wed, 29 Nov 2006 19:53:13 +0100
More information about the Pkg-exim4-users
mailing list