Par défaut, on ne peut pas faire de SSH vers un switch ou un routeur. Il faut au préalable configurer certains paramètres pour que ça fonctionne.
Le protocole SSH utilise une communication sécurisée pour éviter que des informations sensibles (configuration, login, mot de passe,…) soient interceptées durant leur transport jusqu’à la console d’administration.
Voici les différentes étapes pour configurer le SSH sur un IOS:
- Définir un compte utilisateur avec le doublet [login/mot de passe]
- Définir un hostname (par exemple MonRouteurAgence1) à son équipement switch ou routeur, qui sera utilisé pour générer la clé de chiffrement
- Définir un nom de domaine (par exemple cisco.com), qui sera aussi utilisé pour générer la clé de chiffrement
- Générer cette fameuse clé de chiffrement, appelée RSA
- Activer le SSH
Configuration
1. Définir un compte utilisateur avec le doublet (login/mot de passe)
router> enable router# configure terminal router(config)# username julien password pa$$word
Ici on définit un utilisateur nommé “julien” dont le mot de passe associé est “pa$$word“
2. Définir un hostname à son équipement switch ou routeur, qui sera utilisé pour générer la clé de chiffrement
router(config)# hostname R1 R1(config)#
Cette commande permet de mettre un hostname particulier à votre équipement, ici “R1”. Ce hostname est par ailleurs utilisé pour générer la clé de chiffrement RSA, créée plus bas
3. Définir un nom de domaine, qui sera utilisé pour générer la clé de chiffrement
R1(config)# ip domain-name cisco.com
Cette commande permet de définir un nom de domaine (DNS – Domain Name Server) à votre routeur. Il s’appellera désormais “R1.cisco.com“, qui est tout simplement la concaténation du hostname “R1” avec le nom de domaine “cisco.com”.
Ce nom de domaine est aussi utilisé pour générer la clé de chiffrement RSA, créée juste à l’étape suivante.
4. Générer la clé de chiffrement
R1(config)# crypto key generate rsa modulus 1024
Cette commande génère une clé de chiffrement RSA utilisé par le processus SSH pour générer la clé de session. La variable “modulus 1024” définit la taille de votre clé. A titre d’information, pour une clé asymétrique, 1024 est une taille correcte.
5. Activer le SSH
R1(config)# line vty 0 4 R1(config-line)# transport input ssh R1(config-line)# login local R1(config-line)# exit
Pour accéder en telnet ou ssh à un équipement Cisco, il faut configurer les lignes “virtuelles” de l’équipement. En effet, quand je fais un telnet vers un routeur, je peux arriver de n’importe quelles interfaces actives du routeur.
Pour cela, on définit les lignes virtuelles appelées “vty”. Par défaut, il y a 5 lignes vty actives (de 0 à 4). D’où la commande “line vty 0 4“. Pourquoi 5? Parceque Plus sérieusement, ça permet à 5 administrateurs d’être en SSH en même temps sur l’équipement.
La commande “transport input ssh” définit quel protocole a le droit d’utiliser ces lignes vty. Par défaut, tous les protocoles ont le droit dont telnet et ssh. Cette commande permet de restreindre en précisant que seul ssh a le droit d’utiliser les lignes vty.
La commande “login local” permet de préciser où se trouve la base des comptes utilisateur. Une fois connecté au routeur en ssh, le routeur va vous demander un login/password, celui qu’on a définit plus haut (julin/pa$$word). “login local” indique au routeur que la base des comptes utilisateur se trouve dans sa configuration (“local”).
Pour information, on peut définir une base de comptes utilisateur vers un serveur Radius par exemple.
Logiciel client SSH
Maintenant qu’on a configuré le serveur SSH sur notre routeur ou switch, il faut utiliser un client SSH sur notre console d’administration. Voici une liste non exhaustive de client SSH:
- Putty: gratuit et puissant
- SecureCRT: payant
- HyperTerminal: payant
Exemple de configuration sous Packet Tracer
Router> Router>en Router#conf t Enter configuration commands, one per line. End with CNTL/Z. Router(config)# Router(config)# Router(config)#username julien password pa$$word Router(config)# Router(config)#hostname R1 R1(config)# R1(config)#ip domain-name cisco.com R1(config)# R1(config)#crypto key generate rsa modulus 1024 % Generating 1024 bit RSA keys, keys will be non-exportable...[OK] R1(config)# *mars 1 0:1:56.0: %SSH-5-ENABLED: SSH 1.99 has been enabled R1(config)# R1(config)#line vty 0 4 R1(config-line)#transport input ssh R1(config-line)#login local R1(config-line)#exit R1(config)#exit R1#
La première ligne en rouge nous indique que le routeur a généré une clé de chiffrement de taille 1024 bits.
La seconde ligne en rouge nous précise que maintenant qu’une clé de chiffrement a été créée, le processus SSH est activé. Il nous reste plus qu’à le configurer sur les lignes virtuelles “vty”.
Aprés avoir configuré le ssh sur mon routeur, je me connecte en ssh à partir de mon PC:
On remarque ici que mon PC a l’adresse IP 10.1.1.222 et que mon routeur a l’adresse IP 10.1.1.1
La commande “ssh -l julien 10.1.1.1” permet de lancer une session ssh vers l’adresse IP 10.1.1.1 qui est mon routeur et avec le login “julien”. Une fois connecté en ssh à ce routeur, le process ssh va me demander le mot de passe associé à l’utilisateur “julien”. Je rentre alors “pa$$word” pour que l’authentification réussise.
On voit bien que j’ai alors accés à la console du routeur “R1>”.
Merci pour cette précision professeur !
Bonjour,
Mais avec plaisir
Bonjour professeur
Tu n’as pas oublie de mettre la commande
Enable password ou enable secret ?
Pour acceder au mode privilege une fois la connexion en ssh initialise sur le pc ?
Je regarde tt les jours rn ebook icdn 1 et ton blog 8)
Bonjour,
Je n’ai pas oublié la commande “enable password” ou “enable secret” car elles ne sont pas nécessaires pour activer le SSH.
En revanche, il faut bien en configurer une des deux si l’on veut ensuite accéder au mode privilégié une fois la connexion établie.
Je t’invite à lire l’article suivant qui en parle: https://reussirsonccna.fr/securiser-lacces-a-lios-par-la-commande-enable/
vraiment le cours de CCNA c’est super maintenant en cas de probleme de configuration c’est trés simple de le reparer. merci
Merci pour cet article, ça va droit au but et quand on est comme moi où on tape pas tous les jours des commandes cisco, c’est très très pratique.
Juste petite remarque, le S de DNS signifie Service et Non Server.
Autre chose, penses-tu écrire un bouquin pour l’examen 200-101 ? Car je crois qu’il faut avoir les 2 pour que ça ait un réel sens si je ne dis pas de bêtises ?
Bonjour Anthony,
Pour le “S” de DNS ca depend des documents, on peut trouver Server ou Service. Mais pour les puritains c’est bien Service
Je suis en cours de redaction des fiches ICND2. Une fois terminées, elles seront disponibles sur le site. Donc fiches ICND1 + ICND2 couvriront l’ensemble du CCNA 200-120.
Ok cool, je serais probablement un acheteur, enfin, si j’ai le temps en plus de tout le boulot…!
Par contre n’y aurait-il pas une petite coquille dans le schéma, dans l’étape 5.
On peut lire “transport input local” au lieu de “transport input ssh” non ?
Bonjour Anthony,
oui bien vu pour la coquille sur le schema, c’est bien “transport input ssh” et non “transport input local”
Merci !
attendre de voir
merci pour le reponse; et pour supprimer les autres login, comment on fait?
Bonjour Jean,
Il faut juste taper la variable “no” devant la commande. Par exemple, si le compte “cyril” existe et que je souhaite l’enlever je tape: “no username cyril“.
Comment faire pour n’avoir qu’un seul compte admin sur le routeur (pour n’avoir qu’un seul login en telnet ssh)
Merci
Bonjour Jean,
Dans mon exemple il y a bien qu’un seul compte admin sur le routeur. Il suffit juste de définir une seule ligne “username”
Impec réponse rapide en plus ! MERCI
Peut on configurer sur les lignes 0 4 ssh et telnet en meme temps ? ou doit on faire d’autres lignes pour telnet du genre de 5 à 8.
0 4 ssh
5 8 telnet
0 4 les 2 en mêmes temps
Merci d’avance de ta réponse Cyril
Oui c’est possible, il faut taper la commande suivante:
configure terminal
line vty 0 4
transport input telnet ssh
exit
exit
bonjour!
On peut pas mettre le mot de passe et login ?
Merci
Bonjour Jonathan, peux-tu préciser ton souci?
Super TUTO merci. Ça serait cool d’avoir tes cours en PDF SVP
Bonjour Yamine, pour le moment ce n’est pas prévu
Petite rajoute, l’activation du protocole SSH de manière générale est effectuée par les étapes 2, 3 et 4, ce qui est également nécessaire si on souhaîte ouvrir une session SSH depuis un routeur/switch vers un autre équipement.
Exact, les étapes 2, 3 et 4 sont des pré-requis (donc obligatoires) pour que le protocole SSH soit actif sur votre routeur ou votre switch. Merci Steve!
Et pour ceux qui ne le connaisse pas encore, je vous invite fortement à aller voir le site de Steve qui est une énorme source de connaissance:
http://www.ciscomadesimple.be/
A savoir qu’il faut un mot de passe enable configuré pour pouvoir passer en mode enable via une ligne vty.
Exact! Merci pour cette précision Flo
Tu les fais avec quelle application tes Minds?
Bonjour,
Tu peux utiliser les logiciels suivants pour faire des Mind facilement:
– http://www.mindjet.com : payant
– http://freemind.sourceforge.net : gratuit