Re: [PATCH] hooks--update: new, required, config variable: hooks.envelopesender,

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: [PATCH] hooks--update: new, required, config variable: hooks.envelopesender,

From: Jim Meyering <hidden>
Date: 2016-06-15 22:43:01

On Friday 2007 March 23 15:25, Jim Meyering wrote:
quoted
Andy Parkins [off-list ref] wrote:
quoted
On Friday 2007 March 23 13:29, Jim Meyering wrote:
quoted
It works for me using the sendmail from sendmail, and I have tested
this with the one from postfix, too.
Is your user set as a trusted user for sendmail though?
No.  There is no need for that.
quoted
As a normal user wouldn't be allowed to do it.
You mean with exim's sendmail?
sendmail -f alt-envelope-sender works just fine when run by a
non-privileged user when it's Sendmail's sendmail or the one from Postfix.
It's a shame if it doesn't work with exim's implementation.
Okay; I went and found a sendmail manpage:

"-fname       Sets the name of the ``from'' person (i.e., the sender of the
              mail).  -f can only be used by ``trusted'' users (normally
              root,  daemon, and network) or if the person you are trying to
              become is the same as the person you are."

Seems the same as exim to me.  Perhaps your distribution sets it up to allow
if for anyone?
I suspect that the above is from older documentation.
As you'll see in the excerpts below, the "can only be used"
is replaced with "should...", to permit using -f in cases like mine.

The documentation from sendmail-8.11.7/doc/op/op.me says this:

-f addr   The envelope sender address is set to addr.  This
          address  may  also  be used in the From: header if
          that header is missing during initial  submission.
          The envelope sender address is used as the recipi-
          ent for delivery status notifications and may also
          appear in a Return-Path: header.

Then, in cf/README, they explain the trusted-users file is solely
to avoid a warning:

use_ct_file     Read the file /etc/mail/trusted-users file to get the
                names of users that will be ``trusted'', that is, able to
                set their envelope from address using -f without generating
                a warning message.  The actual filename can be overridden
                by redefining confCT_FILE.

A quick search found lots like this:
  http://www.linuxmanpages.com/man8/sendmail.8.php

    -fname
        Sets the name of the ``from'' person (i.e., the envelope sender of
        the mail). This address may also be used in the From: header if
        that header is missing during initial submission. The envelope
        sender address is used as the recipient for delivery status
        notifications and may also appear in a Return-Path: header. -f
        should only be used by ``trusted'' users (normally root, daemon,
        and network) or if the person you are trying to become is the
        same as the person you are. Otherwise, an X-Authentication-Warning
        header will be added to the message.

So that was classic sendmail (8.11.7).  Here's the description of -f
for postfix's sendmail (man sendmail):

       -f sender
              Set the envelope sender  address.  This  is  the  address  where
              delivery problems are sent to. With Postfix versions before 2.1,
              the  Errors-To:  message  header  overrides  the  error   return
              address.

In addition, I have tested this by sending myself a message
via printf '...' |sendmail -f nobody@nowhere.com -oi -t -v, and
examined the headers in the received messages.  The first I sent
from a system running sendmail-8.11.7, the second from one running
Debian/unstable's Postfix 2.3.8-2.  Both were sent by a "regular" (non-root)
user, and the envelope sender was the requested "nobody@nowhere.com"
in each case.
So; in short: I don't have a good answer to offer you, and it seems that "-f"
is working for you.
Yes, it does work for me.  And it would work for anyone with
sendmail or Postfix.  Whether it works for an exim-based
sendmail is a question of policy, and the default in Debian-based
systems is to allow it:
From /etc/exim4/conf.d/main/02_exim4-config_options:
  .ifndef MAIN_FORCE_SENDER
  local_from_check = false
  local_sender_retain = true
  untrusted_set_sender = *
  .endif
However, I'm still not convinced that this is the
correct thing to do in the default hook.  My main gripe is still all
these "trusted user" paragraphs in the MTA manual pages.
There is a legitimate need for this functionality, and -f does
usually work, so how about a compromise:

  Include support for using sendmail's "-f envelope-sender" option
  in the default hook, but enable it only if/when hooks.envelopesender
  is set in the config file.

Re: [PATCH] hooks--update: new, required, config variable: hooks.envelopesender,

From: Andy Parkins <hidden>
Date: 2016-06-15 22:43:01

On Saturday 2007, March 24, Jim Meyering wrote:
There is a legitimate need for this functionality, and -f does
usually work, so how about a compromise:

  Include support for using sendmail's "-f envelope-sender" option
  in the default hook, but enable it only if/when
hooks.envelopesender is set in the config file.
Perfect.  Now that I can't think of any objection to.  


Andy
-- 
Dr Andy Parkins, M Eng (hons), MIET
andyparkins@gmail.com
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help