<?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet type="text/xsl" href="rfc2629.xslt" ?>
  <!-- generated by https://github.com/cabo/kramdown-rfc2629 version 1.6.2 (Ruby 2.7.4) -->


<!DOCTYPE rfc  [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">

]>


<rfc ipr="trust200902" docName="draft-rieckers-radext-rfc6614bis-01" category="std" consensus="true" submissionType="IETF" obsoletes="6614" tocInclude="true" sortRefs="true" symRefs="true">
  <front>
    <title abbrev="RADIUS over TLS">Transport Layer Security (TLS) Encryption for RADIUS</title>

    <author initials="J.-F." surname="Rieckers" fullname="Jan-Frederik Rieckers" role="editor">
      <organization abbrev="DFN">Deutsches Forschungsnetz | German National Research and Education Network</organization>
      <address>
        <postal>
          <street>Alexanderplatz 1</street>
          <city>Berlin</city>
          <code>10178</code>
          <country>Germany</country>
        </postal>
        <email>rieckers@dfn.de</email>
        <uri>www.dfn.de</uri>
      </address>
    </author>

    <date year="2022" month="October" day="24"/>

    <area>Operations and Management</area>
    <workgroup>RADIUS EXTensions</workgroup>
    <keyword>RADIUS</keyword> <keyword>TLS</keyword>

    <abstract>


<t>This document specifies a transport profile for RADIUS using Transport Layer Security (TLS) over TCP as the transport protocol.
This enables dynamic trust relationships between RADIUS servers as well as encrypting RADIUS traffic between servers using a shared secret.</t>



    </abstract>

    <note title="About This Document" removeInRFC="true">
      <t>
        Status information for this document may be found at <eref target="https://datatracker.ietf.org/doc/draft-rieckers-radext-rfc6614bis/"/>.
      </t>
      <t>
        Discussion of this document takes place on the
        RADIUS EXTensions Working Group mailing list (<eref target="mailto:radext@ietf.org"/>),
        which is archived at <eref target="https://mailarchive.ietf.org/arch/browse/radext/"/>.
      </t>
    </note>


  </front>

  <middle>


<section anchor="introduction"><name>Introduction</name>

<t>The RADIUS protocol <xref target="RFC2865"/> is a widely deployed authentication and authorization protocol.
The supplementary RADIUS Accounting specification <xref target="RFC2866"/> provides accounting mechanisms, thus delivering a full Authentication, Authorization, and Accounting (AAA) solution.
However, RADIUS has shown several shortcomings, especially the lack of security for large parts of its packet payload.
RADIUS security is based on the MD5 algorithm, which has been proven to be insecure.</t>

<t>The main focus of RADIUS over TLS is to provide a means to secure the communication between RADIUS/TCP peers using TLS.
The most important use of this specification lies in roaming environments where RADIUS packets need to be transferred through different administrative domains and untrusted, potentially hostile network.</t>

<t>There are multiple known attacks on the MD5 algorithm that is used in RADIUS to provide integrity protection and a limited confidentiality protection. RADIUS over TLS wraps the entire RADIUS packet payload into a TLS stream and thus mitigates the risk of attacks on MD5.</t>

<t>Because of the static trust establishment between RADIUS peers (IP address and shared secret), the only scalable way of creating a massive deployment of RADIUS servers under the control of different administrative entities is to introduce some form of a proxy chain to route the access requests to their home server.
This creates a lot of overhead in terms of possible points of failure, longer transmission times, as well as middleboxes through which authentication traffic flows.
These middleboxes may learn privacy-relevant data while forwarding requests.
The new features in RADIUS over TLS add a new way to identify other peers, e.g., by checking a certificate for the issuer or other certificate properties, but also provides a simple upgrade path for existing RADIUS connection by simply using the shared secret to authenticate the TLS session.</t>

<section anchor="conventions-and-definitions"><name>Conventions and Definitions</name>

<t>The key words "<bcp14>MUST</bcp14>", "<bcp14>MUST NOT</bcp14>", "<bcp14>REQUIRED</bcp14>", "<bcp14>SHALL</bcp14>", "<bcp14>SHALL
NOT</bcp14>", "<bcp14>SHOULD</bcp14>", "<bcp14>SHOULD NOT</bcp14>", "<bcp14>RECOMMENDED</bcp14>", "<bcp14>NOT RECOMMENDED</bcp14>",
"<bcp14>MAY</bcp14>", and "<bcp14>OPTIONAL</bcp14>" in this document are to be interpreted as
described in BCP 14 <xref target="RFC2119"/> <xref target="RFC8174"/> when, and only when, they
appear in all capitals, as shown here.</t>

<t>Within this document we will use the following terms:</t>

<dl>
  <dt>RADIUS/TLS node:</dt>
  <dd>
    <t>a RADIUS-over-TLS client or server</t>
  </dd>
  <dt>RADIUS/TLS Client:</dt>
  <dd>
    <t>a RADIUS-over-TLS instance that initiates a new connection</t>
  </dd>
  <dt>RADIUS/TLS Server:</dt>
  <dd>
    <t>a RADIUS-over-TLS instance that listens on a RADIUS-over-TLS port and accepts new connections</t>
  </dd>
  <dt>RADIUS/UDP:</dt>
  <dd>
    <t>a classic RADIUS transport over UDP as defined in <xref target="RFC2865"/></t>
  </dd>
</dl>

</section>
<section anchor="changes-from-rfc6614"><name>Changes from RFC6614</name>

<t>Currently, there are no big changes, since this is just a restructured spec from <xref target="RFC6614"/>.</t>

<t>The following things have changed:</t>

