Aller au contenu principal

Sécurité du routeur: mots de passe et SSH

CCNA — Security Fundamentals

Sécurité du routeur: mots de passe et SSH

Définition

Durcir un routeur, c'est fermer les portes laissées ouvertes par défaut: pas de mot de passe en console, pas de service désactivé, telnet actif. Les bases: mots de passe de type 8 ou 9 plutôt que 7, SSH version 2 pour le management, lignes VTY verrouillées par transport input ssh, timeout de session, et un login bloquant les tentatives répétées. Le blueprint thème 5.3 demande de configurer et vérifier le contrôle d'accès aux équipements avec des mots de passe locaux.

Contexte

L'examen pose des commandes concrètes: générer les clés RSA, forcer SSH sur VTY, lire la différence entre service password-encryption et username ... secret, reconnaître une sortie show running-config avec type 7 et conclure qu'elle est faible. Les thèmes 5.3 et 5.4 croisent ici gestion des accès et politiques de mots de passe: complexité, expiration, alternatives (MFA, certificats, biométrie côté identité).

Les mots de passe hachés

IOS stocke les secrets avec un type indiqué avant la chaîne:

Type Algorithme Statut
0 Clair À proscrire, défaut si password sans service
7 Réversible (algorithme propriétaire, tables publiques) Ne protège rien, service password-encryption produit du type 7
4 et 5 MD5 Obsolète
8 SHA-256 (PBKDF2) Recommandé
9 scrypt (cost, block, parallelism paramétrables) Le plus fort, défaut avec username NAME secret 9

service password-encryption convertit les line password en type 7: visible dans un dump, cassable en secondes par des outils publics. La commande secret évite le débat: enable secret, username ... secret produisent du hash non réversible. Sur IOS moderne, username CDurand privilege 15 secret Ccna2026!Secure donne type 8 par défaut.

SSH v2 côté serveur

R1(config)# ip domain-name entreprise.fr
R1(config)# crypto key generate rsa modulus 2048
R1(config)# ip ssh version 2
R1(config)# username CDurand privilege 15 secret Ccna2026!Secure
R1(config)# line vty 0 4
R1(config-line)# transport input ssh
R1(config-line)# login local
R1(config-line)# exec-timeout 5 0
R1(config-line)# logging synchronous

Sans domaine configuré, crypto key generate rsa refuse: la clé est dérivée du FQDN. modulus 1024 est un minimum historique, 2048 est le plancher raisonnable. transport input ssh purgé du telnet: le mot de passe ne circule plus en clair. Côté client, ssh -o RSA -l CDurand 10.0.0.1. Vérification: show ip ssh (version, timeout, retries) et show crypto key mypubkey rsa.

Protéger contre le brute-force

R1(config)# login block-for 300 attempts 3 within 60
R1(config)# login delay 5
R1(config)# banner motd #Acces surveille. Seules personnes autorisees.#

login block-for suspend toutes les nouvelles tentatives pendant 300 s si 3 échecs surviennent en 60 s. login delay 5 ajoute 5 s entre chaque tentative: un attaquant à 1000 mots de passe/minute tombe à 12. Attention à l'auto-lockout: exclure ses propres adresses avec access-class sur VTY ou un login quiet-mode access-class, ou réserver la console, jamais bloquée par ces réglages.

Hygiène générale des équipements

Action Commande Pourquoi
Désactiver HTTP/HTTPS admin no ip http server, no ip http secure-server Interface web jamais patchée en priorité
Éteindre les services inutiles no service tcp-small-servers, no service udp-small-servers, no finger Fuites d'infos et amplification
Désactiver les interfaces dormantes shutdown sur Gi0/2 inutilisée Surface d'attaque et CDP
Timeout console line con 0 + exec-timeout 10 0 Session laissée ouverte en salle technique
Journaliser logging host 10.10.1.40, logging trap informational Preuve et détection
NTP exact ntp server 10.10.1.45 Horodatage des logs crédible

Le hardening complet s'appelle Security Device Manager puis IOS Foundation Services; l'essentiel pour l'examen tient dans ce tableau et les blocs SSH.

Exemple concret

Un rapport d'audit liste 14 équipements avec service password-encryption et zéro secret. Un ancien prestataire parti en mauvais termes possède encore le type 7 du routeur Edge-Paris1; l'outil public le casse en 30 secondes depuis un dump, puis un show running-config | section username lui livre le hash type 7 du compte admin, tout aussi réversible. Après remédiation: comptes recréés en secret 9, transport input ssh, login block-for 120 attempts 2 within 30, telnet désactivé partout. L'audit suivant ne trouve plus que du type 9, et les tentatives de brute-force depuis Internet, 48 en 10 minutes sur un port TCP 23 ouvert, retombent à zéro faute de porte.