Documento di prova

 
Updated 26 marzo 2026
PDF
Is this helpful? Feedback

    Introduzione

    Questo documento descrive come configurare un ruolo Nexus personalizzato per TACACS tramite CLI su NK9. 

    Prerequisiti

    Requisiti

    Cisco raccomanda la conoscenza dei seguenti argomenti:

    • TACACS+
    • ISE 3.2

    Componenti usati

    Le informazioni fornite in questo documento si basano sulle seguenti versioni software e hardware:

    • File di immagine Cisco Nexus9000, NXOS: bootflash:///nxos.9.3.5.bin
    • Identity Service Engine versione 3.2

    Le informazioni discusse in questo documento fanno riferimento a dispositivi usati in uno specifico ambiente di emulazione. Su tutti i dispositivi menzionati nel documento la configurazione è stata ripristinata ai valori predefiniti. Se la rete è operativa, valutare attentamente eventuali conseguenze derivanti dall'uso dei comandi.

    Premesse

    Requisiti per le licenze

    Cisco NX-OS - TACACS+ non richiede licenza. 

    Cisco Identity Service Engine

    Per le nuove installazioni ISE, si dispone di una licenza con un periodo di valutazione di 90 giorni che ha accesso a tutte le funzionalità ISE, se non si dispone di una licenza di valutazione, per utilizzare la funzione ISE TACACS è necessaria una licenza Device Admin per il Policy Server Node che esegue l'autenticazione.

    Dopo l'autenticazione dell'utente Admin/Help Desk sul dispositivo Nexus, ISE restituisce il ruolo della shell Nexus desiderato.

    L'utente assegnato con questo ruolo può eseguire la risoluzione dei problemi di base e riavviare alcune porte. 

    La sessione TACACS che ottiene il ruolo Nexus deve essere in grado di utilizzare ed eseguire solo i comandi e le azioni seguenti:

    • Accesso per configurare il terminale in modo che esegua SOLO le interfacce chiusa e non chiusa da 1/1-1/21 e 1/25-1/30
    • SSH
    • SSH6
    • telnet
    • Telnet 6
    • Traceroute
    • Traceroute6
    • Ping
    • Ping6
    • Abilita

    Configurazione

    Esempio di rete

    Flow Components DiagramDiagramma componenti flusso

    Passaggio 1: Configurazione di Nexus 9000

    1. Configurare AAA.

    warning-icon

    Avviso: Dopo aver abilitato l'autenticazione TACACS, il dispositivo Nexus cessa di utilizzare l'autenticazione locale e inizia a utilizzare l'autenticazione basata sul server AAA.

    Nexus9000(config)# feature tacacs+
    Nexus9000(config)# tacacs-server host <Your ISE IP> key 0 Nexus3xample
    Nexus9000(config)# tacacs-server key 0 "Nexus3xample"
    Nexus9000(config)# aaa group server tacacs+ IsePsnServers
    Nexus9000(config-tacacs+)# server <Your ISE IP>
    Nexus9000(config)# aaa authentication login default group IsePsnServers local

    2. Configurare il ruolo personalizzato con i requisiti specificati.

    Nexus9000(config)# role name helpdesk
    Nexus9000(config-role)#   description Can perform basic Toubleshooting and bounce certain  ports
    Nexus9000(config-role)# rule 1 permit read
    Nexus9000(config-role)# rule 2 permit command enable *
    Nexus9000(config-role)# rule 3 permit command ssh *
    Nexus9000(config-role)# rule 4 permit command ssh6 *
    Nexus9000(config-role)# rule 5 permit command ping *
    Nexus9000(config-role)# rule 6 permit command ping6 *
    Nexus9000(config-role)# rule 7 permit command telnet *
    Nexus9000(config-role)# rule 8 permit command traceroute *
    Nexus9000(config-role)# rule 9 permit command traceroute6 *
    Nexus9000(config-role)# rule 10 permit command telnet6 *
    Nexus9000(config-role)# rule 11 permit command config t ; interface * ; shutdown
    Nexus9000(config-role)# rule 12 permit command config t ; interface * ; no shutdown

    vlan policy deny
    interface policy deny

    Nexus9000(config-role-interface)#     permit interface Ethernet1/1
    Nexus9000(config-role-interface)#     permit interface Ethernet1/2
    Nexus9000(config-role-interface)#     permit interface Ethernet1/3
    Nexus9000(config-role-interface)#     permit interface Ethernet1/4
    Nexus9000(config-role-interface)#     permit interface Ethernet1/5
    Nexus9000(config-role-interface)#     permit interface Ethernet1/6
    Nexus9000(config-role-interface)#     permit interface Ethernet1/7
    Nexus9000(config-role-interface)#     permit interface Ethernet1/8
    Nexus9000(config-role-interface)#     permit interface Ethernet1/8
    Nexus9000(config-role-interface)#     permit interface Ethernet1/9
    Nexus9000(config-role-interface)#     permit interface Ethernet1/10
    Nexus9000(config-role-interface)#     permit interface Ethernet1/11
    Nexus9000(config-role-interface)#     permit interface Ethernet1/12
    Nexus9000(config-role-interface)#     permit interface Ethernet1/13
    Nexus9000(config-role-interface)#     permit interface Ethernet1/14
    Nexus9000(config-role-interface)#     permit interface Ethernet1/15
    Nexus9000(config-role-interface)#     permit interface Ethernet1/16
    Nexus9000(config-role-interface)#     permit interface Ethernet1/17
    Nexus9000(config-role-interface)#     permit interface Ethernet1/18
    Nexus9000(config-role-interface)#     permit interface Ethernet1/19
    Nexus9000(config-role-interface)#     permit interface Ethernet1/20
    Nexus9000(config-role-interface)#     permit interface Ethernet1/21
    Nexus9000(config-role-interface)#     permit interface Ethernet1/22
    Nexus9000(config-role-interface)#     permit interface Ethernet1/25
    Nexus9000(config-role-interface)#     permit interface Ethernet1/26
    Nexus9000(config-role-interface)#     permit interface Ethernet1/27
    Nexus9000(config-role-interface)#     permit interface Ethernet1/28
    Nexus9000(config-role-interface)#     permit interface Ethernet1/29
    Nexus9000(config-role-interface)#     permit interface Ethernet1/30

    Nexus9000# copy running-config startup-config
    [########################################] 100%
    Copy complete, now saving to disk (please wait)...

    Copy complete.

    Passaggio 2. Configurare Identity Service Engine 3.2

    1. Configurare l'identità utilizzata durante la sessione TACACS di Nexus.

    Viene utilizzata l'autenticazione ISE locale.

    Passare alla scheda Amministrazione > Gestione delle identità > Gruppi e creare il gruppo di cui l'utente deve far parte. Il gruppo di identità creato per questa dimostrazione è iseUsers.

    Creating a user groupCreazione di un gruppo di utenti

    Fare clic sul pulsante Invia.

    Passare quindi a Amministrazione > Gestione delle identità > scheda Identità.

    Fare clic sul pulsante Aggiungi.

    User creationCreazione utente

    Nei campi obbligatori, a partire dal nome dell'utente, nell'esempio viene utilizzato il nome utente iseiscool.

    Naming the User and Creating itDenominazione dell'utente e creazione

    Il passaggio successivo consiste nell'assegnare una password al nome utente creato. VainillaISE97 è la password utilizzata nella dimostrazione.

    Password assignementAssegnazione password

    Infine, assegnare l'utente al gruppo creato in precedenza, in questo caso iseUsers.

    Group assignationAssegnazione gruppo

    2. Configurare e aggiungere il dispositivo di rete.

    Aggiungere il dispositivo NEXUS 9000 ad ISE Administration > Network Resources > Network Devices

    Per iniziare, fare clic sul pulsante Add (Aggiungi).

    Network Access Device PagePagina Dispositivo di accesso alla rete

    Immettere i valori nel modulo, assegnare un nome al NAD che si sta creando e un indirizzo IP da cui il NAD contatta ISE per la conversazione TACACS.

    Configure Network DeviceConfigura dispositivo di rete

    Le opzioni dell'elenco a discesa possono essere lasciate in bianco e possono essere omesse. Tali opzioni consentono di classificare i NAD in base alla posizione, al tipo di dispositivo, alla versione e quindi di modificare il flusso di autenticazione in base a questi filtri.

    In Amministrazione > Risorse di rete > Dispositivi di rete > NAD > Impostazioni di autenticazione TACACS, aggiungere il segreto condiviso utilizzato nella configurazione NAD. In questa dimostrazione viene utilizzato Nexus3xample.

    TACACS configuration sectionSezione di configurazione TACACS

    Salvare le modifiche facendo clic sul pulsante Invia.

    3. Configurare TACACS su ISE.

    Verificare che nel PSN configurato in Nexus 9k sia abilitata l'opzione Device Admin

    note-icon

    Nota: L'abilitazione del servizio Device Admin NON determina il riavvio di ISE.

    PSN Device Admin feature checkControllo funzionalità PSN Device Admin

    È possibile selezionare nel menu ISE Amministrazione > Sistema > Distribuzione > PSN > Sezione Policy Server > Abilita servizi di amministrazione dispositivi.

    • Creare un profilo TACACS che restituisca l'helpdesk del ruolo al dispositivo Nexus se l'autenticazione ha esito positivo.

    Dal menu ISE, selezionare Workcenter > Device Administration > Policy Elements > Results > TACACS Profiles e fare clic sul pulsante Add.

    TACACS ProfileProfilo TACACS

    Assegnare un nome e, facoltativamente, una descrizione.

    Naming Tacacs profileDenominazione profilo TACACS

    Ignorare la sezione Visualizzazione attributi task e passare alla sezione Visualizzazione non elaborata.

    E immettere il valore shell:roles="helpdesk".

    Adding Profile AttributeAggiunta dell'attributo del profilo

    Configurare il set di criteri che include il criterio di autenticazione e il criterio di autorizzazione.

    Dal menu ISE accedere a Centri di lavoro > Amministrazione dispositivi > Set di criteri di amministrazione dispositivi.

    A scopo dimostrativo, viene utilizzato il set di criteri predefinito. È tuttavia possibile creare un altro set di criteri, con condizioni che corrispondono a scenari specifici.

    Fare clic sulla freccia alla fine della riga.

    Device Admin Policy Sets pagePagina Set di criteri di amministrazione del dispositivo

    All'interno della configurazione del set di criteri, scorrere verso il basso ed espandere la sezione Criteri di autenticazione.

    Fare clic sull'icona Aggiungi.

    Per questo esempio di configurazione, il valore Name è Internal Authentication e la condizione scelta è Network Device (Nexus) IP (sostituto di A.B.C.D.). I criteri di autenticazione utilizzano l'archivio identità degli utenti interni.

    Authentication PolicyCriterio di autenticazione

    Di seguito viene riportata la configurazione della condizione.

    Selezionare Accesso di rete > Attributo dizionario indirizzo IP dispositivo.

    Condition studio for authentication policyStudio condizioni per i criteri di autenticazione

    Sostituire il commento <Nexus IP address> con l'indirizzo IP corretto.

    Adding the IP filterAggiunta del filtro IP

    Fare clic sul pulsante Use (Usa).

    Questa condizione viene soddisfatta solo dal dispositivo Nexus configurato. Tuttavia, se lo scopo è quello di abilitare questa condizione per una grande quantità di dispositivi, prendere in considerazione una condizione diversa.

    Passare quindi alla sezione Criteri di autorizzazione ed espanderla.

    Fare clic sull'icona + (più).

    Authorization policy sectionSezione Criteri di autorizzazione

    In questo esempio è stato utilizzato NEXUS HELP DESK come nome del criterio di autorizzazione.

    Condition studio for Authorization PolicyStudio condizioni per i criteri di autorizzazione

    La stessa condizione configurata nei criteri di autenticazione viene utilizzata per i criteri di autorizzazione.

    Nella colonna Profili shell, il profilo configurato prima della selezione di Nexus Helpdesk.

    Infine, fare clic sul pulsante Salva.

    Verifica

    Fare riferimento a questa sezione per verificare che la configurazione funzioni correttamente.

    Dalla GUI di ISE, selezionare Operations > TACACS > Live Logs. Identificare il record che corrisponde al nome utente utilizzato e fare clic sul dettaglio Live Log dell'evento Authorization.

    TACACS Live LogLog TACACS Live

    Tra i dettagli inclusi in questo report, è disponibile la sezione Response, in cui è possibile verificare in che modo ISE ha restituito il valore shell:roles="helpdesk"

    Live Log Detail ResponseRisposta dettagli registro dinamico

    Sul dispositivo Nexus:

    Nexus9000 login: iseiscool
    Password: VainillaISE97

    Nexus9000# conf t
    Enter configuration commands, one per line. End with CNTL/Z.
    Nexus9000(config)# interface ethernet 1/23
    % Interface permission denied

    Nexus9000(config)# ?
      interface  Configure interfaces
      show       Show running system information
      end        Go to exec mode
      exit       Exit from command interpreter

    Nexus9000(config)# role name test
    % Permission denied for the role

    Nexus9000(config)#

    Nexus9000(config)# interface loopback 0
    % Interface permission denied

    Nexus9000(config)#
    Nexus9000# conf t

    Nexus9000(config)# interface ethernet 1/5
    Notice that only the commands allowed are listed.
    Nexus9000(config-if)# ?

      no        Negate a command or set its defaults
      show      Show running system information
      shutdown  Enable/disable an interface
      end       Go to exec mode
      exit      Exit from command interpreter

    Nexus9000(config-if)# cdp
    Nexus9000(config-if)# cdp enable
    % Permission denied for the role
    Nexus9000(config-if)#

    Risoluzione dei problemi

    • Verificare che l'ISE sia raggiungibile dal dispositivo Nexus:

    Nexus 9000# ping <Your ISE IP>
    PING <IP ISE> (<IP ISE> 😞 56 byte di dati
    64 byte da <Your ISE IP>: icmp_seq=0 ttl=59 tempo=1,22 ms
    64 byte da <Your ISE IP>: icmp_seq=1 ttl=59 time=0,739 ms
    64 byte da <Your ISE IP>: icmp_seq=2 ttl=59 time=0,686 ms
    64 byte da <Your ISE IP>: icmp_seq=3 ttl=59 time=0,71 ms
    64 byte da <Your ISE IP>: icmp_seq=4 ttl=59 time=0,72 ms

    • Verificare che la porta 49 sia aperta tra ISE e il dispositivo Nexus:
      Nexus 9000# telnet <Your ISE IP> 49
      Tentativo di esecuzione di <Your ISE IP> in corso...
      Connesso a <IP ISE> .
      Il carattere di escape è '^]'.
    • Utilizzare i seguenti debug:

    debug tacacs+ all
    Nexus 9000#
    Nexus9000# 2024 Apr 19 22:50:44.199329 TACACS: event_loop(): chiamata di process_rd_fd_set
    2024 apr 19 22:50:44.199355 tacacs: process_rd_fd_set: richiamata automatica per fd 6
    2024 apr 19 22:50:44.199392 tacacs: fsrv non ha utilizzato il codice operativo 8421
    2024 apr 19 22:50:44.199406 tacacs: process_implicit_cfs_session_start: immissione...
    2024 apr 19 22:50:44.199414 tacacs: process_implicit_cfs_session_start: uscita; lo stato è disattivato per la distribuzione
    2024 apr 19 22:50:44.199424 tacacs: process_aaa_tplus_request: immissione per id sessione aaa 0
    2024 apr 19 22:50:44.199438 tacacs: process_aaa_tplus_request:controllo dello stato della porta mgmt0 con servergroup IsePsnServers
    2024 apr 19 22:50:44.199451 tacacs: tacacs_global_config(420): immissione...
    2024 apr 19 22:50:44.199466 tacacs: tacacs_global_config(457): GET_REQ...
    2024 apr 19 22:50:44.208027 tacacs: tacacs_global_config(4701): è stato restituito il valore restituito dall'operazione di configurazione del protocollo globale:SUCCESS
    2024 apr 19 22:50:44.208045 tacacs: tacacs_global_config(4716): REQ:num server 0
    2024 apr 19 22:50:44.208054 tacacs: tacacs_global_config: CODA:num gruppo 1
    2024 apr 19 22:50:44.208062 tacacs: tacacs_global_config: REQ:num timeout 5
    2024 apr 19 22:50:44.208070 tacacs: tacacs_global_config: REQ:num tempo di inattività 0
    2024 apr 19 22:50:44.208078 tacacs: tacacs_global_config: REQ:num tipo_crittografia 7
    2024 apr 19 22:50:44.208086 tacacs: tacacs_global_config: restituzione valore 0
    2024 apr 19 22:50:44.208098 tacacs: process_aaa_tplus_request:group_info è popolato in aaa_req, quindi Using servergroup IsePsnServers
    2024 apr 19 22:50:44.208108 tacacs: tacacs_servergroup_config: immissione per il gruppo di server, indice 0
    2024 apr 19 22:50:44.208117 tacacs: tacacs_servergroup_config: GETNEXT_REQ per il gruppo di server di protocollo index:0 nome:
    2024 apr 19 22:50:44.208148 tacacs: tacacs_pss2_move2key: rcode = 40480003 syserr2str = nessuna chiave pss
    2024 apr 19 22:50:44.208160 tacacs: tacacs_pss2_move2key: chiamata di pss2_getkey
    2024 apr 19 22:50:44.208171 tacacs: tacacs_servergroup_config: GETNEXT_REQ ha ottenuto il gruppo di server di protocollo index:2 name:IsePsnServers
    2024 apr 19 22:50:44.208184 tacacs: tacacs_servergroup_config: è stato restituito il valore restituito dall'operazione del gruppo di protocolli:SUCCESS
    2024 apr 19 22:50:44.208194 tacacs: tacacs_servergroup_config: restituzione valore 0 per il gruppo di server di protocollo:IsePsnServers
    2024 apr 19 22:50:44.208210 tacacs: process_aaa_tplus_request: Trovato gruppo IsePsnServers. il valore vrf corrispondente è predefinito, source-intf è 0
    2024 apr 19 22:50:44.208224 tacacs: process_aaa_tplus_request: verifica di mgmt0 vrf:management rispetto a vrf:default del gruppo richiesto
    2024 apr 19 22:50:44.208256 tacacs: process_aaa_tplus_request:mgmt_if 83886080
    2024 apr 19 22:50:44.208272 tacacs: process_aaa_tplus_request:global_src_intf: 0, src_intf locale è 0 e vrf_name è il valore predefinito
    2024 apr 19 22:50:44.208286 tacacs: create_tplus_req_state_machine(902): immissione per id sessione aaa 0
    2024 apr 19 22:50:44.208295 tacacs: conteggio macchina a stati 0
    2024 apr 19 22:50:44.208307 tacacs: init_tplus_req_state_machine: immissione per id sessione aaa 0
    2024 apr 19 22:50:44.208317 tacacs: init_tplus_req_state_machine(1298):tplus_ctx è NULL dovrebbe essere impostato su author e test
    2024 apr 19 22:50:44.208327 tacacs: tacacs_servergroup_config: immissione per il gruppo di server IsePsnServers, indice 0
    2024 apr 19 22:50:44.208339 tacacs: tacacs_servergroup_config: GET_REQ per il gruppo di server di protocollo indice:0 nome:IsePsnServers
    2024 apr 19 22:50:44.208357 tacacs: find_tacacs_servergroup immissione per il gruppo di server IsePsnServers
    2024 apr 19 22:50:44.208372 tacacs: tacacs_pss2_move2key: rcode = 0 syserr2str = OPERAZIONE RIUSCITA
    2024 apr 19 22:50:44.208382 tacacs: find_tacacs_servergroup chiusura per il gruppo di server indice IsePsnServers: 2
    2024 apr 19 22:50:44.208401 tacacs: tacacs_servergroup_config: GET_REQ: find_tacacs_servergroup errore 0 per il gruppo di server di protocollo IsePsnServers
    2024 apr 19 22:50:44.208420 tacacs: tacacs_pss2_move2key: rcode = 0 syserr2str = OPERAZIONE RIUSCITA
    2024 apr 19 22:50:44.208433 tacacs: tacacs_servergroup_config: GET_REQ ha ottenuto il gruppo di server di protocollo index:2 name:IsePsnServers
    2024 A2024 Apr 19 22:52024 Apr 19 22:52024 Apr 19 22:5
    Nexus 9000#

    • Eseguire un'acquisizione pacchetto. (Per visualizzare i dettagli del pacchetto, è necessario modificare Wireshark TACACS+ Preferences e aggiornare la chiave condivisa utilizzata da Nexus e ISE.)

    TACACS Authorization PacketPacchetto di autorizzazione TACACS

    • Verificare che la chiave condivisa sia la stessa sul lato ISE e Nexus. Questa condizione può essere verificata anche in Wireshark.

    Authentication PacketPacchetto di autenticazione