[Mailman-Users] Mailman + Postfix + Virtual Maps = initial mailman list works but new lists don't

Aaron Couch aaron at zivtech.com
Sun May 30 21:28:45 CEST 2010


*in short:
*i can get mailman to work with the 'mailman' list but not with subsequently
added lists.
*
disclaimer:*
I've searched long and hard for an answer to this, including the archives of
this mailing list. There were similar threads but none of the solutions
solved this problem including:
http://www.mail-archive.com/mailman-users@python.org/msg55226.html and
http://www.mail-archive.com/mailman-users%40python.org/msg55226.html and
http://www.mail-archive.com/mailman-users%40python.org/msg54930.html

*versions:*
ubuntu          9.04
mailman        2.1.12
postfix          2.5.5

*what works:*
postfix virtual domains with mysql work fine.
mailman with apache works fine. i'm able to create new lists and the alias
and virtual-mailman files are updated. I receive the proper "you've been
added" emails.
the initial mailman at mydomain.org list and email works. i am able to send and
receive email and add new users.

*what doesn't work:*
any lists added after the inital 'mailman' list fails. it is added through
the web interface and added to the alias and virtual mailman files. the new
users get the "you've been added email". however any emails sent to that
list, let's call it pleasework at mydomain.org, fail.

*the logs:*
here is what the mail.log file says for emails that fail to
pleasework at mydomain.org:

May 29 20:13:44 servername postfix/virtual[12598]: 4936C5CB9F: to=<
pleasework at mydomain.org>, relay=virtual, delay=888, delays=888/0.05/0/0.01,
dsn=4.1.1, status=SOFTBOUNCE (unknown user: "pleasework at mydomain.org")

here is a successful log message to mailmain at mydomain.org:

May 30 16:15:15 servername postfix/pipe[31452]: 51F265CBCB: to=<
mailman at lists.mydomain.org>, orig_to=<mailman at mydomain.org>, relay=mailman,
delay=0.66, delays=0.25/0.01/0/0.4, dsn=2.0.0, status=sent (delivered via
mailman service)

*uninformed analysis:*
it seems like the mailman-virtual map isn't working. i've tried changing the
permissions in the mailmain-virtual file in case that was an issue but to no
avail. again the 'pleasework' list does show up in it and the alias file as
well:

# LOOP ADDRESSES START
mailman-loop at mydomain.org        mailman-loop
# LOOP ADDRESSES END

# STANZA START: awesome
# CREATED: Sun May 30 17:25:53 2010
pleasework at mydomain.org              pleasework

I have had a hickup when trying to regenerate the alias files. The
bin/genaliases file had the following errors:

Traceback (most recent call last):
  File "bin/genaliases", line 116, in <module>
    main()
  File "bin/genaliases", line 83, in main
    modulename = 'Mailman.MTA.' + mm_cfg.MTA
TypeError: cannot concatenate 'str' and 'NoneType' objects

In my mm_cfg I had MTA=None which is recommended when using the
'/usr/share/mailman/postfix-to-mailman.py'. I tried changing it to MTA=""
but still got an error. It succeeded when I just removed the MTA variable.
It says to add the list info to the /etc/aliases file and use the newaliases
command but in my main.cf file I have the mailman aliases file added to the
alias_maps variable (see below) so I would think that shouldn't be an issue.

*my setup:*

mm_cfg.py file:
MAILMAN_SITE_LIST = 'mailman'
DEFAULT_URL_PATTERN = 'http://%s/mailman/'
PRIVATE_ARCHIVE_URL = '/cgi-bin/mailman/private'
IMAGE_LOGOS         = '/images/mailman/'
DEFAULT_EMAIL_HOST = 'mydomain.org'
DEB_LISTMASTER = 'listmaster at mydomain.org'
DEFAULT_URL_HOST   = 'lists.mydomain.org'
add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST)
add_virtualhost('lists.mediamobilizingproject.org', '
lists.mediamobilizingproject.org')
DEFAULT_SERVER_LANGUAGE = 'en'
USE_ENVELOPE_SENDER    = 0
DEFAULT_SEND_REMINDERS = 0

postconf -n :
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases, hash:/var/lib/mailman/data/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
config_directory = /etc/postfix
delay_warning_time = 4h
disable_vrfy_command = yes
inet_interfaces = all
mailbox_size_limit = 0
masquerade_domains = mail.mydomain.org
masquerade_exceptions = root
mydestination = mediamoblizing.org, localhost.mydomain.org, , localhost
myhostname = servername.mydomain.org
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = mydomain.org
readme_directory = no
recipient_delimiter = +
relay_domains = lists.mydomain.org, lists.mediamobilizingproject.org
relay_recipient_maps = hash:/var/lib/mailman/data/virtual-mailman
relayhost =
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_use_tls = yes
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_hostname, permit
smtpd_recipient_restrictions = reject_unknown_sender_domain,
reject_unknown_recipient_domain, reject_unauth_pipelining,
permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_path = private/dovecot-auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_sender_restrictions = reject_unknown_sender_domain
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /etc/ssl/certs/ssl-mail.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-mail.key
smtpd_tls_mandatory_ciphers = medium, high
smtpd_tls_mandatory_protocols = SSLv3, TLSv1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
soft_bounce = yes
tls_random_source = dev:/dev/urandom
transport_maps = hash:/etc/postfix/transport
unknown_address_reject_code = 554
unknown_client_reject_code = 554
unknown_hostname_reject_code = 554
virtual_alias_maps = proxy:mysql:/etc/postfix/my_alias_maps.cf,
hash:/var/lib/mailman/data/virtual-mailman
virtual_gid_maps = static:8
virtual_mailbox_base = /var/vmail
virtual_mailbox_domains = mydomain.org
virtual_mailbox_maps = proxy:mysql:/etc/postfix/my_mailbox_maps.cf
virtual_minimum_uid = 150
virtual_transport = virtual
virtual_uid_maps = static:150


Thanks for any assistance you can offer!

best,

-Aaron


More information about the Mailman-Users mailing list