|
|
This chapter describes the commands used to manage accounting on the network. Accounting management allows you to track individual and group usage of network resources. The AAA accounting feature enables you to track the services users are accessing as well as the amount of network resources they are consuming. When aaa accounting is activated, the network access server reports user activity to the TACACS+ or RADIUS security server (depending on which security method you have implemented) in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the security server. This data can then be analyzed for network management, client billing, and/or auditing.
For information on how to configure accounting using AAA, refer to the "Configuring Accounting" chapter in the Security Configuration Guide. For configuration examples using the commands in this chapter, refer to the "Accounting Configuration Examples" section located at the end of the "Configuring Accounting" chapter in the Security Configuration Guide.
Refer also to the IP accounting feature in the "Configuring IP Services" chapter of the Network Protocols Configuration Guide, Part 1.
To enable AAA accounting of requested services for billing or security purposes when you use RADIUS or TACACS+, use the aaa accounting global configuration command. Use the no form of this command to disable accounting.
aaa accounting {system | network | exec | command level} {start-stop || system | Performs accounting for all system-level events not associated with users, such as reloads. |
| network | Runs accounting for all network-related service requests, including SLIP, PPP, PPP NCPs, and ARAP. |
| exec | Runs accounting for EXEC session (user shells). This keyword might return user profile information such as autocommand information. |
| command | Runs accounting for all commands at the specified privilege level. |
| level | Specifies the command level to track for accounting. Valid entries are 0 through 15. |
| start-stop | Sends a start accounting notice at the beginning of a process and a stop accounting notice at the end of a process. The start accounting record is sent in the background. The requested user process begins regardless of whether or not the start accounting notice was received by the accounting server. |
| wait-start | As in start-stop, sends both a start and a stop accounting notice to the accounting server. However, if you use the wait-start keyword, the requested user service does not begin until the start accounting notice is acknowledged. A stop accounting notice is also sent. |
| stop-only | Sends a stop accounting notice at the end of the requested user process. |
| tacacs+ | Enables the TACACS-style accounting. |
| radius | Enables the RADIUS-style authorization. |
AAA accounting is not enabled.
Global configuration
This command first appeared in Cisco IOS Release 10.3.
For minimal accounting, include the stop-only keyword to send a stop record accounting notice at the end of the requested user process. For more accounting, you can include the start-stop keyword, so that RADIUS or TACACS+ sends a start accounting notice at the beginning of the requested process and a stop accounting notice at the end of the process. For even more accounting control, you can include the wait-start keyword, which ensures that the start notice is received by the RADIUS or TACACS+ server before granting the user's process request. Accounting is done only to the RADIUS or TACACS+ server.
When aaa accounting is activated, the network access server monitors either RADIUS accounting attributes or TACACS+ AV pairs pertinent to the connection, depending on the security method you have implemented. The network access server reports these attributes as accounting records, which are then stored in an accounting log on the security server. For a list of supported RADIUS accounting attributes, refer to the "RADIUS Attributes" appendix in the Security Configuration Guide. For a list of supported TACACS+ accounting AV pairs, refer to the "TACACS+ AV Pairs" appendix in the Security Configuration Guide.
In the following example, accounting is configured for a TACACS+ security server, set for privilege level 15 commands with a wait-start restriction:
aaa accounting command 15 wait-start tacacs+
You can use the master indexes or search online to find documentation of related commands.
aaa authorization
aaa new-model
To prevent the Cisco IOS software from sending accounting records for users whose username string is NULL, use the aaa accounting suppress null-username global configuration command. Use the no form of this command to disable this feature.
aaa accounting suppress null-usernameThis command has no arguments or keywords.
Disabled
Global configuration
This command first appeared in Cisco IOS Release 11.2.
When aaa accounting is activated, the Cisco IOS software issues accounting records for all users on the system, including users whose username string, because of protocol translation, is NULL. This command prevents accounting records from being generated for those users who do not have usernames associated with them.
In the following example, accounting records for users who do not have usernames associated with them have been suppressed:
aaa accounting suppress null-username
You can use the master indexes or search online to find documentation of related commands.
To enable periodic interim accounting records to be sent to the accounting server, use the aaa accounting update global configuration command. Use the no form of this command to disable this feature.
aaa accounting update {newinfo | periodic number}| newinfo | Causes an interim accounting record to be sent to the accounting server whenever there is new accounting information to report relating to the user in question. |
| periodic | Causes an interim accounting record to be sent to the accounting server periodically, as defined by the argument number. |
| number | Integer specifying number of minutes. |
Disabled
Global configuration
This command first appeared in Cisco IOS Release 11.3.
When aaa accounting update is activated, the Cisco IOS software issues interim accounting records for all users on the system. If the keyword newinfo is used, interim accounting records will be sent to the accounting server every time there is new accounting information to report. An example of this would be when IPCP completes IP address negotiation with the remote peer. The interim accounting record will include the negotiated IP address used by the remote peer.
When used with the keyword periodic, interim accounting records are sent periodically as defined by the argument number. The interim accounting record contains all of the accounting information recorded for that user up to the time the accounting record is sent.
Both of these keywords are mutually exclusive, meaning that whichever keyword is configured last takes precedence over the previous configuration. For example, if you configure aaa accounting update periodic, and then configure aaa accounting update newinfo, all users currently logged in will continue to generate periodic interim accounting records. All new users will generate accounting records based on the newinfo algorithm.
![]() | Caution Using the aaa accounting update periodic command can cause heavy congestion when many users are logged in to the network. |
The following example sends PPP accounting records to a remote RADIUS server and, when IPCP completes negotiation, sends an interim accounting record to the RADIUS server that includes the negotiated IP address for this user:
aaa accounting network start-stop radius aaa accounting update newinfo
You can use the master indexes or search online to find documentation of related commands.
aaa accounting exec
aaa accounting network
Use the show accounting command to step through all active sessions and to print all the accounting records for actively accounted functions. Use the no form of this command to disable this function.
show accounting {system | network | exec | command level} {start-stop || system | Displays accounting for all system-level events not associated with users, such as reloads. |
| network | Displays accounting for all network-related service requests, including SLIP, PPP, PPP NCPs, and ARAP. |
| exec | Displays accounting for EXEC session (user shells). This keyword might return user profile information such as autocommand information. |
| command | Displays accounting for all commands at the specified privilege level. |
| level | Specifies the command level to display. Valid entries are 0 through 15. |
| start-stop | Displays a start record accounting notice at the beginning of a process and a stop record at the end of a process. The start accounting record is sent in the background. The requested user process begins regardless of whether or not the start accounting record was received by the accounting server. |
| wait-start | Displays both a start and a stop accounting notice to the accounting server. |
| stop-only | Displays a stop record accounting notice at the end of the requested user process. |
| tacacs+ | Displays the TACACS-style accounting. |
Disabled
EXEC
This command first appeared in Cisco IOS Release 11.1.
The show accounting command allows you to display the active accountable events on the network. It provides system administrators with a quick look at what is going on, and it also can help collect information in the event of a data loss on the accounting server.
The show accounting command displays additional data on the internal state of AAA if debug aaa accounting is activated.
The following is sample output from the show accounting command, showing accounting records for an EXEC login and an outgoing Telnet session:
router#show accountingActive Accounted actions on tty0, User (not logged in) Priv 1 Task ID 1, EXEC Accounting record, 00:22:14 Elapsed task_id=1 service=shell Task ID 10, Connection Accounting record, 00:00:03 Elapsed task_id=10 service=connection protocol=telnet addr=172.16.57.11 cmd=connect tom-ss20 Active Accounted actions on tty66, User tom Priv 1 Task ID 9, EXEC Accounting record, 00:02:14 Elapsed task_id=9 service=shell
The following is sample output from the show accounting command, showing accounting records for a network connection:
router#show accountingActive Accounted actions on tty33, User tom Priv 1 Task ID 13, Network Accounting record, 00:00:10 Elapsed task_id=13 service=ppp protocol=ip addr=10.0.0.1
The following is sample output from the show accounting command, showing accounting records for a PPP session started from an EXEC prompt:
router#show accountingActive Accounted actions on tty0, User (not logged in) Priv 1 Task ID 1, EXEC Accounting record, 00:35:16 Elapsed task_id=1 service=shell Active Accounted actions on tty33, User ellie Priv 1 Task ID 16, EXEC Accounting record, 00:00:17 Elapsed task_id=16 service=shell Active Accounted actions on Interface Async33, User tom Priv 1 Task ID 17, Network Accounting record, 00:00:13 Elapsed task_id=17 service=ppp protocol=ip addr=10.0.0.1
Table 7 describes the fields contained in this example.
| Field | Description |
|---|---|
| Active Accounted actions on | Terminal line or interface name user with which the user logged in. |
| User | User's ID |
| Priv | User's privilege level. |
| Task ID | Unique identifier for each accounting session. |
| Accounting Record | Type of accounting session. |
| Elapsed | Length of time (hh:mm:ss) for this session type. |
| attribute=value | AV pairs associated with this accounting session. |
You can use the master indexes or search online to find documentation of related commands.
debug aaa accounting
show line
show users
|
|