[radext] Re: Final update to RADIUS/(D)TLS-bis

Jan-Frederik Rieckers <rieckers@dfn.de> Fri, 25 September 2026 19:49 UTC

Received: from c1004.mx.srv.dfn.de (c1004.mx.srv.dfn.de [IPv6:2001:638:d:c303:acdc:1979:2:58]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1 raw public key) server-digest SHA256) (No client certificate requested) by mx.ietf.org (Postfix) with ESMTPS id 9BFD931 for <radext@ietf.org>; Fri, 25 Sep 2026 19:49:56 +0000 (UTC)
Authentication-Results: mx.ietf.org; dkim=pass header.d=dfn.de header.s=s2 header.b=XvcSMf6A; dmarc=pass (policy=none) header.from=dfn.de; spf=pass (mx.ietf.org: domain of rieckers@dfn.de designates 2001:638:d:c303:acdc:1979:2:58 as permitted sender) smtp.mailfrom=rieckers@dfn.de
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=dfn.de; h= content-type:content-type:in-reply-to:from:from:content-language :references:subject:subject:user-agent:mime-version:date:date :message-id:received; s=s2; t=1790365788; x=1792180189; bh=WY0Wd 2ZABF818H3d42ZAn1gwggHT1yyceFT4ZfY6pVM=; b=XvcSMf6A7n+GUDHNFPko2 nLkWpFaJO5r4UtJjPXJtLA/WfHH18PQbcAPU0kBihX2uTalD3GnSqvgagZzfqTAH sNl9jrQwKBtCyjgk04uWXP2lmswl2JzmfttvUgTcQ8gNvaMgDA7DglYtAZbtqwNv E1S2weNVCfhh2Jkzsx8r1iAYIjFgq6XfFOMV2sDBDOlCoJ3lD05DWjO+zgQkFZVa LHVO8Yw5N59vL7wdbichg/RMYownbEnRM/Ybq8dUsfWGJ9eNPvUXKvJPO+5lxBMz cR02TiGxJRkJ9jXyxQQ2zhQ19Eo4XEQ16NmRON2GtyXxzEro2MG1pzt9cXnBsWBF Q==
Received: from mail.dfn.de (mail.dfn.de [IPv6:2001:638:d:c102::150]) by c1004.mx.srv.dfn.de (Postfix) with ESMTPS id 8A85F1202A4 for <radext@ietf.org>; Fri, 25 Sep 2026 21:49:48 +0200 (CEST)
Received: from [IPV6:2a03:fc82:34d:f00:fa52:fa3:b4a7:5e4] (unknown [IPv6:2a03:fc82:34d:f00:fa52:fa3:b4a7:5e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits)) (No client certificate requested) by mspool2.in.dfn.de (Postfix) with ESMTPSA id 5A40239B for <radext@ietf.org>; Fri, 25 Sep 2026 21:49:48 +0200 (CEST)
Message-ID: <cc4bfd63-9563-441c-9b53-0fccc9a201da@dfn.de>
Date: Fri, 25 Sep 2026 21:49:48 +0200
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: radext@ietf.org
References: <4be6b9ec-3432-441f-a1f2-689261d94571@dfn.de> <d858013a-e223-257a-5b4d-2835224a78ac@iea-software.com> <12fc615b-f563-4237-8928-e3fa6a784912@switch.ch> <50505951-a2b5-5712-6983-c967ad2da96e@iea-software.com> <0a7d41a9-baea-4d04-94fb-3414f4941001@switch.ch> <f5ac552e-01e8-4af1-b6a5-554c0bcc04d2@dfn.de> <c943d687-ea4f-9fa3-6e76-554290513b69@iea-software.com>
Content-Language: en-US
From: Jan-Frederik Rieckers <rieckers@dfn.de>
X-Enigmail-Draft-Status: N11222
In-Reply-To: <c943d687-ea4f-9fa3-6e76-554290513b69@iea-software.com>
Content-Type: multipart/signed; protocol="application/pkcs7-signature"; micalg="sha-512"; boundary="------------ms010305020102020901000908"
X-Spamd-Bar: ----
Message-ID-Hash: TPMO5AYRYXZKSLTZDXWQGTETI3EGV2UP
X-Message-ID-Hash: TPMO5AYRYXZKSLTZDXWQGTETI3EGV2UP
X-MailFrom: rieckers@dfn.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; header-match-radext.ietf.org-0; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.10
Precedence: list
Subject: [radext] Re: Final update to RADIUS/(D)TLS-bis
List-Id: RADIUS EXTensions working group discussion list <radext.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/radext/CtvaxaMgknuOkjqFgExUqUqFcU0>
List-Archive: <https://mailarchive.ietf.org/arch/browse/radext>
List-Help: <mailto:radext-request@ietf.org?subject=help>
List-Owner: <mailto:radext-owner@ietf.org>
List-Post: <mailto:radext@ietf.org>
List-Subscribe: <mailto:radext-join@ietf.org>
List-Unsubscribe: <mailto:radext-leave@ietf.org>

