¿Cómo establecer el SSID de una red wireless como condición en una regla del NPS?

 

Hola a todos,

Habitualmente, el tipo de condición que se suele establecer en una Network Policy del NPS suele ser la de membresía de grupo (Usuario o Equipo, nunca ambas a la vez) del Directorio Activo.

Sin embargo, existen escenarios en los que la personalización de cada entorno puede requerir que se filtre un intento de autenticación dependiendo de la red wireless desde la que llega la petición al NPS.

¿Cómo hacemos para controlar esta condición?

En este caso, utilizando un atributo RADIUS llamado Called-Station-ID.

Como sabemos, todos los paquetes de una red Wireless contienen un string de hasta 32 caracteres denominado SSID (Service Set IDentifier) que actúa como "etiqueta" para identificarlos unívocamente como parte de una red en particular.

Es posible también, con la electrónica de red adecuada, encontrarnos entornos en los que el SSID se configura como oculto.

(Para este último caso, la información de este post no aplicaría).

Durante el proceso de autenticación 802.1x, es tarea exclusiva de los controladores/puntos de acceso incluir, junto a otros atributos RADIUS, Called-Station-ID.

Dicho campo contendrá el valor alfanumérico que corresponde con el SSID de la red.

Como ejemplo, os incluimos un artículo de un fabricante que explica cómo hacer configurarlo:

Restrict WLAN Access based on SSID with WLC

https://www.cisco.com/en/US/tech/tk722/tk809/technologies_configuration_example09186a00807669af.shtml

Una vez configurado, y tomando una captura de red con un sniffer (Network Monitor o Wireshark), podemos comprobar fácilmente si el atributo está siendo enviado o no:

 

Detalle de un mensaje Access-Request enviado por un cliente y recibido en el NPS

-Radius: Access Request, Id = 192, Length = 145
    MessageType: Access Request, 1(0x01)
    Identifier: 192 (0xC0)
    AllLength: 145 (0x91)
    Authenticator: 0F D5 B2 56  72 5B 5B 49  2E B1 90 8B  2C DB 0A A5
  + AttributeUserName: usuario_prueba
  + AttributeUserPassword:
  + AttributeServiceType: Login, 1(0x1)
  + AttributeNasIPAddress: 10.22.11.1
  + AttributeNasPort: 13
  + AttributeNASIdentifier: wlc_01
  + AttributeRadiusNASPortType: Wireless - IEEE 802.11, 19(0x13)
  + AttributeVendorSpecific:
  + AttributeStationID: 192.168.1.4
+ AttributeCalledStationID: SSID_Pruebas
  + AttributeMessageAuthenticator:

Una vez creado, procederíamos a crear la Network Policy junto a esta condición de la siguiente manera:

clip_image002

Nota: En caso de establecer expresiones regulares a la hora de comprobar el contenido del atributo RADIUS, os recomendamos tener en cuenta el siguiente fix y proceder a instalarlo en nuestros servidores NPS en caso de tratarse de Windows Server 2008 R2.

2599437 - Wildcard characters or regular expressions do not work in the "Called Station ID" field and the "Calling Station ID" field when you configure NPS network policy in Windows Server 2008 R2

https://support.microsoft.com/kb/2599437/EN-US

Y por último, nos queda comprobar el acceso correcto una vez configurada la infraestructura completa.

Esperamos que esta información os haya sido útil. Hasta otra!

Javi Rama