Aprovechando que he cambiado de trabajo y ahora estoy en la industria con una empresa integradora, quisiera mencionar un poco de lo que he estado haciendo: Cisco NAC Appliance. Éste producto es un software (acompañado de unos servidores especializados) que permite controlar centralizadamente una infraestructura de switches para limitar el acceso de los usuarios registrados, incluso más, con la instalación de un agente local en los PCs, se puede limitar el acceso a la red si no se tienen actualizaciones de software definidas por una política de seguridad de red. Disfrútenlo.
¿Qué es Cisco NAC Appliance?
Como decía en la introducción, Cisco NAC appliance es un conjunto de elementos que sirven para controlar el acceso a una red corporativa. La idea consiste en que los switches son controlados centralizadamente por los servidores y permiten o niegan el acceso según criterios definidos en una política.
La solución consiste en tres componentes principales:
- Cisco NAC Servers , llamados CAS por sus siglas.
- Cisco NAC Managers o CAM.
- Cisco NAC Agent.
Cada uno de estos elementos tiene un papel diferente en el control especificado. Tanto CAM como CAS son servidores especializados, aunque se puede compara una solución de sólo software. Los CASs se comunican con los switches y reciben el tráfico de los usuarios de la red, analizan la política mediante una comunicación con el CAM y obligan su cumplimiento mediante el control de los switches.
Los CAM son servidores que almacenan toda la información de los usuarios y los CAS. Éstos permiten controlar casi completamente un conjunto de CASs. Prácticamente toda la configuración, operación y control de la solución se hace mediante los CAM, en los CAS sólo se configuran unos parámetros necesarios para comunicarse con los CAM.
Finalmente, el agente NAC es un programa liviano que se ejecuta en sistemas operativos Windows y MAC. Éste permite que la solución conozca características específicas del S.O. en el cual se ejecuta, por ejemplo, la versión del antivirus y su base de datos, la configuración de las actualizaciones y las actualizaciones aplicadas entre otras. Si se configura una política, el agente evalúa si la estación que se conecta a la red cumple con la política y le ofrece la opción de remediación en la cual sólo se puede acceder a los recursos necesarios (servidor de actualizaciones o antivirus).
¿Cómo funciona?
Cisco NAC Appliance establece comunicaciones seguras entre los CAS y los CAMs, los CAS establecen una comunicación SNMP con los switches de la red y mediante ésta, reconfigura los puertos según sea necesario. Los CAS tienen interfaces confiables y no confiables, en las confiables está la red de acceso pleno, en la no confiable estarán todos los clientes que apenas ingresan a la red y por ende están sujetos a la verificación del cumplimiento de la política. El acceso a éstas interfaces se hace mediante VLANs confiables o no confiables. Una vez que el cumplimiento de la política ha sido evaluada por la el agente y enviada a los servidores, éstos deciden si el PC queda en vlan confiable, de remediación, en cuarentena o de invitados. El control está dado por la comunicación snmp entre los CAS y los switches y por un protocolo propietario llamado SWISS entre los agentes NAC y los CAS/CAM.
La idea básica es que los switches tienen sus puertos configurados por defecto en la vlan no confiable, cuando un PC se conecta, éste empieza a enviar unos paquetes de descubrimiento hasta encontrar en NAS, cuando lo encuentra envía las credenciales del usuario, el NAS responde enviando la política y el agente empieza a recopilar la información necesaria, la reenvía al NAS. Si la información recopilada cumple con la política establecida, el NAS cambia la vlan a una vlan confiable dependiendo de varios criterios, por ejemplo, el nombre de la vlan original o un mapeo predeterminado de vlans confiables a no confiable.
Si el PC que se quiere conectar no tiene un agente NAC, la solución ofrece un agente Web que puede ser un applet JAVA o un control Activex. Cuando el PC intenta acceder a la página aparece un portal cautivo que sólo permite ingresar credenciales y ejecutar uno de los agentes web. Éstos tienen limitaciones comparados con el agente nativo, pero igual se puede controlar el acceso y analizar vulnerabilidades de red del PC.
¿Qué puede hacer la solución?
A éstas alturas, ya está claro que puede hacer: bloquear el acceso a la red según unos criterios. Los criterios son muy diversos, por ejemplo, si se usa una base de datos centralizada como Active Directory o Radius, el usuario sólo puede acceder si está registrado en ellas e ingresa credenciales válidas. Obviamente, también se puede manejar una base de datos de usuarios locales. Dado éste comportamiento, es obvio que habrá que ingresar credenciales dos veces: para ingresar al PC y para tener acceso a la red. Con las variantes de Windows se puede evitar éste comportamiento usando unos protocolos de cifrado especiales que permiten hacer Single Sign-On (SSO por sus siglas).
Como ya mencioné anteriormente, el agente puede verificar la configuración de las actualizaciones de windows y obligar que sólo quienes tengan activa la actualización automática pueden tener acceso pleno a la red. La configuración de lo que Cisco llama postures es compleja y requiere una serie de requerimientos, chequeos y reglas, para facilitar el trabajo, Cisco ofrece paquetes de actualización regulares con las últimas vulnerabilidades detectadas y la preconfiguración de tales requerimientos. Por ende, la plataforma obliga a cosas como actualizaciones específicas de Windows.
Finalmente, una de las características más sofisticadas de la plataforma, que no es usada con frecuencia es el análisis de red (network scanning). Mediante un análisis de los puertos y servicios abiertos en el PC, se puede limitar el acceso si, por ejemplo, se detecta que éste tiene abierto un puerto TCP/UDP que se sabe que es vulnerable o que tiene un puerto que se asocia con un virus o un troyano, de tal manera que se puede limitar el acceso en tal caso de manera preventiva.
Conclusión
La solución Cisco NAC es una forma proactiva de intervenir la infraestructura para prevenir accesos no permitidos o evitar vulnerabilidades conocidas.
Es una solución muy compleja y altamente escalable, que centraliza la operación de una red de switches Cisco. En futuras entregas les escribiré sobre detalles más técnicos como las posibles arquitecturas (en banda -IB, fuera de banda -OOB, capa 2/3 y puerta de enlace virtual/real -VGW/RGW).
Referencias:
- Cisco NAC Appliance: página oficial del producto.
Soy alumno CCNA1 de Cisco y su web se torna muy interesante. Se agradece.