24/01/2025

Cisco

Comment sécuriser un routeur Cisco avec la fonctionnalité Cisco AutoSecure ?

I. Présentation

Dans ce tutoriel, nous allons voir comment sécuriser un routeur Cisco à la volée avec la commande « auto secure » associée à la fonctionnalité du même nom.

Les routeurs Cisco offrent désormais des fonctionnalités qui dépassent largement les simples services de commutation et de routage. Cette évolution peut rapidement rendre leur gestion complexe pour un administrateur réseau. Que ce dernier soit débutant ou expérimenté, la sécurisation de ces équipements peut se présenter comme un défi...

En effet, les fonctionnalités et services supplémentaires tels que les services HTTP, CDP, NTP, BOOTP, etc... qu’on retrouve dans ces derniers, peuvent se muer en failles de sécurité, pouvant ainsi faciliter leur prise de contrôle par un attaquant voulant y mener plusieurs types d’attaques (reconnaissance, déni de service, etc.)

Cisco, à travers la commande « auto secure » (disponible depuis Cisco IOS 12.3), permet aux administrateurs réseaux de procéder de manière simple et efficace à la sécurisation de leurs routeurs. Il s’agit ici, en effet, d’un ensemble de configurations proposées à la suite de ladite commande pour gérer les services sensibles et/ou superflus (activation/désactivation et configuration), pouvant occasionner des dommages sur notre infrastructure.

Cela peut constituer un précieux atout, car il n’est pas rare qu’un administrateur, quel que soit son niveau d’expérience, oublie ou ne maîtrise pas certaines commandes Cisco, voire l’ensemble de celles-ci.

On verra donc ici comment utiliser auto secure pour sécuriser son routeur. Pour ce tutoriel, on utilisera un routeur importé dans le simulateur GNS3, qui ne possède pas, certes, de toutes les options de configuration d’un routeur réel, mais qui nous aidera quand même ici à titre illustratif.

Remarque : AutoSecure peut vous aider à créer un modèle de configuration pour vos routeurs Cisco.

II. Sécuriser son routeur avec AutoSecure

A. Quelques options proposées

La commande « auto secure » n’est disponible qu’une fois connecté avec le mode privilège (« enable »). Vous devez donc vous connecter à votre équipement et ouvrir la console.

Lorsqu’on rentre la commande « auto secure » dans le terminal d’un routeur Cisco, voici une liste non exhaustive de ce qui est proposé comme configuration :

  • Mise en place d’un système d’authentification pour administrer le routeur, via la création d’un utilisateur et d’un mot de passe admin
  • Insertion d’un message de bannière en guise d’avertissement à destination de toute personne non autorisée à avoir accès au routeur en tant qu’admin.
  • Sécurisation des accès consoles (tty, vty, etc.)
  • Blocage automatique après une nombre précis d’échecs d’authentification
  • Activation du service password-encryption pour le chiffrement des mots de passe dans le fichier de configuration
  • Attribution d’un hostname au routeur
  • Génération d’une paire de clés pour l’accès en SSH
  • Désactivation de services et protocoles (bootp, http, cdp, ntp, etc.) pouvant être exploités par un attaquant dans le cadre d’une attaque par déni de service ou autre.
  • Désactivation de certains services d’interfaces (ICMP redirect, ICMP unreachable, Proxy-Arp, MOP, Direct Broadcast, etc.) pouvant être exploités par un attaquant dans le cadre d’une attaque DOS ou autre.
  • Mise en place et configuration du protocole AAA
  • Activation du pare-feu et configuration d’ACL pour le filtrage et le contrôle d’accès à certains services.
  • Activation du service de logs
  • Insertion d’un nom de domaine
  • Etc.

On peut aller consulter la documentation en ligne via le lien ci-dessous pour en savoir plus :

Bien entendu, l’idée est d’adapter cette configuration à vos besoins : ne désactivez pas un service si vous l’utilisez.

B. Configuration d'AutoSecure sur un routeur Cisco

Tout d’abord, on se connecte à l’interface d’administration en CLI du routeur, puis on passe en mode privilège avec la commande « enable » ou son alias (« en »).

R1>enable

On rentre ensuite la commande « auto secure ».

R1#auto secure

Le routeur rentre alors en mode interactif et nous propose un ensemble de configurations à effectuer sous la forme de questions fermées ou ouvertes, auxquelles on répond bien sûr en fonction de nos besoins ou de notre cahier de charge de sécurité.

Cependant, avant d’aborder la configuration du routeur, on reçoit un message nous faisant un bref aperçu d’auto secure, tout en nous précisant que ce dernier n’est pas en mesure de sécuriser le routeur à 100% (le risque de sécurité zéro n’existant pas). Il nous recommande aussi de nous référer à la documentation Cisco en ligne en cas d’incompréhension quelconque. La première question posée ici est celle de savoir si le routeur est connecté à Internet ou non.

