← Réseaux

Sécurité de la commutation : DTP, port security, EtherChannel

Sommaire

Le niveau 2 est souvent le parent pauvre de la sécurité, alors que c'est par là qu'on entre. Trois mécanismes à maîtriser : la négociation de trunk, le filtrage par adresse MAC, et l'agrégation de liens.

1. DTP et négociation de trunk

DTP (Dynamic Trunking Protocol) est un protocole propriétaire Cisco qui permet à deux ports de négocier automatiquement la formation d'un trunk.

ModeCommandeComportement
desirableswitchport mode dynamic desirableCherche activement à établir un trunk
autoswitchport mode dynamic autoAttend qu'on lui propose un trunk
trunkswitchport mode trunkSe comporte directement comme un trunk
accessswitchport mode accessReste dans un seul VLAN, refuse le trunk

Matrice des combinaisons

Côté ACôté BRésultat
autoautoPas de trunk — les deux attendent
desirableautoTrunk
desirabledesirableTrunk
trunkautoTrunk
trunktrunkTrunk
trunkaccessIncohérence — un côté tague, l'autre non
accessn'importe lequelPas de trunk

Deux réponses à retenir : le trunk se forme automatiquement dès qu'au moins un côté est desirable ou trunk ; il ne se forme pas si les deux sont en auto (personne n'initie) ou si un côté est en access (refus).

Le cas trunk / access est le plus instructif : le lien monte, mais les VLAN ne traversent pas correctement. Le côté trunk envoie des trames taguées que le côté access ne sait pas interpréter ; seul le trafic du VLAN natif passe. Deux PC dans le même VLAN sur des switches différents ne se pingent plus.

show interfaces trunk                    ! trunks actifs, VLAN autorisés, VLAN natif
show interfaces fa0/24 switchport        ! mode administratif et mode négocié

2. VLAN hopping

Si un attaquant parvient à convaincre le commutateur de former un trunk avec son PC, il reçoit le trafic de tous les VLAN autorisés sur ce lien — et peut émettre dans n'importe lequel. C'est une élévation de privilèges au niveau 2 : l'isolation logique construite par les VLAN tombe d'un coup.

Deux variantes :

3. Le VLAN natif

Le VLAN natif est celui dont les trames circulent sans étiquette sur un trunk.

configure terminal
 vlan 60
  name NATIF
 exit
 interface gigabitEthernet 0/1
  switchport mode trunk
  switchport trunk native vlan 60
  switchport trunk allowed vlan 10,20,30,40,50
 exit
end

Le test du VLAN natif désaligné

Si l'on configure un VLAN natif différent de chaque côté du trunk, le trafic non tagué d'un côté est interprété comme appartenant à un autre VLAN de l'autre côté. Deux machines censées être dans le même réseau ne communiquent plus, et le trafic atterrit dans un VLAN qui ne le concerne pas — ce qui est une fuite.

CDP signale l'incohérence par un message Native VLAN mismatch. Le lien reste pourtant actif : c'est une erreur silencieuse en apparence, et grave dans les faits.

Trois règles, systématiquement attendues en compte rendu :

Le VLAN blackhole

