Re: [dmarc-ietf] Proposed text for p=reject and indirect mail flows

Alessandro Vesely <vesely@tana.it> Wed, 29 March 2023 10:18 UTC

Return-Path: <vesely@tana.it>
X-Original-To: dmarc@ietfa.amsl.com
Delivered-To: dmarc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 1F102C1516EA for <dmarc@ietfa.amsl.com>; Wed, 29 Mar 2023 03:18:37 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -7.096
X-Spam-Level:
X-Spam-Status: No, score=-7.096 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, NICE_REPLY_A=-0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (unsupported algorithm ed25519-sha256)" header.d=tana.it header.b="UB2dcQR+"; dkim=pass (1152-bit key) header.d=tana.it header.b="CbZVQZFa"
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id lEYvu0ty-Rb2 for <dmarc@ietfa.amsl.com>; Wed, 29 Mar 2023 03:18:30 -0700 (PDT)
Received: from wmail.tana.it (wmail.tana.it [62.94.243.226]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B7B6FC13AE50 for <dmarc@ietf.org>; Wed, 29 Mar 2023 03:17:13 -0700 (PDT)
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=tana.it; s=epsilon; t=1680085031; bh=+w6KwdVxGCzpAkfJRFFeP/YUwUR1628Z//dp/a24Dg8=; h=Author:Date:Subject:To:References:From:In-Reply-To; b=UB2dcQR+0QILfKSQxMXK0EYFJ+uhC6il1nvMgmntC7VTdoc4ZLjYwVIMh+0zuVab0 t2FLjhwNB8TSA1sBwIKCQ==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tana.it; s=delta; t=1680085031; bh=+w6KwdVxGCzpAkfJRFFeP/YUwUR1628Z//dp/a24Dg8=; h=Date:Subject:To:References:From:In-Reply-To; b=CbZVQZFar5hdEHZlI576ex3uTw9RseYxzMGoospKVP2yE9foX0l93yETWiOUDi0nj q3+YH3gha7+qGj4Pds0VYrOLkS5VME720nU+Eoffu1b0aZOM1dvPF1vlt+4f9JrzW/ 91d85uhgnfqAfwGfUAmHGsZzDH6CgEpTBuAlzy3ukPGwxOJxJdHAJUzoXom/S
Original-Subject: Re: [dmarc-ietf] Proposed text for p=reject and indirect mail flows
Author: Alessandro Vesely <vesely@tana.it>
Received: from [172.25.197.111] (pcale.tana [172.25.197.111]) (AUTH: CRAM-MD5 uXDGrn@SYT0/k, TLS: TLS1.3, 128bits, ECDHE_RSA_AES_128_GCM_SHA256) by wmail.tana.it with ESMTPSA id 00000000005DC0D3.0000000064241027.00007E00; Wed, 29 Mar 2023 12:17:11 +0200
Message-ID: <d02bfc46-efd1-28db-c14a-5c1365aefcbb@tana.it>
Date: Wed, 29 Mar 2023 12:17:10 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.8.0
Content-Language: en-US, it-IT
To: dmarc@ietf.org
References: <CALaySJ+NBg9vzqa0_t-sBf7EKXQ3A=DTyy-Vc7M-ZK9-vfJxmw@mail.gmail.com>
Authentication-Results: tana.it; auth=pass (details omitted)
From: Alessandro Vesely <vesely@tana.it>
In-Reply-To: <CALaySJ+NBg9vzqa0_t-sBf7EKXQ3A=DTyy-Vc7M-ZK9-vfJxmw@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/JW66Gpgdk-_TxUNACkr3PaZRCZk>
Subject: Re: [dmarc-ietf] Proposed text for p=reject and indirect mail flows
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: "Domain-based Message Authentication, Reporting, and Compliance \(DMARC\)" <dmarc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dmarc>, <mailto:dmarc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dmarc/>
List-Post: <mailto:dmarc@ietf.org>
List-Help: <mailto:dmarc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dmarc>, <mailto:dmarc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 29 Mar 2023 10:18:37 -0000

On Tue 28/Mar/2023 10:15:04 +0200 Barry Leiba wrote:
> I raised this issue in the DMARC session in Vienna, and have let it
> sit for a while so as not to derail other discussion.  As we're pretty
> close to finished with the DMARCbis document, I'd like to raise it
> again, this time with specific proposed text for us to discuss.
> 
> And so:
> 
> OLD
> 
>     5.5.6.  Decide If and When to Update DMARC Policy
> 
>     Once the Domain Owner is satisfied that it is properly authenticating
>     all of its mail, then it is time to decide if it is appropriate to
>     change the p= value in its DMARC record to p=quarantine or p=reject.
>     Depending on its cadence for sending mail, it may take many months of
>     consuming DMARC aggregate reports before a Domain Owner reaches the
>     point where it is sure that it is properly authenticating all of its
>     mail, and the decision on which p= value to use will depend on its
>     needs.
> 
> NEW
> 
>     5.5.6.  Decide If and When to Update DMARC Policy
> 
>     Once the Domain Owner is satisfied that it is properly authenticating
>     all of its mail, then it is time to decide if it is appropriate to
>     change the p= value in its DMARC record to p=quarantine or p=reject.
>     Depending on its cadence for sending mail, it may take many months of
>     consuming DMARC aggregate reports before a Domain Owner reaches the
>     point where it is sure that it is properly authenticating all of its
>     mail, and the decision on which p= value to use will depend on its
>     needs.
> 
>     It is important to understand that many domains may never use
>     policies of “quarantine” or “reject”, and that these policies are
>     intended not as goals, but as policies available for use when they
>     are appropriate.  In particular, “reject” is not intended for
>     deployment in domains with users who send routine email, and its
>     deployment in such domains can disrupt indirect mail flows and cause
>     damage to operation of mailing lists and other forwarding services.
>     This is discussed in [RFC7960] and in Section 5.8, below.  The
>     “reject” policy is best reserved for domains that send only
>     transactional email that is not intended to be posted to mailing
>     lists.
> 
>     To be explicitly clear: domains used for general-purpose email MUST
>     NOT deploy a DMARC policy of p=reject.
> 
> END
> 
> I'm well aware that the MUST will *not* be followed by everyone, and
> that some domain owners will feel that they need to use p=reject,
> regardless.  I think that's fine: the standard should specify what's
> right for interoperability, and I believe that improper use of
> p=reject is extremely harmful to interoperability... so "MUST" is
> correct here.  And no one will be arrested or fined for choosing not
> to follow it.  We should still say it, nonetheless.


I think I grasped Pete's point that MUST is appropriate here even if some 
domain owners do otherwise.  If we wanted to say "MUST unless" then we ought to 
say SHOULD, but this is not the case.

General purpose domains, and some well known freemail providers, should never 
have set strict policies.  Yet, they did.  No clear wording is going to be able 
to correct that practice.  Cannot push the genius back into the bottle.

I'd mention indirect mail flows explicitly, rather than referring to generic 
interoperability problems.  But several mailing list adopted expedients in 
order to overcome those problems.  Furthermore, there are experimental 
protocols that address the issue maintaining the end-to-end nature of existing 
identifier fields, and more are going to come.  It is possible that a future 
ecosystem will support strict DMARC policies for everyone.  Thus it is a "MUST 
until" rather than unless.  Is that compliant with RFC 2119?


Best
Ale
--