[Mailman-Users] non-delivery to virtual domain
Mark Sapiro
mark at msapiro.net
Sun Oct 31 17:09:41 CET 2010
David Newman wrote:
>(Apologies for re-raising a topic I asked about here a couple of years
>ago. The instructions on Sourceforge have changed a bit since then.)
>
>New server runs OpenBSD 4.7, postfix 2.65, mailman 2.1.14, and virtual
>domains. Mail sent to/from virtual domains works fine.
>
>Different story with Mailman. Although postfix says a message addressed
>to a list is "sent" to all addresses, subscribers from virtual domains
>on this server do not receive the message. Subscribers on other domains
>not on this server do receive the message. There's no indication of
>trouble in the Mailman logs or in maillog.
What exactly does the Postfix log (maillog) say about the delivery to
one of these addresses?
>I've followed the setup instructions here, doing section 6.1.2 before
>6.1.1 (given the link about doing virtual stuff first):
>
>http://mailman.sourceforge.net/mailman-install/postfix-virtual.html
>http://mailman.sourceforge.net/mailman-install/postfix-integration.html
This normally only affects delivery TO a list in a virtual domain. If
done properly, it should not affect delivery to any non-list address
in the virtual domains.
>I've pasted the config files below.
>
>Thanks in advance for clues on getting Mailman to deliver to virtual
>addresses on this server.
This is almost certainly a Postfix issue rather than a Mailman issue.
If there is nothing in Mailman's smtp-failure log, Mailman has
delivered the message whith the local virtual recipients included to
Postfix and Postfix has accepted it.
See additional comments inline below.
>server hostname:
>mail.domain1.tld
>
>virtual domains:
>domain1.tld # (not its real name!)
>domain2.tld
>domain3.tld
>
>-----
>
>from /etc/postfix/main.cf:
>
>..
>
>myhostname = mail.domain1.tld
>mydomain = domain1.tld
>mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
>
>..
>
>alias_maps = hash:/etc/mail/aliases, hash:/usr/local/mailman/data/aliases
>
>virtual_alias_maps =
> proxy:mysql:/etc/postfix/sql/forwardings.cf
> proxy:mysql:/etc/postfix/sql/email2email.cf
> hash:/usr/local/mailman/data/domain1-tld
> hash:/usr/local/mailman/data/virtual-mailman
Full output from "postconf -n" might help.
>-----
>
>from /usr/local/mailman/Mailman/mm_cfg.py:
>
>MTA = 'Postfix'
>MAILMAN_SITE_LIST = 'mailman'
>DEFAULT_EMAIL_HOST = 'domain1.tld'
>DEFAULT_URL_HOST = 'mail.domain1.tld'
>DEFAULT_URL_PATTERN = 'https://%s/mailman/'
>PUBLIC_ARCHIVE_URL = 'https://%(hostname)s/pipermail/%(listname)s'
>IMAGE_LOGOS = '/icons/'
>POSTFIX_ALIAS_CMD = '/usr/local/sbin/postalias'
>POSTFIX_MAP_CMD = '/usr/local/sbin/postmap'
>POSTFIX_STYLE_VIRTUAL_DOMAINS = [ 'domain2.tld', 'domain3.tld' ]
># Clear the Defaults.py VIRTUAL_HOSTS entry
>VIRTUAL_HOSTS.clear()
>add_virtualhost('DEFAULT_EMAIL_HOST', 'DEFAULT_URL_HOST')
The above is backwards. It should be
add_virtualhost('DEFAULT_URL_HOST', 'DEFAULT_EMAIL_HOST')
>add_virtualhost('domain2.tld', 'domain2.tld')
>add_virtualhost('domain3.tld', 'domain3.tld')
However, nothing here affects delivery of mail FROM mailman.
>-----
>
>/usr/local/mailman/data/aliases
>
>
># The ultimate loop stopper address
>mailman-loop: /usr/local/mailman/data/owner-bounces.mbox
>
># STANZA START: mailman
># CREATED: Sat Oct 30 11:23:37 2010
>mailman: "|/usr/local/mailman/mail/mailman post mailman"
>mailman-admin: "|/usr/local/mailman/mail/mailman admin mailman"
>mailman-bounces: "|/usr/local/mailman/mail/mailman bounces mailman"
>mailman-confirm: "|/usr/local/mailman/mail/mailman confirm mailman"
>mailman-join: "|/usr/local/mailman/mail/mailman join mailman"
>mailman-leave: "|/usr/local/mailman/mail/mailman leave mailman"
>mailman-owner: "|/usr/local/mailman/mail/mailman owner mailman"
>mailman-request: "|/usr/local/mailman/mail/mailman request mailman"
>mailman-subscribe: "|/usr/local/mailman/mail/mailman subscribe mailman"
>mailman-unsubscribe: "|/usr/local/mailman/mail/mailman unsubscribe mailman"
># STANZA END: mailman
>
># STANZA START: s
># CREATED: Sat Oct 30 11:35:12 2010
>s: "|/usr/local/mailman/mail/mailman post s"
>s-admin: "|/usr/local/mailman/mail/mailman admin s"
>s-bounces: "|/usr/local/mailman/mail/mailman bounces s"
>s-confirm: "|/usr/local/mailman/mail/mailman confirm s"
>s-join: "|/usr/local/mailman/mail/mailman join s"
>s-leave: "|/usr/local/mailman/mail/mailman leave s"
>s-owner: "|/usr/local/mailman/mail/mailman owner s"
>s-request: "|/usr/local/mailman/mail/mailman request s"
>s-subscribe: "|/usr/local/mailman/mail/mailman subscribe s"
>s-unsubscribe: "|/usr/local/mailman/mail/mailman unsubscribe s"
># STANZA END: s
Likewise, the aliases above only affect delivery TO the mailman and s
lists.
>-----
>
>/usr/local/etc/mailman/data/domain1-tld:
>
>domain1.tld IGNORE
>@domain1.tld @mail.domain1.tld
This file and its reference in virtual_alias_maps is conflicting as
this says domain1.tld is a virtual alias domain and its presence in
mydestination says it's not. Also, this is obsolete in Postfix. The
current method of specifying to postfix that a domain is a virtual
alias domain is to list it in virtual_alias_domains in main.cf.
>-----
>
>/usr/local/mailman/data/virtual-mailman:
>
># LOOP ADDRESSES START
>mailman-loop at domain1.tld mailman-loop
># LOOP ADDRESSES END
>
># STANZA START: s
># CREATED: Sat Oct 30 11:35:12 2010
>s at domain1.tld s
>s-admin at domain1.tld s-admin
>s-bounces at domain1.tld s-bounces
>s-confirm at domain1.tld s-confirm
>s-join at domain1.tld s-join
>s-leave at domain1.tld s-leave
>s-owner at domain1.tld s-owner
>s-request at domain1.tld s-request
>s-subscribe at domain1.tld s-subscribe
>s-unsubscribe at domain1.tld s-unsubscribe
># STANZA END: s
And this virtual mapping only affects delivery to the s at domain1.tld
list and it's associated admin addresses, but since domain1.tld is not
in POSTFIX_STYLE_VIRTUAL_DOMAINS (which is correct because it is in
main.cf mydestination which makes it a postfix local domain), why is
this list in virtual-mailman at all.
>-----
--
Mark Sapiro <mark at msapiro.net> The highway is for gamblers,
San Francisco Bay Area, California better use your sense - B. Dylan
More information about the Mailman-Users
mailing list