IOS: « enable password » vs « enable secret »

Petite piqûre de rappel, cela ne fait jamais de tort 😉 … Au cours des formations dont je m’occupe, je m’aperçois souvent que l’utilité et l’existence de ces deux commandes reste assez floues malgré leur apparente simplicité. Voici donc en quelques lignes ce dont il s’agit…

Tout d’abord, rappelons que ces eux commandes, à savoir « enable password » et « enable secret », ont toute deux la même fonction: définir le mot de passe pour accéder au mode privilégié du CLI.

R1>enable
Password:
R1#

La question qui en découle est donc la suivante: « Pourquoi deux commandes pour faire la même chose ? ». La réponse est simple et réside dans la manière ou l’IOS encode le mot de passe dans la config de l’équipement.

Avec « enable password » le mot de passe défini est encodé en clair dans la config.

R1(config)#enable password cisco
R1#show running-config
Building configuration...
Current configuration : 470 bytes
!
version 12.4
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname R1
!
!
!
enable password cisco
!
!

Tandis qu’avec la commande « enable secret » le mot de passe est stocké sous forme de hashage MD5, ce qui rend cette version beaucoup plus sécurisée…

R1(config)#enable secret cisco
R1#sh running-config
Building configuration...
Current configuration : 517 bytes
!
version 12.4
no service timestamps log datetime msec
no service timestamps debug datetime msec
no service password-encryption
!
hostname R1
!
!
!
enable secret 5 $1$mERr$hx5rVt7rPNoS4wqbXKX7m0
!

Notez que dans la config le chiffre « 5 » précède la version « cryptée » du mot de passe. Le but ici est de permettre de copier la commande telle qu’elle apparaît dans la config sur un autre équipement. Ainsi l’autre équipement saura que le mot passe donné dans la commande est en fait une version cryptée et qu’il ne doit pas la repasser par le hashage MD5.

Reste maintenant à savoir pourquoi ces deux commandes existent … He bien rien de plus banal, c’est tout simplement pour assurer une rétro-compatibilité des config. De sorte que si vous copiez la config d’un équipement qui ne supporte pas la version « enable secret » vers un nouvel équipement, ce dernier puisse quand même accepter l’ancienne version.

 

 

4 Comments on “IOS: « enable password » vs « enable secret »

  1. Bonjour je suis débutante sur Packet tracer et aprés cette instruction :
    Switch# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Switch(config)#line console 0
    Switch(config-line)#password letmein
    Switch(config-line)#login
    Switch(config-line)#exit
    Switch(config)#exit
    Switch#
    %SYS-5-CONFIG_I: Configured from console by console
    exit

    Switch con0 is now available

    Press RETURN to get started.

    aprés avoir cliquer sur entrée :
    password :
    mon clavier est bloqué j’arrive plus à taper à rien que entrée quoi faire !!!!

    • Quand un mot de passe est configuré pour accéder à la console, il est normal de ne plus rien voir apparaître d’autre que l’invite pour entrer un mot de passe, tant qu’on a pas donné le bon.
      Dans le cas présent il suffit donc de taper « letmein » quand « password: » s’affiche.

  2. Merci pour cet article qui met au clair ces 2 commandes.

    Une remarque de production et d’audit: Il est fortement conseillé de ne pas utiliser ces 2 commandes en même temps car si vous définissez le même mot de passe pour la commande « enable password » et « enable secret », ça n’a plus d’intérêt de conserver le mot de passe haché en MD5 si on le retrouve en clair dans la même configuration.

    Autre remarque; lorsque les 2 commandes sont activées sur le même équipement, c’est la commande « enable secret » qui est utilisée. La commande « enable password » ne sera plus prit en compte, elle devient donc inutile (excepté pour la retro-compatibilité dont Steve parle).

  3. Merci, les piqûres de rappel ne font jamais de mal.

    Steve je souhaiterais te faire part d’une commande peu connue mais très utile sur les switch.
    Comment te contacter ?