Vous connaissez déjà la majorité de la réponse à votre propre question - vous devez configurer les commandes que l'utilisateur peut exécuter à un niveau de privilège spécifique. enable
sans argument de niveau de privilège par défaut au niveau de privilège 15, qui dispose des autorisations pour exécuter toutes les commandes. Les deux choses que vous devez faire sont:
Modifiez le mot de passe d'activation par défaut afin que l'utilisateur n'y ait plus accès et ne puisse donc pas accéder au niveau de privilège 15.
Définissez le niveau de privilège par défaut de l'utilisateur lors de la connexion au même niveau de privilège que celui auquel vous avez modifié les commandes souhaitées par l'utilisateur:
Router(config)#username joe privilege <x> password foobar
où X est le niveau de privilège pour votre jeu de commandes souhaité.
EDIT: je dois souligner que cela ne fournit pas réellement une véritable autorisation de commande basée sur l'utilisateur, il ne fournit qu'une autorisation basée sur le niveau de privilège , car les commandes elles-mêmes ne sont liées qu'à un seul niveau de privilège à la fois, il s'agit donc en fait d'un changement à l'échelle du routeur . Il est destiné à fonctionner de manière hiérarchique; chaque niveau de privilège peut exécuter les commandes à ce niveau ainsi qu'à tous les niveaux inférieurs. Si vous voulez une véritable autorisation basée sur l'utilisateur, vous avez besoin d'un serveur AAA quelconque (voir ma note ci-dessous).
Techniquement, vous pouvez également modifier le niveau de privilège de la enable
commande pour qu'il soit un supérieur au niveau de privilège de l'utilisateur afin qu'il n'ait même pas la possibilité de l'exécuter:
Router(config)#privilege exec level <x> enable
Cela suppose bien sûr que vous ne voulez pas que l'utilisateur puisse exécuter des commandes de configuration.
Une autre option consiste à s'assurer que lorsque l'utilisateur se connecte et tape, enable
il doit spécifier son niveau de privilège plutôt que pas de niveau de privilège, ce qui par défaut est 15.
Router>enable <x>
Évidemment, vous pouvez spécifier les mots de passe d'activation pour les 16 niveaux de privilège si vous le souhaitez.
Mon dernier point est que sans serveur AAA externe, tout cela est une énorme douleur dans le cul. Il existe une multitude d'implémentations TACACS + open source qui n'ont qu'un coût de configuration initiale, mais elles rendent les choses comme celles-ci quelque peu triviales, et elles sont centralisées, donc si vous avez plusieurs routeurs, vous n'avez pas à répéter la même commande privilège jumprope sur chaque appareil que vous gérez. C'est pourquoi les serveurs AAA existent en premier lieu, donc votre exigence de ne pas en utiliser un n'a pas beaucoup de sens.