Ce document explique comment récupérer des renseignements sur les utilisateurs connectés aux lignes TTY d'un périphérique Cisco à l'aide du protocole de gestion de réseau simple (SNMP). Le document décrit également tous les identificateurs d'objets (OID) possibles et les façons d'effacer une ligne TTY précise à l'aide du SNMP.
Before you use the information in this document, make sure that you meet these requirements:
Comprendre comment visualiser les informations TTY sur les appareils Cisco.
Utilisation générale des commandes inspection, obtenir et configurer de SNMP.
Comprendre comment configurer le SNMP sur un appareil Cisco.
Ce document applique aux routeurs et aux commutateurs Cisco exécutant un système d'exploitation (OS) ou iOS Catalyst normal qui prennent en charge l'OLD-CISCO-TS-MIB.
Remarque : L'ANCIEN CISCO-TS-MIB n'est pas chargé par défaut dans NET-SNMP. Si le Management Information Base (MIB) n'est pas chargé sur votre système, vous devez utiliser l'OID au lieu du nom d'objet.
Les informations dans ce document sont basées sur les versions logicielles et matérielles répertoriées ici :
Routeur c3640 utilisant la version 12.2(13a)
NET-SNMP version 5.0.6 disponible au http://www.net-snmp.org/
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, make sure that you understand the potential impact of any command.
For more information on document conventions, refer to the Cisco Technical Tips Conventions.
1.3.6.1.4.1.9.2.9.1 (OLD-CISCO-TS-MIB) tsLines OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Number of terminal lines on this device. Includes virtual lines." ::= { lts 1 } 1.3.6.1.4.1.9.2.9.2.1.1 (OLD-CISCO-TS-MIB) tsLineActive OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "Boolean whether this line is active or not." ::= { ltsLineEntry 1 } 1.3.6.1.4.1.9.2.9.2.1.2 (OLD-CISCO-TS-MIB) tsLineType OBJECT-TYPE SYNTAX INTEGER { unknown(1), console(2), terminal(3), line-printer(4), virtual-terminal(5), auxiliary(6) } ACCESS read-only STATUS mandatory DESCRIPTION "Type of line." ::= { ltsLineEntry 2 } 1.3.6.1.4.1.9.2.9.2.1.21 (OLD-CISCO-TS-MIB) tsLineTimeActive OBJECT-TYPE SYNTAX INTEGER ACCESS read-only STATUS mandatory DESCRIPTION "The time in seconds since line was activated." ::= { ltsLineEntry 21 } 1.3.6.1.4.1.9.2.9.2.1.18 (OLD-CISCO-TS-MIB) tsLineUser OBJECT-TYPE SYNTAX DisplayString ACCESS read-only STATUS mandatory DESCRIPTION "TACACS user name,if TACACS is enabled, of user on this line." ::= { ltsLineEntry 18 } 1.3.6.1.4.1.9.2.9.4 (OLD-CISCO-TS-MIB) tsMsgTtyLine OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "tty line to send the message to. -1 sends the messages to all tty lines." ::= { lts 4 } 1.3.6.1.4.1.9.2.9.10 (OLD-CISCO-TS-MIB) tsClrTtyLine OBJECT-TYPE SYNTAX INTEGER ACCESS read-write STATUS mandatory DESCRIPTION "tty line to clear. Read returns the last line cleared. A value of -1 indicates no lines have been cleared." ::= { lts 10 }
Les valeurs dans l'exemple sont les suivantes :
Nom d'hôte du dispositif = ponch
Communauté de lecture = public
Communauté d'écriture = privé
Remplacez les chaînes de la communauté et le nom d'hôte dans ces commandes.
Pour trouver le nombre de lignes TTY disponibles (qui comprend les lignes virtuelles), faites une requête d'objet tsLines :
snmpwalk -c public ponch tsLines cisco.local.lts.tsLines.0 : INTEGER: 135
Pour répertorier les lignes TTY actives, faites une requête d'objet tsLineActive. Les lignes TTY actives renvoient 1 :
snmpwalk -c public ponch tsLineActive cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineActive.0 : INTEGER: 1 cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineActive.129 : INTEGER: 0 cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineActive.130 : INTEGER: 1 …
Vérifier ceci avec la commande Afficher les utilisateurs sur la ligne de commande d'interface (CLI) du routeur :
ponch#sh users Line User Host(s) Idle Location 0 con 0 idle 15:32:49 *130 vty 0 idle 00:00:00 10.61.64.9 Interface User Mode Idle Peer Address
Pour obtenir le type de ligne, faites une requête d'objet tsLineType. Ceci affiche comment l'utilisateur est connecté :
inconnu(1)
console(2)
terminal(3)
imprimante de ligne(4)
auxiliaire(6)
snmpwalk -c public ponch tsLineType cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineType.0 : INTEGER: console cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineType.129 : INTEGER: auxiliary cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineType.130 : INTEGER: virtual-terminal …
Pour déterminer si la chronologie est active, faites une requête d'objet tsLineTimeActive. Il s'agit du temps en secondes depuis que la ligne a été activée :
snmpwalk -c public ponch tsLineTimeActive cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineTimeActive.0 : INTEGER: 172351 cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineTimeActive.129 : INTEGER: 0 cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineTimeActive.130 : INTEGER: 9069 …
Pour voir qui est connecté à un TTY, vous devez être connecté au périphérique par TACACS. Faites une requête d'objet tsLineUser pour trouver le nom d'utilisateur :
Note : Si vous n'êtes PAS connecté via TACACS, tsLineUser est vide !
snmpwalk -c public ponch tsLineUser cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineUser.0 : DISPLAY STRING- (ascii): cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineUser.129 : DISPLAY STRING- (ascii): cisco.local.lts.ltsLineTable.ltsLineEntry.tsLineUser.131 : DISPLAY STRING- (ascii): cisco …
Comparez cette sortie témoin avec la sortie de votre commande CLI Afficher les utilisateurs :
ponch#sh users Line User Host(s) Idle Location 0 con 0 idle 15:32:49 *131 vty 0 cisco idle 00:00:00 10.61.64.11 Interface User Mode Idle Peer Address
Vous pouvez effacer une session telnet (VTY) avec SNMP. La commande SNMP est l'équivalent de la commande effacer la ligne VTY <number> . L'objet utilisé pour effacer une ligne est tsClrTtyLine.
Utilisez SNMP pour effacer la ligne VTY 132 avec ces commandes :
snmpset -c private ponch tsClrTtyLine.0 integer 132 cisco.local.lts.tcClrTtyLine.0 : INTEGER: 132
ou
snmpset -c private ponch .1.3.6.1.4.1.9.2.9.10.0 integer 132 enterprises.9.2.9.10.0 = 132
Pour vérifier ceci sur le routeur avant que la ligne 132 soit effacée, émettez cette commande sur le CLI :
ponch#show users Line User Host(s) Idle Location 0 con 0 idle 05:23:17 130 vty 0 idle 1d03h 144.254.7.118 131 vty 1 idle 1d01h 144.254.7.118 132 vty 2 idle 00:04:36 144.254.8.54 *133 vty 3 idle 00:00:00 144.254.7.53 Interface User Mode Idle Peer Address
Vérifiez le routeur après que l'émission de cette commande, pour vous assurer la ligne 132 est effacé :
ponch#show users Line User Host(s) Idle Location 0 con 0 idle 05:26:42 130 vty 0 idle 1d03h 144.254.7.118 131 vty 1 idle 1d01h 144.254.7.118 *133 vty 3 idle 00:00:00 144.254.7.53 Interface User Mode Idle Peer Address
La ligne 132 est maintenant effacée.
Remarque : Émettez cette commande attentivement car elle peut déconnecter un utilisateur du périphérique sans avertissement !