<dl>
  <dt>Required TLS versions:</dt>
  <dd>
    <t>TLS 1.2 is now the minimum TLS version, TLS 1.3 is included as recommended.</t>
  </dd>
  <dt>TLS compression:</dt>
  <dd>
    <t><xref target="RFC6614"/> allowed usage of TLS compression, this document forbids it.</t>
  </dd>
  <dt>TLS-PSK support:</dt>
  <dd>
    <t><xref target="RFC6614"/> lists support for TLS-PSK as <bcp14>OPTIONAL</bcp14>, this document changes this to <bcp14>RECOMMENDED</bcp14>.</t>
  </dd>
  <dt>Mandatory-to-implement(MTI) cipher suites:</dt>
  <dd>
    <t>Following the recommendation from <xref target="RFC7525"/>, the RC4 cipher suite is no longer included as <bcp14>SHOULD</bcp14>, and the AES cipher suite is the new MTI cipher suite, since it is the MTI cipher suite from TLS 1.2.
Additionally, this document references <xref target="RFC7525"/> for further recommendations for cipher suites.</t>
  </dd>
</dl>

<t>The following things will change in future versions of this draft:</t>

<t><list style="symbols">
  <t>Usage of Server Name Indication</t>
  <t>More text for TLS-PSK</t>
</list></t>

</section>
</section>
<section anchor="transport-layer-security-for-radiustcp"><name>Transport layer security for RADIUS/TCP</name>

<t>This section specifies the way TLS is used to secure the traffic and the changes in the handling of RADIUS packets.</t>

<section anchor="tcp-port-and-packet-types"><name>TCP port and Packet Types</name>

<t>The default destination port number for RADIUS over TLS is TCP/2083.
There are no separate ports for authentication, accounting, and dynamic authorization changes.
The source port is arbitrary.</t>

</section>
<section anchor="tls-connection-setup"><name>TLS Connection setup</name>

<t>The RADIUS/TLS nodes first try to establish a TCP connection as per <xref target="RFC6613"/>.
Failure to connect leads to continuous retries.
It is <bcp14>RECOMMENDED</bcp14> to use exponentially growing intervals between every try.</t>

<t>After completing the TCP handshake, the RADIUS/TLS nodes immediately negotiate a TLS session.
The following restrictions apply:</t>

<t><list style="symbols">
  <t>Support for TLS 1.2 <xref target="RFC5246"/> is <bcp14>REQUIRED</bcp14>, support for TLS 1.3 <xref target="RFC8446"/> is <bcp14>RECOMMENDED</bcp14>.
RADIUS/TLS nodes <bcp14>MUST NOT</bcp14> negotiate TLS versions prior to TLS 1.2</t>
  <t>Support for certificate-based mutual authentication is <bcp14>REQUIRED</bcp14>.</t>
  <t>Negotiation of mutual authentication is <bcp14>REQUIRED</bcp14>.</t>
  <t>The RADIUS/TLS nodes <bcp14>MUST NOT</bcp14> offer or negotiate cipher suites which do not provide confidentiality and integrity protection.</t>
  <t>The RADIUS/TLS nodes <bcp14>MUST NOT</bcp14> negotiate compression.</t>
  <t>When using TLS 1.3, RADIUS/TLS nodes <bcp14>MUST NOT</bcp14> use early data (<xref target="RFC8446"/>, Section 2.3)</t>
  <t>RADIUS/TLS nodes <bcp14>SHOULD</bcp14> support TLS-PSK mutual authentication <xref target="RFC4279"/></t>
  <t>RADIUS/TLS implementations <bcp14>MUST</bcp14>, at minimum, support negotiation of the TLS_RSA_WITH_AES_128_CBC_SHA cipher suite and <bcp14>SHOULD</bcp14> follow the recommendations for supported cipher suites in <xref target="RFC7525"/>, Section 4.</t>
  <t>In addition, RADIUS/TLS implementations <bcp14>MUST</bcp14> support negotiation of the mandatory-to-implement cipher suites required by the versions of TLS they support.</t>
</list></t>

<t>Details for peer authentication are described in <xref target="TLSPeerAuth"/>.</t>

<t>After successful negotiation of a TLS session, the RADIUS/TLS peers can start exchanging RADIUS datagrams.
The shared secret to compute the (obsolete) MD5 integrity checks and attribute obfuscation <bcp14>MUST</bcp14> be "radsec".</t>

</section>
<section anchor="TLSPeerAuth"><name>TLS Peer Authentication</name>

<t>The authentication of peers can be done using different models, that will be described here.</t>

<section anchor="authentication-using-x509-certificates-with-pkix-trust-model"><name>Authentication using X.509 certificates with PKIX trust model</name>

<t>All RADIUS/TLS implementations <bcp14>MUST</bcp14> implement this model, following the following rules:</t>

<t><list style="symbols">
  <t>Implementations <bcp14>MUST</bcp14> allow the configuration of a list of trusted Certificate Authorities for incoming connections.</t>
  <t>Certificate validation <bcp14>MUST</bcp14> include the verification rules as per <xref target="RFC5280"/>.</t>
  <t>Implementations <bcp14>SHOULD</bcp14> indicate their trusted Certification Authorities (CAs). See <xref target="RFC5246"/>, Section 7.4.4 and <xref target="RFC6066"/>, Section 6 for TLS 1.2 and <xref target="RFC8446"/>, Section 4.2.4 for TLS 1.3.</t>
  <t>Peer validation always includes a check on whether the locally configured expected expected DNS name or IP address of the server that is contacted matches its presendet certificate. 
DNS names and IP addresses can be contained in the Common Name (CN) or subjectAltName entries.
For verification, only one of these entries is to be considered.
The following precedence applies:
for DNS name validation, subjectAltName:DNS has precedence over CN; for IP address validation, subjectAltName:iPAddr has precedence over CN.
Implementors of this specification are advised to read <xref target="RFC6125"/>, Section 6, for more details on DNS name validation. </t>
  <t>Implementations <bcp14>MAY</bcp14> allow the configuration of a set of addiional properties of the certificate to check for a peer's authorization to communicate (e.g., a set of allowed values in subjectAltName:URI or a set of allowed X.509v3 Certificate Policies).</t>
  <t>When the configured trust base changes (e.g., removal of a CA from the list of trusted CAs; issuance of a new CRL for a given CA), implementations <bcp14>MAY</bcp14> renegotiate the TLS session to reassess the connecting peer's continued authorization.</t>
