problem with mailman handling incomming mail

Hi!
I have mailman installed on my freebsd server. I am running postfix+dovecot with mysql support for my mail server. Everything is working perfectly except mailman gives error on incomming mail. Here is the error (I replaced my real domain name in the error message with mydomain.org):
*This is the mail system at host mail.mydomain.org.
I'm sorry to have to inform you that your message could not be delivered to one or more recipients. It's attached below.
For further assistance, please send mail to postmaster.
If you do so, please include this problem report. You can delete your own text from the attached returned message.
The mail system
<"|/usr/local/mailman/mail/mailman post mailman"@mail.mydomain.org> (expanded from <mailman@mail.mydomain.org>): unknown user: "|/usr/local/mailman/mail/mailman post mailman"*
Can someone help me please!!
-- Maxime Longuepee

On 6/1/11 6:50 AM, Maxime Longuepee wrote:
Postfix is apparently trying to deliver to the alias via a transport that doesn't do pipe delivery, i.e. some transport other than 'local'.
We need to see the output from 'postconf -n' to say more.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Hi Mark!
Thanks for your reply!
Here is the output of postconf -n:
address_verify_map = btree:/var/spool/postfix/address_verify
broken_sasl_auth_clients = yes
command_directory = /usr/local/sbin
config_directory = /usr/local/etc/postfix
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/spool/postfix
debug_peer_level = 2
disable_vrfy_command = yes
html_directory = no
inet_interfaces = $myhostname, localhost
invalid_hostname_reject_code = 450
mail_owner = postfix
mailq_path = /usr/local/bin/mailq
manpage_directory = /usr/local/man
maps_rbl_reject_code = 450
mydestination = mail.mydomain.org, localhost.mydomain.org, localhost, mail
myhostname = mail.mydomain.org
mynetworks = 127.0.0.1, mail.mydomain.org
mynetworks_style = host
myorigin = mail.mydomain.org
newaliases_path = /usr/local/bin/newaliases
non_fqdn_reject_code = 450
owner_request_special = no
queue_directory = /var/spool/postfix
readme_directory = no
recipient_delimiter = +
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = maildrop
smtp_tls_cert_file = /etc/ssl/server.crt
smtp_tls_key_file = /etc/ssl/server.key
smtp_tls_security_level = may
smtp_tls_session_cache_database =
btree:/var/spool/postfix/smtp_tls_session_cache
smtpd_data_restrictions = reject_unauth_pipelining,
reject_multi_recipient_bounce, permit
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_mynetworks
permit_sasl_authenticated permit_tls_clientcerts
reject_unauth_destination reject_invalid_helo_hostname
reject_non_fqdn_sender reject_non_fqdn_recipient
reject_rbl_client cbl.abuseat.org reject_rbl_client list.dsbl.org
reject_rbl_client opm.blitzed.org reject_rbl_client
sbl.spamhaus.org reject_rbl_client bl.spamcop.net
reject_rbl_client dnsbl.sorbs.net=127.0.0.2 reject_rbl_client
dnsbl.sorbs.net=127.0.0.3 reject_rbl_client
dnsbl.sorbs.net=127.0.0.4 reject_rbl_client
dnsbl.sorbs.net=127.0.0.5 reject_rbl_client
dnsbl.sorbs.net=127.0.0.7 reject_rbl_client
dnsbl.sorbs.net=127.0.0.9 reject_rbl_client
dnsbl.sorbs.net=127.0.0.11 reject_rbl_client
dnsbl.sorbs.net=127.0.0.12
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_tls_ask_ccert = yes
smtpd_tls_cert_file = /etc/ssl/server.crt
smtpd_tls_key_file = /etc/ssl/server.key
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database =
btree:/var/spool/postfix/smtpd_tls_session_cache
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550
virtual_alias_maps =
mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/aliases
virtual_gid_maps = static:6
virtual_mailbox_base = /usr/vmail
virtual_mailbox_domains =
mysql:$config_directory/mysql_virtual_domains_maps.cf
virtual_mailbox_maps =
mysql:$config_directory/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 143
virtual_transport = dovecot
virtual_uid_maps = static:143
On Thu, 02 Jun 2011 07:40:43 -0700, Mark Sapiro <mark@msapiro.net> wrote:

