- Index
- New and Changed Information
- Preface
- Overview
- Configuring AAA
- Configuring RADIUS
- Configuring TACACS+
- Configuring SSH and Telnet
- Configuring User Accounts and RBAC
- Configuring 802.1X
- Configuring NAC
- Configuring Cisco TrustSec
- Configuring IP ACLs
- Configuring MAC ACLs
- Configuring VLAN ACLs
- Configuring Port Security
- Configuring DHCP Snooping
- Configuring Dynamic ARP Inspection
- Configuring IP Source Guard
- Configuring Keychain Management
- Configuring Traffic Storm Control
- Configuring Unicast RPF
- Configuring Contol Plane Policing
- Configuring Rate Limits
- Information About TACACS+
- Licensing Requirements for TACACS+
- Prerequisites for TACACS+
- Guidelines and Limitations
- Configuring TACACS+
- TACACS+ Server Configuration Process
- Enabling TACACS+
- Configuring TACACS+ Server Hosts
- Configuring Global Preshared Keys
- Configuring TACACS+ Server Preshared Keys
- Configuring TACACS+ Server Groups
- Specifying a TACACS+ Server at Login
- Configuring the Global TACACS+ Timeout Interval
- Configuring the Timeout Interval for a Server
- Configuring TCP Ports
- Configuring Periodic TACACS+ Server Monitoring
- Configuring the Dead-Time Interval
- Manually Monitoring TACACS+ Servers or Groups
- Disabling TACACS+
- Displaying TACACS+ Statistics
- Verifying TACACS+ Configuration
- Example TACACS+ Configurations
- Where to Go Next
- Default Settings
- Additional References
Configuring TACACS+
This chapter describes how to configure the Terminal Access Controller Access Control System Plus (TACACS+) protocol on NX-OS devices.
This chapter includes the following sections:
•Licensing Requirements for TACACS+
•Displaying TACACS+ Statistics
•Verifying TACACS+ Configuration
•Example TACACS+ Configurations
Information About TACACS+
The TACACS+ security protocol provides centralized validation of users attempting to gain access to an NX-OS device. TACACS+ services are maintained in a database on a TACACS+ daemon running, typically, on a UNIX or Windows NT workstation. You must have access to and must configure a TACACS+ server before the configured TACACS+ features on your NX-OS device are available.
TACACS+ provides for separate authentication, authorization, and accounting facilities. TACACS+ allows for a single access control server (the TACACS+ daemon) to provide each service—authentication, authorization, and accounting—independently. Each service can be tied into its own database to take advantage of other services available on that server or on the network, depending on the capabilities of the daemon.
The TACACS+ client/server protocol uses TCP (TCP port 49) for transport requirements. Cisco NX-OS devices provide centralized authentication using the TACACS+ protocol.
This section includes the following topics:
•TACACS+ Operation for User Login
•Default TACACS+ Server Encryption Type and Preshared Key
TACACS+ Advantages
TACACS+ has the following advantages over RADIUS authentication:
•Provides independent AAA facilities. For example, the NX-OS device can authorize access without authenticating.
•Uses the TCP transport protocol to send data between the AAA client and server, making reliable transfers with a connection-oriented protocol.
•Encrypts the entire protocol payload between the switch and the AAA server to ensure higher data confidentiality. The RADIUS protocol only encrypts passwords.
TACACS+ Operation for User Login
When a user attempts a Password Authentication Protocol (PAP) login to an NX-OS device using TACACS+, the following actions occur:
1. When the NX-OS device establishes a connection, it contacts the TACACS+ daemon to obtain the username and password.