</list></t>

</section>
<section anchor="authentication-using-certificate-fingerprints"><name>Authentication using certificate fingerprints</name>

<t>RADIUS/TLS implementations <bcp14>SHOULD</bcp14> allow the configuration of a list of trusted certificates, identified via fingerprint of the DER encded certificate octets.
When implementing this model, support for SHA-1 as hash algorithm for the fingerprint is <bcp14>REQUIRED</bcp14>, and support for the more contemporary has function SHA-256 is <bcp14>RECOMMENDED</bcp14>.</t>

</section>
<section anchor="authentication-using-tls-psk"><name>Authentication using TLS-PSK</name>

<t>The support for TLS-PSK is <bcp14>OPTIONAL</bcp14>.</t>

</section>
</section>
<section anchor="connecting-client-identity"><name>Connecting Client Identity</name>

<t>In RADIUS/UDP, clients are uniquely identified by their IP address.
Since the shared secret is associated with the origin IP address, if more than one RADIUS client is associated with the same IP address, then those clients also must utilize the same shared secret.
This practice is inherently insecure, as noted in <xref target="RFC5247"/>, Section 5.3.2.</t>

<t>Following the different authentication modes presented in <xref target="TLSPeerAuth"/>, the identification of clients can be done by different means:</t>

<t>In TLS-PSK operation, a client is uniquely identified by its TLS identifier.</t>

<t>When using certificate fingerprints, a client is uniquely identified by the fingerprint of the presented client certificate.</t>

<t>When using X.509 certificates with a PKIX trust model, a client is uniquely identified by the tuple of the serial number of the presended client certificate and the issuer of the client certificate.</t>

<t>Note well: having identified a connecting entity does not mean the server necessarily wants to communicate with that client.
For example, if the issuer is not in a trusted set of issuers, the server may decline to perform RADIUS transactions with this client.</t>

<t>There are numerous trust models in PKIX environments, and it is beyond the scope of this document to define how a particular deployment determines whether a client is trustworthy.
Implementations that want to support a wide variety of trust models should expose as many details of the presented certificate to the administrator as possible so that the trust model can be implemented by the administrator.
As a suggestion, at least the following parameters of the X.509 client certificate should be exposed:</t>

<t><list style="symbols">
  <t>Originating IP address</t>
  <t>Certificate Fingerprint</t>
  <t>Issuer</t>
  <t>Subject</t>
  <t>all X.509v3 Extended Key Usage</t>
  <t>all X.509v3 Subject Alternative Name</t>
  <t>all X.509v3 Certificate Policies</t>
</list></t>

<t>For TLS-PSK operation, at least the following parameters of the TLS connection should be exposed:</t>

<t><list style="symbols">
  <t>Originating IP address</t>
  <t>TLS Identifier </t>
</list></t>

</section>
<section anchor="radius-datagrams"><name>RADIUS Datagrams</name>

<t>Authentication, Authorization, and Accounting packets are sent according to the following rules:</t>

<t>RADIUS/TLS clients transmit the same packet types on the connection they initiated as a RADIUS/UDP client would.
For example, they send</t>

<t><list style="symbols">
  <t>Access-Request</t>
  <t>Accounting-Request</t>
  <t>Status-Server</t>
  <t>Disconnect-ACK</t>
  <t>Disconnect-NAK</t>
  <t>...</t>
</list></t>

<t>RADIUS/TLS servers transmit the same packets on connections they have accepted as a RADIUS/UDP server would.
For example, they send</t>

<t><list style="symbols">
  <t>Access-Challenge</t>
  <t>Access-Accept</t>
  <t>Access-Reject</t>
  <t>Accounting-Response</t>
  <t>Disconnect-Request</t>
  <t>...</t>
</list></t>

<t>Due to the use of one single TCP port for all packet types, it is required that a RADIUS/TLS server signal which types of packets are supported on a server to a connecting peer.</t>

<t><list style="symbols">
  <t>When an unwanted packet of type 'CoA-Request' or 'Disconnect-Request' is received, a RADIUS/TLS server needs to respond with a 'CoA-NAK' or 'Disconnect-NAK', respectively.
The NAK <bcp14>SHOULD</bcp14> contain an attribute Error-Cause with the value 406 ("Unsupported Extension"); see <xref target="RFC5176"/> for details.</t>
  <t>When an unwanted packet of type 'Accounting-Request' is received, the RADIUS/TLS server <bcp14>SHOULD</bcp14> reply with an Accounting-Response containing an Error-Cause attribute with value 406 "Unsupported Extension" as defined in <xref target="RFC5176"/>.
A RADIUS/TLS accounting client receiving such an Accounting-Response <bcp14>SHOULD</bcp14> log the error and stop sending Accounting-Request packets to this server.</t>
</list></t>

</section>
</section>
<section anchor="design-decisions"><name>Design Decisions</name>

<t>This section explains the design decisions that led to the rules defined in the previous section, as well as a reasoning behind the differences to <xref target="RFC6614"/>.</t>

<section anchor="implications-of-dynamic-peer-discovery"><name>Implications of Dynamic Peer Discovery</name>

<t>One mechanism to discover RADIUS-over-TLS peers dynamically via DNS is specified in <xref target="RFC7585"/>.
While this mechanism is still under development and therefore is not a normative dependency of RADIUS/TLS, the use of dynamic discovery has potential future implications that are important to understand.</t>

