[Mailman-Users] Aliases problem

Brad Knowles brad.knowles at skynet.be
Sat Jul 3 01:22:32 CEST 2004

At 3:57 PM -0700 2004-07-02, Foo, Randy wrote:

>  I'm running postfix 2.0.16 with mailman 2.1.2., on Red Hat 9.  When I
>  try to create a new list via the web interface, the aliases file does
>  not get updated.

	The README.POSTFIX file explains this process.  You can find a 
copy of this file at 
(assuming the CVS web interface on SourceForge is working correctly).

	In this file, you will find the following section:


     You can integrate Postfix and Mailman such that when new lists are
     created, or lists are removed, Postfix's alias database will be
     automatically updated.  The following are the steps you need to
     take to make this work.

     In the description below, we assume that you've installed Mailman
     in the default location, i.e. /usr/local/mailman.  If that's not
     the case, adjust the instructions according to your use of
     configure's --prefix and --with-var-prefix options.

     - If you are using virtual domains and you want Mailman to honor
       your virtual domains, read the section below first!

     - Add this to the bottom of the $prefix/Mailman/mm_cfg.py file:

       MTA = 'Postfix'

       The MTA variable names a module in Mailman/MTA which contains the
       MTA-specific functions to be executed when a list is created or

     - Look at the Defaults.py file for the variables POSTFIX_ALIAS_CMD
       and POSTFIX_MAP_CMD command.  Make sure these point to your
       postalias and postmap programs respectively.  Remember that if
       you need to make changes, do it in mm_cfg.py.

     - Run the genaliases script to initialize your aliases file.

       % cd /usr/local/mailman
       % bin/genaliases

       Make sure that the owner of the data/aliases and data/aliases.db
       file is `mailman' and that the group owner for those files is
       `mailman'.  E.g.:

       % su
       % chown mailman:mailman data/aliases*

     - Hack your Postfix's main.cf file to include the following path
       in your alias_maps variable:


       (no trailing .db).  Do not include this in your alias_database
       variable.  This is because you do not want Postfix's newaliases
       command to modify Mailman's aliases.db file, but you do want
       Postfix to consult aliases.db when looking for local addresses.

       You probably want to use a hash: style database for this entry.
       Here's an example:

       alias_maps = hash:/etc/postfix/aliases,

     - When you configure Mailman, use the --with-mail-gid=mailman
       switch (actually, this will be the default if you configured
       Mailman after adding the `mailman' owner).  Because the owner of
       the aliases.db file is `mailman', Postfix will execute Mailman's
       wrapper program as uid and gid mailman.

     That's it!  One caveat: when you add or remove a list, the
     aliases.db file will updated, but it will not automatically run
     "postfix reload".  This is because you need to be root to run this
     and suid-root scripts are not secure.  The only effect of this is
     that it will take about a minute for Postfix to notice the change
     to the aliases.db file and update its tables.  I consider this a
     minor inconvenience.

	Unfortunately, since you're using Redhat, I have to assume that 
you used a binary RPM to install Mailman.  See 
for more information.

Brad Knowles, <brad.knowles at skynet.be>

"They that can give up essential liberty to obtain a little temporary
safety deserve neither liberty nor safety."
     -Benjamin Franklin, Historical Review of Pennsylvania.

   SAGE member since 1995.  See <http://www.sage.org/> for more info.

More information about the Mailman-Users mailing list