Components That Make Up the NAC Framework Solution
The following sections examine the individual components that make up the NAC Framework solution. Although only an overview is provided here, each component is covered in detail in its associated chapter in this book.
Cisco Trust Agent
Cisco Trust Agent (CTA) is a small software application (approximately 3MB) that is installed locally on a PC and that allows Cisco Secure ACS to communicate directly with the PC to query it for posture credentials. Some common posture credentials are the OS name, the service pack installed, and specific hotfixes applied. Table 1-1 lists the posture credentials that CTA supports or for which CTA is a broker.
Table 1-1. Posture Credentials Supported by CTA
Application |
Posture Credentials |
CTA (version 2) |
CTA version Operating system name Operating system version Installed service packs Installed hotfixes Custom credentials returned through the optional scripting interface |
Cisco Security Agent (CSA)* |
CSA version CSA status (enabled/disabled) Fully qualified domain name (FQDN) of Cisco Security Agent Management Center (CSA-MC) Last poll of CSA |
Antivirus* |
Antivirus software name or identifier Software version Scan engine version DAT/pattern file version DAT/pattern file release date Antivirus enabled/disabled On-access scan enabled |
Other software* |
Varies by vendor |
CTA is a core component of NAC and is the only communications interface between the NAD and the applications that reside on the PC. It receives posture credential queries from Cisco Secure ACS, brokers them to the correct application, and then forwards the application responses to Cisco Secure ACS. CTA has three key responsibilities (see Figure 1-4):
- Communication—Provides a communications link with the NAD using EAPoUDP or EAP-FAST.
- Security—Authenticates the device requesting posture credentials and ensures that all information is sent out encrypted on the wire.
- Broker—Provides an application programming interface (API) to query other applications running on the system and notifies them of the current system posture so they can react to posture changes.
Figure 1-4 Responsibilities of CTA
CTA also includes an 802.1X supplicant bundled with it that supports EAP-FAST when running NAC. The 802.1X supplicant is needed to implement NAC-L2-802.1X. However, the 802.1X supplicant is limited to wired interfaces only—no wireless interfaces.
Chapter 2, "Cisco Trust Agent," fully covers the installation, configuration, operation, and troubleshooting of CTA.
Cisco Security Agent
Cisco Security Agent (CSA) is the Cisco award-winning host-based intrusion-prevention system (HIPS) installed on a desktop or server PC that protects it from known and unknown threats. CSA adds a shim into the network layer and into the kernel layer (to watch both network traffic and API calls to kernel). This allows CSA to not only be a personal firewall, but also to protect against buffer-overflow attacks and spyware/adware. In addition, it provides file protection, malicious application protection, and operating-system integrity protection. CSA is one of the few HIPS products that provide true protection against "Day Zero" attacks.
Starting with version 4.5, CSA integrates seamlessly with NAC through CTA. CTA queries CSA to establish the presence of the agent and determine whether it is in protect mode. This information is part of the posture credentials returned to Cisco Secure ACS and is used to determine the end host's overall security posture. Based on this posture, Cisco Secure ACS can apply a policy that alters the state of CSA. CSA's state change dynamically activates additional rules within CSA, thereby providing another level of protection to the host.
Cisco Security Agent Management Center (CSA MC) provides a powerful, scalable application used to manage all agents. When an agent is installed on a host, it first registers with CSA MC and downloads any updates to its rule set. Thereafter, the agent periodically polls CSA MC to check for any new software or rule updates. Besides the configuration and software update function, CSA MC receives real-time security events from the agents and immediately displays them in the Event Monitor for the network administrator to see. In addition, CSA MC correlates the events, received from all agents in the network, to detect suspicious activity across several hosts. If similar threats are detected across several agents, CSA MC creates and deploys dynamic rules to all the agents to provide an additional layer of protection against this newly spreading threat.
Chapter 9, "Cisco Security Agent," covers the installation, configuration, and operation of CSA.
See Chapter 9 for installation and configuration information about CSA and CSA MC.
Network-Access Devices
NADs query the CTA installed on the endpoint. In NAC Phase I, the NAD could be only an IOS router. In Phase II, any of the following devices can be a NAD:
- Cisco IOS router
- Cisco Catalyst Switch running Cisco IOS or CAT OS
- Cisco VPN 3000 series concentrator
- Cisco ASA 5500 series adaptive security appliances and PIX 500 series security appliances
- Cisco wireless access device
Cisco IOS Router
Cisco IOS routers first supported NAC in Cisco IOS Release 12.3(8)T, in the Advanced Security, Advanced IP Services, or Advanced Enterprise Services feature sets. Table 1-2 lists Cisco IOS routers by platform and current NAC capability.
Table 1-2. NAC Support in IOS Routers
Cisco Router Platform |
NAC Support |
7500 series |
Yes |
7300 series |
Yes |
7200 series |
Yes |
7100 series |
No |
4500 series |
No |
3800 series |
Yes |
3700 series |
Yes |
3640, 3640A, 3660-ENT series |
Yes |
3620, 3660-CO series |
No |
2800 series |
Yes |
2600XM series, 2691 |
Yes |
2600 series (non-XM Models) |
No |
1800 series |
Yes |
1701, 1711, 1712, 1721, 1751, 1751-V, 1760 |
Yes |
1710, 1720, 1750 |
No |
830 series |
Yes |
AS5850, AS5400, AS5400HPX, AS5350 |
No |
When NAC is implemented on a router, this is called NAC-L3-IP. That is, the security enforcement point becomes the Layer 3 gateway instead of the physical port into which the end host is plugged.
Posture validation is triggered by defining an intercept ACL on the router's interface. Any traffic arriving on the interface from a nonpostured source that matches the intercept ACL triggers the posture-validation process, as illustrated in Figure 1-1. When the overall security posture of the host is determined, Cisco Secure ACS sends a host-based downloadable ACL to the router to restrict, prohibit, or permit that client's access to the network. Thus, policy enforcement takes place at Layer 3 with an ACL on the router's interface.
See Chapter 5, "Configuring Layer 3 NAC on Network-Access Devices," for more information on configuring and troubleshooting NAC on a Cisco IOS router.
Cisco Catalyst Switch Running Cisco IOS or CAT OS
Catalyst switches first supported NAC in the summer of 2005 across various platforms and release trains. One benefit of adding NAC on the switch is enhanced posture-enforcement capabilities through containment. On Cisco IOS routers, policy enforcement was applied with a downloadable ACL on the router's interface. This enabled the administrator to restrict (or even deny) the endpoint's access through the router. However, the endpoint could not be restricted from sending packets to Layer 2–adjacent devices (because those packets did not traverse the router and, therefore, would not be subject to the downloadable ACL). However, on access switches, the endpoints are typically directly connected to a physical port on the switch. This allows for policy enforcement (through VLAN or ACL) as well as containment (because the endpoint is typically the only device connected to that port).
Catalyst switches can implement NAC on a per-port basis at Layer 2 or Layer 3. As mentioned previously in this chapter, when NAC is implemented at Layer 2, it is known as NAC-L2-802.1X because 802.1X is used as the underlying Layer 2 transport protocol. When NAC is implemented on a switch at Layer 3, it is known as NAC-L2-IP.
NAC-L2-802.1X and NAC-L2-IP have several administrative and operational differences that you should fully consider before selecting which one to deploy.
The following are attributes of NAC-L2-802.1X:
- 802.1X authentication must be implemented on the switch.
- The client's 802.1X supplicant triggers authentication and posture validation.
- The client's 802.1X supplicant must be CTA aware.
- Posture enforcement is provided by VLAN assignment only.
- EAP-FAST authenticates CTA to Cisco Secure ACS; therefore, no client-side certificate is needed.
- Endpoints must be directly connected, or be connected through an IP phone.
The following are attributes of NAC-L2-IP:
- Posture validation is triggered when the switch receives Address Resolution Protocol (ARP) packets from the endpoint. Optionally, Dynamic Host Configuration Protocol (DHCP) snooping can be enabled on the port to trigger posture validation when the switch receives the first DHCP packet.
- Posture enforcement is provided by downloadable ACLs.
- VLAN assignment is not supported.
- EAPoUDP is used to communicate between CTA and the NAD. PEAP is used between CTA and Cisco Secure ACS.
- URL redirection of the endpoint's web browser to a remediation server is supported.
- Endpoints can be directly connected, connected through an IP phone, or connected through a shared-media device (hub, non-NAC-capable switch, and so on.)
No "right" or "wrong" choice exists between the two. But there is a best choice for your network. If you don't know what that choice is, read Cisco Network Admission Control, Volume I: NAC Architecture and Design, which walks through several design scenarios, discusses the options available, and provides the rationale for the choices made.
An additional consideration (and probably the most important one) is which one will run on your existing switch hardware. Table 1-3 should come in handy in making that determination; it lists the various models of Catalyst switches and their NAC capabilities based on the OS.
Table 1-3. NAC Support in Catalyst Switches
Platform, Supervisor |
OS |
NAC-L2-802.1x |
NAC-L2-IP |
NAC-L3-IP |
NAC Agentless Host |
6500 - Sup32, Sup720 |
Native IOS |
Planned |
Yes, 12.2(18)SXF2 |
Planned |
Yes, NAC-L2-IP |
6500 – Sup2 |
Native IOS |
No |
No |
No |
No |
6500 – Sup32, Sup720, Sup2 |
Hybrid |
Yes, 8.5 |
Yes, 8.5 |
No |
Yes, NAC-L2-IP |
6500 – Sup32, Sup720, Sup2 |
Cat OS |
Yes, 8.5 |
Yes, 8.5 |
No |
Yes, NAC-L2-IP |
6500 – Sup1A |
All |
No |
No |
No |
No |
5000 Series |
All |
No |
No |
No |
No |
4900 Series |
IOS |
Yes, 12.2(25)SG |
Yes, 12.2(25)SG |
Planned |
Yes, NAC-L2-IP |
4000/4500 Series – SupII+, II+TS, II+10GE, IV, V, V-10GE |
Cisco IOS |
Yes, 12.2(25)SG |
Yes, 12.2(25)SG |
Planned |
Yes, NAC-L2-IP |
4000 – SupI, II, and III |
All |
No |
No |
No |
No |
3750, 3560 |
Cisco IOS; advanced IP services, IP services, IP base |
Yes, 12.2(25)SED |
Yes, 12.2(25)SED |
No |
Yes, NAC-L2-IP |
3550 |
Cisco IOS; IP services and IP base |
Yes, 12.2(25)SED |
Yes, 12.2(25)SED |
No |
Yes, NAC-L2-IP |
3500XL, 2900XL |
All |
No |
No |
No |
No |
2970 |
Cisco IOS; LAN base |
Yes, 12.2(25)SED |
No |
No |
No |
2960 |
Cisco IOS; LAN base |
Yes, 12.2(25)SED |
No |
No |
No |
2950 |
Cisco IOS; EI, SI |
Yes, 12.1(22)EA6 |
No |
No |
No |
2955, 2940 |
Cisco IOS |
Yes, 12.1(22)EA6 |
No |
NO |
No |
2948G-GE-TX |
Cat OS |
No |
No |
No |
No |
1900 |
All |
No |
No |
No |
No |
Express 500 |
Cisco IOS |
No |
No |
No |
No |
Catalyst switches are an integral part of the NAC solution, providing protection and containment of hosts that do not meet corporate security policies at the access layer. As such, Cisco is committed to providing NAC support on all new switch hardware.
See Chapter 4 for more information on configuring and troubleshooting NAC on a Catalyst switch.
Cisco VPN 3000 Series Concentrator
NAC support for the VPN 3000 series concentrators was first added in Release 4.7. The concentrator is a Layer 3 NAD and postures remote-access IPSec (or Layer 2 Tunneling Protocol [L2TP] over IPSec) clients. The posturing process is almost identical to that of NAC-L3-IP, described previously in the section "NAC: Phase I" (refer to Figure 1-1). The only difference is that the router is replaced with a VPN 3000 concentrator, and an IPSec tunnel is first established to the concentrator before the EAPoUDP session starts.
When the EAPoUDP session starts, a PEAP session is established between the client and the Cisco Secure ACS so posture validation can take place. Cisco Secure ACS then notifies the concentrator (through RADIUS) of the client's posture and passes down a filter list to be applied to the client. The filter list is the 3000's equivalent to a downloadable ACL.
One unique option that the concentrator provides is that clients can be excluded from posture validation based solely on OS type. This is because the Cisco VPN client sends its OS information during IPSec tunnel establishment, which occurs before NAC posture validation. Host exemption, along with all other NAC configuration, is specified under the group policy settings on the 3000. NAC configuration on the VPN 3000 concentrator is covered in detail in Chapter 6, "Configuring NAC on Cisco VPN 3000 Series Concentrators."
Cisco ASA 5500 Series Adaptive Security Appliance and PIX 500 Series Security Appliance
The NAC implementation on the Cisco 5500 series Adaptive Security Appliances (ASA) and PIX 500 series security appliances is identical to the implementation on the VPN 3000 concentrators. NAC-L3-IP is supported starting with Version 7.2(1) on all IPSec and L2TP over IPSec remote-access tunnels. Posture enforcement is provided by way of a downloadable ACL from Cisco Secure ACS. Additionally, just as with the VPN 3000, remote-access clients can be exempted from NAC posture validation based on OS type.
The ASA and PIX also support clientless authentication. Those hosts connecting through a remote-access tunnel that do not have CTA installed are marked as clientless. Cisco Secure ACS can then apply the clientless policy to those hosts, to limit (or remove entirely) their access to the network. Chapter 7, "Configuring NAC on Cisco ASA and PIX Security Appliances," contains the complete configuration of NAC on the ASA 5500 series appliances and PIX 500 series security appliances.
Cisco Wireless Devices
NAC Framework support for wireless devices is available on autonomous Access Points (AP), lightweight access points running the Lightweight Access Point Protocol (LWAPP), and the Wireless LAN Services Module (WLSM) for the Catalyst 6500. Table 1-4 lists the wireless devices and minimum supported software.
Table 1-4. NAC Support in Wireless Devices
Wireless Device |
Minimum Supported Software |
Autonomous APs running IOS: Aironet 1100, 1130AG, 1200, 1230AG, 1240AG, 1300 IOS-based access points |
Cisco IOS Release 12.3(7)JA or later |
Lightweight APs running LWAPP: Aironet 1000, 1130AG, 1200, 1230AG, 1240AG, 1500 + WLAN Controller 2000, 4100, or 4400 |
Cisco Unified Wireless Network Software Release 3.1 or later |
Catalyst 6500 series WLSM |
Cisco IOS Release 1.4.1 or later |
Wireless devices are Layer 2 termination devices and, as such, support NAC-L2-802.1x as the posturing method. The process that a wireless client connecting to a wireless device goes through for posture validation is the same as for a wired client. Figure 1-3 depicts this posture. Note that wireless devices provide posture enforcement through VLAN only. This means that, to support NAC, the wireless devices must be configured for multiple VLANs per service set identifier (SSID).
Configuration and troubleshooting of NAC on Cisco wireless access points is covered along with other Layer 2 network-access devices in Chapter 4.
Cisco Secure Access Control Server
The Cisco Secure Access Control Server (ACS) for Windows is another core required component of NAC. Cisco Secure ACS first supported NAC in Version 3.3, which was launched concurrently with Phase I in the summer of 2004. Cisco Secure ACS 4.0, released in the fall of 2005, added support for NAC Phase II, including all the NADs listed in the previous section.
Cisco Secure ACS is the central controller for all NAC policy decisions. It receives posture credentials from all agents and either processes them locally or forwards them on to partner validation servers for processing. If the posture credentials are forwarded on, Cisco Secure ACS waits to receive the application posture token (APT) back from the external validation server. It then combines this APT with the local APTs it created based on the defined policy; the result is an overall system posture token (SPT).
The SPT has one of the following values: Healthy, Checkup, Quarantine, Infected, or Unknown, which are mapped to a network access policy. The network-access policy and SPT are then transmitted to the NAD as part of policy enforcement. Optionally, Cisco Secure ACS can send a user-notification message that CTA displays on the end host. This message usually indicates the posture of the system along with some instructions (for the un-Healthy hosts). Cisco Secure ACS can also send a URL redirect to the end host via the NAD if either NAC-L3-IP or NAC-L2-IP is being used.
Chapter 8 covers installation, configuration, and troubleshooting of Cisco Secure ACS.
Event Monitoring, Analysis, and Reporting
Protecting the network from threats is the first step toward securing it. However, event monitoring, analysis, and reporting are also vital pieces in understanding the network's security posture:
- Event monitoring—The process of receiving events (or alerts) from the network and presenting them to the user in real time and in a meaningful way. This is usually provided with some sort of "dashboard" where new events are displayed as they come in.
- Analysis—The process of taking the events received and normalizing and correlating them to produce the most relevant set of data. The correlation process takes multiple streams of events from various device types and finds similarities in their data that can be linked to provide a detailed composite picture. The normalization process then removes the redundant data and improves data consistency.
- Reporting—The process of querying historical data for specific events and presenting those events in a useful way to the user.
Monitoring, analysis, and reporting are powerful tools that show the network administrator the state of the network at any given point in time. These tools are very important in networks where NAC is enabled because the volume of events that each network device generates for each postured host is huge. Monitoring the network devices individually for problems or anomalies is neither practical nor efficient. This is why Cisco has enhanced its Cisco Security Monitoring, Analysis, and Reporting System (CS-MARS) to support NAC.
The CS-MARS appliance is a topologically aware, high-performance event-correlation system. Syslogs, NetFlow data, Simple Network Management Protocol (SNMP) traps, and other network logging information can be sent to it from a variety of network sources. This includes routers, switches, firewalls, intrusion-prevention devices, Cisco Secure ACS, and even end hosts. All this information is then correlated within CS-MARS to detect network attacks and other types of security threats. When an attack is detected, an incident is fired and the attacker, victim, and path from attacker to victim are displayed in the CS-MARS interface. Additionally, based on the attack vector, CS-MARS can inform the user of the best way to mitigate the attack.
In support of NAC, CS-MARS parses, normalizes, correlates, and reports on posture-validation events for NAC-L3-IP, NAC-L2-IP, and NAC-L2-802.1X. Predefined reports enable network administrators to view the number of hosts in Healthy, Quarantined, Clientless, or other states throughout the entire network. Administrators can further drill down to determine the posture status on a per-device basis. They may also choose to receive daily reports (via e-mail) of the number and location of nonhealthy hosts in their network.
Help-desk support teams can use CS-MARS to identify problems reported from end users. CS-MARS can display IP addresses, machine/usernames, and the logical switch port number the user is connected to, along with the posture information or authentication information of end hosts. This information can be displayed in real time and allows the help-desk teams to quickly and easily identify problems end users are having.
Chapter 17, "Monitoring the NAC Solution Using the Cisco Security Monitoring, Analysis, and Response System," covers the configuration and operation of CS-MARS in a NAC Framework solution.