The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
This document describes initial configuration to introduce Extensible Authentication Protocol-Transport Layer Security Authentication with Cisco ISE.
Cisco recommends that you have knowledge of these topics:
The information in this document is based on these software and hardware versions:
Note: Since this guide uses ISE Release 3.1, all documentation references are based on this version. However, the same/similar configuration is possible and fully supported on earlier releases of Cisco ISE.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
The main focus is on the ISE configuration which can be applied to multiple scenarios, such as (but not limited to) authentication with an IP-Phone/Endpoint connected via Wired or Wireless.
For the scope of this guide, it is important to understand these phases of the ISE (RADIUS) Authentication flow:
Authentication - Identify and validate the end-identity (machine, user, and so on) that requests network access.
Authorization - Determine what permissions/access the end-identity can be granted on the network.
Accounting - Report and track the end-identity's network activity after network access is achieved.
The first step is to generate a Certificate Signing Request (CSR) from ISE and submit it to the CA (server) in order to obtain the signed certificate issued to ISE, as a System Certificate. This certificate can be presented as a Server Certificate by ISE during Extensible Authentication Protocol-Transport Layer Security Authentication (EAP-TLS) authentication. This is performed in the ISE UI. Navigate to Administration > System: Certificates > Certificate Management > Certificate Signing Requests
. Under Certificate Signing Requests
, click Generate Certificate Signing Requests (CSR)
as shown in this image.
Certificate types require different extended key usages. This list outlines which extended key usages are required for each certificate type:
ISE Identity Certificates
By default, the ISE Messaging Service System Certificate is for data replication across each ISE node in the deployment, node registration, and other inter-node communications, and is present and issued by the ISE Internal Certificate Authority (CA) server (internal to ISE). No action is required to be completed with this certificate.
The Admin System Certificate is used to identify each ISE node such as when the API associated to the Admin UI (Management) is used, and for some inter-node communications. In order to set up ISE for the first time, put in place the Admin System Certificate. That action is not directly related to this configuration guide.
In order to perform IEEE 802.1x via EAP-TLS (certificate-based authentication), take action for the EAP Authentication System Certificate as this is used as the server certificate presented to the endpoint/client during the EAP-TLS flow; as the result is secured inside of the TLS tunnel. To get started, create a CSR to create the EAP Authentication System Certificate and give it to the personnel who manage the CA server(s) in your organization (or Public CA provider) for signing. The end result is the CA-Signed Certificate that binds to the CSR and associates to ISE with these steps.
On the Certificate Signing Request (CSR) form, choose these options in order to complete the CSR and obtain its contents:
EAP Authentication
.*.example.com
, then you must also check the Allow Wildcard Certificate
check box. The best location is the Subject Alternative Name (SAN) certificate field for compatibility for any usage and across multiple different type of endpoint operating systems that can be present in the environment.Note: When you bind the CA-signed certificate that contains the wildcard statement to multiple nodes within the CSR, then the certificate is distributed to each ISE node (or to the selected nodes) in the ISE deployment, and services can restart. However, the services restart is automatically limited to one node at a time. Monitor the services restart via the show application status ise
ISE CLI command.
Next, you need to complete the form in order to define the Subject. This includes the Common Name (CN), Organizational Unit (OU), Organization (O), City (L), State (ST), and Country (C) certificate fields. The $FQDN$ variable is the value that represents the management Fully Qualified Domain Name (hostname + domain name) associated with each ISE node.
Subject Alternative Name (SAN)
fields are also to be completed in order to include any required and desired information to be used to establish trust. As a requirement, you need to define the DNS Entry that points to the FQDN of the ISE node(s) which is associated to this certificate, after the certificate has been signed.This is an example of a completed CSR form without using a wildcard statement. Ensure that you use actual values specific to the environment:
In order to save the CSR, click Generate
. Click Export
, located at the bottom right-hand side, in order to export the CSR file(s) from this prompt:
More information about certificates for use with ISE can be found in Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Basic Setup > Certificate Management in Cisco ISE and Install a Third-Party CA-Signed Certificate in ISE.
After the CA returns the signed certificate, it also includes the full CA chain comprised of a root certificate and one/multiple intermediary certificates. The ISE Admin UI enforces you to import all certificates in the CA chain first, prior to association or upload of any system certificates. This is done in order to ensure each system certificate is properly associated with the CA chain (also known as trusted certificate) within the ISE software.
These steps are the best way to import the CA certificates and the system certificate into ISE:
Administration > System: Certificates > Certificate Management
. Under Trusted Certificates
, click Import
and check the certificate usages Trust for authentication within ISE (Infrastructure) and Trust for client authentication and Syslog (Endpoints) check boxes.
Administration > System: Certificates > Certificate Management: Certificate Signing Requests
. Locate the CSR entry under Friendly Name that corresponds to the signed certificate, click the certificate's check box, and then click Bind Certificate
.
Note: You need to bind a single CA-Signed Certificate to each CSR one at a time. Repeat for any remaining CSRs created for other ISE nodes in the deployment.
On the next page, click Browse
and choose the signed certificate file, define a desired Friendly Name, and choose the Certificate Usage(s). Submit to save the changes.
Administration > System: Certificates > Certificate Management: System Certificates
and assign to the same node which the CSR was created for. Repeat the same process for other nodes and/or other certificate usages.It is required to navigate through a similar process on the endpoint for the creation of a client certificate for use with EAP-TLS. For this example, you need a client certificate signed and issued to the user account to perform User Authentication with ISE. An example of how to obtain a client certificate for the endpoint from an Active Directory environment can be found in: Understand and configure EAP-TLS using WLC and ISE > Configure > Client for EAP-TLS.
Due to the multiple types of endpoints and operating systems, as the process can be somewhat different, additional examples are not provided. However, the overall process is conceptually the same. Generate a CSR which has all the relevant information to be included in the certificate and have it signed by the CA, whether that is an internal server in the environment or a public/third-party company that provides this type of service.
Furthermore, the Common Name (CN) and Subject Alternative Name (SAN) certificate fields include the identity in which to use during the authentication flow. This also dictates how the supplicant is to be configured for EAP-TLS in terms of the identity: Machine and/or User Authentication, Machine Authentication, or User Authentication. This example uses only User Authentication in the rest of this document.
The Network Access Device (NAD) that an endpoint is connected to is also configured in ISE so that RADIUS/TACACS+ (Device Admin) communication can take place. Between the NAD and ISE, a shared secret/password is used for trust purposes.
In order to add a NAD via the ISE GUI, navigate to Administration > Network Resources: Network Devices > Network Devices
and click Add
, which is shown in this image.
For use with ISE Profiling, you want to also configure SNMPv2c or SNMPv3 (more secure) to allow the ISE Policy Service Node (PSN) to contact the NAD via SNMP Queries that is involved with authenticating the endpoint to ISE in order to collect attributes to make accurate decisions on the endpoint type that is used. The next example shows how to set up SNMP (v2c), from the same page as in the previous example:
More information can be found in Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Secure Access > Defining Network Devices in Cisco ISE.
At this time, if you have not done so already, you need to configure all AAA related settings on the NAD to authenticate and authorize with Cisco ISE.
These settings are elements that end up binding to either the Authentication Policy or Authorization Policy. In this guide, primarily each policy element is built and then is mapped into the Authentication Policy or Authorization Policy. It is important to understand that the policy is not in effect until the binding to the Authentication / Authorization Policy is completed successfully.
An External Identity Source is simply a source where the end-identity (machine or user) account resides that is used during the ISE Authentication phase. Active Directory is typically used to support Machine Authentication against the computer account and/or User Authentication against the end-user account in Active Directory. The Internal Endpoints (internal) source does not store the computer account/hostname, therefore, it cannot be used with machine authentication.
Shown here are the supported identity sources with ISE and protocols (authentication type) that can be used with each identity source:
More information in regards to the policy elements can be found in Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Segmentation > Policy Sets.
Add Active Directory Security Groups to ISE
In order to use Active Directory security groups in ISE Policies, you must first add the group into the Active Directory join point. From the ISE GUI, choose Administration > Identity Management: Active Directory > {select AD instance name / join point} > tab: Groups > Add > Select Groups From Directory
.
For more information and requirements to integrate ISE 3.x with Active Directory, review this document in full: Active Directory Integration with Cisco ISE 2.x.
Note: The same action is applicable to add security groups to an LDAP instance. From ISE GUI, choose Administration > Identity Management: External Identity Sources > LDAP > LDAP instance name > tab: Groups > Add > Select Groups From Directory
.
The purpose of the Certificate Authentication Profile is to inform ISE which certificate field the identity (machine or user) can be found on the client certificate (end-identity certificate) presented to ISE during EAP-TLS (also during other certificate based authentication methods). These settings are bound to the Authentication Policy to authenticate the identity. From ISE GUI, navigate to Administration > Identity Management: External Identity Sources > Certificate Authentication Profile
and click Add
.
Use Identity From is used to choose the certificate attribute from which a specific field the identity can be found. The choices are:
If the identity store is to be pointed to Active Directory or LDAP (external identity source), then a feature called Binary Comparison can be used. Binary Comparison performs a lookup of the identity in Active Directory obtained from the client certificate from the Use Identity From selection, which occurs during the ISE Authentication phase. Without Binary Comparison, the identity is simply obtained from the client certificate and is not looked up in Active Directory until the ISE Authorization phase when an Active Directory External Group is used as a condition, or any other conditions that would need to be performed externally to ISE. In order to use Binary Comparison, in the Identity Store choose the external identity source (Active Directory or LDAP) where the end-identity account can be found.
This is a configuration example when the identity is located in the Common Name (CN) field of the client certificate, with Binary Comparison enabled (optional):
More information can be found in Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Basic Setup > Cisco ISE CA Service > Configure Cisco ISE to Use Certificates for Authenticating Personal Devices > Create a Certificate Authentication Profile for TLS-Based Authentication.
The Identity Source Sequence can be created from the ISE GUI. Navigate to Administration > Identity Management
. Under Identity Source Sequences
, click Add
.
The next step is to add the Certificate Authentication Profile to an Identity Source Sequence which grants the ability to include multiple Active Directory join points or group a combination of internal/external identity sources together, as desired, which then binds to the Authentication Policy under the Use
column.
The example as shown here allows the lookup to be performed against Active Directory first, then if the user is not found, it looks up on an LDAP server next. For multiple identity sources. always ensure the Treat as if the user was not found and proceed to the next store in the sequence
check box is checked. This is so each identity source/server is checked during the authentication request.
Otherwise, you can also bind just the Certificate Authentication Profile to the Authentication Policy.
The Allowed Protocols Service enables only that authentication methods/protocols which ISE supports during RADIUS Authentication. In order to configure from the ISE GUI, navigate to Policy > Policy Elements: Results > Authentication > Allowed Protocols and then it binds as an element to the Authentication Policy.
Note: Authentication Bypass > Process Host Lookup relates to MAB enabled on ISE.
These settings must be the same as what is supported and configured on the supplicant (on the endpoint). Otherwise, the authentication protocol is not negotiated as expected and RADIUS communication can fail. In a real-world ISE configuration, it is recommended to enable any authentication protocol that is used in the environment so ISE and the Supplicant can negotiate and authenticate as expected.
These are the default values (collapsed) when a new instance of the services of the allowed protocol is created.
Note: At a minimum, you must enable EAP-TLS since ISE and our supplicant authenticates via EAP-TLS in this configuration example.
Note: The use of Preferred EAP Protocol set to value of EAP-TLS causes ISE to request the EAP-TLS protocol as the first protocol offered to the endpoint IEEE 802.1x supplicant. This setting is useful if you intend to authenticate via EAP-TLS often on most endpoints that are authenticated with ISE.
The last policy element needed to build is the Authorization Profile, which binds to the Authorization Policy and gives the desired level of access. The Authorization Profile is bound to the Authorization Policy. In order to configure it from ISE GUI, navigate to Policy > Policy Elements: Results > Authorization > Authorization Profiles
and click Add
.
The Authorization Profile contains a configuration that results in attributes that are passed from ISE to the NAD for a given RADIUS session, in which these attributes are used to achieve the desired level of network access.
As shown here, it simply passes RADIUS Access-Accept as the Access Type, however, additional items can be used upon the initial authentication. Notice Attribute Details at the very bottom, which contains the summary of attributes ISE sends to the NAD when it matches a given Authorization Profile.
More information on the ISE Authorization Profile and Policy can be found in Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Segmentation > Authorization Policies.
Authentication and Authorization Policies are created from the ISE GUI, choose Policy > Policy Sets
. These are enabled by default on ISE 3.x. When you install ISE, there is always one Policy Set defined, which is the default Policy Set. The default Policy Set contains predefined and default authentication, authorization, and exception policy rules.
The Policy Sets are configured hierarchically, which allows the ISE Administrator to group similar policies together, in terms of the intent, into different sets for use within an authentication request. Customization and grouping policies is virtually limitless. As such, one Policy Set could be used for wireless endpoint authentication for network access while another Policy Set could be used for wired endpoint authentication for network access; or for any other unique and differentiating way to manage policies.
Cisco ISE can evaluate Policy Sets and the policies within uses the top-down approach, to first match a given Policy Set when all conditions of said set evaluate to be True; upon which ISE further evaluates the Authentication Policies and Authorization Policies within that matched the Policy Set, as follows:
Policy Exceptions exists globally for all Policy Sets or locally within a specific Policy Set. These Policy Exceptions are handled as part of the Authorization Policies, since they deal with what permissions or results are given for network access for a given temporary scenario.
The next section covers how to combine the configuration and policy elements to bind to the ISE Authentication and Authorization Policies to authenticate an endpoint via EAP-TLS.
A Policy Set is a hierarchical container that consists of a single user-defined rule that indicates the allowed protocol or server sequence for network access, as well as authentication and authorization policies and policy exceptions, all also configured with user-defined condition-based rules.
In order to create a Policy Set from the ISE GUI, navigate to Policy > Policy Set
and then click the plus (+) icon in the upper-left corner, as shown in this image.
The Policy Set can bind/combine this policy element previously configured and is used to determine which Policy Set is to be matched in a given RADIUS Authentication Request (Access-Request):
This example uses specific attributes and values that would appear in the RADIUS session to enforce IEEE 802.1x (framed attribute), even though it is possibly redundant to re-enforce the RADIUS protocol. In order to achieve the best results, use only unique RADIUS session attributes that are applicable to the desired intent, such as Network Device Groups or specific for Wired 802.1x, Wireless 802.1x, or both Wired 802.1x and Wireless 802.1x.
More information on Policy Sets on ISE can be found in the Cisco Identity Services Engine Administrator Guide, Release 3.1 > Chapter: Segmentation > Policy Sets, Authentication Policies, and Authorization Policies sections.
Inside the Policy Set, the Authentication Policy binds/combines these policy elements previously configured to be used with conditions to determine when an Authentication Rule is to be matched.
Inside the Policy Set, the Authorization Policy binds/combines these policy elements previously configured to be used with conditions to determine when an Authorization Rule is to be matched. The example here is for User Authentication since the conditions point to the Domain Users security group in Active Directory.
In order to add an External Group (such as from Active Directory or LDAP), you must add the group from the external server instance. In this example, it is from the ISE UI: Administration > Identity Management: External Identity Sources > Active Directory {AD Join Point Name} > Groups
. From the Group tab, choose Add > Select Groups from Directory
and use the Name filter to search for all groups (*) or specific groups, such as Domain Users (*domain users*) to retrieve groups.
After you check the check box next to each group, you would utilize in the Policies within ISE. Do not forget to click Ok and/or Save in order to save the changes.
Use this section in order to confirm that your configuration works properly.
Once all global configuration and policy elements bind the Policy Set, configuration looks similar to this image for User Authentication via EAP-TLS:
This section provides information you can use in order to troubleshoot your configuration.
After the configuration is complete, connect the endpoint to test authentication. The results can be found in the ISE GUI. Choose Operations > Radius > Live Logs
, as shown in this image.
For awareness, the Live Logs for RADIUS and TACACS+ (Device Admin) are available for the authentication attempts/activity up to the past 24 hours and for the past 100 records. If you wish to see this type of reporting data beyond this timeframe, then you need to use the reports, specifically: ISE UI: Operations > Reports > Reports: Endpoints and Users > RADIUS Authentications
.
In the RADIUS Live Logs in ISE, you expect to find information about the RADIUS session, which includes session attributes, and other helpful information to diagnose behavior observed during an authentication flow. Click the details
icon to open the detailed view of the session to view session attributes and related information that is specific to this authentication attempt.
In order to troubleshoot, it is important to ensure the correct policies are matched. For this configuration example, the desired Authentication and Authorization Policies are matched as expected, as shown in the image:
In the detailed view, these attributes are checked in order to verify that the authentication behaves as expected per the design as part of this configuration example:
Administration > System: Network Devices.
Based on that configuration, the IP address of the NAD (also known as the edge device) is used to determine which network device the authentication came from which is included in the NAS IPv4 Address session attribute.By no means is this a complete list of all possible session attributes to review for troubleshooting or other visibility purposes, as there are other useful attributes to verify. It is recommended to review all session attributes to start to become familiar with all the information. You can see include the right-side under the section Steps, that shows the operations or behavior taken by the ISE.
This list includes some common issues and troubleshooting advice, and by no means is meant to be a complete list. Instead, use this as a guide and develop your own techniques to troubleshoot issues when ISE is involved.
Issue: Encounter an authentication failure (5400 Authentication failed) or any other non-successful authentication attempt.
Issue: The authentication does not complete successfully and the failure reason shows "5440 Endpoint abandoned EAP session and started new" or "5411 Supplicant stopped responding to ISE".
Issue: Authentication is successful, but does not match the correct Authentication and/or Authorization Policy.
Issue: The identity or username used during authentication was not the expected value.
ISE UI: Administration > Identity Management: External Identity Sources > Certificate Authentication Profile > (certificate authentication profile used in the Authentication Policy)
.
Issue: Authentication is not successful with failure reason 12514 EAP-TLS failed SSL/TLS handshake because of an unknown CA in the client certificates chain.
Administration > System: Certificates > Trusted Certificates
.Start > Run MMC > Add/Remove Snap-In > Certificates > User Certificates
.Revision | Publish Date | Comments |
---|---|---|
3.0 |
13-Jul-2023 |
Added Background Information.
Updated Title, Introduction, PII, Branding Requirements, Machine Translation, Style Requirements, Spelling, Formatting. |
2.0 |
17-May-2022 |
Updated to ISE Release 3.x. |
1.0 |
17-Oct-2019 |
Initial Release |