<t>Readers of this document who are considering the deployment of DNS-based dynamic discovery are thus encouraged to read <xref target="RFC7585"/> and follow its future development.</t>

</section>
<section anchor="cert_considerations"><name>X.509 Certificate Considerations</name>

<dl>
  <dt>(1)</dt>
  <dd>
    <t>If a RADIUS/TLS client is in possession of multiple certificates from different CAs (i.e., is part of multiple roaming consortia) and dynamic discovery is used, the discovery mechanism possibly does not yield sufficient information to identify the consortium uniquely (e.g., DNS discovery).
Subsequently, the client may not know by itself which client certificate to use for the TLS handshake.
Then, it is necessary for the server to signal to which consortium it belongs and which certificates it expects.
If there is no risk of confusing multiple roaming consortia, providing this information in the handshake is not crucial.</t>
  </dd>
  <dt>(2)</dt>
  <dd>
    <t>If a RADIUS/TLS server is in possession of multiple certificates from different CAs (i.e., is part of multiple roaming consortia), it will need to select one of its certificates to present to the RADIUS/TLS client.
If the client sends the Trusted CA Indication, this hint can make the server select the appropriate certificate and prevent a handshake failure.
Omitting this indication makes it impossible to deterministically select the right certificate in this case.
If there is no risk of confusing multiple roaming consortia, providing this indication in the handshake is not crucial.</t>
  </dd>
</dl>

</section>
<section anchor="cipher-suites-and-compression-negotiation-considerations"><name>Cipher Suites and Compression Negotiation Considerations</name>

<t>See <xref target="RFC7525"/> for considerations regarding the cipher suites and negotiation.</t>

</section>
<section anchor="datagram_considerations"><name>RADIUS Datagram Considerations</name>

<dl>
  <dt>(1)</dt>
  <dd>
    <t>After the TLS session is established, RADIUS packet payloads are
exchanged over the encrypted TLS tunnel.  In RADIUS/UDP, the
packet size can be determined by evaluating the size of the
datagram that arrived.  Due to the stream nature of TCP and TLS,
this does not hold true for RADIUS/TLS packet exchange.
Instead, packet boundaries of RADIUS packets that arrive in the
stream are calculated by evaluating the packet's Length field.
Special care needs to be taken on the packet sender side that
the value of the Length field is indeed correct before sending
it over the TLS tunnel, because incorrect packet lengths can no
longer be detected by a differing datagram boundary.  See
Section 2.6.4 of <xref target="RFC6613"/> for more details.</t>
  </dd>
  <dt>(2)</dt>
  <dd>
    <t>Within RADIUS/UDP <xref target="RFC2865"/>, a shared secret is used for hiding
attributes such as User-Password, as well as in computation of
the Response Authenticator.  In RADIUS accounting <xref target="RFC2866"/>, the
shared secret is used in computation of both the Request
Authenticator and the Response Authenticator.  Since TLS
provides integrity protection and encryption sufficient to
substitute for RADIUS application-layer security, it is not
necessary to configure a RADIUS shared secret.  The use of a
fixed string for the obsolete shared secret eliminates possible
node misconfigurations.</t>
  </dd>
  <dt>(3)</dt>
  <dd>
    <t>RADIUS/UDP <xref target="RFC2865"/> uses different UDP ports for
authentication, accounting, and dynamic authorization changes.
RADIUS/TLS allocates a single port for all RADIUS packet types.
Nevertheless, in RADIUS/TLS, the notion of a client that sends
authentication requests and processes replies associated with
its users' sessions and the notion of a server that receives
requests, processes them, and sends the appropriate replies is
to be preserved.  The normative rules about acceptable packet
types for clients and servers mirror the packet flow behavior
from RADIUS/UDP.</t>
  </dd>
  <dt>(4)</dt>
  <dd>
    <t>RADIUS/UDP <xref target="RFC2865"/> uses negative ICMP responses to a newly
allocated UDP port to signal that a peer RADIUS server does not
support the reception and processing of the packet types in
<xref target="RFC5176"/>.  These packet types are listed as to be received in
RADIUS/TLS implementations.  Note well: it is not required for
an implementation to actually process these packet types; it is
only required that the NAK be sent as defined above.</t>
  </dd>
  <dt>(5)</dt>
  <dd>
    <t>RADIUS/UDP <xref target="RFC2865"/> uses negative ICMP responses to a newly
allocated UDP port to signal that a peer RADIUS server does not
support the reception and processing of RADIUS Accounting
packets.  There is no RADIUS datagram to signal an Accounting
NAK.  Clients may be misconfigured for sending Accounting
packets to a RADIUS/TLS server that does not wish to process
their Accounting packet.  To prevent a regression of
detectability of this situation, the Accounting-Response +
Error-Cause signaling was introduced.</t>
  </dd>
</dl>

</section>
</section>
<section anchor="compatibility-with-other-radius-transports"><name>Compatibility with Other RADIUS Transports</name>

<t>The IETF defines multiple alternative transports to the classic UDP transport model as defined in <xref target="RFC2865"/>, namely RADIUS over TCP <xref target="RFC6613"/>, the present document on RADIUS over TLS and RADIUS over Datagram Transport Layer Security (DTLS) <xref target="RFC7360"/>.</t>

<t>RADIUS/TLS does not specify any inherent backward compatibility to RADIUS/UDP or cross compatibility to the other transports, i.e., an implementation that utilizes RADIUS/TLS only will not be able to receive or send RADIUS packet payloads over other transports.
An implementation wishing to be backward or cross compatible (i.e., wishes to serve clients using other transports than RADIUS/TLS) will need to implement these other transports along with the RADIUS/TLS transport and be prepared to send and receive on all implemented transports, which is called a "multi-stack implementation".</t>

