Re: [nfsv4] New Version Notification for draft-cel-nfsv4-rpc-tls-01.txt

Chuck Lever <chuck.lever@oracle.com> Tue, 26 March 2019 19:24 UTC

Return-Path: <chuck.lever@oracle.com>
X-Original-To: nfsv4@ietfa.amsl.com
Delivered-To: nfsv4@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D059C1209A1 for <nfsv4@ietfa.amsl.com>; Tue, 26 Mar 2019 12:24:25 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -4.3
X-Spam-Level:
X-Spam-Status: No, score=-4.3 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=oracle.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qV_hWuyiHSni for <nfsv4@ietfa.amsl.com>; Tue, 26 Mar 2019 12:24:24 -0700 (PDT)
Received: from userp2130.oracle.com (userp2130.oracle.com [156.151.31.86]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 020051209A0 for <nfsv4@ietf.org>; Tue, 26 Mar 2019 12:24:23 -0700 (PDT)
Received: from pps.filterd (userp2130.oracle.com [127.0.0.1]) by userp2130.oracle.com (8.16.0.27/8.16.0.27) with SMTP id x2QJO6rZ149177; Tue, 26 Mar 2019 19:24:19 GMT
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=content-type : mime-version : subject : from : in-reply-to : date : cc : content-transfer-encoding : message-id : references : to; s=corp-2018-07-02; bh=x38eZPlqIXjxqFWAtVI0ysU0Ts4rwHZvT4XPZoWRX1U=; b=KtEaxtmkPoTTMlZVnYWMXwOg8qv6UDKgnWvS9AqE72GfBgxtry+/8rPRG04R0NeHl/Gj FEgFq6P7YzJUkWrnxbzCZO3bYwvcYR2ZFnw86xcRCCIeA3yl+zbDzsKOERehF3MUNkN6 TOXZu4KKSqNmx+S/Oki9GEhChXLW8CdPB7SqsVV2sj7hT9aw2mcUaOV6tx5bU3GIOMcp NVpmc+a7ic9rm+LzEhxff2hzp6+A4Ai04AfW50cgMcVtT8EMgNS/+fAeHVRMTtZ2BEa8 zPThtDFKAM89W0ppYqtT+PtCOF+cIQAcGKpsB/25fnh3nGA6vMUrBYSUYxfBU5x8kO03 yA==
Received: from aserv0022.oracle.com (aserv0022.oracle.com [141.146.126.234]) by userp2130.oracle.com with ESMTP id 2re6g14gn8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 26 Mar 2019 19:24:18 +0000
Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by aserv0022.oracle.com (8.14.4/8.14.4) with ESMTP id x2QJOHUd004582 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 26 Mar 2019 19:24:18 GMT
Received: from abhmp0012.oracle.com (abhmp0012.oracle.com [141.146.116.18]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id x2QJOHeA026787; Tue, 26 Mar 2019 19:24:17 GMT
Received: from anon-dhcp-171.1015granger.net (/68.61.232.219) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 26 Mar 2019 12:24:16 -0700
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 12.2 \(3445.102.3\))
From: Chuck Lever <chuck.lever@oracle.com>
In-Reply-To: <20190326190504.GK86501@kduck.mit.edu>
Date: Tue, 26 Mar 2019 15:24:15 -0400
Cc: "Mkrtchyan, Tigran" <tigran.mkrtchyan@desy.de>, NFSv4 <nfsv4@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <4E575ACA-E885-4E15-B146-F145DC455A22@oracle.com>
References: <154264272736.5235.8955444239583271708.idtracker@ietfa.amsl.com> <50A96C3A-DBA4-4A6C-B883-664E59E24534@oracle.com> <CO2PR0601MB7597A7490C43DAE5A3268E6B5D80@CO2PR0601MB759.namprd06.prod.outlook.com> <39802AA5-3F70-48C7-824B-CAC0FB871016@oracle.com> <CADaq8jc82bfxpjxz_f6Uy-4c0yazJujOrKo+TejPkx-q6qq_3Q@mail.gmail.com> <1480794517.422703.1553504031783.JavaMail.zimbra@desy.de> <4F7BC6A0-50F9-47BC-8465-28833835E7F6@oracle.com> <1119874674.601037.1553546666143.JavaMail.zimbra@desy.de> <946EFDD8-F04D-49CD-A1C8-D8E8A6D5EE35@oracle.com> <20190326190504.GK86501@kduck.mit.edu>
To: Benjamin Kaduk <kaduk@mit.edu>
X-Mailer: Apple Mail (2.3445.102.3)
X-Proofpoint-Virus-Version: vendor=nai engine=5900 definitions=9207 signatures=668685
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1810050000 definitions=main-1903260133
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/kwj0l9gxOdorcH0Ocs0AKYB7Ugw>
Subject: Re: [nfsv4] New Version Notification for draft-cel-nfsv4-rpc-tls-01.txt
X-BeenThere: nfsv4@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: NFSv4 Working Group <nfsv4.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/nfsv4/>
List-Post: <mailto:nfsv4@ietf.org>
List-Help: <mailto:nfsv4-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/nfsv4>, <mailto:nfsv4-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 26 Mar 2019 19:24:26 -0000


> On Mar 26, 2019, at 3:05 PM, Benjamin Kaduk <kaduk@mit.edu> wrote:
> 
> On Tue, Mar 26, 2019 at 09:56:10AM -0400, Chuck Lever wrote:
>> 
>> 
>>> On Mar 25, 2019, at 4:44 PM, Mkrtchyan, Tigran <tigran.mkrtchyan@desy.de> wrote:
>>> 
>>> 
>>> 
>>> ----- Original Message -----
>>>> From: "Chuck Lever" <chuck.lever@oracle.com>
>>>> To: "Tigran Mkrtchyan" <tigran.mkrtchyan@desy.de>
>>>> Cc: "NFSv4" <nfsv4@ietf.org>
>>>> Sent: Monday, March 25, 2019 2:44:32 PM
>>>> Subject: Re: [nfsv4] New Version Notification for draft-cel-nfsv4-rpc-tls-01.txt
>>> 
>>>>> On Mar 25, 2019, at 4:53 AM, Mkrtchyan, Tigran <tigran.mkrtchyan@desy.de> wrote:
>>>>> 
>>>>> 
>>>>> 
>>>>> Hi Chuck,
>>>>> 
>>>>> By working on our implementation we got a following questions:
>>>>> 
>>>>> what should server do when a client requests startTLS twice? Fail
>>>>> with an auth error or just ignore?
>>>> 
>>>> I don't have a ready answer, but seems to me your TLS library
>>>> might have an opinion. Can a web browser be made to generate
>>>> a second STARTTLS to see what the behavior is like?
>>>> 
>>>> Is there any guidance in RFC 8446 or its antecedants?
>>> 
>>> Looks like LDAP have that case clearly specified rfc2830:
>>> 
>>> 2.3:
>>> 
>>> ...
>>> 
>>>  If the Start TLS extended request was not successful, the resultCode
>>>  will be one of:
>>> 
>>>  operationsError  (operations sequencing incorrect; e.g. TLS already
>>>                   established)
>>> 
>>> 3.1:
>>> 
>>> ...
>>> 
>>>  The client MAY send the Start TLS extended request at any time after
>>>  establishing an LDAP association, except that in the following cases
>>>  the client MUST NOT send a Start TLS extended request:
>>> 
>>>    - if TLS is currently established on the connection, or
>>> 
>>> You may adopt a similar wording to rpc-over-tls. However, what about UDP and
>>> retransmits?
>> 
>> UDP will use DTLS.
>> 
>> My hesitance is that STARTTLS is part of the TLS protocol, and we're
>> not specifying that here, we're only using it. Surely TLS has a proper
>> mechanism for managing this situation.
> 
> As others have covered, this is a matter for the application that is trying
> to use the opportunistic TLS.
> 
>> I would like to see a recent RFC that covers your case. RFC 6614 appears
>> to require TLS negotiation to occur immediately after the underlying
>> transport connection is established, and never later. Is that what you
>> want?
> 
> Since STARTTLS for NFS doesn't exist other than this draft (right?), you
> have a pretty clean slate to work from and should be able to set tight
> bounds on usage, disallowing a lot of the potential complications.
> 
> So, requiring at most one STARTTLS, and for that to be the first RPC (or
> othr traffic) after the transport connection is established, seems
> simplest.  STARTTLS when TLS is already active can be rejected, and
> STARTTLS after non-TLS RPCs have occurred as well.  That would be my
> recommendation, at least (having not really read the draft,at least
> recently).

Thanks, after this explanation and reading the wiki page that Olga sent,
I think I understand what text needs to be added.


--
Chuck Lever