Introduction
La série d’articles “Essentiels Cisco” vise à répertorier toutes les commandes et configurations les plus communément rencontrées lorsque l’on travaille sur un appareil Cisco. L’objectif est de construire un pense-bête complet que l’on puisse consulter dès que l’on a une question ou un oubli au sujet d’une commande.
Plus précisément, cette série se concentre pour l’instant uniquement sur la configuration de routeurs et commutateurs (même si ces appareils partagent de nombreux points communs avec d’autres périphériques).
Feuille de route
Voici la planification des articles :
- Essentiels Cisco 1 - Généralités : Définition du vocabulaire, commandes de bases
- Essentiels Cisco 2 - Commutateur : Adressage IP et VLSM, VLAN
- Essentiels Cisco 3 - Routeur I : Commandes utilitaires, inter-VLAN, RIP et OSPF
- Essentiels Cisco 4 - Routeur II : Frame-Relay et VRF
- Essentiels Cisco 5 - Routeur III : NAT, PAT, ACL et DHCP
- Essentiels Cisco 6 - Sécurisation : Se prémunir des attaques les plus communes
Cette feuille de route peut évidemment être sujette à des modifications au fil du temps.
Généralités
Syntaxe
Les commandes représentées dans cet article requirent pour la plupart des paramètres. Certains sont obligatoires et d’autres sont optionnels. Ils seront représentés comme indiqués ci-après :
[paramètre]
: Les paramètres obligatoires sont indiqués entre crochets.(paramètre)
: Les paramètres optionnels sont indiqués entre parenthèses.1-100
: Les plages de nombres sont représentées selon le schémadébut-fin
.{a,b,c}
: Lorsque plusieurs options sont définies pour un paramètre, elles sont représentées entre accolades.
Modes de configuration
La configuration d’un appareil Cisco se fait par le biais de plusieurs modes de configurations, qui ont des portées et
des besoins de privilèges différents. Entrer dans un des modes de configuration ajoutera un suffixe au nom de l’appareil
dans l’invité de commande afin d’indiquer le mode courant (par exemple : Router(config)#
pour le mode global).
Les modes les plus courants sont les suivants :
- Mode d’exécution utilisateur (EXEC)
>
: Peu de commandes disponibles, ne permettant qu’un accès minime à l’appareil. - Mode d’exécution privilégiée (Privileged EXEC)
#
: Des commandes génériques sont disponibles. - Configuration globale
(config)#
: Les modifications effectuées depuis ce mode affectent le fonctionnement de l’appareil. Il est nécessaire de passer par ce mode pour accéder à certaines fonctionnalités (par exemple : configuration d’interfaces).- Configuration d’interfaces
(config-if)#
: Permet de modifier les configurations des interfaces physiques de l’appareil - Configuration des lignes virtuelles
(config-line)#
: Permet de modifier les configurations des accès au périphérique : SSH, ligne console, Telnet…
- Configuration d’interfaces
Liste des raccourcis utilisés dans cet article
Raccourci | Terme Initial |
---|---|
int | interface |
add | address |
run | running-config |
start | starting-config |
Fa | FastEthernet |
Gi | GigabitEthernet |
Se | Serial |
en | enable |
cons | console |
conf | configure |
t | terminal |
Configuration Globale
Astuces générales
Dans le mode de configuration globale (conf t
), les commandes doivent être précédées par le mot do
:
switch#copy running-config starting-config
switch(config)#do copy running-config starting-config
Pour supprimer une ligne de configuration, il faut la taper précédée de no
.
Voici un exemple pour supprimer l’adresse IP attribuée à une interface :
switch(config-if)#no ip address 192.168.0.1 255.255.255.0
Note : Dans certains cas, il est possible de supprimer la configuration sans réécrire complètement la commande initiale.
Les raccourcis suivants permettent de quitter le mode de configuration courant, mais ils ne mènent pas tous au même mode :
Ctrl + Z
: Retour au mode d’exécution privilégiée (#
)Ctrl + C
: Retour au mode d’exécution privilégiée (#
)end
: Retour au mode d’exécution privilégiée (#
)exit
: Retour un rang plus haut dans la hiérarchie (par exemple :(config)#exit
renvoie à#
)
Note : Ces raccourcis ne sont pas tous disponibles dans chaque mode de configuration (par exemple : impossible d’utiliser
Ctrl + Z
dans le mode d’exécution privilégiée).
Voici un scénario possible pour entrer puis quitter le mode de configuration globale :
Switch#conf t
Switch(config)#end
Switch#
Les adresses IP attribuées à des VLAN ne doivent pas être des adresses réseaux. Par exemple, l’adresse 192.168.0.0/24
n’est pas valide pour un VLAN. Il en est de même pour une adresse de diffusion :
Switch(config)#int vlan 10
Switch(config-if)#ip add 192.168.0.0 255.255.255.0
Bad mask /24 for address 192.168.0.0
Mot de passe Console, Telnet, SSH…
Le mot de passe console peut être défini avec l’instruction password [password]
in the console line 0:
Switch(config)#line console 0
Switch(config-line)#password my_password
Switch(config-line)#login
La série de commandes précédente définie un mot de passe (“my_password”) et force l’identification avec l’instruction
login
.
Pour une identification avec un couple Nom d’utilisateur/ Mot de passe, il est nécessaire de créer un utilisateur puis
d’utiliser l’instruction login local
pour forcer l’utilisation d’un compte de l’appareil :
Switch(config)#username alice password bob
Switch(config)#line console 0
Switch(config-line)#login local
Remarque : Cette commande (
password
) n’est accessible que depuis le mode de configuration globale.
Remarque : L’utilisation de l’instruction
password
n’est pas recommandée pour des raisons de sécurité. Les mots de passe configurés avec cette commande sont visibles en clair dans la configuration.
Remarque : Créer un utilisateur pour l’identification sur une ligne SSH, Telnet ou AUX se fait de la même façon.
Mot de passe enable
Le mot de passe du mode d’exécution privilégié (aussi appelé enable
) peut être défini de la sorte :
Switch(config)#enable password [password]
Cette commande, bien que pratique, n’est pas sécurisée, car le mot de passe choisi est affiché en clair dans la configuration.
Il est préférable d’utiliser enable secret [password]
qui permet de configurer un mot de passe qui est stocké sous la
forme d’un hash MD5
:
Switch(config)#enable secret [password]
Cet article détaille le fonctionnement du chiffrement de mot de passe sous Cisco IOS.
Nom d’appareil
Par défaut, un appareil est nommé d’après nom commun : Switch
pour un commutateur, Router
pour un routeur… Il est
cependant possible de choisir un nom personnalisé avec la commande hostname [nom]
comme montré ci-après :
Router(config)#hostname RouterMain
RouterMain(config)#
Il est important de noter qu’il n’est pas possible d’utiliser tous les caractères pour un nom. Il faut en effet suivre les conventions de nommage suivantes :
- Les majuscules et minuscules sont autorisées
- Le tiret
-
est autorisé - Les chiffres sont autorisés
- Tous les autres caractères sont interdits (dont l’espace et le trait d’union
_
)
Remarque : Cette commande n’est accessible que depuis le mode de configuration globale.
Bannière
Une bannière est un message qui s’affiche lors de la connexion de l’utilisateur à l’invité de commande. Une bannière peut être affichée sous différentes conditions :
motd
: Message affiché lors de l’accès à l’appareil
Une bannière est configurée avec la commande banner motd [message]
.
Switch(config)#banner motd $Accès restreint au personnel uniquement$
Remarque : Le message doit être indiqué entre deux
$
. Il est possible de créer un message de plusieurs lignes en précisant le premier$
uniquement, puis en n’indiquant le second qu’après quelques lignes :Switch(config)#banner motd $ Enter TEXT message. End with the character '$'. --- Avertissement --- Acces restreint a ce materiel --- Avertissement ---$
Remarque : Cette commande n’est accessible que depuis le mode de configuration globale.
Les bannières ne supportent pas tous les caractères, il est possible d’utiliser :
- Alphabet, sans accent
- Guillemets, simple et double
- Chiffres
Il est important de configurer une bannière pour des raisons légales. Si aucun message n’avertit l’utilisateur qu’il se trouve sur un matériel auquel l’accès est restreint, il ne risque rien légalement en s’y introduisant.
Désactiver la recherche DNS
Lorsqu’une entrée utilisateur n’est pas reconnue comme une commande par l’appareil, le comportement par défaut est d’effectuer une recherche DNS afin de déterminer si le mot entré par l’utilisateur est associé à une adresse IP. Cette fonctionnalité est souvent désactivée, car elle bloque l’utilisateur pour le temps de la résolution et est souvent déclenchée uniquement par une inattention de l’utilisateur.
Ici, on peut constater une erreur. L’utilisateur a voulu sortir du mode d’exécution privilégiée avec le raccourci end
.
Or ce dernier n’est pas disponible dans ce mode, le périphérique procède donc à une tentative de résolution qui va durer
plusieurs minutes sans aboutir et sans possibilité d’interruption :
Switch#end
Translating "end"...domain server (255.255.255.255)
% Unknown command or computer name, or unable to find computer address
Pour désactiver cette fonction, la commande est la suivante : no ip domain-lookup
.
Switch(config)#no ip domain-lookup
Remarque : Cette commande n’est accessible que depuis le mode de configuration globale.
Remarque : Selon l’appareil, la commande sans tiret (
no ip domain lookup
) peut fonctionner également.
Configurer un nom de domaine
Il est possible de définir un nom de domaine pour l’appareil à l’aide de la commande ip domain-name [domaine]
.
Ce dernier est utilisé par exemple lors de la configuration d’un accès SSH
.
Switch(config)#ip domain-name gabhas.fr
Remarque : Cette commande n’est accessible que depuis le mode de configuration globale.
Remarque : Selon l’appareil, la commande sans tiret (
ip domain name
) peut fonctionner également.
Configurer la vitesse des ports série
Dans certains contextes, comme celui d’un réseau reposant sur le Frame-Relay, il est important que toutes les
communications en séries s’effectuent à la même vitesse.
Il est possible de configurer la vitesse de transmission d’une interface série avec la commande clock rate [speed]
:
Router(config-if)#clock rate 9600
Remarque : Cette commande n’est accessible que depuis le mode de configuration d’une interface série.
Remarque : La vitesse choisie doit appartenir à la liste suivante :
Router(config-if)#clock rate ? Speed (bits per second) 1200 2400 4800 9600 19200 38400 56000 64000 72000 125000 128000 148000 250000 500000 800000 1000000 1300000 2000000 4000000 <300-4000000> Choose clockrate from list above
Configurer l’horloge
L’horloge interne d’un appareil est configurable avec la commande clock set [hh:mm:ss] [month] [day] [year]
:
Router#clock set 18:30:00 Dece 25 2024
Les informations fournies doivent correspondent aux critères suivants :
- L’heure est indiquée sur 24 heures
- Le mois doit être indiqué par ses 4 premiers caractères (de la traduction anglaise du mois)
Remarque : Cette commande n’est accessible que depuis le mode d’exécution privilégiée.
Il est également possible de configurer le fuseau horaire du périphérique avec la commande clock timezone [name] [offset]
.
La commande prend en entrée les paramètres suivants :
name
: Le nom du fuseau à ajouter. Il est limité à 7 caractèresoffset
: Le décalage par rapport au fuseau UTC (de -23 à 23)
Router(config)#clock timezone NewYork -5
Remarque : Cette commande n’est accessible que depuis le mode de configuration globale.
Configurer une connexion SSH
La configuration d’un accès SSH à un appareil se fait en plusieurs étapes que j’ai eues l’occasion de décrire dans cet article : Configurer une connexion SSH sur un appareil Cisco .
Activer ou désactiver une interface
Principalement pour des raisons de sécurité, il est possible de désactiver une interface physique d’un périphérique si elle n’est pas destinée à être utilisée. L’idée est de prévenir la connexion d’hôtes malveillants au réseau.
Une interface peut être désactivée avec la commande shutdown
(souvent raccourcie en sh
):
Switch(config)#int FastEthernet0/1
Switch(config-if)#shutdown
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to administratively down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to down
Pour activer une interface :
Switch(config-if)#int FastEthernet0/1
Switch(config-if)#no sh
%LINK-5-CHANGED: Interface FastEthernet0/1, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/1, changed state to up
Remarque : Cette commande n’est accessible que depuis le mode de configuration d’une interface série.
L’état des interfaces de l’appareil est visible à l’aide de la commande show ip interface brief
:
Switch(config)#do sh ip int br
Interface IP-Address OK? Method Status Protocol
FastEthernet0/1 unassigned YES manual down down
FastEthernet0/2 unassigned YES manual down down
FastEthernet0/3 unassigned YES manual down down
...
FastEthernet0/10 unassigned YES manual down down
Gestion des configurations
Un appareil Cisco fonctionne avec 2 fichiers pour stocker ses configurations :
- Configuration d’exécution (“running config”) : La configuration en cours d’exécution sur le périphérique (fichier
running-config
) - Configuration de démarrage (“startup config”) : La configuration chargée au démarrage du périphérique (fichier
startup-config
)
La configuration de démarrage est stockée dans la mémoire RAM non-volatile (NVRAM), et est persistante d’un redémarrage à l’autre. La configuration en cours quant à elle, est conservée dans la mémoire vive (RAM) et est, par conséquent, perdue lors de la mise hors tension du périphérique.
Il est donc important de sauvegarder les modifications de configuration effectuées dans la configuration de démarrage.
Cela s’effectue avec la commande copy [source] [destination]
:
Switch#copy running-config startup-config
Remarque : Cette commande est accessible depuis le mode d’exécution privilégiée ainsi que le mode de configuration globale.
- Remarque : Il est possible d’utiliser des raccourcis pour les noms des fichiers de configuration, par exemple
copy run start
De la même manière, il est possible de restaurer la configuration de démarrage avec :
Switch#copy startup-config running-config
Remarque : Au démarrage de l’appareil, la configuration de démarrage est copiée dans la configuration d’exécution. C’est l’équivalent de
copy startup-config running-config
Mode “ROMmon” pour se sauver la mise
Imaginons un cas désastreux, vous avez forcé l’identification pour pouvoir accéder à l’appareil, mais n’avez pas créé d’identifiants au préalable. Vous avez sauvegardé cette configuration et vous êtes déconnecté du périphérique. Vous êtes dorénavant bloqué et ne pouvez plus utiliser votre matériel.
Ce genre de situation n’est pas sans espoir, en effet, il existe le mode “ROMmon” pour accéder à un niveau de configuration antérieur au logiciel Cisco initial. Ce mode permet notamment de démarrer en choisissant une nouvelle image OS spécifique afin de redémarrer avec un appareil à l’état d’usine.
Accéder au mode ROMmon
Afin d’accéder au mode ROMmon, il est nécessaire d’interrompre la séquence de démarrage du périphérique avec Ctrl + C
.
program load complete, entry point: 0x81000000, size: 0x2bb1c58
Self decompressing the image :
######
monitor: command "boot" aborted due to user interrupt
rommon 1 >
Une fois en mode ROMmon, la commande dir flash:
permet de lister les images disponibles :
rommon 1 > dir flash:
File size Checksum File name
33591768 bytes (0x20091d8) 0x93d8 c1900-universalk9-mz.SPA.151-4.M4.bin
28282 bytes (0x6e7a) 0x6e7a sigdef-category.xml
227537 bytes (0x378d1) 0x78d4 sigdef-default.xml
Une séquence de démarrage logicielle (boot) peut être initialisée avec boot [image]
:
rommon 1 > boot c1900-universalk9-mz.SPA.151-4.M4.bin
System Bootstrap, Version 15.1(4)M4, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 2010 by cisco Systems, Inc.
...
Self decompressing the image :
########################################################################## [OK]
...
--- System Configuration Dialog ---
Would you like to enter the initial configuration dialog? [yes/no]:
D’autres fonctionnalités sont accessibles en ROMmon, telles que décrites dans cet article de Cisco .
Conclusion
Ainsi s’achève ce premier article sur les commandes de bases des appareils Cisco. Vous pouvez approfondir ces notions à l’aide des ressources suivantes :
- Documentation officiel de Cisco IOS (ressource en anglais)
- CCNA 1 - Présentation des réseaux (la traduction laisse parfois à désirer, ne pas hésiter à basculer sur la version originale en anglais)