Note TACACS+ allows an arbitrary conversation between the daemon and the user until the daemon receives enough information to authenticate the user. This action is usually done by prompting for a username and password combination, but may include prompts for other items, such as mother's maiden name.
2. The NX-OS device will eventually receive one of the following responses from the TACACS+ daemon:
a. ACCEPT—User authentication succeeds and service begins. If the NX-OS device requires user authorization, authorization begins.
b. REJECT—User authentication failed. The TACACS+ daemon either denies further access to the user or prompts the user to retry the login sequence.
c. ERROR—An error occurred at some time during authentication either at the daemon or in the network connection between the daemon and the NX-OS device. If the NX-OS device receives an ERROR response, the NX-OS device tries to use an alternative method for authenticating the user.
After authentication, the user also undergoes an additional authorization phase if authorization has been enabled on the NX-OS device. Users must first successfully complete TACACS+ authentication before proceeding to TACACS+ authorization.
3. If TACACS+ authorization is required, the NX-OS device again contacts the TACACS+ daemon and it returns an ACCEPT or REJECT authorization response. An ACCEPT response contains attributes that are used to direct the EXEC or NETWORK session for that user and determines the services that the user can access.
Services include the following:
•Telnet, rlogin, Point-to-Point Protocol (PPP), Serial Line Internet Protocol (SLIP), or EXEC services
•Connection parameters, including the host or client IP address (IPv4 or IPv6), access list, and user timeouts
Default TACACS+ Server Encryption Type and Preshared Key
You must configure the TACACS+ preshared key to authenticate the switch to the TACACS+ server. A preshared key is a secret text string shared between the NX-OS device and the TACACS+ server host. The length of the key is restricted to 63 characters and can include any printable ASCII characters (white spaces are not allowed). You can configure a global preshared secret key for all TACACS+ server configurations on the NX-OS device to use.
You can override the global preshared key assignment by explicitly using the key option when configuring and individual TACACS+ server.
TACACS+ Server Monitoring
An unresponsive TACACS+ server can delay the processing of AAA requests. An NX-OS device can periodically monitor an TACACS+ server to check whether it is responding (or alive) to save time in processing AAA requests. The NX-OS device marks unresponsive TACACS+ servers as dead and does not send AAA requests to any dead TACACS+ servers. An NX-OS device periodically monitors dead TACACS+ servers and brings them to the alive state once they are responding. This process verifies that a TACACS+ server is in a working state before real AAA requests are sent its way. Whenever an TACACS+ server changes to the dead or alive state, a Simple Network Management Protocol (SNMP) trap is generated and the NX-OS device displays an error message that a failure is taking place before it can impact performance. See Figure 4-1.
Figure 4-1 TACACS+ Server States


Note The monitoring interval for alive servers and dead servers are different and can be configured by the user. The TACACS+ server monitoring is performed by sending a test authentication request to the TACACS+ server.
Vendor-Specific Attributes
The Internet Engineering Task Force (IETF) draft standard specifies a method for communicating vendor-specific attributes (VSAs) between the network access server and the TACACS+ server. The IETF uses attribute 26. VSAs allow vendors to support their own extended attributes that are not suitable for general use.
This section includes the following topics:
•Cisco TACACS+ Privilege Levels
Cisco VSA Format
The Cisco TACACS+ implementation supports one vendor-specific option using the format recommended in the IETF specification. The Cisco vendor ID is 9, and the supported option is vendor type 1, which is named cisco-av-pair. The value is a string with the following format:
protocol : attribute separator value *
The protocol is a Cisco attribute for a particular type of authorization, separator is = (equal sign) for mandatory attributes, and *
(asterisk) indicates optional attributes.
When you use TACACS+ servers for authentication on a Cisco NX-OS device, the TACACS+ protocol directs the TACACS+ server to return user attributes, such as authorization information, along with authentication results. This authorization information is specified through VSAs.
The following VSA protocol options are supported by the Cisco NX-OS software:
•Shell—Protocol used in access-accept packets to provide user profile information.
•Accounting—Protocol used in accounting-request packets. If a value contains any white spaces, you should enclose the value within double quotation marks.
The Cisco NX-OS software supports the following attributes:
•roles—Lists all the roles to which the user belongs. The value field is a string that lists the role names delimited by white space. For example, if the user belongs to roles network-operator and vdc-admin, the value field would be "network-operator vdc-admin." This subattribute, which the TACACS+ server sends in the VSA portion of the Access-Accept frames, can only be used with the shell protocol value. The following examples show the roles attribute as supported by Cisco ACS:
shell:roles="network-operator vdc-admin"
shell:roles*"network-operator vdc-admin"

Note When you specify a VSA as shell:roles*"network-operator vdc-admin", this VSA is flagged as an optional attribute and other Cisco devices ignore this attribute.
•accountinginfo—Stores accounting information in addition to the attributes covered by a standard TACACS+ accounting protocol. This attribute is sent only in the VSA portion of the Account-Request frames from the TACACS+ client on the switch. It can be used only with the accounting protocol data units (PDUs).
Cisco TACACS+ Privilege Levels
TACACS+ servers support privilege levels for specifying the permissions that users have when logging into an NX-OS device. For the maximum privilege level 15, the Cisco NX-OS software applies the network-admin role in the default VDC or the vdc-admin role for nondefault VDCs. All other privilege levels are translated to the vdc-operator role. For more information on user roles, see Chapter 6, "Configuring User Accounts and RBAC."

