Bonjour la communauté !
Aujourd'hui un petit billet concernant Cisco IOS et la sécurisation (de base) sur vos périphériques.
Voici le plan que j'utiliserais pour ce billet :
• Introduction à Cisco IOS
• Utilité de l'OS
• Les méthodes d'accès
• Configuration des noms d'hôtes
• Accès sécurisé aux périphériques
• Configurer les mots de passe
• Chiffrer les mots de passe
• Messages de bannière
• Sauvegarde de la configuration
C'est partis !
I. Introduction à Cisco IOS
Les périphériques réseaux requièrent eux aussi un système d'exploitation (SE).
Pour rappel :
- La partie du SE directement lié au matériel est appelé "Noyau".
- La partie liée aux applications et à l'utilisateur s'appelle "L'interpréteur de commandes"
L'utilisateur peut accéder à cet interpréteur de commandes de plusieurs façons :
• Grâce à une CLI (Command Line Interface)
• Grâce à une GUI (Graphical User Interface)
(Je laisse volontairement les termes en anglais pour que vous vous familiarisez avec ceux-ci, et puis ils ne sont pas si compliqués que ça à comprendre..)
Inutile de préciser qu'il est préférable d'utiliser une CLI plutôt qu'une GUI de part le fait qu'elle demande moins de ressources et une meilleure stabilité par rapport à une interface graphique.
La piqûre de rappel étant faite, passons à Cisco IOS.
Vous l'aurez donc deviné il s'agit du système d'exploitation qui est utilisé sur les périphériques Cisco.
Petit remarque au passage, le système d'exploitation des routeurs domestiques est généralement appelé « firmware ».
II. Utilité de l'OS
Les SE réseau sont semblables à ceux des ordinateurs, mais un SE réseau utilisant une CLI comme Cisco IOS, installée sur un commutateur ou un routeur permettra à un technicien réseau :
• d'utiliser un clavier afin d'exécuter des programmes réseau basés sur CLI;
• d'utiliser un clavier afin d'entrer des commandes textuelles;
• d'afficher des images sur un écran.
Bon à savoir :
Les périphériques réseau exécutent des versions spécifiques de Cisco IOS.
Celle-ci dépend du type de périphérique utilisé et des fonctions nécessaires.
Vous pouvez toujours, bien entendu, mettre à niveau cet IOS ou encore l'ensemble des fonctionnalités pour obtenir des fonctions supplémentaires.
III. Les méthodes d'accès
Un commutateur Cisco IOS peut être implémenté sans être configuré, il effectuera quand même la commutation des données entre les périphériques connectés. Comprenez donc que, deux ordinateurs reliés à un commutateur disposeront immédiatement d'une inter-connectivité instantané.
Bon, malgré que celui-ci fonctionne toujours immédiatement, il est quand même recommandé de configurer les paramètres initiaux. Voici les différentes méthodes d'accès à l'environnement CLI :
• Console : Il s'agit là d'un port de gestion qui permet un accès hors réseau à un périphérique Cisco. (Souvent utilisé pour la maintenance de ceux-ci).
• Secure Shell (SSH) : Il s'agit là d'effectuer une connexion à distance (sécurisé) à la CLI, grâce à une interface virtuelle, via un réseau. Vous l'aurez compris, à la différence de la console, celle-ci à besoin de services réseau actifs sur le périphérique pour communiquer.
• Telnet : Non sécurisé (donc peu utilisé), Telnet permet d'établir à distance une session CLI sécurisée grâce à une interface virtuelle, via un réseau. La différence entre Telnet et SSH, et que celle-ci n'offre pas de connexion chiffrée de manière sécurisée. (L'authentification des utilisateurs, les mots de passes, etc.. sont envoyés en clair sur le réseau).
IV. Configuration des noms d'hôtes
Maintenant que vous en avez appris un peu plus sur Cisco IOS (note: ceci était une description succincte de cet IOS, pour plus d'informations rendez-vous ici.)
Passons à la configuration des noms d'hôtes, lorsque vous souhaitez mettre en place un périphérique réseau, la première chose à faire est de lui attribuer un nom. Les noms d'hôtes qui apparaissent dans la CLI peuvent être utilisés dans différents processus d'authentification entre les périphériques et doivent être utilisés dans les bases de données topologiques.
Donc, si le nom d'un périphérique n'est pas explicitement configuré, un nom par défaut est utilisé par Cisco IOS. Le nom par défaut d'un commutateur Cisco IOS est "Switch" pas plus compliqué que ça. Mais sachez que si tous les périphériques réseaux ont conservés leur noms par défaut, il sera très difficile par la suite d'identifier un périphérique spécifique (surtout si vous souhaitez vous connecter par SSH par exemple, il faut que vous soyez en mesure d'identifier le périphérique approprié).
Attention il y existe quand même des règles à respecter pour nommer un périphérique :
Et si on mettez ça en pratique maintenant ?
• Rendez-vous sur la CLI d'un Switch, n'oubliez pas le petit "en" ou "enable" qui va bien.
• Depuis votre mode d'exécution privilégié (Switch#) accédez au mode de configuration globale en tapant la commande "configure terminale" ou "conf t" pour les plus flemmards.
• Une fois ceci fait, entrez la commande "hostname" suivis du nom de votre commutateur puis appuyez sur Entrée.
Voilà votre switch à un joli nom dès à présent ! Ah.. qu'est-ce que j'entend ? Vous avez fait une faute d'orthographe ? Vous vous êtes trompé ?
Pas de problème, retourner sur le mode de configuration globale puis entrez la commande :
• "no hostname" (qui supprimera le nom et vous remettra la configuration de base à savoir "Switch".
V. Accès sécurisé aux périphériques
En entreprise (très souvent) l'utilisation de mots de passes faibles ou facile à deviner est un véritable problème se sécurité.. C'est pourquoi des mots de passes doivent toujours être configurés pour vos périphériques réseau (y compris les routeurs sans fil domestiques).
Cisco IOS peut être configuré pour utiliser des mots de passes hiérarchiques ! Ce qui vous permettra de définir différents privilèges d'accès.
Il existe ici aussi, des règles que voici :
Rien de plus compliqué vous voyez ?
VI. Configurer les mots de passe
En règle générale, le premier mot de passe à configurer (et le plus important) est celui qui vous permettra d'accéder au fameux mode d'exécution privilégier. Pour sécurisé cet accès donc, procédez comme suit dans votre CLI :
• enable
• configure terminal
• enable secret developpez
• exit
• disable
• enable
et là il devrait vous demander votre mot de passe que vous venez de définir, dans notre exemple il s'agit de "developpez".
Le second mot de passe à configurer est celui du mode d'exécution utilisateur. Attention pour configurer celui-ci, le port console doit être configuré.
Donc pour se faire, procédez comme suit :
• Passez en mode configuration (configure terminal au cas où vous auriez déjà oublié).
• tapez ensuite : line console 0
• Puis : password developpez
• Puis : login (cette commande vous permettra d'activer l'accès de l'exécution utilisateur)
• Puis : exit
Vous pouvez ensuite configurer un dernier mot de passe celui de ligne VTY.
Qu'est-ce que ces lignes VTY ? C'est très simple, souvenez des méthodes d'accès énoncés plus haut, certaines se font à distances...
Donc, les lignes VTY activent l'accès à distance au périphérique, pour sécurisés ces lignes VTY procédez comme suit :
• Passez en mode configuration
• tapez ensuite : line vty 0 15
• Puis : password developpez
• Puis : login
Et voilà, vos accès sont déjà bien configurés et sécurisé jusqu'à cette partie.
VII. Chiffrer les mots de passe
Sécurisé mais.. pas encore comme on le veut ! Pourquoi ? Car les fichiers startup-config et running-config affichent vos mots de passe en clair..
Je vous propose donc de chiffrer ces mots de passe en utilisant (en mode de configuration globale) une commande toute simple qui est :
• service password-encryption
Plutôt simple et efficace pas vrai ?
VIII. Messages de bannière
Bien que vos mots de passe empêchent maintenant des utilisateurs lambda de se connecter, il est aussi important de mettre en place ce qu'on appel un Message de bannière, qui déclare que l'accès à un périphérique est autorisés seulement aux personnes autorisées. Inutile me direz-vous ? Pas tant que ça..
Les bannières peuvent être considérées comme une preuve IMPORTANTE dans un procès intenté à une personne qui aurait illégalement accédé à votre périphérique.
Pour créer la bannière MOTD (Message Of The Day) sur un périphérique réseau, placez vous en config. globale et procédez comme suit :
• banner motd #
Le "#" situé dans la syntaxe de la commande est le caractère de délimitation. Il est placé avant et après le message.
Cette partie peut vous sembler ambiguë du coup voici un exemple :
• conf t
• banner motd #
• Utilisateurs autorisés uniquement #
• exit
Tout simplement, n'oubliez juste pas de terminez avec "#".
VIIII. Sauvegarde de la configuration
Concernant la sauvegarde, deux fichiers système stockent la configuration des périphériques :
• startup-config : Il s'agit du fichier stocké dans la mémoire vive non volatile (NVRAM) qui contient toutes les commandes qui seront utilisés par le périphérique au démarrage ou redémarrage. Dès que vous mettrez hors tension votre périphérique celle-ci se videra.
• running-config : Il s'agit du fichier stocké dans la mémoire vive (RAM) et qui reflète la configuration actuelle. Si vous modifiez une configuration en cours, cela affectera immédiatement le fonctionne du périphérique. La RAM est contrairement à la NVRAM une mémoire volatile. Elle perd son contenu lorsque le périphérique est mis hors tension ou redémarré.
Pour enregistrer vos modifications apportés à la configuration en cours dans le fichier de conf. initiale utilisez donc la commande :
• copy running-config startup-config
du mode d'exécution privilégié.
Note :
Dans le cas où les modifications apportées à la configuration en cours n'ont pas l'effet souhaité et si le fichier de configuration en cours n'a pas encore été enregistré vous pouvez :
• Restaurer la version précédente (en retirant individuellement les commandes entrées)
• copier le fichier de conf. initiale avec la commande expliqué plus haut (copy running [...] )
• recharger le périphérique avec "reload" (mais prudence, cette commande entraînera une mise hors ligne du périphérique pendant un cours instant).
Note 2 :
Dans le cas où vous avez enregistrés de mauvaises informations dans la config. initiale, il peut s'avérer nécessaire de tout supprimer. Pour ce faire vous devez effacez la configuration initiale puis redémarrer le périphérique. Utilisez donc la commande :
• erase startup-config (en mode d'exécution privilégié) pour supprimer la config. initiale
Voilà j'ai à présent, terminé ce billet. J'espère qu'il vous aura été utile, je tiens à préciser que j'ai écris moi même ce billet en fonction de :
• Mes connaissances
• Mes cours
• Ma CCNA que je suis en train de préparer.
N'hésitez pas à commenter, où me signaler toute partie qui vous paraît mal écrite, qui contient des informations obsolètes, des fautes d'orthographe.
Cordialement, Skyxia.
Apprendre les bases de la sécurité réseau dans le CISCO IOS
Un tutoriel de Tristan Herbaut
Apprendre les bases de la sécurité réseau dans le CISCO IOS
Un tutoriel de Tristan Herbaut
Le , par Skyxia
Une erreur dans cette actualité ? Signalez-nous-la !