En los switches Cisco es posible asegurar un puerto mediante el comando
switchport port-security
en el modo de configuración de interfaz. Si usamos el comando sin más, sin valores adicionales, garantizamos que en ese mismo puerto solo pueda haber conectado un único host (o lo que es lo mismo, que la conexión se restrinja a una MAC, una dirección física), imposibilitando el uso de hubs o switches conectados a dicho puerto. Si esa regla es violada y por el puerto se ve más de una MAC, el switch tirará el puerto. Para asegurar por ejemplo la interfaz FastEthernet0/1 de un switch Cisco deberíamos hacer lo siguiente:
SW1#conf t
SW1(config)#interface fastEthernet 0/1
SW1(config-if)#switchport port-security
Command rejected: FastEthernet0/1 is a dynamic port.
Ahora bien, hemos intentado habilitar la seguridad en el puerto FastEthernet0/1 pero el comando ha sido rechazado, informándosenos de que dicho puerto es dinámico. ¿Qué significa esto? Si hacemos un show interface switchport de dicho puerto obtenemos esta información:
SW1#show interfaces fastEthernet 0/1 switchport
Name: Fa0/1
Switchport: Enabled
Administrative Mode: dynamic auto
Operational Mode: static access
.
.
.
Vemos que el Administrative Mode del switchport está a auto. El modo administrativo define el modo de trunking del puerto, es decir, si el puerto va a funcionar en modo acceso (access mode), permitiendo el paso de una única VLAN, o en modo trunk, permitiendo el paso de múltiples VLANs. Existe además el modo dinámico en que el puerto es configurado de manera automática como acceso o como trunk según el switch detecte lo que hay conectado a ese puerto. En la captura anterior podemos ver que el Operational Mode es static access porque el switch ha detectado que el equipo conectado a ese puerto funciona en modo acceso. Para equipos finales como PCs lo normal es utilizar el modo acceso a secas, por lo que podemos cambiar sin problemas el modo del switchport:
SW1#conf t
SW1(config)#interface fastEthernet 0/1
SW1(config-if)#switchport mode ?
access Set trunking mode to ACCESS unconditionally
dynamic Set trunking mode to dynamically negotiate access or trunk mode
trunk Set trunking mode to TRUNK unconditionally
SW1(config-if)#switchport mode access
Ahora podemos ver que el modo administrativo (además del modo operacional) es static access:
SW1#show interfaces fastEthernet 0/1 switchport
Name: Fa0/1
Switchport: Enabled
Administrative Mode: static access
Operational Mode: static access
.
.
.
Ahora sí vamos a poder habilitar la seguridad:
SW1#conf t
SW1(config)#interface fastEthernet 0/1
SW1(config-if)#switchport port-security
SW1(config-if)#
Hay que recordar que el comando, sin más parámetros, permite el paso de un único host (una sola MAC) y que cuando se detecta más de una el puerto es tirado por el switch. Veámoslo con un ejemplo.
Tenemos el siguiente segmento de red, con un switch (SW1) al que va conectado un hub (Hub0) a través del puerto FastEthernet0/2, hub al que a su vez hay conectado un host (PC0). Hay un host adicional (PC2) que de momento no está conectado al hub. A qué puertos concretos del hub están conectados los hosts es irrelevante.
De momento el switch ve a través del puerto FastEthernet0/2 una sola MAC, la de PC0. La MAC que ve a través del puerto FastEthernet0/1 es irrelevante para el caso.
SW1#show mac-address-table
Mac Address Table
-------------------------------------------
Vlan Mac Address Type Ports
---- ----------- -------- -----
1 0060.2f7d.5401 DYNAMIC Fa0/1
1 00d0.97ea.6c5a STATIC Fa0/2
La norma es que no deben usarse hubs para agregar hosts por los
conocidos problemas de colisiones y de bajada del rendimiento en el
segmento al que pertenecen. Si como administradores de la red hemos
decidido que en la organización no se usarán hubs para agregar equipos,
tiene sentido que habilitemos la seguridad en los puertos para equipos
finales y evitar precisamente situaciones como esta, en la que posiblemente alguien ha conectado el hub de manera no autorizada y con fines desconocidos. Hemos habilitado la seguridad del puerto en FastEthernet0/2:
SW1#conf t
SW1(config)#interface fastEthernet 0/2
SW1(config-if)#switchport port-security
SW1(config-if)#
Veamos qué ocurre en cuanto conectamos el host PC2 al hub:
El puerto ha caído instantáneamente y el segmento con los hosts ha quedado aislado. En el switch tenemos la siguiente salida:
SW1#
%LINK-5-CHANGED: Interface FastEthernet0/2, changed state to administratively down
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/2, changed state to down
Si hacemos un show interface a la interfaz:
SW1#show interfaces fastEthernet 0/2
FastEthernet0/2 is down, line protocol is down (err-disabled)
Hardware is Lance, address is 000a.41a4.8602 (bia 000a.41a4.8602)
BW 100000 Kbit, DLY 1000 usec,
reliability 255/255, txload 1/255, rxload 1/255
.
.
.
Vemos que la razón de la caída del puerto es err-disabled, que es un código genérico para distintos tipos de motivos por los que el switch puede tirar un puerto, Port Security incluido. Para rehabilitar el puerto necesitamos primero desconectar fisicamente uno de los hosts y realizar primero un shutdown y luego un no shutdown del puerto, con lo que se restaura la situación inicial:
SW1#conf t
SW1(config)#interface fastEthernet 0/2
SW1(config-if)#shut
%LINK-5-CHANGED: Interface FastEthernet0/2, changed state to administratively down
SW1(config-if)#no shut
%LINK-5-CHANGED: Interface FastEthernet0/2, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/2, changed state to up
Maravilloso sitio, me han ayudado mucho
ResponderEliminarEsplendido!
ResponderEliminarexcelente
ResponderEliminarComo vuelvo al modo dynamico una vez que se habilita el modo de acceso
ResponderEliminarSi quieres volver a poner un puerto en modo dinámico tienes que introducir estos comandos dentro del puerto:
Eliminarno switchport nonegotiate
switchport mode dynamic auto
al usar interface fa0/18, shut y luego no shut no hace nada se queda en down
ResponderEliminarx2
ResponderEliminar