Complément de la même logique : on crée un VLAN BLACKHOLE (par exemple l'identifiant 70), sans aucun accès ni passerelle, et l'on y place tous les ports non utilisés. Un port libre devient ainsi inexploitable, même si quelqu'un y branche un câble. C'est l'application du moindre privilège au commutateur.

4. Durcir les ports utilisateurs

configure terminal
 interface range fastEthernet 0/1 - 20
  switchport mode access                 ! interdit toute négociation de trunk
  switchport access vlan 10
  switchport nonegotiate                 ! coupe l'émission de trames DTP
  spanning-tree portfast                 ! passage immédiat en forwarding
  spanning-tree bpduguard enable         ! désactive le port si un BPDU arrive
 exit
end
MesureCe qu'elle empêche
switchport mode accessLe VLAN hopping par négociation DTP
switchport nonegotiateL'émission de trames DTP, qui renseignent l'attaquant
bpduguardQu'un switch pirate s'insère dans l'arbre spanning-tree
VLAN blackhole sur les ports libresLe branchement sauvage sur une prise inutilisée
shutdown des ports inutilisésTout usage, la mesure la plus radicale
Port securityLe branchement d'un équipement non autorisé

5. Port Security

Le principe est de limiter quelles adresses MAC ont le droit d'apparaître sur un port. Le commutateur n'autorise par exemple qu'une seule MAC : celle du poste attendu.

configure terminal
 interface fastEthernet 0/5
  switchport mode access
  switchport port-security
  switchport port-security maximum 1
  switchport port-security mac-address sticky
  switchport port-security violation shutdown
 exit
end

show port-security
show port-security interface fastEthernet 0/5
OptionEffet
maximum 1Une seule MAC autorisée sur le port
mac-address stickyLe switch apprend la MAC présente et l'inscrit dans sa configuration — évite de la saisir à la main
mac-address aaaa.bbbb.ccccMAC autorisée fixée explicitement

Les trois modes de violation

ModeTrafic non autoriséPortCompteurAlerte SNMP
protectRejetéReste actifNonNon
restrictRejetéReste actifOuiOui
shutdown (défaut)Rejetéerr-disabledOuiOui

En mode shutdown, le port passe en état err-disabled : il est éteint administrativement et ne se rallume pas tout seul. Remise en service :

configure terminal
 interface fastEthernet 0/5
  shutdown
  no shutdown
 exit
end
AvantagesLimites
Simple à mettre en œuvre, sans infrastructure supplémentaireUne MAC s'usurpe facilement : c'est un filtre, pas une authentification
Bloque le branchement d'un équipement non autoriséLe remplacement d'un PC légitime exige une intervention manuelle
Détecte les déplacements de postesAdministration lourde sur un grand parc
Contre la saturation de la table CAMIncompatible avec certains usages (postes partagés, VM)

Pour une vraie authentification au niveau du port, la réponse est 802.1X : le poste doit présenter des identifiants à un serveur RADIUS avant d'obtenir le moindre accès. Port security relève de l'hygiène, 802.1X de la sécurité.

6. EtherChannel

Un EtherChannel regroupe plusieurs liens physiques entre les mêmes deux commutateurs pour n'en former qu'un seul lien logique.

configure terminal
 interface range fastEthernet 0/23 - 24
  channel-group 1 mode on          ! agrégation statique
 exit

 interface port-channel 1
  switchport mode trunk
  switchport trunk allowed vlan 10,20,30,40,50
  switchport trunk native vlan 60
 exit
end

show etherchannel summary
show interfaces port-channel 1
ModeProtocoleComportement
onAucunAgrégation forcée, aucune vérification — les deux côtés doivent être en on
active / passiveLACP (802.3ad, standard)Négociation, interopérable multi-constructeurs
desirable / autoPAgP (Cisco)Négociation propriétaire

Répartition de charge

configure terminal
 port-channel load-balance src-dst-ip      ! ou src-mac, dst-mac, src-dst-mac...
end
show etherchannel load-balance

Point à comprendre : la répartition se fait par flux, pas par paquet. Un algorithme de hachage sur les adresses choisit le lien physique, et tous les paquets d'une même conversation empruntent donc le même lien. Cela garantit l'ordre d'arrivée, mais signifie aussi qu'un transfert unique ne dépassera jamais le débit d'un seul lien. L'agrégation augmente le débit cumulé, pas le débit d'une conversation isolée.

Conditions de formation, souvent source d'échec en TP : tous les ports du canal doivent avoir la même vitesse, le même duplex, le même mode (access ou trunk), la même liste de VLAN autorisés et le même VLAN natif. La moindre divergence empêche le canal de monter, et show etherchannel summary affiche alors un port en (s) — suspended.

À retenir