On 6/2/11 8:13 AM, Maxime Longuepee wrote:
Here is the output of postconf -n:
[...]
virtual_alias_maps = mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/aliases
This is wrong. You need to add hash:/usr/local/mailman/data/aliases to alias_maps, not to virtual_alias_maps. Probably something like
alias_maps = hash:/etc/aliases, hash:/usr/local/mailman/data/aliases
Then you need
virtual_alias_maps = mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/virtual-mailman
and if it isn't already there, you need
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org']
in mm_cfg.py, and if that wasn't already there, you need to run Mailman's bin/genaliases to create the virtual-mailman* files.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Mark Sapiro a écrit :
Hi Mark,
Thanks a lot, it's working perfectly!!!
Now, if I want to add a mailing list with another domain name i own (it's hosted on the same machine), what should i do? I tryed to add a new mailing list specifying the domain name with
/usr/local/mailman/bin/newlist name-of-the-list@myotherdomain.org
I can access the administration page over the web interface but when i send an email to that address, i get an error (here is the postfix log):
postfix/smtpd[94206]: NOQUEUE: reject: RCPT from myhome.org[MY.IP]: 550 5.1.1 <name-of-the-list @myotherdomain.org>: Recipient address rejected: User unknown in virtual mailbox table; from=<my@email.com> to=<name-of-the-list??@myotherdomain.org> proto=ESMTP helo=<[MY.IP]>
Thanks a lot in advance for helping me!
-- Maxime Longuepee

On 6/4/11 6:30 AM, Maxime Longuepee wrote:
You need to add
add_virtualhost('myotherdomain.org', 'myotherdomain.org')
to mm_cfg.py and add the domain to POSTFIX_STYLE_VIRTUAL_DOMAINS as in
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org']
This assumes the web domain is the same myotherdomain.org as the email domain. If not, the only difference is add_virtualhost is
add_virtualhost('myotherwebdomain.org', 'myotherdomain.org')
After adding 'myotherdomain.org' to POSTFIX_STYLE_VIRTUAL_DOMAINS, run bin/genaliases to update data/virtual-mailman*
Also not that the notation
/usr/local/mailman/bin/newlist name-of-the-list@myotherdomain.org
is deprecated and doesn't do the intuitive thing (but does the right thing if the web domain and email domain are the same). See
/usr/local/mailman/bin/newlist --help
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Mark Sapiro a écrit :
Hi Mark!
I tryed what you said and it's not working.. I have this error:
postfix/smtpd[99110]: NOQUEUE: reject: RCPT from myhome.org[MY.HOME.IP]: 550 5.1.1 <test-list@myotherdomain.org>: Recipient address rejected: User unknown in virtual mailbox table; from=<my@email.com> to=<test-list@myotherdomain.org> proto=ESMTP helo=<[MY.HOME.IP]>
Mailman was originally configured with mydomain.org which still works well. The web domain i use to manage mailman is webmail.mydomain.org. The other domain i'm trying to add is myotherdomain.org and following your advices it didn't worked.
So, I did that in mm_cfg.py:
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org'] add_virtualhost('myotherdomain.org')
Then, I ran genaliases and also restarted mailman. I added the list test-list for myotherdomain.org with: /usr/local/mailman/bin/newlist --urlhost=webmail.mydomain.org --emailhost=myotherdomain.org test-list
and it doesn't work :|
What did I do wrong?

Maxime Longuepee wrote:
If you want all lists to use the same web host (webmail.mydomain.org) and only different email domains, you do not want an add_virtualhost() for the other domains.
You want
DEFAULT_URL_HOST = 'webmail.mydomain.org' DEFAULT_EMAIL_HOST = 'mail.mydomain.org' add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) MTA = 'Postfix' POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org']
However, the
add_virtualhost('myotherdomain.org')
doesn't really do any harm. So I don't understand what the problem is. The newlist command you gave should have created the list with a host_name attribute (visible on the list's General Options page) of myotherdomain.org, and if that domain was in POSTFIX_STYLE_VIRTUAL_DOMAINS when the list was created, the required virtual maps should have been added to data/virtual-mailman.
So, what is the host_name for test-list?
Does it match exactly a domain in POSTFIX_STYLE_VIRTUAL_DOMAINS in mm_cfg.py?
Is there only one POSTFIX_STYLE_VIRTUAL_DOMAINS assignment in mm_cfg.py?
What's in data/virtual-mailman?
is the time stamp of data/virtual-mailman.db the same or more recent than that of data/virtual-mailman?
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan

On 6/1/11 6:50 AM, Maxime Longuepee wrote:
Postfix is apparently trying to deliver to the alias via a transport that doesn't do pipe delivery, i.e. some transport other than 'local'.
We need to see the output from 'postconf -n' to say more.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Hi Mark!
Thanks for your reply!
Here is the output of postconf -n:
address_verify_map = btree:/var/spool/postfix/address_verify
broken_sasl_auth_clients = yes
command_directory = /usr/local/sbin
config_directory = /usr/local/etc/postfix
daemon_directory = /usr/local/libexec/postfix
data_directory = /var/spool/postfix
debug_peer_level = 2
disable_vrfy_command = yes
html_directory = no
inet_interfaces = $myhostname, localhost
invalid_hostname_reject_code = 450
mail_owner = postfix
mailq_path = /usr/local/bin/mailq
manpage_directory = /usr/local/man
maps_rbl_reject_code = 450
mydestination = mail.mydomain.org, localhost.mydomain.org, localhost, mail
myhostname = mail.mydomain.org
mynetworks = 127.0.0.1, mail.mydomain.org
mynetworks_style = host
myorigin = mail.mydomain.org
newaliases_path = /usr/local/bin/newaliases
non_fqdn_reject_code = 450
owner_request_special = no
queue_directory = /var/spool/postfix
readme_directory = no
recipient_delimiter = +
sample_directory = /usr/local/etc/postfix
sendmail_path = /usr/sbin/sendmail
setgid_group = maildrop
smtp_tls_cert_file = /etc/ssl/server.crt
smtp_tls_key_file = /etc/ssl/server.key
smtp_tls_security_level = may
smtp_tls_session_cache_database =
btree:/var/spool/postfix/smtp_tls_session_cache
smtpd_data_restrictions = reject_unauth_pipelining,
reject_multi_recipient_bounce, permit
smtpd_helo_required = yes
smtpd_recipient_restrictions = permit_mynetworks
permit_sasl_authenticated permit_tls_clientcerts
reject_unauth_destination reject_invalid_helo_hostname
reject_non_fqdn_sender reject_non_fqdn_recipient
reject_rbl_client cbl.abuseat.org reject_rbl_client list.dsbl.org
reject_rbl_client opm.blitzed.org reject_rbl_client
sbl.spamhaus.org reject_rbl_client bl.spamcop.net
reject_rbl_client dnsbl.sorbs.net=127.0.0.2 reject_rbl_client
dnsbl.sorbs.net=127.0.0.3 reject_rbl_client
dnsbl.sorbs.net=127.0.0.4 reject_rbl_client
dnsbl.sorbs.net=127.0.0.5 reject_rbl_client
dnsbl.sorbs.net=127.0.0.7 reject_rbl_client
dnsbl.sorbs.net=127.0.0.9 reject_rbl_client
dnsbl.sorbs.net=127.0.0.11 reject_rbl_client
dnsbl.sorbs.net=127.0.0.12
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = dovecot
smtpd_tls_ask_ccert = yes
smtpd_tls_cert_file = /etc/ssl/server.crt
smtpd_tls_key_file = /etc/ssl/server.key
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database =
btree:/var/spool/postfix/smtpd_tls_session_cache
tls_random_source = dev:/dev/urandom
unknown_local_recipient_reject_code = 550
virtual_alias_maps =
mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/aliases
virtual_gid_maps = static:6
virtual_mailbox_base = /usr/vmail
virtual_mailbox_domains =
mysql:$config_directory/mysql_virtual_domains_maps.cf
virtual_mailbox_maps =
mysql:$config_directory/mysql_virtual_mailbox_maps.cf
virtual_minimum_uid = 143
virtual_transport = dovecot
virtual_uid_maps = static:143
On Thu, 02 Jun 2011 07:40:43 -0700, Mark Sapiro <mark@msapiro.net> wrote:

On 6/2/11 8:13 AM, Maxime Longuepee wrote:
Here is the output of postconf -n:
[...]
virtual_alias_maps = mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/aliases
This is wrong. You need to add hash:/usr/local/mailman/data/aliases to alias_maps, not to virtual_alias_maps. Probably something like
alias_maps = hash:/etc/aliases, hash:/usr/local/mailman/data/aliases
Then you need
virtual_alias_maps = mysql:$config_directory/mysql_virtual_alias_maps.cf,hash:/usr/local/mailman/data/virtual-mailman
and if it isn't already there, you need
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org']
in mm_cfg.py, and if that wasn't already there, you need to run Mailman's bin/genaliases to create the virtual-mailman* files.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Mark Sapiro a écrit :
Hi Mark,
Thanks a lot, it's working perfectly!!!
Now, if I want to add a mailing list with another domain name i own (it's hosted on the same machine), what should i do? I tryed to add a new mailing list specifying the domain name with
/usr/local/mailman/bin/newlist name-of-the-list@myotherdomain.org
I can access the administration page over the web interface but when i send an email to that address, i get an error (here is the postfix log):
postfix/smtpd[94206]: NOQUEUE: reject: RCPT from myhome.org[MY.IP]: 550 5.1.1 <name-of-the-list @myotherdomain.org>: Recipient address rejected: User unknown in virtual mailbox table; from=<my@email.com> to=<name-of-the-list??@myotherdomain.org> proto=ESMTP helo=<[MY.IP]>
Thanks a lot in advance for helping me!
-- Maxime Longuepee

On 6/4/11 6:30 AM, Maxime Longuepee wrote:
You need to add
add_virtualhost('myotherdomain.org', 'myotherdomain.org')
to mm_cfg.py and add the domain to POSTFIX_STYLE_VIRTUAL_DOMAINS as in
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org']
This assumes the web domain is the same myotherdomain.org as the email domain. If not, the only difference is add_virtualhost is
add_virtualhost('myotherwebdomain.org', 'myotherdomain.org')
After adding 'myotherdomain.org' to POSTFIX_STYLE_VIRTUAL_DOMAINS, run bin/genaliases to update data/virtual-mailman*
Also not that the notation
/usr/local/mailman/bin/newlist name-of-the-list@myotherdomain.org
is deprecated and doesn't do the intuitive thing (but does the right thing if the web domain and email domain are the same). See
/usr/local/mailman/bin/newlist --help
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California Better use your sense - B. Dylan

Mark Sapiro a écrit :
Hi Mark!
I tryed what you said and it's not working.. I have this error:
postfix/smtpd[99110]: NOQUEUE: reject: RCPT from myhome.org[MY.HOME.IP]: 550 5.1.1 <test-list@myotherdomain.org>: Recipient address rejected: User unknown in virtual mailbox table; from=<my@email.com> to=<test-list@myotherdomain.org> proto=ESMTP helo=<[MY.HOME.IP]>
Mailman was originally configured with mydomain.org which still works well. The web domain i use to manage mailman is webmail.mydomain.org. The other domain i'm trying to add is myotherdomain.org and following your advices it didn't worked.
So, I did that in mm_cfg.py:
POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org'] add_virtualhost('myotherdomain.org')
Then, I ran genaliases and also restarted mailman. I added the list test-list for myotherdomain.org with: /usr/local/mailman/bin/newlist --urlhost=webmail.mydomain.org --emailhost=myotherdomain.org test-list
and it doesn't work :|
What did I do wrong?

Maxime Longuepee wrote:
If you want all lists to use the same web host (webmail.mydomain.org) and only different email domains, you do not want an add_virtualhost() for the other domains.
You want
DEFAULT_URL_HOST = 'webmail.mydomain.org' DEFAULT_EMAIL_HOST = 'mail.mydomain.org' add_virtualhost(DEFAULT_URL_HOST, DEFAULT_EMAIL_HOST) MTA = 'Postfix' POSTFIX_STYLE_VIRTUAL_DOMAINS = ['mail.mydomain.org', 'myotherdomain.org']
However, the
add_virtualhost('myotherdomain.org')
doesn't really do any harm. So I don't understand what the problem is. The newlist command you gave should have created the list with a host_name attribute (visible on the list's General Options page) of myotherdomain.org, and if that domain was in POSTFIX_STYLE_VIRTUAL_DOMAINS when the list was created, the required virtual maps should have been added to data/virtual-mailman.
So, what is the host_name for test-list?
Does it match exactly a domain in POSTFIX_STYLE_VIRTUAL_DOMAINS in mm_cfg.py?
Is there only one POSTFIX_STYLE_VIRTUAL_DOMAINS assignment in mm_cfg.py?
What's in data/virtual-mailman?
is the time stamp of data/virtual-mailman.db the same or more recent than that of data/virtual-mailman?
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (2)
-
Mark Sapiro
-
Maxime Longuepee