Incoming command emails (i.e. listname-leave) routed to list itself
Hi mailman-users,
I'm new to Mailman 3 and Mailman in general, but I've got it up and running, and my external app is communicating quite well with the administrative REST API.
Here's the only problem I haven't been able to figure out:
Say I have a list called "potato." List members can post to the list by emailing potato@lists.mydomain.org. This works fine. However, incoming mail for command addresses (e.g. potato-leave@lists.mydomain.org) is routed to the list too. The command email gets sent out to all members, as if the user who wanted to unsubscribe had just written to potato@lists.mydomain.org. This is also the case with the potato-request@lists.mydomain.org address.
I am using exim4 on Ubuntu. I followed the instructions here: http://mailman.readthedocs.io/en/release-3.0/src/mailman/docs/MTA.html. The only change I had to make to the exim4 config files in the readthedocs instructions was in this line:
MM3_LISTCHK=MM3_HOME/lists/${local_part}@${domain}
I had to change it to:
MM3_LISTCHK=MM3_HOME/lists/${local_part}.${domain}
That is how the subdirectories are named in my lists directory. e.g. potato.lists.mydomain.org. If I use the exact MM3_LISTCHK value from readthedocs, I get 550 Unrouteable bounces.
Here are some baffling lines from /var/log/exim4/mainlog from the incoming potato-leave@lists.mydomain.org email:
2017-04-21 00:25:03 1d1MNj-0007OQ-5r DKIM: d=nervous-org.20150623. gappssmtp.com s=20150623 c=relaxed/relaxed a=rsa-sha256 [verification succeeded] 2017-04-21 00:25:03 1d1MNj-0007OQ-5r <= redacted@nervous.org H= mail-qk0-f170.google.com [209.85.220.170] P=esmtp S=2466 id= CABPy5zyQtJHXtCgrN37GHCUOjuo3J=DO_j0ZD03zm8gk+4shww@mail.gmail.com 2017-04-21 00:25:03 1d1MNj-0007OQ-5r => potato@lists.mydomain.org < potato-leave@lists.mydomain.org> R=mailman3_router T=mailman3_transport H=localhost [127.0.0.1] C="250 Ok" 2017-04-21 00:25:03 1d1MNj-0007OQ-5r Completed
Why does it say `potato@lists.mydomain.org <potato-leave@lists.mydomain.org
`?
I think this is actually an exim4 problem, so if the solution is to just switch to postfix, then I will definitely do that. But I'm just asking in case someone had a similar issue with exim4 and was able to work through it.
Thanks a lot,
Mark
On 04/20/2017 05:37 PM, Mark Lindsay wrote:
I'm new to Mailman 3 and Mailman in general, but I've got it up and running, and my external app is communicating quite well with the administrative REST API.
Cool.
Here's the only problem I haven't been able to figure out:
Say I have a list called "potato." List members can post to the list by emailing potato@lists.mydomain.org. This works fine. However, incoming mail for command addresses (e.g. potato-leave@lists.mydomain.org) is routed to the list too. The command email gets sent out to all members, as if the user who wanted to unsubscribe had just written to potato@lists.mydomain.org. This is also the case with the potato-request@lists.mydomain.org address.
I am using exim4 on Ubuntu. I followed the instructions here: http://mailman.readthedocs.io/en/release-3.0/src/mailman/docs/MTA.html. The only change I had to make to the exim4 config files in the readthedocs instructions was in this line:
MM3_LISTCHK=MM3_HOME/lists/${local_part}@${domain}
I had to change it to:
MM3_LISTCHK=MM3_HOME/lists/${local_part}.${domain}
That is how the subdirectories are named in my lists directory. e.g. potato.lists.mydomain.org. If I use the exact MM3_LISTCHK value from readthedocs, I get 550 Unrouteable bounces.
OK. That document needs updating. Also, the '-admin' local_part_suffix should not be there, but that's not related to your issue. '-admin' is from MM 2.1 and isn't used in MM 3.
Here are some baffling lines from /var/log/exim4/mainlog from the incoming potato-leave@lists.mydomain.org email:
2017-04-21 00:25:03 1d1MNj-0007OQ-5r DKIM: d=nervous-org.20150623. gappssmtp.com s=20150623 c=relaxed/relaxed a=rsa-sha256 [verification succeeded] 2017-04-21 00:25:03 1d1MNj-0007OQ-5r <= redacted@nervous.org H= mail-qk0-f170.google.com [209.85.220.170] P=esmtp S=2466 id= CABPy5zyQtJHXtCgrN37GHCUOjuo3J=DO_j0ZD03zm8gk+4shww@mail.gmail.com 2017-04-21 00:25:03 1d1MNj-0007OQ-5r => potato@lists.mydomain.org < potato-leave@lists.mydomain.org> R=mailman3_router T=mailman3_transport H=localhost [127.0.0.1] C="250 Ok" 2017-04-21 00:25:03 1d1MNj-0007OQ-5r Completed
Why does it say `potato@lists.mydomain.org <potato-leave@lists.mydomain.org
`?
That's the key question. The transport is supposed to just relay the message to Mailman via LMTP to MM3_LMTP_PORT, but it appears to be rewriting the envelope recipient from potato-leave@lists.mydomain.org to potato@lists.mydomain.org. I suspect the router is somehow stripping local_part_suffix from the recipient address, but why, I don't know.
I think this is actually an exim4 problem, so if the solution is to just switch to postfix, then I will definitely do that. But I'm just asking in case someone had a similar issue with exim4 and was able to work through it.
We want to make MM 3 work with Exim as an MTA. Unfortunately, I have not used Exim as an MTA in a long time and not with Mailman 3 at all, so I may not be much help. I think the person who set up Exim is on this list and may reply. If not, I'll try to research this further.
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (2)
-
Mark Lindsay
-
Mark Sapiro