[Mailman-Users] Help in understanding Mailman setup

Robert Moskowitz rgm at htt-consult.com
Fri Dec 3 00:32:20 CET 2010

Major success.  See below.

On 12/02/2010 10:45 AM, Mark Sapiro wrote:
> Robert Moskowitz wrote:
>> First my system is Fedora 12 with Postfix and an SQL database for the
>> users, virtual domains, forwarders, and transport.  See:
>> http://www.howtoforge.com/virtual-users-domains-postfix-courier-mysql-squirrelmail-fedora-12-x86_64
>> So I installed Mailman, ran the script to set its password, then the
>> modified the config file to support virtual host
>> (http:/mailman.domain.com/mailman) and postfix.  After this, I could run
>> the script that created the mailman list that then prints a bunch of
>> entries to add to /etc/aliases.  I am having major problems with these
>> aliases.  I don't know how to put commands in the SQL database (perhaps
>> it SHOULD work with the forwarder table) and the SQL virtual domain
>> setup is NOT working with what Mailman is expecting and these aliases
>> commands.  So that is one problem I am not figuring out.
> See below.
>> But I went and created a second list via the http://...../mailman/create
>> URL.  Where is the information about this list kept?  I can't find it.
>> No changes were made to /etc/aliases for this new list.  Perhaps if I
>> saw what a web created list needed I might figure out a way to get
>> things integrated.
> All of a list's configuration and membership date is in Mailman's
> lists/LISTNAME/ directory in a Python pickle file named config.pck.
> You should see both a mailman/ directory and a<second_listname>/
> directory, ewch containing config.pck, config.pck.last and possibly a
> few other files.

On this fedora 12 system I finally found the directory at:


Is there a 'good' way to list the content of the config.pck file?  
special characters in it.
> You may be thinking that the 'mailman' list data is in the file
> data/sitelist.cfg. That is not the case. The data/sitelist.cfg is a
> suggestion intended to be used as input to config_list for the site
> list because normal defaults may not be appropriate for the site list.
> I.e.,
>    bin/config_list -i data/sitelist.cfg mailman
>> I have asked over on the postfix list if anyone there is running Postfix
>> with SQL and mailman and so far only one person has piped up siging the
>> praises of Postfix with the SQL backend, but nothing on Mailman.  So I
>> need a bit of help here...
> Mailman's aliases must be processed by Postfix's local delivery module.
> If you are dealing with them manually, they can be put in
> /etc/aliases, or Mailman/Postfix can be configured to generate them
> automatically. However, this assumes that the delivery module for the
> domain is Postfix local delivery. If you have put something in main.cf
> that uses some other delivery for the mailman.domain.com domain. In
> that case, you may find the FAQ at<http://wiki.list.org/x/ZoCj>  of
> interest.

this is the same as the doc files I have been reading.  So I studied 
postfix a bit more and took a plunge and got most things working.  
Rather I got the list I created with the web interface working, but not 
the mailman list I created with the script in the beginning.  Now that 
might have been because I did not have other things set up right.

I have one test user subscribed to both the 'mailman' and the 'newlist' 
lists.  The 'newlist' works.  But with the 'mailman' list I get the error:

<mailman at mailman.htt-consult.com>: mail for mailman.htt-consult.com 
loops back to myself

Note this is the same domain as newlist at mailman.htt-consult.com  And 
mailman.htt-consult.com is a virtual host name.

> If you need further help, please post the output of 'postconf -n', the
> relevant parts of main.cf and the delivery status message from the
> Postfix log or the received DSN when you attempt to mail to a list
> address.

When I first ran the '.../newlist mailman' it created the mailman list 
and printed out lines to add to /etc/aliases and then to run 
newaliases.  Now when I ran this I had NOT added the MTA line to the 
mm_cfg.py file and that might have been why it was printed in this 
manner?  Anyway below is my current mm_cfg.py and output from 'postconf 
-n'.  I am planning on doing a rebuild of the system and see if I can 
get through in one go-around a complete system build.  If I can, then I 
can move my mail folders over from the running system and go live with 
the new.  If not, well some more fiddling until I can try again....

mm-cfg.py (comment lines pulled for compactness):

# -*- python -*-

from Defaults import *
import pwd, grp

MAILMAN_UID = pwd.getpwnam('mailman')[2]
MAILMAN_GID = grp.getgrnam('mailman')[2]

from socket import *
     fqdn = getfqdn()
     fqdn = 'mm_cfg_has_unknown_host_domains'

DEFAULT_URL_HOST   = 'mailman.htt-consult.com'
DEFAULT_EMAIL_HOST = 'mailman.htt-consult.com'


POSTFIX_STYLE_VIRTUAL_DOMAINS = 'mailman.htt-consult.com'

MTA = 'Postfix'

postconf -n:

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
content_filter = amavis:[]:10024
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
mydestination = klovia.htt-consult.com, localhost, localhost.localdomain
myhostname = klovia.htt-consult.com
mynetworks =
newaliases_path = /usr/bin/newaliases.postfix
proxy_read_maps = $local_recipient_maps $mydestination 
$virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps 
$virtual_mailbox_domains $relay_recipient_maps $relay_domains 
$canonical_maps $sender_canonical_maps $recipient_canonical_maps 
$relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.5/README_FILES
receive_override_options = no_address_mappings
sample_directory = /usr/share/doc/postfix-2.6.5/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_recipient_restrictions = permit_mynetworks, 
permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
smtpd_use_tls = yes
transport_maps = proxy:mysql:/etc/postfix/mysql-virtual_transports.cf
unknown_local_recipient_reject_code = 550
virtual_alias_domains =
virtual_alias_maps = 
virtual_gid_maps = static:5000
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_limit_maps = 
virtual_mailbox_limit_override = yes
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_maildir_extended = yes
virtual_maildir_limit_message = The user you are trying to reach is over 
virtual_overquota_bounce = yes
virtual_uid_maps = static:5000

More information about the Mailman-Users mailing list