Hi,

I'm using mailman 2.1.11 on gentoo AMD64.
It's running with postfix, dspam and virtual domains/users (managed by postfixadmin).

My problem is that all emails sent to a mailing list fall in the catchall.
I'm using a specifig subdomain for the lists, ml.domain.com and I configured it with postfix admin to use mailman transport instead of virtual. It seems that postfix strips the ml. in the subdomain, acts like it was sent to domain.com, and then deliver the mail (using virtual transport) to the catchall since no mail account exists by the list name.

May 5 09:48:28 srv1 postfix/qmgr[30291]: EA9AC7746063: from=<gh...@domain.com>, size=802, nrcpt=1 (queue active) May 5 09:48:28 srv1 postfix/cleanup[28540]: 4F22A77460A4: message-id=<49ffef39.9080...@domain.com> May 5 09:48:28 srv1 postfix/qmgr[30291]: 4F22A77460A4: from=<gh...@domain.com>, size=1240, nrcpt=1 (queue active) May 5 09:48:28 srv1 postfix/lmtp[28542]: EA9AC7746063: to=<catch...@domain.com>, orig_to=<inte...@ml.domain.com>, relay=mail.domain.com[/var/run/dspam/dspam.sock], delay=0.94, delays=0.35/0/0/0.59, dsn=2.6.0, status=sent (250 2.6.0 <catch...@domain.com> Message accepted for delivery)
May  5 09:48:28 srv1 postfix/qmgr[30291]: EA9AC7746063: removed
deliver(catch...@domain.com): May 05 09:48:29 Info: msgid=<49ffef39.9080...@domain.com>: saved mail to INBOX
May  5 09:48:29 srv1 postfix/qmgr[30291]: 4F22A77460A4: removed
May 5 09:48:29 srv1 postfix/pipe[28546]: 4F22A77460A4: to=<catch...@domain.com>, relay=virtual, delay=0.78, delays=0.54/0/0/0.25, dsn=2.0.0, status=sent (delivered via virtual service)

Here's the relevant part of my configuration.
main.cf :
alias_database = dbm:/etc/mail/aliases
alias_maps = hash:/var/lib/mailman/data/aliases, hash:/etc/mail/aliases
append_dot_mydomain = no
biff = no
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/lib64/postfix
data_directory = /var/lib/postfix
debug_peer_level = 10
home_mailbox = .maildir/
html_directory = /usr/share/doc/postfix-2.5.5/html
inet_interfaces = all
local_recipient_maps =
mail_owner = postfix
mailq_path = /usr/bin/mailq
manpage_directory = /usr/share/man
masquerade_domains = ml.domain.com
masquerade_exceptions = root
message_size_limit = 15728640
mydestination = $myhostname, localhost, locahost.localdomain
mydomain = domain.com
myhostname = mail.domain.com
mynetworks = 127.0.0.0/8, hash:/etc/postfix/pop-before-smtp
myorigin = $mydomain
newaliases_path = /usr/bin/newaliases
owner_request_special = no
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.5.5/readme
recipient_delimiter = +
relayhost =
remote_header_rewrite_domain = domain.invalid
sample_directory = /etc/postfix
sender_canonical_maps = hash:/etc/postfix/sender_canonical
sendmail_path = /usr/sbin/sendmail
setgid_group = postdrop
smtpd_banner = $myhostname ESMTP $mail_name
smtpd_data_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination reject_unauth_pipelining reject_multi_recipient_bounce permit
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_mynetworks permit_tls_all_clientcerts permit_sasl_authenticated reject_non_fqdn_hostname reject_non_fqdn_sender reject_non_fqdn_recipient reject_unauth_destination reject_unauth_pipelining reject_invalid_hostname reject_rhsbl_sender dsn.rfc-ignorant.org check_recipient_access hash:/etc/postfix/postgrey_whitelist_recipients check_sender_access hash:/etc/postfix/postgrey_whitelist_clients check_client_access regexp:/etc/postfix/prepend_client reject_rbl_client zen.spamhaus.org reject_rbl_client bl.spamcop.net reject_rbl_client cbl.abuseat.org reject_rbl_client dnsbl.njabl.org reject_rbl_client dnsbl.sorbs.net permit
smtpd_sasl_auth_enable = yes
smtpd_sasl_exceptions_networks = $mynetworks
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
strict_mailbox_ownership = no
transport_maps = mysql:/etc/postfix/mysql_virtual_transports.cf
unknown_local_recipient_reject_code = 450
virtual_alias_maps = hash:/var/lib/mailman/data/virtual-mailman, mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_destination_recipient_limit = 1
virtual_gid_maps = static:12
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_limit_maps = mysql:/etc/postfix/mysql_virtual_mailbox_limit_maps.cf
virtual_mailbox_limit_override = no
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_maildir_limit_message = "L'utilisateur que vous tentez de contacter a atteint son quota."
virtual_minimum_uid = 1001
virtual_overquota_bounce = yes
virtual_transport = dovecot
virtual_trash_count = no
virtual_uid_maps = static:1001

