5

It seems mailman, by default, spoofs its outgoing message with the "from" address of the person who posted the message. The envelope mail-from is not spoofed, but rather the P2 FROM. Is this configurable to d a send-on-behalf or simply change to some other static address?

Ode
  • 121
  • 1
  • 6
  • 1
    (Begin unhelpful.) The From: header is defined to be the address of the person who logically originated the message. Mailman isn't spoofing it any more than it spoofs Date: or other headers is preserves. Why do you want to change it? (End unhelpful.) – jon Dec 14 '11 at 01:25
  • some spam filters don't like the fact that mail is originating for a domain from an MTA that isn't allowed to send as that domain, even if it is a "soft spoof" of only the P2 FROM. – Ode Dec 14 '11 at 22:00
  • 1
    The From: address should never be a part of "spoof-filtering". The envelope sender (MAIL FROM) is used in SPF checks. They differ in your case and can differ. – mailq Dec 15 '11 at 00:00

2 Answers2

6

A bit old question, but here some suggestion solution.

I will try to explain how the default mailman behavior.

Email from member1@example.com was sent to lists@example.net (a mailman list). Both envelope sender and lists-bounces@example.net have value "member@example.com".

As mailman receive it, it rewrites envelope sender to lists-bounces@example.net. Now mailman forward it to other members with envelope sender: lists-bounces@example.net and From header: member@example.com.

The problem is, as April 2014 the Big Email Provider Yahoo activates DMARC in their domains. As the result, if DMARC-aware mail server spot the Yahoo address in From header but it wasn't sent from Yahoo server, the server will reject it.


Mailman developer adding fix in Mailman version 2.1.16. It now has option from_is_list

from_is_list

Replace the sender with the list address to conform with policies like ADSP and DMARC. It replaces the poster's address in the From: header with the list address and adds the poster to the Reply-To: header, but the anonymous_list and Reply-To: header munging settings below take priority. If setting this to Yes, it is advised to set the MTA to DKIM sign all emails. If this is set to Wrap Message, just wrap the message in an outer message From: the list with Content-Type: message/rfc822

Valerio Bozzolan
  • 279
  • 2
  • 10
masegaloeh
  • 17,978
  • 9
  • 56
  • 104
0

See @masegaloeh's answer for details. Here is a way to apply that setting in bulk:

# updatelist_from_is_list.py

import sys

class UserDesc: pass

def updatelist_from_is_list(mlist):
    if mlist is None:
        return

    mlist.from_is_list = 1
    mlist.Save()

Above for mlist.from_is_list:

  • 0 is off
  • 1 is "munge from"
  • 2 is "wrap"

Then apply the script as follows:

cd /usr/lib/mailman/bin/
./withlist -l -r updatelist_from_is_list LISTNAME

Note that the file is named updatelist_from_is_list.py but when does not end in .py when passed to withlist.

For lots of lists:

/usr/lib/mailman/bin/list_lists -b | while read mlist; do 
    /usr/lib/mailman/bin/withlist -l -r updatelist_from_is_list $mlist
done
KJ7LNW
  • 131
  • 3