Hi Peter,

On 2026-09-22 11:54, Peter Deacon wrote:
> On Sun, 6 Sep 2026, Jan-Frederik Rieckers wrote:
> 
>> Hello,
>> I'm not sure if a "SHOULD" for the connection closure is sufficient.
> 
>> If a connection has a security issue it should always be closed 
>> immediately. Keeping the connection artificially open is harmful, 
>> because the client might start to send packets and those may even time 
>> out if the server knows the connection is unacceptable and does not 
>> process anything received on that connection.
> 
> If a client offends a server in some way a server should not be required 
> to provide immediate feedback if doing so would be harmful to the server.

This case is not "offend in some way", but a very specific case of 
"Certificate (or any other security-relevant property of the mutual 
authentication in the TLS handshake) was not valid, but it could not be 
verified before the "Finished" message of the handshake", so we need to 
do it after.

> A robust client implementation could issue an application keepalive 
> immediate upon session establishment or initially concurrently connect 
> to multiple servers using the one that responds first.  I don't support 
> requiring instant feedback to an offensive client.

This is already in the spec with Status-Server.
If the client fears the server may close the connection, the client 
implementation is free to send a Status-Server request to the server 
first, and if it responds, the connection is healthy, and only then 
start sending payload packets.


> Unfortunately given current draft even over a "reliable" transport a 
> perfectly valid request over a perfectly valid connection is allowed to 
> be summarily ignored with not even a best effort expectation of any kind 
> of response.

It's no different than RADIUS/UDP with a shared secret. A RADIUS/UDP 
server will ignore these packets too, even though they come over a 
"perfectly valid" connection (i.e. correct source IP address, as this is 
the only "security" for RADIUS, apart from the shared secret).

Normally, the presumption would be that if the TLS connection is 
established, it is valid. Since the operational experience has shown 
that there are cases where you need to close the connection due to a 
failure in mutual authentication that only is available to the 
implementation after the TLS handshake, we explicitly add this part in 
our spec, so clients know what to expect.

And again, if clients want to be sure that a connection is viable, the 
first packet can be a Status-Server request.


> Clients therefore have to be able to handle these bizarre situations 
> where even reliable transports act for all intent and purposes as if 
> they were unreliable.  Not just initially but throughout the life of the 
> session.
The moment that the first valid response packet has been received (e.g. 
the response to the Status-Server request), the client can assume that 
the connection is viable.

Any further (automatic) connection closure is based on security issues 
on the connection (e.g. due to alignment issues which completely breaks 
the packet boundaries for the following packets) or a misbehaving client.



I'm sorry, but from your comments I cannot see in which cases it is 
valid for the server to artificially keep a connection open.
In any case, the server cannot answer to any other incoming requests, so 
closing the connection is essential for the client, so the client does 
not send any further packets (that will not get an answer).

Cheers,
Janfred

-- 
Herr Jan-Frederik Rieckers
Security, Trust & Identity Services

E-Mail: rieckers@dfn.de | Fon: +49 30884299-339 | Fax: +49 30884299-370
Pronomen: er/sein | Pronouns: he/him
__________________________________________________________________________________

DFN - Deutsches Forschungsnetz | German National Research and Education 
Network
Verein zur Förderung eines Deutschen Forschungsnetzes e.V.
Alexanderplatz 1 | 10178 Berlin
https://www.dfn.de

Vorstand: Prof. Dr.-Ing. Stefan Wesner | Prof. Dr. Helmut Reiser | 
Christian Zens
Geschäftsführung: Dr. Christian Grimm | Alina Hain
VR AG Charlottenburg 7729B | USt.-ID. DE 136623822