⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rfc5080.txt

📁 使用最广泛的radius的linux的源码
💻 TXT
📖 第 1 页 / 共 5 页
字号:
Network Working Group                                          D. NelsonRequest for Comments: 5080                          Elbrys Networks, IncUpdates: 2865, 2866, 2869, 3579                                 A. DeKokCategory: Standards Track                                     FreeRADIUS                                                           December 2007       Common Remote Authentication Dial In User Service (RADIUS)               Implementation Issues and Suggested FixesStatus of This Memo   This document specifies an Internet standards track protocol for the   Internet community, and requests discussion and suggestions for   improvements.  Please refer to the current edition of the "Internet   Official Protocol Standards" (STD 1) for the standardization state   and status of this protocol.  Distribution of this memo is unlimited.Abstract   This document describes common issues seen in Remote Authentication   Dial In User Service (RADIUS) implementations and suggests some   fixes.  Where applicable, ambiguities and errors in previous RADIUS   specifications are clarified.Nelson & DeKok              Standards Track                     [Page 1]RFC 5080                 RADIUS Issues & Fixes             December 2007Table of Contents   1. Introduction ....................................................2      1.1. Terminology ................................................3      1.2. Requirements Language ......................................3   2. Issues ..........................................................3      2.1. Session Definition .........................................3           2.1.1. State Attribute .....................................3           2.1.2. Request-ID Supplementation ..........................6      2.2. Overload Conditions ........................................7           2.2.1. Retransmission Behavior .............................7           2.2.2. Duplicate Detection and Orderly Delivery ...........10           2.2.3. Server Response to Overload ........................11      2.3. Accounting Issues .........................................12           2.3.1. Attributes Allowed in an Interim Update ............12           2.3.2. Acct-Session-Id and Acct-Multi-Session-Id ..........12           2.3.3. Request Authenticator ..............................13           2.3.4. Interim-Accounting-Interval ........................13           2.3.5. Counter Values in the RADIUS Management                  Information Base (MIB) .............................14      2.4. Multiple Filter-ID Attributes .............................15      2.5. Mandatory and Optional Attributes .........................16      2.6. Interpretation of Access-Reject ...........................18           2.6.1. Improper Use of Access-Reject ......................18           2.6.2. Service Request Denial .............................19      2.7. Addressing ................................................20           2.7.1. Link-Local Addresses ...............................20           2.7.2. Multiple Addresses .................................20      2.8. Idle-Timeout ..............................................21      2.9. Unknown Identity ..........................................21      2.10. Responses After Retransmissions ..........................22      2.11. Framed-IPv6-Prefix .......................................23   3. Security Considerations ........................................24   4. References .....................................................25      4.1. Normative References ......................................25      4.2. Informative References ....................................251.  Introduction   The last few years have seen an increase in the deployment of RADIUS   clients and servers.  This document describes common issues seen in   RADIUS implementations and suggests some fixes.  Where applicable,   ambiguities and errors in previous RADIUS specifications are   clarified.Nelson & DeKok              Standards Track                     [Page 2]RFC 5080                 RADIUS Issues & Fixes             December 20071.1.  Terminology   This document uses the following terms:   Network Access Server (NAS)      The device providing access to the network.  Also known as the      Authenticator in IEEE 802.1X or Extensible Authentication Protocol      (EAP) terminology, or RADIUS client.   service      The NAS provides a service to the user, such as network access via      802.11 or Point to Point Protocol (PPP).   session      Each service provided by the NAS to a peer constitutes a session,      with the beginning of the session defined as the point where      service is first provided, and the end of the session is defined      as the point where service is ended.  A peer may have multiple      sessions in parallel or series if the NAS supports that, with each      session generating a separate start and stop accounting record.   silently discard      This means the implementation discards the packet without further      processing.  The implementation SHOULD provide the capability of      logging the error, including the contents of the silently      discarded packet, and SHOULD record the event in a statistics      counter.1.2.  Requirements Language   In this document, several words are used to signify the requirements   of the specification.  The key words "MUST", "MUST NOT", "REQUIRED",   "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY",   and "OPTIONAL" in this document are to be interpreted as described in   [RFC2119].2.  Issues2.1.  Session Definition2.1.1.  State Attribute   Regarding the State attribute, [RFC2865] Section 5.24 states:      This Attribute is available to be sent by the server to the client      in an Access-Challenge and MUST be sent unmodified from the client      to the server in the new Access-Request reply to that challenge,      if any.Nelson & DeKok              Standards Track                     [Page 3]RFC 5080                 RADIUS Issues & Fixes             December 2007      This Attribute is available to be sent by the server to the client      in an Access-Accept that also includes a Termination-Action      Attribute with the value of RADIUS-Request.  If the NAS performs      the Termination-Action by sending a new Access-Request upon      termination of the current session, it MUST include the State      attribute unchanged in that Access-Request.   Some RADIUS client implementations do not properly use the State   attribute in order to distinguish a restarted EAP authentication   process from the continuation of an ongoing process (by the same user   on the same NAS and port).  Where an EAP-Message attribute is   included in an Access-Challenge or Access-Accept attribute, RADIUS   servers SHOULD also include a State attribute.  See Section 2.1.2 on   Request ID supplementation for additional benefits to using the State   attribute in this fashion.   As defined in [RFC2865] Table 5.44, Access-Request packets may   contain a State attribute.  The table does not qualify this   statement, while the text in Section 5.24 (quoted above) adds other   requirements not specified in that table.   We extend the requirements of [RFC2865] to say that Access-Requests   that are part of an ongoing Access-Request / Access-Challenge   authentication process SHOULD contain a State attribute.  It is the   responsibility of the server, to send a State attribute in an   Access-Challenge packet, if that server needs a State attribute in a   subsequent Access-Request to tie multiple Access-Requests together   into one authentication session.  As defined in [RFC2865] Section   5.24, the State MUST be sent unmodified from the client to the server   in the new Access-Request reply to that challenge, if any.   While most server implementations require the presence of a State   attribute in an Access-Challenge packet, some challenge-response   systems can distinguish the initial request from the response to the   challenge without using a State attribute to track an authentication   session.  The Access-Challenge and subsequent Access-Request packets   for those systems do not need to contain a State attribute.   Other authentication mechanisms need to tie a sequence of Access-   Request / Access-Challenge packets together into one ongoing   authentication session.  Servers implementing those authentication   mechanisms SHOULD include a State attribute in Access-Challenge   packets.   In general, if the authentication process involves one or more   Access-Request / Access-Challenge sequences, the State attribute   SHOULD be sent by the server in the Access-Challenge packets.  Using   the State attribute to create a multi-packet session is the simplestNelson & DeKok              Standards Track                     [Page 4]RFC 5080                 RADIUS Issues & Fixes             December 2007   method available in RADIUS today.  While other methods of creating   multi-packet sessions are possible (e.g., [RFC3579] Section 2.6.1),   those methods are NOT RECOMMENDED.   The only permissible values for a State attribute are values provided   in an Access-Accept, Access-Challenge, CoA-Request or Disconnect-   Request packet.  A RADIUS client MUST use only those values for the   State attribute that it has previously received from a server.  An   Access-Request sent as a result of a new or restarted authentication   run MUST NOT include the State attribute, even if a State attribute   has previously been received in an Access-Challenge for the same user   and port.   Access-Request packets that contain a Service-Type attribute with the   value Authorize Only (17) MUST contain a State attribute.  Access-   Request packets that contain a Service-Type attribute with value Call   Check (10) SHOULD NOT contain a State attribute.  Any other Access-   Request packet that performs authorization checks MUST contain a   State attribute.  This last requirement often means that an Access-   Accept needs to contain a State attribute, which can then be used in   a later Access-Request that performs authorization checks.   The standard use case for Call Check is pre-screening authentication   based solely on the end-point identifier information, such as phone   number or Media Access Control (MAC) address in Calling-Station-ID   and optionally Called-Station-ID.  In this use case, the NAS has no   way to obtain a State attribute suitable for inclusion in an Access-   Request.  Other, non-standard, uses of Call Check may require or   permit the use of a State attribute, but are beyond the scope of this   document.   In an Access-Request with a Service-Type Attribute with value Call   Check, it is NOT RECOMMENDED for the User-Name and User-Password   attributes to contain the same values (e.g., a MAC address).   Implementing MAC address checking without using a Service-Type of   Call Check is NOT RECOMMENDED.  This practice gives an attacker both   the clear-text and cipher-text of the User-Password field, which   permits many attacks on the security of the RADIUS protocol.  For   example, if the Request Authenticator does not satisfy the [RFC2865]   requirements on global and temporal uniqueness, the practice   described above may lead to the compromise of the User-Password   attribute in other Access-Requests for unrelated users.  Access to   the cipher-text enables offline dictionary attacks, potentially   exposing the shared secret and compromising the entire RADIUS   protocol.Nelson & DeKok              Standards Track                     [Page 5]RFC 5080                 RADIUS Issues & Fixes             December 2007   Any Access-Request packet that performs authorization checks,   including Call Check, SHOULD contain a Message-Authenticator   attribute.  Any response to an Access-Request performing an   authorization check MUST NOT contain confidential information about   any user (such as Tunnel-Password), unless that Access-Request   contains a State attribute.  The use of State here permits the   authorization check to be tied to an earlier user authentication.  In   that case, the server MAY respond to the NAS with confidential   information about that user.  The server MUST NOT respond to that   authorization check with confidential information about any other   user.   For an Access-Request packet performing an authorization check that   does not contain a State attribute, the server MUST respond with an   Access-Reject.2.1.2.  Request-ID Supplementation   [RFC3579] Section 2.6.1 states:      In EAP, each session has its own unique Identifier space.  RADIUS      server implementations MUST be able to distinguish between EAP      packets with the same Identifier existing within distinct      sessions, originating on the same NAS.  For this purpose, sessions      can be distinguished based on NAS and session identification      attributes.  NAS identification attributes include NAS-Identifier,      NAS-IPv6-Address and NAS-IPv4-Address.  Session identification      attributes include User-Name, NAS-Port, NAS-Port-Type, NAS-Port-      Id, Called-Station-Id, Calling-Station-Id and Originating-Line-

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -