Table des matières

Introduction

Conditions préalables

Exigences

Composants utilisés

Informations générales

Problème de configuration

Solution de configuration et vérification

Conclusion

Informations connexes

Introduction

Ce document décrit le processus de configuration pour afficher la configuration en cours complète pour les utilisateurs avec des niveaux de privilège faibles.

Conditions préalables

Exigences

Une compréhension de base des niveaux de privilège Cisco est nécessaire pour comprendre ce document, les informations de base suffisent pour expliquer la compréhension des niveaux de privilège requis.

Composants utilisés

Les composants utilisés pour les exemples de configuration dans ce document étaient un ASR1006, mais tout périphérique Cisco IOS® ou Cisco IOS XE fonctionne de la même manière.

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. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.

Informations générales

Ce document décrit les étapes de configuration sur la façon d'afficher la configuration en cours complète pour les utilisateurs connectés au routeur avec des niveaux de privilège faibles. Pour comprendre le problème suivant et la solution de contournement, il est nécessaire de comprendre les niveaux de privilège.  Les niveaux de privilège disponibles sont compris entre 0 et 15 et permettent à l'administrateur de personnaliser les commandes disponibles pour chaque niveau de privilège. Par défaut, les trois niveaux de privilège d’un routeur sont les suivants :

- Niveau 0 - Inclut uniquement les commandes de base (désactiver, activer, quitter, aider et se déconnecter)

- Niveau 1 - Inclut toutes les commandes disponibles en mode d’exécution utilisateur

- Niveau 15 - Inclut toutes les commandes disponibles en mode privilégié

Les niveaux restants entre ces niveaux minimum et maximum ne sont pas définis tant que l'administrateur ne leur a pas attribué de commandes et/ou d'utilisateurs. Par conséquent, l'administrateur peut attribuer aux utilisateurs différents niveaux de privilèges entre ces niveaux minimum et maximum pour séparer les différents utilisateurs auxquels ils ont accès. L'administrateur peut ensuite attribuer des commandes individuelles (et diverses autres options) à un niveau de privilège individuel pour le rendre disponible à tout utilisateur à ce niveau. Exemple :

Router(config)# username user1 privilege 7 password P@ssw0rD1

Router(config)# privilege exec level 7 show access-lists

Avec cette configuration, lorsque l’utilisateur 1 se connecte au routeur, il peut exécuter le show access-lists  et/ou tout autre élément activé à ce niveau de privilège. Cependant, il n'en va pas de même pour la show running-config  , comme nous le verrons plus loin dans l'énoncé du problème.

Problème de configuration

Lors de la configuration de différents niveaux d’accès au routeur pour différents utilisateurs, il est courant qu’un administrateur réseau tente d’attribuer à certains utilisateurs l’accès à show  et ne permettent d'accéder à aucune commande configuration  de l'assistant. C'est une tâche simple pour la plupart show  , car vous pouvez accorder l'accès par le biais d'une configuration simple, comme indiqué ci-dessous :

Router(config)# username test_user privilege 10 password testP@ssw0rD

Router(config)# privilege exec level 10 show

Router(config)# privilege exec level 10 show running-config

Avec cet exemple de configuration, la deuxième ligne peut autoriser le test_user  pour avoir accès à une pléthore de commandes show associées, qui ne sont normalement pas disponibles à ce niveau de privilège. Cependant, la show running-config  est traitée différemment de la plupart des commandes show. Même avec la troisième ligne de l'exemple de code, seul un show running-config  s'affiche pour l'utilisateur malgré que la commande ait été spécifiée au niveau de privilège correct.

User Access Verification

Username: test_user

Password:

Router#

Router#show privilege

Current privilege level is 10

Router#

Router#show running-config

Building configuration...

Current configuration : 121 bytes

!

! Last configuration change at 21:10:08 UTC Mon Aug 28 2017

!

boot-start-marker

boot-end-marker

!

!

!

end

Router#

Comme vous pouvez le constater, cette sortie n'affiche aucune configuration et ne serait pas utile à un utilisateur qui tente de collecter des informations sur la configuration du routeur. C'est parce que le show running-config  affiche toutes les commandes que l'utilisateur peut modifier à son niveau de privilège actuel. Cette configuration est conçue comme une configuration de sécurité pour empêcher l'utilisateur d'avoir accès à des commandes qui ont été configurées précédemment à partir de leur niveau de privilège actuel. Il s'agit d'un problème lors de la création d'un utilisateur ayant accès aux commandes show, car show running-config  est une commande standard que les ingénieurs doivent collecter pour la première fois lors du dépannage.

Solution de configuration et vérification

Pour résoudre ce dilemme, il existe une autre version de la show run  qui contourne cette limitation de la commande.

Router(config)# show running-config view full

Router(config)# privilege exec level 10 show running-config view full

L'ajout de view full  à la commande, (et à son tour le niveau de privilège de la commande pour permettre à l'utilisateur d'accéder à la commande), permet maintenant à l'utilisateur d'afficher le show running-config  sans aucune commande omise.

Username: test_user

Password:

Router#

Router#show privilege

Current privilege level is 10

Router#

Router#show running-config view full

Building configuration...

Current configuration : 2664 bytes

!

! Last configuration change at 21:25:45 UTC Mon Aug 28 2017

!

version 15.4

service timestamps debug datetime msec

service timestamps log datetime msec

no platform punt-keepalive disable-kernel-core

!

hostname Router

!

boot-start-marker

boot system flash bootflash:packages.conf

boot system flash bootflash:asr1000rp1-adventerprisek9.03.13.06a.S.154-3.S6a-ext.bin

boot-end-marker

!

vrf definition Mgmt-intf

!

address-family ipv4

exit-address-family

!

address-family ipv6

exit-address-family

!

enable password <omitted>

!

no aaa new-model

!

no ip domain lookup

!

subscriber templating

!

multilink bundle-name authenticated

!

spanning-tree extend system-id

!

username test_user privilege 10 password 0 testP@ssw0rD

!

redundancy

mode sso

!

cdp run

!

interface GigabitEthernet0/2/0

no ip address

shutdown

negotiation auto

!

interface GigabitEthernet0/2/1

no ip address

shutdown

negotiation auto

!

interface GigabitEthernet0

vrf forwarding Mgmt-intf

ip address <omitted>

negotiation auto

cdp enable

!

ip forward-protocol nd

!

control-plane

!

!

privilege exec level 10 show running-config view full

alias exec show-running-config show running-config view full

!

line con 0

stopbits 1

line aux 0

exec-timeout 0 1

no exec

transport output none

stopbits 1

line vty 0 4

login local

!

end

Router#

Cependant, cela soulève la question suivante : en fournissant à l'utilisateur l'accès à cette version de la commande, cela ne soulève-t-il pas le risque de sécurité initial qui tentait d'être résolu en concevant une version omise ?

Pour contourner la solution et garantir la cohérence d'une conception réseau sécurisée, vous pouvez créer un alias pour l'utilisateur qui exécute la version complète de show running-config  sans fournir d'accès/de connaissances à l'utilisateur, comme illustré ci-dessous :

Router(config)# alias exec show-running-config show running-config view full

Dans cet exemple, le show running-config est le nom d'alias. Lorsque l'utilisateur est connecté au routeur, il peut entrer ce nom d'alias à la place de la commande et recevoir le résultat attendu sans connaître la commande en cours d'exécution.

Remarque : à partir de la version 16.X, selon la plate-forme, il est également nécessaire d'ajouter des autorisations aux fichiers à l'aide de la commande (config)#file privilege <level>.

Conclusion

En conclusion, ce n'est qu'un exemple de la façon d'avoir plus de contrôle lors de la création administrative d'un accès avec privilège utilisateur à différents niveaux. Il existe une multitude d'options pour créer différents niveaux de privilèges et accéder à différentes commandes, et c'est un exemple de la façon de s'assurer qu'un utilisateur show only a toujours accès à la configuration en cours complète lorsqu'il n'a pas accès aux commandes de configuration.

Informations connexes

- Assistance technique de Cisco et téléchargements