[Mailman-Users] I guess something wrong with Mailman intergrating Sendmail

Tom zhaoh at cnic.cn
Mon Mar 21 10:17:08 CET 2005


Hi all,

Enviorment:
My box's OS is Red Hat Enterprise Linux 3.
The mailman version is 2.1.5.
The python version is 2.2.3-5.
The Sendmail version is 8.12.10-1.

I install mailman according to Installlation Manual Release 2.1 by Barry Warsaw as follows.

1. Add the group and user
% groupadd mailman
% useradd -g mailman mailman -c GNU Mailman

2. Create the installation directory
% cd /usr/local
% mkdir mailman
% chgrp mailman mailman
$ chown mailman mailman
% chmod a+rx,g+ws mailman

3. Build and install Mailman
% su - mailman
% cd /usr/local/src/mailman-<version>
% ./configure --prefix=/usr/local/mailman --with-cgi-gid=apache
% make
% make install

4. Check your installation
% cd /usr/local/mailman/bin
% ./bin/check_perms -f
The output tell us 'No problems found'.

5. Set up your web server
Add the folowing lines to the httpd.conf and then restart the httpd server.
#mailman: by kevin
ScriptAlias /mailman/ "/usr/local/mailman/cgi-bin/"
#mailman: by kevin 2005.3.17

Alias   /pipermail/ "/usr/local/mailman/archives/public/"
<Directory "/usr/local/mailman/archives/public/">
        AddDefaultCharset Off
</Directory>

6. Set up your mail server(I guess maybe something wrong in this step for I am quite new to sendmail and I don't the detailed configure and the exact operation.)
6.1 Sendmail ``smrsh'' compatibility
% cd /etc/smrsh/
% ln -s /usr/local/mailman/mail/mailman mailman
6.2 Integrating Sendmail and Mailman by David Champion's mm-handler.readme.

6.2.1 Copy mailman.mc, and make any changes you need at your site. 
% cd /usr/local/src/mailman-2.1.5/contrib/
% cp mailman.mc /etc/mail/mailman.mc
In file /etc/mail/mailman.mc,I changed the OS and the paths to procmail as follows:
define(`PROCMAIL_MAILER_PATH', `/usr/bin/procmail')
FEATURE(`local_procmail')
OSTYPE(linux)dnl
DOMAIN(generic)dnl

6.2.2 Install mm-handler.
% cp /usr/local/src/mailman-2.1.5/contrib//mm-hander /etc/mail/mm-handler

6.2.3 Edit mm-handler, and make any changes you need at your site.
In file /etc/mail/mm-handler, I changed the following two lines.
$MMWRAPPER = "/usr/local/mailman/mail/mailman";
$MMLISTDIR = "/usr/local/mailman/lists";

6.2.4 You should set up a virtusertable. Be sure to make this map, too!
In file /etc/mail/virtusertable,there is only one entry for my mailman domain, which is:
@app.sdg.ac.cn                  mailman-owner at app.sdg.ac.cn
I made the map even though I don't if this is correct or suitable for such situation.
% makemap hash /etc/mail/virtusertable </etc/mail/virtusertable

6.2.5 You absolutely must have a mailertable.
In file /etc/mail/mailertable, there is only one entry for my mailman domain, which is:
app.sdg.ac.cn           mailman:app.sdg.ac.cn
I also made the map(I appreciate if someone correct me.).
% makemap hash /etc/mail/mailertable </etc/mail/mailertable

6.2.6 The mailer definition
I made no change. And here is the end part of file /etc/mail/mailman.mc
## Special flags! See
##      http://www.sendmail.org/~ca/email/doc8.10/op-sh-5.html#sh-5.4
## Note especially the absence of the "m" and "n" flags. THIS IS
## IMPORTANT: mm-handler assumes this behavior to avoid having to know
## too much about address parsing and other RFC-2822 mail details.

Mmailman,       P=/etc/mail/mm-handler, F=rDFMhlqSu, U=mailman:other,
                S=EnvFromL, R=EnvToL/HdrToL,
                A=mm-handler $h $u

6.2.7 Generate your new sendmail.cf file (The most probably wrong doing, I think, because the newly created sendmail.cf is smaller than original one.)
$ cd /etc/mail/
% m4 /usr/share/sendmail-cf/m4/cf.m4 ./sendmail.mc > ./sendmail.cf

6.2.8 Stop and restart sendmail on your list server.
$ /etc/init.d/sendmail stop
$ /etc/init.d/sendmail start

It's over for seting up mail server.


7. Set up cron
% su -
% cd /usr/local/mailman/cron
% crontab -u mailman ./crontab.in

8. Start the Mailman qrunner
% /usr/local/mailman/bin/mailmanctl start
% cp /usr/local/mailman/scripts/mailman /etc/init.d/mailman
% chkconfig --add mailman


I succeed in create new list but the letter sent by the mail account in this new list cannot be delivered to others.
And following is the /var/log/maillog message. It seems the sendmai doesn't work at all.

Mar 21 08:58:40 app sendmail[26260]: j2L0weGU026260: SYSERR(root): rewrite: excessive recursion (max 50), ruleset canonify
Mar 21 08:58:40 app sendmail[26259]: j2L0weXQ026259: to=qinxin at cnic.cn, ctladdr=apache (48/48), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=32348, relay=[127.0.0.1] [127.0.0.1], dsn=5.0.0, stat=Service unavailable
Mar 21 08:58:40 app sendmail[26259]: j2L0weXQ026259: j2L0weXR026259: DSN: Service unavailable
Mar 21 08:58:40 app sendmail[26260]: j2L0weGV026260: SYSERR(root): rewrite: excessive recursion (max 50), ruleset canonify
Mar 21 08:58:40 app sendmail[26259]: j2L0weXR026259: to=apache, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=33372, relay=[127.0.0.1], dsn=5.0.0, stat=Service unavailable
Mar 21 08:58:40 app sendmail[26260]: j2L0weGV026260: from=<>, size=3372, class=0, nrcpts=0, bodytype=8BITMIME, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
Mar 21 08:58:40 app sendmail[26259]: j2L0weXR026259: j2L0weXS026259: return to sender: Service unavailable
Mar 21 08:58:40 app sendmail[26260]: j2L0weGX026260: SYSERR(root): rewrite: excessive recursion (max 50), ruleset canonify
Mar 21 08:58:40 app sendmail[26259]: j2L0weXS026259: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=34396, relay=[127.0.0.1] [127.0.0.1], dsn=5.0.0, stat=Service unavailable
Mar 21 08:58:40 app sendmail[26260]: j2L0weGX026260: from=<>, size=4396, class=0, nrcpts=0, bodytype=8BITMIME, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
Mar 21 08:58:40 app sendmail[26259]: j2L0weXR026259: Losing ./qfj2L0weXR026259: savemail panic
Mar 21 08:58:40 app sendmail[26259]: j2L0weXR026259: SYSERR(apache): savemail: cannot save rejected email anywhere


Thanks in advance.

Cheers.
ZhaoHua




More information about the Mailman-Users mailing list