Hi Terry

>In practise:
>
>* FreeRADIUS sends RADIUS Access-Reject / EAP-Message / EAP-Failure.
>* hostapd's RADIUS server sends RADIUS Access-Reject / EAP-Message /
EAP-Failure.
>* A commercial RADIUS server implementation sends nothing.

Cisco Identity Services Engine RADIUS also returns  RADIUS
Access-Reject / EAP-Message / EAP-Failure in this case.

Not sure that if AAA server will send a list of his allowed protocols
in reply to NAK - the EAP client would be able to use it. Usually
credentials are configured per protocol and not always
interchangeable. So if the client wants EAP-GTC as an inner method in
PEAP and claims this in an inner EAP NAK message and the server will
reply that it has EAP-MSCHAPv2 and EAP-TLS inner methods - client can
be unable to leverage this info.

-Oleg


On Thu, Aug 20, 2020 at 3:39 AM Terry Burton <terry.bur...@gmail.com> wrote:
>
> Hi,
>
> I'm unable to find the authoritative source that state exactly how the
> following conversation continues (TL;DR; the peer NAKs the original
> method and the AAA doesn't support any of the peer's proposals):
>
> 1. NAS --> Peer : EAP-Request / Identity
> 2. Peer --> NAS : EAP-Response / Identity ( ID )
> 3. NAS --> AAA: RADIUS Access-Request / EAP-Message / EAP-Response /
> Identity ( ID )
> 4. AAA --> NAS:  RADIUS Access-Challenge / EAP-Message / EAP-Request /
> Method Foo
> 5. NAS --> Peer: EAP-Request / Method Foo
> 6. Peer --> NAK: EAP-Response / EAP-Type=NAK (Methods [Bar])
> 7. NAS --> AAA: RADIUS Access-Request / EAP-Message / EAP-Response /
> NAK ( Methods [ Bar ] )
> (* Let's assume that the AAA does not support Method Bar so we have
> derived that there are no overlapping methods.)
> 8. AAA: Now what?
>
> I've reviewed RFC 3748 (EAP) and RFC 3579 (RADIUS Support For EAP) and
> neither seems to be explicit about what the AAA should do in response
> to a NAK in the event of no overlapping methods.
>
> In practise:
>
> * FreeRADIUS sends RADIUS Access-Reject / EAP-Message / EAP-Failure.
> * hostapd's RADIUS server sends RADIUS Access-Reject / EAP-Message /
> EAP-Failure.
> * A commercial RADIUS server implementation sends nothing.
>
> It seems right to indicate an EAP-Failure to the peer in the case of
> no overlapping methods (as well as to terminate the NAS's outstanding
> RADIUS Access-Request with an Access-Reject), as is the case for a
> number of other failure conditions, e.g. authentication failure
> *within* an EAP method (Appendix A by way of example), invalid packets
> leading to a fatal error within an EAP method (section 2.2).
>
> RFC 3748 section 4.2 on Success and Failure introduces these messages
> within the context of finalising an ongoing EAP method:
>
>    The Success packet is sent by the authenticator to the peer after
>    completion of an EAP authentication method (Type 4 or greater) to
>    indicate that the peer has authenticated successfully to the
>    authenticator.  The authenticator MUST transmit an EAP packet with
>    the Code field set to 3 (Success).  If the authenticator cannot
>    authenticate the peer (unacceptable Responses to one or more
>    Requests), then after unsuccessful completion of the EAP method in
>    progress, the implementation MUST transmit an EAP packet with the
>    Code field set to 4 (Failure).
>
> Perhaps one can argue that a NAK is an unacceptable response to an
> ongoing method and therefore the method is unsuccessfully completed so
> a Failure should be generated? That's not entirely clear, if that is
> the case.
>
> RFC 3748 section 5.3.1 throws in some more doubt, having the following
> text that deals explicitly with the peer sending a NAK containing "no
> desired alternative" method:
>
>       Type zero (0) is used to indicate that the sender has
>       no viable alternatives, and therefore the authenticator SHOULD NOT
>       send another Request after receiving a Nak Response containing a
>       zero value.
>
> That's specific to one case for which a strict reading would indicate
> that the EAP server should remain quiet and consider the EAP
> conversation to be complete. It's tempting to think that the same
> response (i,e. no response!) should apply more broadly as none of the
> AAA implementations I've tested actually differentiate between a NAK
> with no desired alternative method vs a NAK with an incompatible list
> of alternative methods. (A subtle difference might be relevant: In the
> case of NAK / method = [] the peer knows that the EAP conversion can
> go no further, whereas in the case that it sends a list of methods
> that the AAA happens to not support it does not know this unless it is
> subsequently told.)
>
> If I've not missed something then this looks an omission (or lack of
> clarity) and the intended AAA response to no overlapping methods (and
> indeed "no desired alternative") should be decided and codified.
>
>
> Thanks,
>
> Terry
>
> _______________________________________________
> Emu mailing list
> Emu@ietf.org
> https://www.ietf.org/mailman/listinfo/emu

_______________________________________________
Emu mailing list
Emu@ietf.org
https://www.ietf.org/mailman/listinfo/emu

Reply via email to