<t>If a given IP device is able to receive RADIUS payloads on multiple transports, this may or may not be the same instance of software, and it may or may not serve the same purposes.
It is not safe to assume that both ports are interchangeable.
In particular, it cannot be assumed that state is maintained for the packet payloads between the transports.
Two such instances <bcp14>MUST</bcp14> be considered separate RADIUS server entities.</t>

</section>
<section anchor="security-considerations"><name>Security Considerations</name>

<t>The computational resources to establish a TLS tunnel are significantly higher than simply sending mostly unencrypted UDP datagrams.
Therefore, clients connecting to a RADIUS/TLS node will more easily create high load conditions and a malicious client might create a Denial-of-Service attack more easily.</t>

<t>Some TLS cipher suites only provide integrity validation of their payload and provide no encryption.
This specification forbids the use of such cipher suites.
Since the RADIUS payload's shared secret is fixed to the well-known term "radsec", failure to comply with this requirement will expose the entire datagram payload in plaintext, including User-Password, to intermediate IP nodes.</t>

<t>By virtue of being based on TCP, there are several generic attack vectors to slow down or prevent the TCP connection from being established; see <xref target="RFC4953"/> for details.
If a TCP connection is not up when a packet is to be processed, it gets re-established, so such attacks in general lead only to a minor performance degradation (the time it takes to re-establish the connection).
There is one notable exception where an attacker might create a bidding-down attack though.
If peer communication between two devices is configured for both RADIUS/TLS and RADIUS/UDP, and the RADIUS/UDP transport is the failover option if the TLS session cannot be established, a bidding-down attack can occur if an adversary can maliciously close the TCP connection or prevent it from being established.
Situtations where clients are configured in such a way are likely to occur during a migration phase from RADIUS/UDP to RADIUS/TLS.
By preventing the TLS session setup, the attacker can reduce the security of the packet payload from the selected TLS cipher suite packet encryption to the classic MD5 per-attribute encryption.
The situation should be avoided by disabling the weaker RADIUS/UDP transport as soon as the new RADIUS/TLS connection is established and tested.</t>

<t>RADIUS/TLS provides authentication and encryption between RADIUS peers.
In the presence of proxies, the intermediate proxies can still inspect the individual RADIUS packets, i.e., "end-to-end" encryption is not provided.
Where intermediate proxies are untrusted, it is desirable to use other RADIUS mechanisms to prevent RADIUS packet payload from inspection by such proxies.
One common method to protect passwords is the use of the Extensible Authentication Protocol (EAP) and EAP methods that utilize TLS.</t>

<t>When using certificate fingerprints to identify RADIUS/TLS peers, any two certificates that produce the same hash value (i.e., that have a hash collision) will be considered the same client.
Therefore, it is important to make sure that the hash function used is cryptographically uncompromised so that an attacker is very unlikely to be able to produce a hash collision with a certificate of his choice.
While this specification mandates support for SHA-1, a later revision will likely demand support for more contemporary hash functions because as of issuance of this document, there are already attacks on SHA-1.</t>

</section>
<section anchor="iana-considerations"><name>IANA Considerations</name>

<t>Upon approval, IANA should update the Reference to radsec in the Service Name and Transport Protocol Port Number Registry:</t>

<t><list style="symbols">
  <t>Service Name: radsec</t>
  <t>Port Number: 2083</t>
  <t>Transport Protocol: tcp</t>
  <t>Description: Secure RADIUS Service</t>
  <t>Assignment notes: The TCP port 2083 was already previously assigned by IANA for "RadSec", an early implementation of RADIUS/TLS, prior to issuance of the experimental RFC 6614. [This document] updates RFC 6614, while maintaining backward compatibility, if configured. For further details see RFC 6614, Appendix A or [This document], <xref target="BackwardComp"/>.</t>
</list></t>

</section>


  </middle>

  <back>

    <references title='Normative References'>





<reference anchor='RFC2865' target='https://www.rfc-editor.org/info/rfc2865'>
<front>
<title>Remote Authentication Dial In User Service (RADIUS)</title>
<author fullname='C. Rigney' initials='C.' surname='Rigney'><organization/></author>
<author fullname='S. Willens' initials='S.' surname='Willens'><organization/></author>
<author fullname='A. Rubens' initials='A.' surname='Rubens'><organization/></author>
<author fullname='W. Simpson' initials='W.' surname='Simpson'><organization/></author>
<date month='June' year='2000'/>
<abstract><t>This document describes a protocol for carrying authentication, authorization, and configuration information between a Network Access Server which desires to authenticate its links and a shared Authentication Server.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='2865'/>
<seriesInfo name='DOI' value='10.17487/RFC2865'/>
</reference>



<reference anchor='RFC2866' target='https://www.rfc-editor.org/info/rfc2866'>
<front>
<title>RADIUS Accounting</title>
<author fullname='C. Rigney' initials='C.' surname='Rigney'><organization/></author>
<date month='June' year='2000'/>
<abstract><t>This document describes a protocol for carrying accounting information between a Network Access Server and a shared Accounting Server.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='2866'/>
<seriesInfo name='DOI' value='10.17487/RFC2866'/>
</reference>



<reference anchor='RFC2119' target='https://www.rfc-editor.org/info/rfc2119'>
<front>
<title>Key words for use in RFCs to Indicate Requirement Levels</title>
<author fullname='S. Bradner' initials='S.' surname='Bradner'><organization/></author>
<date month='March' year='1997'/>
<abstract><t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized. This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='2119'/>
<seriesInfo name='DOI' value='10.17487/RFC2119'/>
</reference>



<reference anchor='RFC8174' target='https://www.rfc-editor.org/info/rfc8174'>
<front>
<title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
<author fullname='B. Leiba' initials='B.' surname='Leiba'><organization/></author>
<date month='May' year='2017'/>
<abstract><t>RFC 2119 specifies common key words that may be used in protocol  specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the  defined special meanings.</t></abstract>
</front>
<seriesInfo name='BCP' value='14'/>
<seriesInfo name='RFC' value='8174'/>
<seriesInfo name='DOI' value='10.17487/RFC8174'/>
</reference>