Note If you specify a user role in the cisco-av-pair, that takes precedence over the privilege level.
Virtualization Support
TACACS+ configuration and operation are local to the virtual device context (VDC). For more information on VDCs, see the Cisco Nexus 7000 Series NX-OS Virtual Device Context Configuration Guide, Release 4.0.
The NX-OS device uses virtual routing and forwarding instances (VRFs) to access the TACACS+ servers. For more information on VRFs, see the Cisco Nexus 7000 Series NX-OS Unicast Routing Configuration Guide, Release 4.0.
Licensing Requirements for TACACS+
The following table shows the licensing requirements for this feature:
Prerequisites for TACACS+
TACACS+ has the following prerequisites:
•Obtain the IPv4 or IPv6 addresses or hostnames for the TACACS+ servers.
•Obtain the preshared keys from the TACACS+ servers, if any.
•Ensure that the NX-OS device is configured as a TACACS+ client of the AAA servers.
Guidelines and Limitations
TACACS+ has the following guidelines and limitations:
•You can configure a maximum of 64 TACACS+ servers on the NX-OS device.
•If you have a user account configured on the local Cisco NX-OS device that has the same name as a remote user account on an AAA server, the Cisco NX-OS software applies the user roles for the local user account to the remote user, not the user roles configured on the AAA server.
Configuring TACACS+
This section includes the following topics:
•TACACS+ Server Configuration Process
•Configuring TACACS+ Server Hosts
•Configuring Global Preshared Keys
•Configuring TACACS+ Server Preshared Keys
•Configuring TACACS+ Server Groups
•Specifying a TACACS+ Server at Login
•Configuring the Global TACACS+ Timeout Interval
•Configuring the Timeout Interval for a Server
•Configuring Periodic TACACS+ Server Monitoring
•Configuring the Dead-Time Interval
•Manually Monitoring TACACS+ Servers or Groups

