Switch and Wireless LAN Controller Configuration Required to Support Cisco ISE Functions
To ensure Cisco ISE is able to interoperate with network switches and functions from Cisco ISE are successful across the network segment, you need to configure network switches with the necessary NTP, RADIUS/AAA, 802.1X, MAB, and other settings for communication with Cisco ISE. This appendix contains the following sections:
Enable Your Switch to Support Standard Web Authentication
Ensure that you include the following commands in your switch configuration to enable standard Web Authenticating functions for Cisco ISE, including provisions for URL redirection upon authentication:
ip route 0.0.0.0 0.0.0.0 10.1.2.3
! Must enable HTTP/HTTPS for URL-redirection on port 80/443
Define a Local Username and Password for Synthetic RADIUS Transactions
Enter the following command to enable the switch to talk to the Cisco ISE node as though it is the RADIUS server for this network segment:
username test-radius password 0 cisco123
Set the NTP Server to Ensure Accurate Log and Accounting Timestamps
Ensure that you specify the same NTP server as you have set in Cisco ISE at Administration > System > Settings > System Time by entering the following command:
ntp server <IP_address>|<domain_name>
Enable AAA Functions
Enter the following commands to enable the various AAA functions between the switch and Cisco ISE, including 802.1X and MAB authentication functions:
! Creates an 802.1X port-based authentication method list
aaa authentication dot1x default group radius
! Required for VLAN/ACL assignment
aaa authorization network default group radius
! Authentication & authorization for webauth transactions
aaa authorization auth-proxy default group radius
! Enables accounting for 802.1X and MAB authentications
aaa accounting dot1x default start-stop group radius
aaa accounting update periodic 5
! Update AAA accounting information periodically every 5 minutes
aaa accounting system default start-stop group radius
aaa server radius dynamic-author <cr>
client 10.0.56.17 server-key cisco
! Enables ISE to act as a AAA server when interacting with the client at IP address 10.0.56.17
RADIUS Server Configuration
Configure the switch to interoperate with Cisco ISE acting as the RADIUS source server by entering the following commands:
radius-server attribute 6 on-for-login-auth
! Include RADIUS attribute 8 in every Access-Request
radius-server attribute 8 include-in-access-req
! Include RADIUS attribute 25 in every Access-Request
radius-server attribute 25 access-request include
! Wait 3 x 30 seconds before marking RADIUS server as dead
radius-server dead-criteria time 30 tries 3
! Use RFC-standard ports (1812/1813)
radius-server host <Cisco_ISE_IP_address> auth-port 1812 acct-port 1813 test username test-radius key 0 <RADIUS-KEY>
radius-server vsa send accounting
radius-server vsa send authentication
! send RADIUS requests from the MANAGEMENT VLAN
ip radius source-interface <VLAN_number>
Note We recommend that you configure a dead-criteria time of 30 seconds with 3 retries to provide longer response times for RADIUS requests that use Active Directory for authentication.
Configure Switch to Send RADIUS Accounting Start/Stop to Inline Posture Nodes
The network access device should be configured to send RADIUS accounting “Start” and “Stop” messages at the beginning and end of a session, respectively, with the remote device’s IP address in those messages to the Inline Posture nodes. The Inline Posture node associates the device IP address to any relevant authorization profiles downloaded over the life of a session. For example, a remote device may have an “unknown-compliance-state” authorization profile at initial login, then switch to a “compliant” authorization profile following CoA (assuming successful device posture assessment).
Enable RADIUS Change of Authorization (CoA)
Specify the settings to ensure the switch is able to appropriately handle RADIUS Change of Authorization behavior supporting Posture functions from Cisco ISE by entering the following commands:
aaa server radius dynamic-author
client <ISE-IP> server-key 0 cisco123
Note Cisco ISE uses port 1700 (Cisco IOS software default) versus RFC default port 3799 for CoA. Existing Cisco Secure ACS 5.x customers may already have this set to port 3799 if they are using CoA as part of an existing ACS implementation.
Enable Device Tracking and DHCP Snooping
To help provide optional security-oriented functions from Cisco ISE, you can enable device tracking and DHCP snooping for IP substitution in dynamic ACLs on switch ports by entering the following commands:
Enable 802.1X Port-Based Authentication
Enter the following commands to turn 802.1X authentication on for switch ports, globally:
Use EAP for Critical Authentications
To support supplicant authentication requests over the LAN, enable EAP for critical authentications (Inaccessible Authentication Bypass) by entering the following command:
Throttle AAA Requests Using Recovery Delay
When a critical authentication recovery event takes place, you can configure the switch to automatically introduce a delay (in seconds) to ensure Cisco ISE is able to launch services again following recovery by entering the following command:
authentication critical recovery delay 1000
Define VLANs Based on Enforcement States
Enter the following commands to define the VLAN names, numbers, and SVIs based on known enforcement states in your network. Create the respective VLAN interfaces to enable routing between networks. This can be especially helpful to handle multiple sources of traffic passing over the same network segments—traffic from both PCs and the IP phone through which the PC is connected to the network, for example.
Note The first IP helper goes to the DHCP server and the second IP helper sends a copy of the DHCP request to the inline posture node for profiling.
ip address 10.1.2.3 255.255.255.0
ip helper-address <DHCP_Server_IP_address>
ip helper-address <Cisco_ISE_IP_address>
ip address 10.2.3.4 255.255.255.0
ip helper-address <DHCP_Server_IP_address>
ip helper-address <Cisco_ISE_IP_address>
Define Local (Default) ACLs on the Switch
Enable these functions on older switches (with Cisco IOS software releases earlier than 12.2(55)SE) to ensure Cisco ISE is able to perform the dynamic ACL updates required for authentication and authorization by entering the following commands:
ip access-list extended ACL-ALLOW
ip access-list extended ACL-DEFAULT
permit udp any eq bootpc any eq bootps
permit udp any any eq domain
permit udp any any eq tftp
remark Allow HTTP/S to ISE and WebAuth portal
permit tcp any host <Cisco_ISE_IP_address> eq www
permit tcp any host <Cisco_ISE_IP_address> eq 443
permit tcp any host <Cisco_ISE_IP_address> eq 8443
permit tcp any host <Cisco_ISE_IP_address> eq 8905
permit udp any host <Cisco_ISE_IP_address> eq 8905
permit udp any host <Cisco_ISE_IP_address> eq 8906
permit tcp any host <Cisco_ISE_IP_address> eq 8080
permit udp any host <Cisco_ISE_IP_address> eq 9996
! The ACL to allow URL-redirection for WebAuth
ip access-list extended ACL-WEBAUTH-REDIRECT
deny ip any host <Cisco_ISE_IP_address>
permit tcp any any eq www
permit tcp any any eq 443
permit tcp any any eq 8443
Enable Cisco Security Group Access Switch Ports
To ensure Cisco ISE is able to interoperate with an existing Cisco Security Group Access deployment, use the following procedure to ensure that you have enabled all of the functions necessary on the switch.
Step 1 Enter configuration mode for all of the access switch ports:
interface range FastEthernet0/1-8
Step 2 Enable the switch ports for access mode (instead of trunk mode):
Step 3 Statically configure the access VLAN. This provides local provisioning the access VLANs and is required for open-mode authentication:
switchport access <VLAN_number>
Step 4 Statically configure the voice VLAN:
switchport voice <VLAN_number>
Step 5 Enable open-mode authentication. Open-mode allows traffic to be bridged onto the data and voice VLANs before authentication is completed. We strongly recommend using a port-based ACL in a production environment to prevent unauthorized access.
! Enables pre-auth access before AAA response; subject to port ACL
Step 6 Apply a port-based ACL to determine which traffic should be bridged by default from unauthenticated endpoints onto the access VLAN. Because you should allow all access first and enforce policy later, you should apply ACL-ALLOW to permit all traffic through the switch port. You have already created a default ISE authorization to allow all traffic for now because we want complete visibility and do not want to impact the existing end-user experience yet.
! An ACL must be configured to prepend dACLs from AAA server.
ip access-group ACL-ALLOW in
Note Prior to Cisco IOS software Release 12.2(55)SE on DSBU switches, a port ACL is required for dynamic ACLs from a RADIUS AAA server to be applied. Failure to have a default ACL will result in assigned dACLs being ignored by the switch. With Cisco IOS software Release12.2(55)SE, a default ACL will be automatically generated and applied.
Note We are using ACL-ALLOW at this point in the lab because we want to enable 802.1X port-based authentication, but without any impact to the existing network. In a later exercise, we will apply a different ACL-DEFAULT, which blocks undesired traffic for a production environment.
Step 7 Enable Multi-Auth host mode. Multi-Auth is essentially a superset of Multi-Domain Authentication (MDA). MDA only allows a single endpoint in the data domain. When multi-auth is configured, a single authenticated phone is allowed in the voice domain (as with MDA) but an unlimited number of data devices can be authenticated in the data domain.
! Allow voice + multiple endpoints on same physical access port
authentication host-mode multi-auth
Note Multiple data devices (whether virtualized devices or physical devices connected to a hub) behind an IP phone can exacerbate the access ports’ physical link-state awareness.
Step 8 Enable various authentication method options:
! Enable re-authentication
! Enable re-authentication via RADIUS Session-Timeout
authentication timer reauthenticate server
authentication event fail action next-method
authentication event server dead action authorize <VLAN_number>
authentication event server alive action reinitialize
! IOS Flex-Auth authentication should do 802.1X then MAB
authentication order dot1x mab
authentication priority dot1x mab
Step 9 Enable 802.1X port control on the switchport:
! Enables port-based authentication on the interface
authentication port-control auto
authentication violation restrict
Step 10 Enable MAC Authentication Bypass (MAB):
! Enable MAC Authentication Bypass (MAB)
Step 11 Enable 802.1X on the switchport
! Enables 802.1X authentication on the interface
Step 12 Set the retransmit period to 10 seconds:
dot1x timeout tx-period 10
Note The dot1x tx-period timeout should be set to 10 seconds. Do not change this unless you understand the implications.
Step 13 Enable the portfast feature:
Enable EPM Logging
Set up standard logging functions on the switch to support possible troubleshooting/recording for Cisco ISE functions:
Enable SNMP Traps
Ensure the switch is able to receive SNMP trap transmissions from Cisco ISE over the appropriate VLAN in this network segment:
snmp-server community public RO
snmp-server trap-source <VLAN_number>
Enable SNMP v3 Query for Profiling
Configure the switch to ensure SNMP v3 polling takes place as intended to support Cisco ISE profiling services. First, configure the SNMP settings in Cisco ISE by choosing Administration > Network Resources > Network Devices >Add | Edit > SNMP Settings. See Network Devices List Page: SNMP Settings for details.
Snmp-server user <name> <group> v3 auth md5 <string> priv des <string>
snmp-server group <group> v3 priv
snmp-server group <group> v3 priv context vlan-1
Note The snmp-server group <group> v3 priv context vlan-1 command must be configured for each context. The snmp show context command lists all the context information.
If the SNMP Request times out and there is no connectivity issue, then you can increase the Timeout value.
Enable MAC Notification Traps for Profiler to Collect
Configure your switch to transmit the appropriate MAC notification traps so that the Cisco ISE Profiler function is able to collect information on network endpoints:
mac address-table notification change
mac address-table notification mac-move
snmp trap mac-notification change added
snmp trap mac-notification change removed
Configure the RADIUS Idle-Timeout
To configure the RADIUS Idle-timeout on a switch, use the following command:
Switch(config-if)# authentication timer inactivity
where inactivity is interval of inactivity in seconds, after which client activity is considered unauthorized.
In Cisco ISE, you can enable this option for any Authorization Policies to which such a session inactivity timer should apply from Policy > Policy Elements > Results > Authorization > Authorization Profiles. For more information on creating Authorization Policies, see Configuring Permissions for Authorization Profiles.
Set Up Wireless LAN Controller for iOS Supplicant Provisioning
To support Apple iOS-based devices (iPhone/iPad) switching from one SSID to another on the same wireless access point, be sure to configure the Wireless LAN Controller (WLC) to enable the “FAST SSID change” function. This function helps ensure iOS-based devices are able to more quickly switch between SSIDs.
WLC (config)# FAST SSID change
FIPS Support on Wireless LAN Controller with Inline Posture Node
When a WLC is set up to operate with a Cisco ISE Inline Posture node to support FIPS functionality, ensure that you have turned on the appropriate FIPS suppoprt options in both the Cisco ISE internal RADIUS configuration, as well as the global FIPS option, settings on the WLC.
If both of these options are not enabled, the required RADIUS key wrap that is configured to support end-to-end FIPS operation fails.