Aide mémoire des commandes Cisco
Dans ce mémo plutôt ambitieux, j’ai choisi de noter au fur et à mesure de mon apprentissage toutes les commandes que j’utilise afin de me les remémorer. Pour le moment seule la configuration de base est présentée dans ce mémo, mais je compte rajouter au fur et à mesure de mes expérimentations et recherches des éléments de configuration plus avancés et complexes.
Attention, ce mémo est en cours de rédaction. Certaines choses peuvent être erronnées, ne pas être de bonnes pratiques, ou incomplètes ! Je documente ce mémo au fur et à mesure de mon travail de recherche et le corrigerai si besoin lorsque j’aurais une petite journée devant moi.
Si vous souhaitez vous baser sur mon travail pour configurer du matériel Cisco, gardez en mémoire qu’il ne s’agit pas d’un tutoriel ou d’un guide des bonnes pratiques mais seulement d’un aide mémoire ou d’une cheat sheet. Ainsi des erreurs peuvent s’y glisser.
La version actuelle de mon mémo a été mis à jour le 08/09/2023.
1. Commandes de base
- Passer en mode privilège
enable
- Depuis le mode privilège, passer en mode configuration globale
configure terminal
- Afficher la configuration actuellement chargée (en mode privilèges)
show running-config
- Afficher la configuration qui sera chargée au démarrage (en mode privilèges)
show startup-config
- Enregistrer la configuration actuelle (en mode privilèges)
copy running-config startup-config
- Factory reset (en mode privilèges) :
write erase !Effacer la configuration
delete flash:vlan.dat !Effacer les vlan (sur un commutateur)
reload !Redémarrer
Confirmer les actions et refuser de sauvegarder la configuration s’il le demande.
2. Routeurs ou Commutateurs de couche 3
2.1. Configurer une interface
2.1.1. IPv4
- Passer en mode configuration globale
enable
configure terminal
- Passer en mode configuration d’interface
interface <interface-type> <interface-id>
Exemple pour l’interface GigabitEthernet 0/0/0 : interface GigabitEthernet 0/0/0
interface range <interface-type> <interface-id-range>
Exemple pour l’interface GigabitEthernet 0/0/0 à 0/0/3 : interface range GigabitEthernet 0/0/0 - 3
- Attribuer une adresse IPv4 à l’interface
ip address <ipv4-address> <network-mask>
Exemple avec 192.168.1.1/24 : ip address 192.168.1.1 255.255.255.0
- Activer l’interface
no shutdown
- Désactiver les recherches DNS (évite de bloquer le routeur/commutateur trois plombes quand on fait une typo)
no ip domain-lookup
2.1.2. IPv6
- Passer en mode configuration globale (cf §1)
- Passer en mode configuration d’interface (cf §2.1.1)
- Activer l’IPv6
ipv6 enable
- Attribuer une adresse IPv6 à l’interface
ipv6 address <ipv6-address>/<ipv6-prefix>
Exemple avec 2001:cafe:efac:2023:0:0:1/64 : ipv6 address 2001:cafe:efac:2023:0:0:1/64
- Attribuer une adresse IPV6 de lien local à l’interface
ipv6 address <ipv6-address> link-local
Exemple avec FE80:: : ipv6 address FE80:: link-local
- Activer l’interface
no shutdown
- Puis quitter
exit
On peut aussi attribuer une adresse IPv6 générée en EUI-64 (cf. l’article de IT-Connect pour plus d’informations). Au moment d’attribuer l’adresse ipv6, taper plutôt la commande suivante : ipv6 address <ipv6-prefix>/<ipv6-prefix-length> eui-64
(Exemple : ipv6 address 2001:cafe:efac:2023::/64 eui-64
. Avec une adresse MAC telle que 00:00:0c:b1:42:01, cela donnera l’adresse ipv6 suivante : 2001:CAFE:EFAC:2023:200:CFF:FEB1:4201).
2.2. Configurer le protocole de routage EIGRP
2.2.1. IPv4
- Passer en mode configuration globale (cf. §1)
- Activer EIGRP
router eigrp <autonomous-system-number>
- Facultatif : désactiver l’agrégation automatique
no auto-summary
- Ajouter un réseau (correspondant à ou aux interface(s) que l’on veut ajouter au protocole eigrp. Par exemple, on évite les réseaux locaux pour éviter de router des requêtes extérieures sur un LAN.)
network <network-address> <inversed-mask>
Exemple pour le réseau 10.0.1.0/24 : network 10.0.1.0 0.0.0.255
- Recommencer l’étape précédente pour chaque sous-réseau à ajouter
- Puis quitter.
2.2.2. IPv6
- Passer en mode configuration globale (cf. §1)
- Activer le routage pour l’IPv6
ipv6 unicast-routing
- Activer le protocole eigrp
ipv6 router eigrp <autonomous-system-number>
- Dans le mode config-rtr, activer l’eigrp
no shutdown
- Puis quitter
exit
- Entrer en mode configuration d’interface sur l’interface à configurer en eigrp
interface <interface-name> <interface-id>
- Activer l’eigrp sur l’interface
ipv6 eigrp <autonomous-system-number>
Avec autonomous-system-number correspondant au numéro configuré précédemment
- Puis quitter
2.2.3. Afficher les informations sur EIGRP
Il est possible d’utiliser la commande show pour afficher quelques informations utiles sur EIGRP (en mode privilèges).
Exemple pour EIGRP en ipv4
- affiche les interfaces configurées avec le protocole eigrp :
show ip eigrp interfaces
- affiche la topologie du réseau remontée par le protocole eigrp :
show ip eigrp topology
- affiche les voisins utilisant aussi le protocole eigrp :
show ip eigrp neighbors
Pour EIGRP avec IPv6, il faut simplement remplacer ip par ipv6.
2.3. Configurer le protocole de routage OSPF
2.3.1. IPv4
- Passer en mode configuration globale (cf. §1)
- Activer OSPF
router ospf <process-id>
Contrairement à EIGRP, il faut ici entrer un numéro de processus interne au routeur (par exemple 1) et non pas un numéro de système autonome.
- Ajouter un réseau (correspondant à ou aux interface(s) que l’on veut ajouter au protocole eigrp. Par exemple, on évite les réseaux locaux pour éviter de router des requêtes extérieures sur un LAN.)
network <network-address> <inversed-mask> area <ospf-area-id>
Exemple pour le réseau 10.0.1.0/24 pour la zone 1 : network 10.0.1.0 0.0.0.255 area 1
- Recommencer l’étape précédente pour chaque sous-réseau à ajouter
- Puis quitter.
2.3.2. IPv6
Coming Soon
2.3.3. Afficher les informations sur OSPF
Il est possible d’utiliser la commande show pour afficher quelques informations utiles sur OSPF (en mode privilèges).
Exemple pour OSPF en ipv4
- affiche les interfaces configurées avec le protocole ospf :
show ip ospf interface
- affiche la base de donnée :
show ip ospf database
- affiche les voisins utilisant aussi le protocole ospf :
show ip ospf neighbor
2.4. Routage statique
- Passer en mode configuration globale (cf. §1)
- Configurer une route par défaut
ip route 0.0.0.0 0.0.0.0 <gateway-ip-address>
Coming Soon
2.5. NAT
Dans le cas où aucun protocole de routage n’est utilisé, créer une route par défaut et/ou des routes statiques (cf. §2.4)
2.5.1. Source NAT
Permet par exemple d’autoriser l’accès à internet à des utilisateurs sur un LAN.
- Passer en mode configuration globale (cf. §1)
- Créer une liste d’autorisation (cf. §2.6 pour plus de détails)
ip access-list standard <acl-name>
- Ajouter un ou des sous-réseaux à la liste d’autorisation
permit <network-ip-address> <network-inversed-mask>
- Puis repasser en mode configuration globale
exit
- Passer en mode configuratio
exit
- Passer en mode configuration d’interface (cf. §2.1) sur l’interface « externe », par exemple celle pointant vers internet
- Configurer l’interface en mode nat « externe »
ip nat outside
- Puis repasser en mode configuration globale
exit
- Passer en mode configuration d’interface (cf. §2.1) sur l’interface « interne », par exemple celle pointant vers le LAN
- Configurer l’interface en mode nat « interne »
ip nat inside
- Puis repasser en mode configuration globale
exit
- Activer le Source NAT avec la liste d’autorisation et l’interface externe
ip nat inside source list <acl-name> interface <interface-type> <interface-id> overload
avec acl-name
le nom de la liste d’autorisation configurée précédemment.
2.5.2. Destination NAT
- Passer en mode configuration globale (cf. §1)
- Activer le Destination NAT vers le serveur web par exemple
ip nat inside source static tcp <private-server-ip-address> <private-server-port> <public-ip-address> <public-port>
Exemple avec un serveur web en adresse ip statique 192.168.1.1, une adresse ip publique 85.234.23.10 pour une requête sur le port 443 :
ip nat inside source static tcp 192.165.1.1 443 85.234.23.10 443
2.6. ACL
Cette partie est aussi applicable sur des commutateurs.
Il existe deux types d’ACL :
- Standard : ID de 0 à 99. Contrôle une adresse source, bloque ou autorise un protocole complet.
- Advanced : ID de 100 à 199. Contrôle une adresse source et destination, bloque ou autorise des protocoles ou des ports spécifiques.
2.6.1. Créer une ACL standard
- Passer en mode configuration globale (cf. §1)
- Autoriser une adresse ou un réseau
access-list <access-list-id-from-0-to-99> permit <ip-address> <inversed-mask>
- Refuser une adresse ou un réseau
access-list <access-list-id-from-0-to-99> deny <ip-address> <inversed-mask>
2.6.2. Créer une ACL advanced
- Passer en mode configuration globale (cf. §1)
access-list <access-list-id-from-0-to-99> deny ...
Coming Soon
2.7. Router on a stick
- Passer en mode configuration globale (cf. §1)
- Créer une interface virtuelle sur l’interface accueillant le(s) VLAN (répéter les actions pour chaque VLAN à configurer sur le router)
interface <interface-name> <interface-id>.<vlan-id>
Exemple pour l’interface GigabitEthernet 0/0/0, et ne VLAN n°10 : interface GigabitEthernet 0/0/0.10
- Activer l’encapsulation dot1Q
encapsulation dot1Q <vlan-id>
S’il s’agit du VLAN natif, rajouter native à la fin de la commande
- Attribuer une adresse IP à l’interface (cf. §2.1.1 pour l’IPv4 et §2.1.2 pour l’IPv6)
- Activer l’interface
no shutdown
Puis quitter
exit
2.7. Services
2.7.1. DHCP
- Passer en mode configuration globale (cf. §1)
- Activer le service DHCP
service dhcp
- Créer un pool d’adresses IP
ip dhcp pool <pool-name>
- Configurer le réseau sur lequel le pool officiera
network <network-address> <network-mask>
Exemple pour le réseau 192.168.1.0/24 : network 192.168.1.0 255.255.255.0
- Configurer la passerelle par défaut
default-router <gateway-ip-address>
- Configurer le serveur dns par défaut
dns-server <dns-ip-address>
- Configurer le nom de domaine
domain-name <hostname>
- Puis quitter
exit
Il est possible d’afficher quelques informations avec la commande show :
- affiche les baux DHCP attribués par le routeur :
show dhcp lease
- affiche les informations sur un pool dhcp :
show ip dhcp pool <pool-name>
2.7.2. NTP
- Passer en mode configuration globale (cf. §1)
- Activer ntp
ntp master 1
3. Commutateurs
3.1. Créer des VLAN
- Passer en mode configuration globale (cf. §1)
- Créer un vlan
vlan <vlan-id>
- Donner un nom au VLAN
name <name>
- Puis quitter
exit
On peut afficher les VLAN configurés sur le commutateur en tapant show vlan en mode privilèges.
Il est aussi possible de supprimer un vlan en ajoutant no devant la commande.
Par exemple, pour supprimer le vlan 4 : no vlan 4
3.2. Paramétrer les ports du switch (vlan, trunk…)
3.2.1. VLAN
- Passer en mode configuration globale (cf. §1)
- Passer en mode configuration d’interface (cf §2.1.1)
- Attribuer un vlan à l’interface
switchport access vlan <vlan-id>
3.2.2. Mode Trunk
- Passer en mode configuration globale (cf. §1)
- Passer en mode configuration d’interface (cf §2.1.1)
- Passer l’interface en mode trunk
switchport mode trunk
- Autoriser une plage de VLAN à transiter par le trunk
switchport trunk allowed vlan <vlan-range-id>
- On peut aussi ajouter des VLAN à une plage existante
switchport trunk allowed vlan add <vlan-id>
- Ou encore il est possible d’autoriser tous les vlan
switchport trunk allowed vlan all
- Puis quitter
exit
vlan-range-id peut être écrit des façons suivantes :
- 10
- 2,4,6,8
- 10-40
3.3. Configurer en mode client NTP
- Passer en mode configuration globale (cf. §1)
- Configurer l’adresse du serveur ntp
ntp server <ntp-server-ip-address>
3.4. ACL
Cf. §2.6
3.5. Etherchannel avec LACP
- Passer en mode configuration globale (cf. §1)
- Passer en mode configuration d’interface sur la plage à configurer en etherchannel
interface range <interface-type> <interface-id-range>
- Créer un groupe d’etherchannel avec le protocole LACP
channel-group <channel-group-number> mode active
Sur le deuxième switch, on peut mettre passive au lieu de active. Le switch sera donc « esclave » du premier.
- Puis quitter
exit
- Passer en mode configuration de l’interface port-channel créé précédemment
interface port-channel <channel-group-number>
- Configurer le trunk si besoin comme au §3.2.2
- Puis recommencer avec le deuxième switch.
Cf. l’article d’IT-Connect pour plus de détails.
3.6. DTP & VTP
3.6.1. DTP
Protocole permettant de configurer « automatiquement » en trunk les liens sur les commutateurs liés.
Sur le commutateur « maître » :
- Passer en mode configuration globale (cf. §1)
- Passer en mode configuration d’interface (cf §2.1.1) sur les interfaces à configurer.
- Configurer le protocole sur les interfaces selectionnées
switchport mode dynamic desirable
- Puis quitter
end
3.6.2. VTP
Protocole permettant de faire descendre sur les autres commutateurs la configuration vlan
Sur le commutateur serveur
- Passer en mode configuration globale (cf. §1)
- Passer en mode vtp serveur
vtp mode server
- Configurer le domaine vtp
vtp domain <vtp-domain>
- Configurer le mot de passe vtp (recommandé)
vtp password <password>
- Puis quitter
end
Sur le(s) commutateur(s) client(s) :
- Passer en mode configuration globale (cf. §1)
- Passer en mode vtp client
vtp mode client
- Configurer le domaine vtp
vtp domain <vtp-domain>
- Configurer le mot de passe vtp (recommandé)
vtp password <password>
- Puis quitter
end
3.7. Notes importantes pour l’IPv6
Pour que l’IPv6 fonctionne correctement sur le réseau, et notemment pour que le routage inter-vlan en IPv6 soit fonctionnel, il est nécessaire de vérifier que le SDM (switch data management) utilise le template dual-ipv4-and-ipv6. Pour vérifier, en mode privilèges taper la commande sh sdm prefer
. Elle devrait retourner quelque chose comme cela :
The current template is "dual-ipv4-and-ipv6 default" template.
The selected template optimizes the resources in
the switch to support this level of features for
0 routed interfaces and 1024 VLANs.
number of unicast mac addresses: 4K
number of IPv4 IGMP groups + multicast routes: 0.25K
number of IPv4 unicast routes: 0
number of IPv6 multicast groups: 0.375k
number of directly-connected IPv6 addresses: 0
number of indirect IPv6 unicast routes: 0
number of IPv4 policy based routing aces: 0
number of IPv4/MAC qos aces: 0.125K
number of IPv4/MAC security aces: 0.375K
number of IPv6 policy based routing aces: 0
number of IPv6 qos aces: 0.625k
number of IPv6 security aces: 0.125K
Pour pouvoir utiliser le template dual-ipv4-and-ipv6, passer en mode configuration globale (cf. §1). Puis taper les commandes suivantes :
- Activer le template :
sdm prefer dual-ipv4-and-ipv6 default
- Quitter le mode configuration globale :
end
- Sauvegarder la configuration pour ne pas perdre les éventuelles modifications effectuées :
copy running-config startup-config
- Redémarrer le switch :
reload
4. Sécurité
4.1. Créer des utilisateurs
- Passer en mode configuration globale (cf. §1)
- Créer un utilisateur
username <username> secret <password>
- Lui donner le niveau de privilège max
username <username> privilege 15
4.2. Sécuriser le port console avec un utilisateur local
- Passer en mode configuration globale (cf. §1)
- Entrer en mode configuration de ligne pour le port console
line con 0
- N’autoriser que les utilisateurs locaux enregistrés à se connecter
login local
- Puis quitter
exit
- On peut faire de même sur les autres ports en remplaçant line con 0 par line
4.3. Activer l’accès SSH
4.3.1. Côté « serveur »
- Passer en mode configuration globale (cf. §1)
- Configurer le nom de domaine
ip domain-name <domain-name>
- Générer les clés SSH
crypto key generate rsa
- Activer le ssh
ip ssh version 2
- Entrer en mode configuration de ligne pour les vty où l’on souhaite activer le ssh
line vty <1st-vty-id> <last-vty-id>
- Autoriser les connexions ssh
transport input ssh
- Autoriser les connexions depuis la liste des utilisateurs locaux :
login local
4.3.2. Côté « client »
Pour se connecter en ssh depuis un routeur ou un commutateur Cisco vers un autre switch ou commutateur cisco, on peut utiliser la commande ssh -l <username> <host-ip>
4.4. Utiliser un serveur Radius pour gérer les utilisateurs
- Passer en mode configuration globale (cf. §1)
- Activer le protocole aaa
aaa new-model
- Ajouter un serveur radius
radius server <name>
- Configurer l’adresse ip
address ipv4 <radius-server-ipv4-address>
- Ajouter la clé
key <secret-shared-key>
- Autoriser le login
aaa authentication login default group radius local
- Autoriser le mode privilèges
aaa authentication enable default group radius local
- Entrer en mode config vty
line vty <1st-vty-id> <last-vty-id>
- Autoriser l’authentification par le serveur radius
login authentication default
- Puis quitter
exit
5. Notes et références
- https://www.cisco.com/c/en/us/support/index.html
- https://openclassrooms.com/fr/courses/2557196-administrez-une-architecture-reseau-avec-cisco
- https://www.it-connect.fr/cours-tutoriels/administration-reseau/cisco/