Re: [nfsv4] AD review of draft-ietf-nfsv4-rpc-tls

Chuck Lever <chuck.lever@oracle.com> Sun, 12 April 2020 16:29 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 4A3693A0F9C for <nfsv4@ietfa.amsl.com>; Sun, 12 Apr 2020 09:29:21 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.267
X-Spam-Level:
X-Spam-Status: No, score=-2.267 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.168, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_BLOCKED=0.001, SPF_PASS=-0.001, UNPARSEABLE_RELAY=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 TwZzZF1A36aV for <nfsv4@ietfa.amsl.com>; Sun, 12 Apr 2020 09:29:20 -0700 (PDT)
Received: from userp2120.oracle.com (userp2120.oracle.com [156.151.31.85]) (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 2CD673A0F97 for <nfsv4@ietf.org>; Sun, 12 Apr 2020 09:29:19 -0700 (PDT)
Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03CGTEAo161087; Sun, 12 Apr 2020 16:29: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-2020-01-29; bh=NplmYCx1yYzYE3bjMMQMSEJJckfpOIJkkE4pdk+D2l4=; b=wZmfvIRf/Dx0TcO02YAsI+wGM797jpaQGLmqDZIrGtOl9DbCMmPTZVku7rujY4IyXcNJ bhUYJ+q2P4+rzA1KGbwT/i/iRCkEqdJvr+I2ZofMXFGKNf1Jrd4fXP1wIsLSfe/lxNpc 82bBuGbuzvRXUT7sdx789iptt6cNEAOIUPd4gZIVU/RT6htH7fdrVcJ6x97uARg0Ah1e j0DhYSNf+B/lMRhj2QwEpDJaKM0YrJkFipg1YkHnxjkyhdrFa6UdqZZDGtmxXclANaDH AhasH+DjjQM5mvQ/TCR2gV4W4oSLr5UjMHp8AxLtecT8p1bKlfqyRC5T94n7F4D4IjLk 4g==
Received: from aserp3030.oracle.com (aserp3030.oracle.com [141.146.126.71]) by userp2120.oracle.com with ESMTP id 30b6hpbcex-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 12 Apr 2020 16:29:19 +0000
Received: from pps.filterd (aserp3030.oracle.com [127.0.0.1]) by aserp3030.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 03CGQwxw115134; Sun, 12 Apr 2020 16:27:18 GMT
Received: from userv0122.oracle.com (userv0122.oracle.com [156.151.31.75]) by aserp3030.oracle.com with ESMTP id 30bqep97an-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 12 Apr 2020 16:27:18 +0000
Received: from abhmp0019.oracle.com (abhmp0019.oracle.com [141.146.116.25]) by userv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 03CGRGmn031505; Sun, 12 Apr 2020 16:27:16 GMT
Received: from anon-dhcp-153.1015granger.net (/68.61.232.219) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Sun, 12 Apr 2020 09:27:16 -0700
Content-Type: text/plain; charset="us-ascii"
Mime-Version: 1.0 (Mac OS X Mail 12.4 \(3445.104.11\))
From: Chuck Lever <chuck.lever@oracle.com>
In-Reply-To: <20200412023716.GN88064@mit.edu>
Date: Sun, 12 Apr 2020 12:27:14 -0400
Cc: "nfsv4@ietf.org" <nfsv4@ietf.org>
Content-Transfer-Encoding: quoted-printable
Message-Id: <A302DD40-DAA7-4473-AB5F-0950533A3D5E@oracle.com>
References: <VI1PR0702MB3775838FD12AB8A89392C17B95C90@VI1PR0702MB3775.eurprd07.prod.outlook.com> <FA2D661E-A787-4772-8F9D-A7594AE82F38@oracle.com> <CADaq8jciLWhL_FMmPcsdrVVS=9Gee8SYAsqi36H5v9iuNo7Pgw@mail.gmail.com> <E414F060-532B-4017-AC7E-5869884B2153@oracle.com> <e5796752c6204ffdd78503b1a9c9045cfd761e52.camel@gmail.com> <F9AC44CE-750E-416A-944D-E2382524020E@oracle.com> <19d2513b1093fc71223e361afca90d1a1ad6183a.camel@gmail.com> <35D9AEC0-7961-4C44-9715-26409D6182E4@oracle.com> <QB1PR01MB36492235E6EF60129A0329D7DDDE0@QB1PR01MB3649.CANPRD01.PROD.OUTLOOK.COM> <20200412023716.GN88064@mit.edu>
To: Benjamin Kaduk <kaduk@mit.edu>
X-Mailer: Apple Mail (2.3445.104.11)
X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9589 signatures=668686
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 malwarescore=0 spamscore=0 suspectscore=0 mlxlogscore=999 mlxscore=0 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004120150
X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9589 signatures=668686
X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 adultscore=0 mlxlogscore=999 clxscore=1015 mlxscore=0 phishscore=0 suspectscore=0 lowpriorityscore=0 bulkscore=0 malwarescore=0 priorityscore=1501 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004120150
Archived-At: <https://mailarchive.ietf.org/arch/msg/nfsv4/FOJikSXDdN9qdq1_Ie50qU1m2cg>
Subject: Re: [nfsv4] AD review of draft-ietf-nfsv4-rpc-tls
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: Sun, 12 Apr 2020 16:29:21 -0000

Hi Ben -

> On Apr 11, 2020, at 10:37 PM, Benjamin Kaduk <kaduk@mit.edu> wrote:
> 
> On Fri, Apr 10, 2020 at 03:33:51PM +0000, Rick Macklem wrote:
>> Chuck Lever wrote:
>> [stuff snipped]
>>> Then I started thinking about TCP.
>>> 
>>> Since we have implementations that use the same connection to transport
>>> multiple RPC programs, we have to make a different statement. What should
>>> that statement be?
>>> 
>>> I wondered again about whether it makes sense to permit or encourage
>>> multiple TLS sessions on the same connection.
>>> 
>>> If you wanted to, how would you establish a second TLS session? Because
>>> of the "no clear-text RPCs after a TLS session has been established"
>>> stipulation, the client would have to perform a bunch of AUTH_TLS probes
>>> _before_ sending any ClientHello messages.
>>> 
>>> (And in any event we probably want rpc-tls to discuss what should happen
>>> if there is traffic on the connection between the AUTH_TLS probe and
>>> the ClientHello message).
>> I think that multiple AUTH_TLS probes before sending ClientHello
>> is both difficult to implement and confusing.
>> 
>> The AUTH_TLS probe serves two purposes well.
>> 1 - It establishes whether or not RPC-over-TLS is supported by the server.
>> 2 - If supported, it triggers a TLS handshake for the first session.
>> 
>> If you do want multiple TLS sessions on the same TCP connection (I'll assume TLS
>> allows this?), then I think a separate kind of AUTH_TLS Null RPC which is done
> 
> TLS doesn't really allow this.

I want to understand how to word the text in rpc-tls. "this" here means
"multiple TLS sessions on the same TCP connection" ? What happens when
the client peer sends a second ClientHello message on a connection with
an established TLS session? I haven't been able to find a firm description
of how a server is supposed to respond in this case.


> You could in theory make a TLS variant that
> did it anyway, but you'd have to add a protocol field for a connection
> identifier and/or do trial decryption on each TLS record, which doesn't
> really make sense.
> 
> -Ben

--
Chuck Lever