<reference anchor='RFC7525' target='https://www.rfc-editor.org/info/rfc7525'>
<front>
<title>Recommendations for Secure Use of Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS)</title>
<author fullname='Y. Sheffer' initials='Y.' surname='Sheffer'><organization/></author>
<author fullname='R. Holz' initials='R.' surname='Holz'><organization/></author>
<author fullname='P. Saint-Andre' initials='P.' surname='Saint-Andre'><organization/></author>
<date month='May' year='2015'/>
<abstract><t>Transport Layer Security (TLS) and Datagram Transport Layer Security (DTLS) are widely used to protect data exchanged over application protocols such as HTTP, SMTP, IMAP, POP, SIP, and XMPP.  Over the last few years, several serious attacks on TLS have emerged, including attacks on its most commonly used cipher suites and their modes of operation.  This document provides recommendations for improving the security of deployed services that use TLS and DTLS. The recommendations are applicable to the majority of use cases.</t></abstract>
</front>
<seriesInfo name='BCP' value='195'/>
<seriesInfo name='RFC' value='7525'/>
<seriesInfo name='DOI' value='10.17487/RFC7525'/>
</reference>



<reference anchor='RFC6613' target='https://www.rfc-editor.org/info/rfc6613'>
<front>
<title>RADIUS over TCP</title>
<author fullname='A. DeKok' initials='A.' surname='DeKok'><organization/></author>
<date month='May' year='2012'/>
<abstract><t>The Remote Authentication Dial-In User Server (RADIUS) protocol has, until now, required the User Datagram Protocol (UDP) as the underlying transport layer.  This document defines RADIUS over the Transmission Control Protocol (RADIUS/TCP), in order to address handling issues related to RADIUS over Transport Layer Security (RADIUS/TLS).  It permits TCP to be used as a transport protocol for RADIUS only when a transport layer such as TLS or IPsec provides confidentiality and security.  This document defines an Experimental Protocol for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='6613'/>
<seriesInfo name='DOI' value='10.17487/RFC6613'/>
</reference>



<reference anchor='RFC5246' target='https://www.rfc-editor.org/info/rfc5246'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.2</title>
<author fullname='T. Dierks' initials='T.' surname='Dierks'><organization/></author>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<date month='August' year='2008'/>
<abstract><t>This document specifies Version 1.2 of the Transport Layer Security (TLS) protocol.  The TLS protocol provides communications security over the Internet.  The protocol allows client/server applications to communicate in a way that is designed to prevent eavesdropping, tampering, or message forgery.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5246'/>
<seriesInfo name='DOI' value='10.17487/RFC5246'/>
</reference>



<reference anchor='RFC8446' target='https://www.rfc-editor.org/info/rfc8446'>
<front>
<title>The Transport Layer Security (TLS) Protocol Version 1.3</title>
<author fullname='E. Rescorla' initials='E.' surname='Rescorla'><organization/></author>
<date month='August' year='2018'/>
<abstract><t>This document specifies version 1.3 of the Transport Layer Security (TLS) protocol.  TLS allows client/server applications to communicate over the Internet in a way that is designed to prevent eavesdropping, tampering, and message forgery.</t><t>This document updates RFCs 5705 and 6066, and obsoletes RFCs 5077, 5246, and 6961.  This document also specifies new requirements for TLS 1.2 implementations.</t></abstract>
</front>
<seriesInfo name='RFC' value='8446'/>
<seriesInfo name='DOI' value='10.17487/RFC8446'/>
</reference>



<reference anchor='RFC4279' target='https://www.rfc-editor.org/info/rfc4279'>
<front>
<title>Pre-Shared Key Ciphersuites for Transport Layer Security (TLS)</title>
<author fullname='P. Eronen' initials='P.' role='editor' surname='Eronen'><organization/></author>
<author fullname='H. Tschofenig' initials='H.' role='editor' surname='Tschofenig'><organization/></author>
<date month='December' year='2005'/>
<abstract><t>This document specifies three sets of new ciphersuites for the Transport Layer Security (TLS) protocol to support authentication based on pre-shared keys (PSKs).  These pre-shared keys are symmetric keys, shared in advance among the communicating parties.  The first set of ciphersuites uses only symmetric key operations for authentication. The second set uses a Diffie-Hellman exchange authenticated with a pre-shared key, and the third set combines public key authentication of the server with pre-shared key authentication of the client.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='4279'/>
<seriesInfo name='DOI' value='10.17487/RFC4279'/>
</reference>



<reference anchor='RFC5280' target='https://www.rfc-editor.org/info/rfc5280'>
<front>
<title>Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile</title>
<author fullname='D. Cooper' initials='D.' surname='Cooper'><organization/></author>
<author fullname='S. Santesson' initials='S.' surname='Santesson'><organization/></author>
<author fullname='S. Farrell' initials='S.' surname='Farrell'><organization/></author>
<author fullname='S. Boeyen' initials='S.' surname='Boeyen'><organization/></author>
<author fullname='R. Housley' initials='R.' surname='Housley'><organization/></author>
<author fullname='W. Polk' initials='W.' surname='Polk'><organization/></author>
<date month='May' year='2008'/>
<abstract><t>This memo profiles the X.509 v3 certificate and X.509 v2 certificate revocation list (CRL) for use in the Internet.  An overview of this approach and model is provided as an introduction.  The X.509 v3 certificate format is described in detail, with additional information regarding the format and semantics of Internet name forms.  Standard certificate extensions are described and two Internet-specific extensions are defined.  A set of required certificate extensions is specified.  The X.509 v2 CRL format is described in detail along with standard and Internet-specific extensions.  An algorithm for X.509 certification path validation is described.  An ASN.1 module and examples are provided in the appendices.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5280'/>
<seriesInfo name='DOI' value='10.17487/RFC5280'/>
</reference>