Note If you are familiar with the Cisco IOS CLI, be aware that the Cisco NX-OS commands for this feature might differ from the Cisco IOS commands that you would use.
TACACS+ Server Configuration Process
To configure TACACS+ servers, follow these steps:
Step 1 Enable TACACS+ (see the "Enabling TACACS+" section).
Step 2 Establish the TACACS+ server connections to the NX-OS device (see the "Configuring TACACS+ Server Hosts" section).
Step 3 Configure the preshared secret keys for the TACACS+ servers (see the "Configuring Global Preshared Keys" section and the "Configuring TACACS+ Server Preshared Keys" section).
Step 4 If needed, configure TACACS+ server groups with subsets of the TACACS+ servers for AAA authentication methods (see the "Configuring TACACS+ Server Groups" section and the "Configuring AAA" section on page 2-7).
Step 5 If needed, configure any of the following optional parameters:
•Dead-time interval (see the "Configuring the Dead-Time Interval" section
•TACACS+ server specification allowed at user login (see the "Specifying a TACACS+ Server at Login" section).
•Timeout interval (see the "Configuring the Global TACACS+ Timeout Interval" section).
•TCP port (see the "Configuring TCP Ports" section).
Step 6 If needed, configure periodic TACACS+ server monitoring (see the "Configuring Periodic TACACS+ Server Monitoring" section).
Enabling TACACS+
By default, the TACACS+ feature is disabled on the Cisco NX-OS device. You must explicitly enable the TACACS+ feature to access the configuration and verification commands for authentication.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
SUMMARY STEPS
1. config t
2. feature tacacs+
3. exit
4. copy running-config startup-config
DETAILED STEPS
Configuring TACACS+ Server Hosts
To access a remote TACACS+ server, you must configure the IPv4 or IPv6 address or the hostname for the TACACS+ server on the Cisco NX-OS device. All TACACS+ server hosts are added to the default TACACS+ server group.You can configure up to 64 TACACS+ servers.
If a preshared key is not configured for a configured TACACS+ server, a warning message is issued if a global key is not configured. If a TACACS+ server key is not configured, the global key (if configured) is used for that server (see the "Configuring Global Preshared Keys" section and the "Configuring TACACS+ Server Preshared Keys" section).
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
Obtain the IPv4 or IPv6 addresses or the hostnames for the remote TACACS+ servers.
SUMMARY STEPS
1. config t
2. tacacs-server host {ipv4-address | ipv6-address | host-name}
3. exit
4. show tacacs-server
5. copy running-config startup-config
Configuring Global Preshared Keys
You can configure preshared keys at the global level for all servers used by the Cisco NX-OS device. A preshared key is a shared secret text string between the Cisco NX-OS device and the TACACS+ server hosts.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
Obtain the preshared key values for the remote TACACS+ servers.
SUMMARY STEPS
1. config t
2. tacacs-server key [0 | 7] key-value
3. exit
4. show tacacs-server
5. copy running-config startup-config
DETAILED STEPS
Configuring TACACS+ Server Preshared Keys
You can configure preshared keys for a TACACS+ server. A preshared key is a shared secret text string between the Cisco NX-OS device and the TACACS+ server host.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
Obtain the preshared key values for the remote TACACS+ servers.
SUMMARY STEPS
1. config t
2. tacacs-server host {ipv4-address | ipv6-address | host-name} key key-value
3. exit
4. show tacacs-server
5. copy running-config startup-config
DETAILED STEPS
Configuring TACACS+ Server Groups
You can specify one or more remote AAA servers to authenticate users using server groups. All members of a group must belong to the TACACS+ protocol. The servers are tried in the same order in which you configure them.
You can configure these server groups at any time but they only take effect when you apply them to an AAA service. For information on AAA services, see the "Remote AAA Services" section on page 2-3.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. aaa group server tacacs+ group-name
3. server {ipv4-address | ipv6-address | host-name}
4. deadtime minutes
5. use-vrf vrf-name
6. exit
7. show tacacs-server groups
8. copy running-config startup-config
DETAILED STEPS
|
|
|
---|---|---|
Step 1 |
config t Example: switch# config t switch(config)# |
Enters configuration mode. |
Step 2 |
aaa group server tacacs+ group-name Example: switch(config)# aaa group server tacacs+ TacServer switch(config-tacacs+)# |
Creates a TACACS+ server group and enters the TACACS+ server group configuration mode for that group. |
Step 3 |
server {ipv4-address | ipv6-address | host-name} Example: switch(config-tacacs+)# server 10.10.2.2 |
Configures the TACACS+ server as a member of the TACACS+ server group. ![]() |
Step 4 |
deadtime minutes Example: switch(config-tacacs+)# deadtime 30 |
(Optional) Configures the monitoring dead time. The default is 0 minutes. The range is from 0 through 1440. Note |
Step 5 |
use-vrf vrf-name Example: switch(config-tacacs+)# use-vrf vrf1 |
(Optional) Specifies the virtual routing and forwarding instance (VRF) to use to contact this server group. |
Step 6 |
exit Example: switch(config-tacacs+)# exit switch(config)# |
Exits configuration mode. |
Step 7 |
show tacacs-server groups Example: switch(config)# show tacacs-server groups |
(Optional) Displays the TACACS+ server group configuration. |
Step 8 |
copy running-config startup-config Example: switch(config)# copy running-config startup-config |
(Optional) Copies the running configuration to the startup configuration. |
Specifying a TACACS+ Server at Login
You can configure the switch to allow the user to specify which TACACS+ server to send the authenticate request by enabling the directed-request option. By default, a Cisco NX-OS device forwards an authentication request based on the default AAA authentication method. If you enable this option, the user can log in as username@vrfname:hostname, where vrfname is the VRF to use and hostname is the name of a configured TACACS+ server.

Note If you enable the directed-request option, the NX-OS device uses only the TACACS+ method for authentication and not the default local method.

Note User-specified logins are supported only for Telnet sessions.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server directed-request
3. exit
4. show tacacs-server directed-request
5. copy running-config startup-config
DETAILED STEPS
Configuring the Global TACACS+ Timeout Interval
You can set a global timeout interval that the Cisco NX-OS device waits for responses from all TACACS+ servers before declaring a timeout failure. The timeout interval determines how long the Cisco NX-OS device waits for responses from TACACS+ servers before declaring a timeout failure.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server timeout seconds
3. exit
4. show tacacs-server
5. copy running-config startup-config
DETAILED STEPS
Configuring the Timeout Interval for a Server
You can set a timeout interval that the Cisco NX-OS device waits for responses from a TACACS+ server before declaring a timeout failure. The timeout interval determines how long the Cisco NX-OS device waits for responses from a TACACS+ server before declaring a timeout failure.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server host {ipv4-address | ipv6-address | host-name} timeout seconds
3. exit
4. show tacacs-server
5. copy running-config startup-config
DETAILED STEPS
Configuring TCP Ports
You can configure another TCP port for the TACACS+ servers if there are conflicts with another application. By default, Cisco NX-OS devices use port 49 for all TACACS+ requests.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server host {ipv4-address | ipv6-address | host-name} port tcp-port
3. exit
4. show tacacs-server
5. copy running-config startup-config
DETAILED STEPS
Configuring Periodic TACACS+ Server Monitoring
You can monitor the availability of TACACS+ servers. These parameters include the username and password to use for the server and an idle timer. The idle timer specifies the interval in which a TACACS+ server receives no requests before the Cisco NX-OS device sends out a test packet. You can configure this option to test servers periodically, or you can run a one-time only test.

Note To protect network security, we recommend that you use a username that is not the same as an existing username in the TACACS+ database.
The test idle timer specifies the interval in which a TACACS+ server receives no requests before the Cisco NX-OS device sends out a test packet.

Note The default idle timer value is 0 minutes. When the idle time interval is 0 minutes, periodic TACACS+ server monitoring is not performed.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server host {ipv4-address | ipv6-address | host-name} test {idle-time minutes | password password [idle-time minutes] | username name [password password [idle-time minutes]]}
3. tacacs-server dead-time minutes
4. exit
5. show tacacs-server
6. copy running-config startup-config
DETAILED STEPS
Configuring the Dead-Time Interval
You can configure the dead-time interval for all TACACS+ servers. The dead-time interval specifies the time that the Cisco NX-OS device waits, after declaring a TACACS+ server is dead, before sending out a test packet to determine if the server is now alive.

Note When the dead-timer interval is 0 minutes, TACACS+ servers are not marked as dead even if they are not responding. You can configure the dead-timer per group (see the "Configuring TACACS+ Server Groups" section).
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. config t
2. tacacs-server deadtime minutes
3. exit
4. show tacacs-server
5. copy running-config startup-config
Manually Monitoring TACACS+ Servers or Groups
You can manually issue a test message to a TACACS+ server or to a server group.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. test aaa server tacacs+ {ipv4-address | ipv6-address | host-name} [vrf vrf-name] username password
2. test aaa group group-name username password
DETAILED STEPS
Disabling TACACS+
You can disable TACACS+.


BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
SUMMARY STEPS
1. config t
2. no feature tacacs+
3. exit
4. copy running-config startup-config
DETAILED STEPS
Displaying TACACS+ Statistics
You can display the statistics that the Cisco NX-OS device maintains for TACACS+ activity.
BEFORE YOU BEGIN
Ensure that you are in the correct VDC (or use the switchto vdc command).
Enable TACACS+ (see the "Enabling TACACS+" section).
SUMMARY STEPS
1. show tacacs-server statistics {hostname | ipv4-address | ipv6-address}
DETAILED STEPS
|
|
|
---|---|---|
Step 1 |
switch# show tacacs-server statistics {hostname | ipv4-address | ipv6-address} Example: switch# show tacacs-server statistics 10.10.1.1 |
Displays the TACACS+ statistics. |
For detailed information about the fields in the output from this command, see the Cisco Nexus 7000 Series NX-OS Security Command Reference, Release 4.0.
Verifying TACACS+ Configuration
To display TACACS+ configuration information, perform one of the following tasks:
For detailed information about the fields in the output from this command, see the Cisco Nexus 7000 Series NX-OS Security Command Reference, Release 4.0.
Example TACACS+ Configurations
The following example shows how to configure TACACS+:
feature tacacs+
tacacs-server key 7 "ToIkLhPpG"
tacacs-server host 10.10.2.2 key 7 "ShMoMhTl"
aaa group server tacacs+ TacServer
server 10.10.2.2
Where to Go Next
You can now configure AAA authentication methods to include the TACACS+ server groups (see Chapter 2, "Configuring AAA").
Default Settings
Table 4-1 lists the default settings for TACACS+ parameters.
Additional References
For additional information related to implementing TACACS+, see the following sections:
•MIBs
Related Documents
Standards
|
|
---|---|
No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature. |
— |
MIBs
|
|
---|---|
• • |
To locate and download MIBs, go to the following URL: http://www.cisco.com/public/sw-center/enigmatic/cant/mibs.shtml |