On poursuit avec le reste de la configuration, en répondant à chaque question, et une fois terminé, le routeur nous génère un récapitulatif de la configuration effectuée.

Voici un exemple :

This is the configuration generated:

no service finger
no service pad
no service udp-small-servers
no service tcp-small-servers
service password-encryption
service tcp-keepalives-in
service tcp-keepalives-out

no cdp run
no ip bootp server
no ip http server
no ip finger
no ip source-route
no ip gratuitous-arps
no ip identd

banner motd ^C ACCES NON AUTORISE A TOUTE PERSONNE ETRANGERE AU SERVICE ^C

security passwords min-length 6
security authentication failure rate 10 log
enable secret 5 $1$ESRP$Uz2FaHmEVDeMVG8iE1RtF.
enable password 7 0009160F174F0E145D71
username meister password 7 0009160F174F0E14

aaa new-model
aaa authentication login local_auth local
line con 0
login authentication local_auth
exec-timeout 5 0
transport output telnet
line aux 0
login authentication local_auth
exec-timeout 10 0
transport output telnet
line vty 0 4
login authentication local_auth
transport input telnet
login block-for 300 attempts 3 within 300
ip domain-name meister.cm
crypto key generate rsa general-keys modulus 1024

ip ssh time-out 60
ip ssh authentication-retries 2
line vty 0 4
transport input ssh telnet

service timestamps debug datetime msec localtime show-timezone
service timestamps log datetime msec localtime show-timezone
logging facility local2
logging trap debugging
service sequence-numbers
logging console critical
logging buffered

interface FastEthernet0/0
no ip redirects
no ip proxy-arp
no ip unreachables
no ip directed-broadcast
no ip mask-reply
no mop enabled

interface FastEthernet0/1
no ip redirects
no ip proxy-arp
no ip unreachables
no ip directed-broadcast
no ip mask-reply
no mop enabled

interface FastEthernet1/0
no ip redirects
no ip proxy-arp
no ip unreachables
no ip directed-broadcast
no ip mask-reply
no mop enabled

interface FastEthernet2/0
no ip redirects
no ip proxy-arp
no ip unreachables
no ip directed-broadcast
no ip mask-reply
no mop enabled

interface FastEthernet3/0
no ip redirects
no ip proxy-arp
no ip unreachables
no ip directed-broadcast
no ip mask-reply
no mop enabled
ip cef

access-list 100 permit udp any any eq bootpc

interface FastEthernet0/0
ip verify unicast source reachable-via rx allow-default 100
ip tcp intercept list autosec_tcp_intercept_list
ip tcp intercept drop-mode random
ip tcp intercept watch-timeout 15
ip tcp intercept connection-timeout 3600
ip tcp intercept max-incomplete low 450
ip tcp intercept max-incomplete high 550
!

end

Il nous demande ensuite si on veut appliquer l’ensemble des configurations sur le routeur. Nous répondons « yes » (ou on valide juste avec la touche « Entrée », « yes » étant le choix par défaut).

R1#Apply this configuration to running-config ? [yes]:

Ce choix va aussi générer une paire de clés SSH pour toute connexion à distance en direction du routeur.

Si vous souhaitez afficher de nouveau la configuration AutoSecure avant de l’appliquer, vous pouvez relancer cette commande

R1#show auto secure config

Et, on n’oublie surtout pas de copier toute la configuration dans la NVRAM du routeur pour que ce dernier la reconnaisse et la recharge lors d’un éventuel redémarrage.

R1#copy running-config startup-config

On peut, par exemple, redémarrer le routeur et aller vérifier la configuration avec la commande « show configuration ». On pourra aussi remarquer la présence du message de bannière et qu’il est désormais obligé de s’authentifier (login et mot de passe) pour avoir accès au routeur.

R1#show configuration

III. Conclusion

Vous savez désormais utiliser la commande « auto secure » sous Cisco. Si cette commande peut être vue ici comme un véritable « rappel mémoire », elle peut aussi nous faire gagner un temps fou en passant rapidement d’autres commandes qu’on aurait pu oublier ou même ignorer, à notre place.

Par ailleurs, la configuration faite par auto secure n’est pas du tout dogmatique et est juste à titre indicatif, c’est-à-dire qu’on peut, si on le souhaite, la conserver, la modifier ou tout simplement l’ignorer !

author avatar
Emile Fabrice ATANGANA ADZABA Technicien Informatique et Réseau
Technicien Informatique et Réseau, Gérant et Directeur Technique chez MEISTER INFORMATIK, une entreprise de services numériques basée à Yaoundé au Cameroun, spécialisée dans l'installation, la maintenance et le suivi des parcs informatiques des PME et des particuliers.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.