<reference anchor='RFC6066' target='https://www.rfc-editor.org/info/rfc6066'>
<front>
<title>Transport Layer Security (TLS) Extensions: Extension Definitions</title>
<author fullname='D. Eastlake 3rd' initials='D.' surname='Eastlake 3rd'><organization/></author>
<date month='January' year='2011'/>
<abstract><t>This document provides specifications for existing TLS extensions.  It is a companion document for RFC 5246, &quot;The Transport Layer Security (TLS) Protocol Version 1.2&quot;.  The extensions specified are server_name, max_fragment_length, client_certificate_url, trusted_ca_keys, truncated_hmac, and status_request.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6066'/>
<seriesInfo name='DOI' value='10.17487/RFC6066'/>
</reference>




    </references>

    <references title='Informative References'>





<reference anchor='RFC6614' target='https://www.rfc-editor.org/info/rfc6614'>
<front>
<title>Transport Layer Security (TLS) Encryption for RADIUS</title>
<author fullname='S. Winter' initials='S.' surname='Winter'><organization/></author>
<author fullname='M. McCauley' initials='M.' surname='McCauley'><organization/></author>
<author fullname='S. Venaas' initials='S.' surname='Venaas'><organization/></author>
<author fullname='K. Wierenga' initials='K.' surname='Wierenga'><organization/></author>
<date month='May' year='2012'/>
<abstract><t>This document specifies a transport profile for RADIUS using Transport Layer Security (TLS) over TCP as the transport protocol. This enables dynamic trust relationships between RADIUS servers.   [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6614'/>
<seriesInfo name='DOI' value='10.17487/RFC6614'/>
</reference>



<reference anchor='RFC6125' target='https://www.rfc-editor.org/info/rfc6125'>
<front>
<title>Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)</title>
<author fullname='P. Saint-Andre' initials='P.' surname='Saint-Andre'><organization/></author>
<author fullname='J. Hodges' initials='J.' surname='Hodges'><organization/></author>
<date month='March' year='2011'/>
<abstract><t>Many application technologies enable secure communication between two entities by means of Internet Public Key Infrastructure Using X.509 (PKIX) certificates in the context of Transport Layer Security (TLS). This document specifies procedures for representing and verifying the identity of application services in such interactions.   [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='6125'/>
<seriesInfo name='DOI' value='10.17487/RFC6125'/>
</reference>



<reference anchor='RFC5247' target='https://www.rfc-editor.org/info/rfc5247'>
<front>
<title>Extensible Authentication Protocol (EAP) Key Management Framework</title>
<author fullname='B. Aboba' initials='B.' surname='Aboba'><organization/></author>
<author fullname='D. Simon' initials='D.' surname='Simon'><organization/></author>
<author fullname='P. Eronen' initials='P.' surname='Eronen'><organization/></author>
<date month='August' year='2008'/>
<abstract><t>The Extensible Authentication Protocol (EAP), defined in RFC 3748, enables extensible network access authentication.  This document specifies the EAP key hierarchy and provides a framework for the transport and usage of keying material and parameters generated by EAP authentication algorithms, known as &quot;methods&quot;.  It also provides a detailed system-level security analysis, describing the conditions under which the key management guidelines described in RFC 4962 can be satisfied.  [STANDARDS-TRACK]</t></abstract>
</front>
<seriesInfo name='RFC' value='5247'/>
<seriesInfo name='DOI' value='10.17487/RFC5247'/>
</reference>



<reference anchor='RFC5176' target='https://www.rfc-editor.org/info/rfc5176'>
<front>
<title>Dynamic Authorization Extensions to Remote Authentication Dial In User Service (RADIUS)</title>
<author fullname='M. Chiba' initials='M.' surname='Chiba'><organization/></author>
<author fullname='G. Dommety' initials='G.' surname='Dommety'><organization/></author>
<author fullname='M. Eklund' initials='M.' surname='Eklund'><organization/></author>
<author fullname='D. Mitton' initials='D.' surname='Mitton'><organization/></author>
<author fullname='B. Aboba' initials='B.' surname='Aboba'><organization/></author>
<date month='January' year='2008'/>
<abstract><t>This document describes a currently deployed extension to the Remote Authentication Dial In User Service (RADIUS) protocol, allowing dynamic changes to a user session, as implemented by network access server products.  This includes support for disconnecting users and changing authorizations applicable to a user session. This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='5176'/>
<seriesInfo name='DOI' value='10.17487/RFC5176'/>
</reference>



<reference anchor='RFC7585' target='https://www.rfc-editor.org/info/rfc7585'>
<front>
<title>Dynamic Peer Discovery for RADIUS/TLS and RADIUS/DTLS Based on the Network Access Identifier (NAI)</title>
<author fullname='S. Winter' initials='S.' surname='Winter'><organization/></author>
<author fullname='M. McCauley' initials='M.' surname='McCauley'><organization/></author>
<date month='October' year='2015'/>
<abstract><t>This document specifies a means to find authoritative RADIUS servers for a given realm.  It is used in conjunction with either RADIUS over Transport Layer Security (RADIUS/TLS) or RADIUS over Datagram Transport Layer Security (RADIUS/DTLS).</t></abstract>
</front>
<seriesInfo name='RFC' value='7585'/>
<seriesInfo name='DOI' value='10.17487/RFC7585'/>
</reference>



<reference anchor='RFC7360' target='https://www.rfc-editor.org/info/rfc7360'>
<front>
<title>Datagram Transport Layer Security (DTLS) as a Transport Layer for RADIUS</title>
<author fullname='A. DeKok' initials='A.' surname='DeKok'><organization/></author>
<date month='September' year='2014'/>
<abstract><t>The RADIUS protocol defined in RFC 2865 has limited support for authentication and encryption of RADIUS packets.  The protocol transports data in the clear, although some parts of the packets can have obfuscated content.  Packets may be replayed verbatim by an attacker, and client-server authentication is based on fixed shared secrets.  This document specifies how the Datagram Transport Layer Security (DTLS) protocol may be used as a fix for these problems.  It also describes how implementations of this proposal can coexist with current RADIUS systems.</t></abstract>
</front>
<seriesInfo name='RFC' value='7360'/>
<seriesInfo name='DOI' value='10.17487/RFC7360'/>
</reference>



<reference anchor='RFC4953' target='https://www.rfc-editor.org/info/rfc4953'>
<front>
<title>Defending TCP Against Spoofing Attacks</title>
<author fullname='J. Touch' initials='J.' surname='Touch'><organization/></author>
<date month='July' year='2007'/>
<abstract><t>Recent analysis of potential attacks on core Internet infrastructure indicates an increased vulnerability of TCP connections to spurious resets (RSTs), sent with forged IP source addresses (spoofing).  TCP has always been susceptible to such RST spoofing attacks, which were indirectly protected by checking that the RST sequence number was inside the current receive window, as well as via the obfuscation of TCP endpoint and port numbers.  For pairs of well-known endpoints often over predictable port pairs, such as BGP or between web servers and well-known large-scale caches, increases in the path bandwidth-delay product of a connection have sufficiently increased the receive window space that off-path third parties can brute-force generate a viable RST sequence number.  The susceptibility to attack increases with the square of the bandwidth, and thus presents a significant vulnerability for recent high-speed networks.  This document addresses this vulnerability, discussing proposed solutions at the transport level and their inherent challenges, as well as existing network level solutions and the feasibility of their deployment.  This document focuses on vulnerabilities due to spoofed TCP segments, and includes a discussion of related ICMP spoofing attacks on TCP connections.  This memo provides information for the Internet community.</t></abstract>
</front>
<seriesInfo name='RFC' value='4953'/>
<seriesInfo name='DOI' value='10.17487/RFC4953'/>
</reference>




    </references>


<section anchor="BackwardComp"><name>Backward compatibility</name>

<t>TODO describe necessary steps to configure common servers for compatibility with this version.
Hopefully the differences to <xref target="RFC6614"/> are small enough that almost no config change is necessary.</t>

</section>
<section numbered="false" anchor="acknowledgments"><name>Acknowledgments</name>

<t>Thanks to the original authors of RFC 6614: Stefan Winter, Mice McCauley, Stig Venaas and Klaas Vierenga.</t>

<t>TODO more acknowledgements</t>

</section>


  </back>

<!-- ##markdown-source:
H4sIAEujVmMAA9Vc63IbyXX+j6foUD9EOgC8lChqzY2zwZKSl16JYkjKa9eW
vdWYaQBjDWbguZCClX2XPEueLOc753RPzwDclSupVOWHSgTQl9Onz/3Sk8lk
1GRN7s7MwV1li3pTVo15Y7euMrcuaaus2ZrDuze3R+ZVkVTbTZOVhVmUlbmZ
XVy+vz0Y2fm8cvc0Xb4w5T1NpQkHo8Q2bllW2zNTN+loVM7rMneNq8/M6enx
yWiUlklh17RzWtlFM6kyl3xwVT2pbOo+0udFgnHzrJ58cTyq2/k6q2vavdlu
aM7lq7vXI9r2+chWztL27zausoCuNrZIzVtb2KVbu6I5GD2U1YdlVbabDspX
f7xzBVarD0Yf3JZGpGcjYyZ6LP6TDjG6d0Xr8MvPzDdGQDr4nvbJiqX5Hcbi
+7XNcvpeDvRvmWsW07JaHoxGtm1WZSU7Cg5+b4vJ68qlrso+mBtFBf1uDM04
Mxeubepk5Wrzuqzoj7ZY1oVr/m7+w/zOVWtbmCs+vM3NjaudrZIVo+FV2ib8
g7lyDfDAS9ZN5VxzZma5+0ijXLXJLa11zD8mZUrwHH9x/PJL+UwkcGa+cVWe
FTqgLRpcq+y85S+dnNVf4r+li2KaOv7JU8jF6yv+TER1Zh4eHqbRmKoECbo0
a8pqNCpKWrjJ7gnzo6xYRJ9Go8lkQivSCWzSjEZ3q6w2REgtbtrUG5dki4yw
ZE0TqHlTlYssdxHVmrbGPf0CwQsln18bW5tm5forNmVS5lPZ3xV2ntOm6Zbu
MktoYFs3pnK50OMq29RmTuh3rvAA1K6i1Wss/eDyHP875S8CTAfRhosFrefn
+kkCvTX1img/pa+TyjVTQc06S9PcjUZPzCVdUknXDxiAKOeX9dCbT5/+6eb1
+bMvT1/89JPJgLSHLHX51qRuk5dbWhp0SojNlIZAUUK62d/lmxgTztTtZpMz
09lq67ebJUwwAFnvR1cL25/S9rTQPW1OQHTD1y5Z2SKr1/WYLqAlBLucyKCS
0y9awtusB+CYPwfoxgxwtP/hbDY7MiSGWvw8HX1bPjhab+xBXdE11KvyAaim
74mZ6FPVJOWaZhMQjg9gc0IRCCK3yQdTLnABQjegsNxWS2c2tmpq/JbRfxsa
54hq7DYvbTodBRrQaYT6ua0J3YQUrPv24oWxOYnOrFmtx+ZhlRE3A7Y5qACY
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
LjZAJm12o9F/A1aMmH0qXQAA

-->

</rfc>

