Multiple CAs

Alan DeKok aland at
Wed Oct 4 14:15:58 CEST 2017

On Oct 4, 2017, at 6:16 AM, Jonathan Gazeley <Jonathan.Gazeley at> wrote:
> We (the network infrastructure sysadmins) have been put in a situation where there are EAP-TLS clients on the network with certs issued by two different CAs. From talking to management, this is unavoidable and we must accommodate this with our RADIUS servers. (It's something to do with the way Azure AD does provisioning).

  i.e. they screwed up and don't want to admit it.

  There's just no reason for one AD server to have two different CAs.

> My understanding is that a decision about which EAP module to use must be made in the outer server based on attributes in the RADIUS packet and then the correct EAP module can be used for that CA.


> Am I correct in thinking it is not possible to do something like:
> authorize {
>   eap_module_1
>   eap_module_2
> }
> and expect that FreeRADIUS tries each EAP module in turn until it finds one with the right CA?

  That's not how those protocols work.

> Also that it is not possible to check SSL cert attributes in the outer server to determine the correct CA?

  By the time the server gets that data, it's already chosen one CA, and can't swap mid-stream.

  If the outer identity is anonymous with no realm, you have no data with which to select an EAP module.

  if there outer realm has a real name or realm, you can use that to select the EAP module.

  *Or* if all of the end user systems have *both* CAs provisioned and enabled, then the situation is simple: just use one EAP module, and put both CAs into "ca_file".

  Alan DeKok.

More information about the Freeradius-Users mailing list