Mettre en place du HSRP

HSRP ou Hot Standby Routing Protocol permet de mettre en place une passerelle réseau hautement disponible. L’adresse IP de la passerelle est configurée sur deux routeurs, l’un des routeurs prendra un rôle « actif » et le second un rôle « passif ». En résumé, l’HSRP permet de configurer l’adresse IP virtuelle 192.168.0.254/24 sur un premier routeur possédant l’adresse IP physique 192.168.0.253/24 et sur un second possédant l’adresse IP physique 192.168.0.252/24. La communication liée au protocole HSRP entre les routeurs se fait par l’envoi de paquets multicast à l’adresse IP 224.0.0.2 vers le port UDP 1985. Cela permet principalement d’élire le routeur actif et de tester sa présence.

HSRP et la sécurité

HSRP pose deux problèmes majeurs :

  • L’acceptation des paquets unicast sur le port UDP 1985 (bien qu’il fonctionne en multicast) ce qui permet de facilement diriger des attaques.
  • L’envoi du mot de passe d’authentification en clair (donc lisible si l’on effectue une capture réseau).

Voici quelques tricks pour renforcer la sécurité autour d’HSRP :

  • Ne pas utiliser le groupe par défaut d’HSRP.
  • Utiliser un système de hachage pour le mot de passe d’authentification.
  • Appliquer une ACL pour autoriser uniquement le multicast sur le port UDP 1985 (n’oubliez pas qu’une ACL possède un « deny any any » implicite à la fin).

Mise en place

Tout d’abord voici la topologie :

Topologie d'exemple HSRP

Configuration à appliquer sur R1 :

interface FastEthernet0/0
 ip address 192.168.0.253 255.255.255.0
 ip access-group ACL-HSRP in
 standby 200 ip 192.168.0.254
 standby 200 preempt
 standby 200 authentication md5 key-string horizond
!
ip access-list extended ACL-HSRP
# On autorise uniquement les paquets provenant de R2 à destination du groupe multicast
 permit udp host 192.168.0.252 host 224.0.0.2 eq 1985

Configuration à appliquer sur R2 :

interface FastEthernet0/0
 ip address 192.168.0.252 255.255.255.0
 ip access-group ACL-HSRP in
 standby 200 ip 192.168.0.254
 standby 200 preempt
 standby 200 authentication md5 key-string horizond
!
ip access-list extended ACL-HSRP
# On autorise uniquement les paquets provenant de R1 à destination du groupe multicast
 permit udp host 192.168.0.253 host 224.0.0.2 eq 1985

Comme je j’ai dit un peu plus haut, attention avec les ACL car si vous en mettez une en place uniquement pour l’HSRP, le « deny any any » implicite situé à la fin risque de vous bloquer le reste du trafic !