master.cf :
smtp      inet  n       -       n       -       -       smtpd
 -o content_filter=lmtp:unix:/var/run/dspam/dspam.sock
virtual   unix  -       n       n       -       -       pipe
flags=DRhu user=vmail:mail argv=/usr/libexec/dovecot/deliver -d $(recipient)
mailman   unix  -       n       n       -       -       pipe
 flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
 ${nexthop} ${user}
dovecot   unix   -      n       n       -       -       pipe
flags=DRhu user=vmail:mail argv=/usr/libexec/dovecot/deliver -d $(recipient)
127.0.0.1:10026 inet    n       -       -       -       -       smtpd
               -o content_filter=
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
               -o smtpd_helo_restrictions=
               -o smtpd_client_restrictions=
               -o smtpd_sender_restrictions=
               -o smtpd_recipient_restrictions=permit_mynetworks,reject
               -o mynetworks=127.0.0.0/8
               -o smtpd_authorized_xforward_hosts=127.0.0.0/8
vacation        unix    -       n       n       -       -       pipe
flags=Rq user=vacation argv=/var/spool/vacation/vacation.pl -f ${sender} -- ${recipient}

virtual-mailman :
# LOOP ADDRESSES START
mailman-l...@ml.domain.com       mailman-loop
# LOOP ADDRESSES END

# STANZA START: mailman
# CREATED: Wed Apr 29 12:24:06 2009
mail...@ml.domain.com              mailman
mailman-ad...@ml.domain.com        mailman-admin
mailman-boun...@ml.domain.com      mailman-bounces
mailman-conf...@ml.domain.com      mailman-confirm
mailman-j...@ml.domain.com         mailman-join
mailman-le...@ml.domain.com        mailman-leave
mailman-ow...@ml.domain.com        mailman-owner
mailman-requ...@ml.domain.com      mailman-request
mailman-subscr...@ml.domain.com    mailman-subscribe
mailman-unsubscr...@ml.domain.com  mailman-unsubscribe
# STANZA END: mailman

# STANZA START: interne
# CREATED: Wed Apr 29 12:24:06 2009
inte...@ml.domain.com              interne
interne-ad...@ml.domain.com        interne-admin
interne-boun...@ml.domain.com      interne-bounces
interne-conf...@ml.domain.com      interne-confirm
interne-j...@ml.domain.com         interne-join
interne-le...@ml.domain.com        interne-leave
interne-ow...@ml.domain.com        interne-owner
interne-requ...@ml.domain.com      interne-request
interne-subscr...@ml.domain.com    interne-subscribe
interne-unsubscr...@ml.domain.com  interne-unsubscribe
# STANZA END: interne

alias :
# The ultimate loop stopper address
mailman-loop: /var/lib/mailman/data/owner-bounces.mbox

# STANZA START: mailman
# CREATED: Wed Apr 29 12:24:06 2009
mailman:             "|/usr/lib64/mailman/mail/mailman post mailman"
mailman-admin:       "|/usr/lib64/mailman/mail/mailman admin mailman"
mailman-bounces:     "|/usr/lib64/mailman/mail/mailman bounces mailman"
mailman-confirm:     "|/usr/lib64/mailman/mail/mailman confirm mailman"
mailman-join:        "|/usr/lib64/mailman/mail/mailman join mailman"
mailman-leave:       "|/usr/lib64/mailman/mail/mailman leave mailman"
mailman-owner:       "|/usr/lib64/mailman/mail/mailman owner mailman"
mailman-request:     "|/usr/lib64/mailman/mail/mailman request mailman"
mailman-subscribe:   "|/usr/lib64/mailman/mail/mailman subscribe mailman"
mailman-unsubscribe: "|/usr/lib64/mailman/mail/mailman unsubscribe mailman"
# STANZA END: mailman

# STANZA START: interne
# CREATED: Wed Apr 29 12:24:06 2009
interne:             "|/usr/lib64/mailman/mail/mailman post interne"
interne-admin:       "|/usr/lib64/mailman/mail/mailman admin interne"
interne-bounces:     "|/usr/lib64/mailman/mail/mailman bounces interne"
interne-confirm:     "|/usr/lib64/mailman/mail/mailman confirm interne"
interne-join:        "|/usr/lib64/mailman/mail/mailman join interne"
interne-leave:       "|/usr/lib64/mailman/mail/mailman leave interne"
interne-owner:       "|/usr/lib64/mailman/mail/mailman owner interne"
interne-request:     "|/usr/lib64/mailman/mail/mailman request interne"
interne-subscribe:   "|/usr/lib64/mailman/mail/mailman subscribe interne"
interne-unsubscribe: "|/usr/lib64/mailman/mail/mailman unsubscribe interne"
# STANZA END: interne

Any idea ?
Thanks.

Reply via email to