INSTITUTO POLIT´
ECNICO NACIONAL
ESCUELA SUPERIOR DE C ´
OMPUTO
ESCOM
Trabajo Terminal
“Sistema de Control de Acceso a la Red a trav´
es del Switch
Enterasys A2H124”
2012-B015
Que para cumplir con la opci´
on de titulaci´
on curricular en la carrera de:
“Ingenier´ıa en Sistemas Computacionales”
Presentan:
Cruz Orozco Jonathan Abimael
Mart´ın del Campo Rodr´ıguez Carolina
Director:
Ing. Guti´
errez Aldana Eduardo
INSTITUTO POLIT´
ECNICO NACIONAL
ESCUELA SUPERIOR DE C ´
OMPUTO
SUBDIRECCI ´
ON ACAD´
EMICA
No. de Registro: 2012-B015
Serie: Amarilla
Diciembre de 2013
Documento T´
ecnico
“Sistema de Control de Acceso a la Red a trav´
es del Switch
Enterasys A2H124”
Presentan:
Cruz Orozco Jonathan Abimael
1Mart´ın del Campo Rodr´ıguez Carolina
2Director:
Ing. Guti´
errez Aldana Eduardo
Advertencia
“Este documento contiene informaci´
on desarrollada por la Escuela Superior
de C´
omputo del Instituto Polit´
ecnico Nacional, a partir de datos y documentos
con derecho de propiedad y por lo tanto, su uso quedar´
a restringido a las
apli-caciones que expl´ıcitamente se convengan.”
La aplicaci´
on no convenida exime a la escuela su responsabilidad t´
ecnica y da
lugar a las consecuencias legales que para tal efecto se determinen.
Informaci´
on adicional sobre este reporte t´
ecnico podr´
a obtenerse en:
Agradecimientos
Le doy gracias a mis padres Alfonso Cruz Victoria y Catalina Orozco Ayala,
quienes con su apoyo y compromiso me demostraron que nada es imposible,
gra-cias a mis hermanos Gerardo, Angelica y Alfonso que apesar de los problemas
siempre me apoyaron moralmente y por ´
ultimo pero no menos importante,
gra-cias a Lucero Gallardo Cruz quien siempre me apoyo, brindandome su amistad,
comprensi´
on y amor.
Gracias a todas las personas que marcaron mi car´
acter y mi manera de pensar,
les deseo lo mejor.
Cruz Orozco Jonathan Abimael.
Agradezco a mis padres, por todo el apoyo que me han brindado durante la
carrera. A mis hermanos, por su ayuda siempre que la necesitaba. A los profesores
de la ESCOM, que dieron parte de su tiempo para mi formaci´
on acad´
emica. Y
finalmente a mis compa˜
neros y amigos de la ESCOM, con quienes compart´ı estos
a˜
nos.
´
Indice general
1. Introducci´on 1
1.1. Planteamiento del problema . . . 1
1.2. Estado del arte . . . 1
1.2.1. FreeNAC . . . 2
1.2.2. Cisco NAC Appliance . . . 2
1.2.3. Packetfence . . . 3
1.3. Descripci´on del sistema SCARSE-A2H124 . . . 5
1.4. Objetivo . . . 6
1.4.1. Objetivo General . . . 6
1.4.2. Objetivos espec´ıficos . . . 6
1.5. Justificaci´on . . . 6
1.6. Metodolog´ıa . . . 7
2. Marco Te´orico 8 2.1. Redes Locales Virtuales (VLAN) . . . 8
2.1.1. Clasificaci´on de las VLANs de acuerdo a su configuraci´on . . . 8
2.1.2. Clasificaci´on de las VLAN’s de acuerdo a su implementaci´on . . . 8
2.1.3. Estandarizaci´on en VLAN’s . . . 11
2.2. Puertos espejo . . . 12
2.3. Tarjeta de red virtual . . . 13
2.4. Puente de red . . . 13
2.5. Protocolos . . . 14
2.5.1. TELNET . . . 14
2.5.2. SSH . . . 14
2.5.3. GVRP (GARP VLAN Registration Protocol) . . . 15
2.5.4. SNMP . . . 16
2.5.5. DHCP . . . 16
2.5.6. DNS . . . 17
2.6. RMON . . . 18
3. An´alisis 19 3.1. An´alisis de riesgos . . . 19
´
INDICE GENERAL
4.2.5. CU4 Mover equipos de VLAN . . . 36
4.2.6. CU5 Administrar reglas . . . 38
4.2.7. CU6 Crear regla . . . 39
4.2.8. CU7 Editar regla . . . 41
4.2.9. CU9 Eliminar regla . . . 43
4.2.10. CU8 Configurar alertas . . . 44
4.2.11. CU10 Consultar reporte . . . 45
4.2.12. CU11 Registrar administrador secundario . . . 46
4.2.13. CU12 Registrar usuario . . . 48
4.2.14. CU13 Recuperar contrase˜na . . . 50
4.2.15. CU14 Informar alerta . . . 52
4.3. Diagramas de actividades . . . 53
4.3.1. DA0. Iniciar sesi´on . . . 53
4.3.2. DA1. Administrar equipo en VLAN . . . 55
4.3.3. DA2. Limitar acceso a servidores . . . 57
4.3.4. DA3. Consultar equipos en VLAN . . . 59
4.3.5. DA4. Mover equipos de VLAN . . . 61
4.3.6. DA6. Crear regla . . . 63
4.3.7. DA7. Editar regla . . . 65
4.3.8. DA8. Configurar m´etodo de alerta . . . 67
4.3.9. DA9. Eliminar regla . . . 69
4.3.10. DA10. Consultar reporte . . . 71
4.3.11. DA11. Registrar administrador secundario . . . 73
4.3.12. DA12. Registrar usuario . . . 75
4.3.13. DA13. Recuperar contrase˜na . . . 77
4.3.14. DA14. Informar alerta . . . 79
4.4. Base de datos . . . 81
4.4.1. Diccionario de datos . . . 82
4.5. Dise˜no visual de la interfaz . . . 85
4.5.1. Dise˜no de las vistas . . . 85
5. Desarrollo 90 5.1. Versi´on 1.0 . . . 90 5.2. Versi´on 1.1 . . . 91 5.3. Versi´on 1.2 . . . 93 5.4. Versi´on 1.3 . . . 94 5.5. Versi´on 1.4 . . . 95 6. Pruebas 97 6.1. Prueba 1: Familiarizaci´on con el Switch . . . 99
6.2. Prueba 2. Analizar el tr´afico de broadcast entre las VLAN’s . . . 100
6.3. Prueba 3: Implementaci´on de TELNET . . . 101
6.4. Prueba 4: Servidor DHCP . . . 104
6.4.1. Modificaci´on del archivo de configuraci´on . . . 104
6.4.2. Asignaci´on de IPs . . . 105
6.5. Prueba 5. Configuraci´on de un puerto en modo espejo . . . 108
6.6. Prueba 6. Configuraci´on de un puerto en modo trunk . . . 109
6.7. Prueba 7: Pruebas con el IDS Snort . . . 110
6.8. Prueba 8: Crear una regla en Snort . . . 112
6.9. Prueba 9: Crear VLAN’s desde el navegador . . . 114
6.10. Prueba 10: Implementaci´on de TELNET versi´on 2 . . . 115
6.11. Prueba 11: Comunicaci´on de Snort con el SCARSE-A2H124. . . 117
´
INDICE GENERAL
6.13. Prueba 13: Obtener la MAC de un equipo. . . 119
6.14. Prueba 15: Implementaci´on del servidor DNS. . . 120
6.15. Prueba 16: Creaci´on de reportes en formato PDF con la librer´ıa FPDF. . . 121
6.16. Prueba 17: Administraci´on de reglas en Snort. . . 123
6.17. Prueba 18: Env´ıo de correo electr´onico. . . 124
6.18. Prueba 19: Creaci´on de tajetas virtuales y puente. . . 125
Conclusiones 126
Glosario 128
Bibliograf´ıa 131
´
Indice de tablas
3.1. Riesgos en el desarrollo del sistema. . . 19
3.2. Requerimientos funcionales . . . 20
3.3. Requerimientos no funcionales . . . 20
3.4. Estudio de factibilidad . . . 21
3.5. Descripci´on t´ecnica del switch Enterasys A2H124 . . . 22
4.1. CU0 Iniciar sesi´on . . . 30
4.2. CU1 Administrar equipos en VLAN . . . 32
4.3. CU2 Limitar acceso a servidores . . . 33
4.4. CU3 Consultar equipos en VLANs . . . 35
4.5. CU4 Mover equipos de VLAN . . . 36
4.6. CU5 Administrar reglas . . . 38
4.7. CU6 Crear regla . . . 39
4.8. CU7 Editar regla . . . 41
4.9. CU9 Eliminar regla . . . 43
4.10. CU8 Configurar alertas . . . 44
4.11. CU10 Consultar reporte . . . 45
4.12. CU11 Registrar administrador secundario . . . 46
4.13. CU12 Registrar usuario . . . 48
4.14. CU13 Recuperar contrase˜na . . . 50
4.15. CU14 Informar alertas . . . 52
4.16. Tabla: tipo usuario . . . 82
4.17. Tabla: usuario . . . 82
4.18. Tabla: descripcion equipo . . . 82
4.19. Tabla: historial . . . 83
4.20. Tabla: registros . . . 83
4.21. Tabla: alerta . . . 83
4.22. Tabla: tipo alerta . . . 84
4.23. Tabla: alerta . . . 84
4.24. Tabla: alerta . . . 84
6.1. Resumen de pruebas . . . 98
´
Indice de figuras
2.1. Configuraci´on de VLAN’s est´aticas . . . 9
2.2. Configuraci´on de VLAN’s din´amicas . . . 10
2.3. Etiquetado de tramas seg´un la IEEE 802.1Q . . . 12
2.4. Partes de la etiqueta TAG . . . 12
4.1. Arquitectura de la interfaz . . . 27
4.2. Vista f´ısica del SCARSE-A2H124 . . . 28
4.3. Diagrama de casos de uso . . . 29
4.4. DA0. Iniciar sesi´on . . . 53
4.5. DA1. Administrar equipo en VLAN . . . 55
4.6. DA2. Limitar acceso a servidores . . . 57
4.7. DA3. Consultar equipos en VLAN . . . 59
4.8. DA4. Mover equipos de VLAN . . . 61
4.9. DA6. Crear regla . . . 63
4.10. DA7. Editar regla . . . 65
4.11. DA8. Configurar m´etodo de alerta . . . 67
4.12. DA9. Eliminar regla . . . 69
4.13. DA10. Consultar reporte . . . 71
4.14. DA4. Mover equipos de VLAN . . . 73
4.15. DA12. Registrar usuario . . . 75
4.16. DA13. Recuperar contrase˜na . . . 77
4.17. DA14. Informar alerta . . . 79
4.18. Diagrama de la base de datos . . . 81
4.19. Vista de inicio . . . 85
4.20. Vista de registro . . . 86
4.21. Vista de inicio de sesi´on . . . 87
4.22. Vista para limitar el acceso . . . 87
4.23. Vista para establecer la conexi´on con el switch . . . 88
4.24. Vista para establecer el m´etodo de notificaci´on . . . 88
4.25. Vista para la creaci´on de una regla de detecci´on . . . 89
5.1. Formulario para establecer la conexi´on con el switch . . . 90
´INDICE DE FIGURAS
Cap´ıtulo 1
Introducci´
on
Actualmente, el uso de redes computacionales es de gran importancia dentro de las micros, medianas y grandes empresas, tanto en sectores p´ublicos como privados.
Dentro de las empresas se puede compartir informaci´on de manera f´acil y r´apida, lo cual en ocasiones es aprovechado por personas pertenecientes o ajenas a la red que, con la finalidad de extraer informaci´on, acceden a equipos para conseguir datos importantes y hacer uso ilegal de estos.
El nivel de vulnerabilidad que tiene un equipo en la red es elevado, debido a programas malintencionados (virus, malware, gusanos, etc.). Los cuales provocan problemas a nivel software en los equipos y disminuyen la velocidad de comunicaci´on dentro de la red. Es por ello, que se debe de tener un control de acceso a la red y una mejor administraci´on del flujo de datos.
El proyecto pretende controlar el acceso de diferentes usuarios a la red mediante el registro de los equipos que est´en usando, as´ı como aislar a los equipos con un comportamiento anormal, esto mediante la segmentaci´on de la red, con el uso de VLANs, evitando la interrupci´on total de la comunicaci´on en la red. Adem´as, se har´a uso de un Sistema Detector de Intrusos (IDS) para el an´alisis de la informaci´on que pasa a trav´es del switch Enterasys A2H124 y as´ı encontrar al equipo que est´a generando conflictos.
1.1.
Planteamiento del problema
El crecimiento de las redes inform´aticas a facilitado a las personas el acceso a m´ultiples recursos alojados en Internet, lo cual en ocasiones es aprovechado por personas para adquirir y hacer mal uso de la informaci´on.
La principal preocupaci´on de las empresas es la p´erdida o el robo de informaci´on, por parte de personas pertenecientes o ajenas a la empresa. Esto se debe a m´ultiples factores como son:
Cap´ıtulo 1. Introducci´on
1.2.1.
FreeNAC
FreeNAC detecta dispositivos ’desconocidos’ que est´an tratando de obtener acceso a trav´es de un conector Ethernet, negando el acceso (y registrando el evento). Dispositivos conocidos y registrados son conectados a la red virtual que les da acceso a la red.
La asignaci´on de una red virtual se basa en la direcci´on MAC del dispositivo. Cuando un nuevo dispositivo es conectado al puerto del switch, su direcci´on MAC se pasa al servidor, donde ser´a almacenada y comprobada para determinar si este dispositivo tiene derecho de acceder a la red. Si el dispositivo est´a autorizado a tener acceso, el servidor le regresar´a al switch la red virtual a la que este dispositivo pertenece. Si este dispositivo to-dav´ıa no est´a registrado, su acceso es bloqueado o se coloca en una red virtual limitada, dependiendo de la pol´ıtica.
FreeNAC tiene dos modos de operaci´on: VMPS
802.1X
VMPS (VLAN Management Policy Server): Es un m´etodo para asignar puertos de un switch a redes virtuales espec´ıficas de acuerdo a la direcci´on MAC del dispositivo que busca acceso a la red. Un switch com-patible con VMPS detecta una nueva PC y crea una petici´on VMPS pidiendo autorizaci´on de FreeNAC, el cual revisa en su base de datos y permite o niega el acceso a la red bas´andose en la direcci´on MAC. El switch se encarga de hacer valer la decisi´on tomada por FreeNAC y niega acceso o en caso contrario, coloca el dispositivo de manera din´amica en su red virtual por omisi´on. El modo VMPS solo es soportado por switches Cisco.
802.1x: Es un est´andar creado por la IEEE para el control de acceso a redes bas´andose en el puerto del switch. Proporciona autentificaci´on a dispositivos conectados a un puerto de la red, estableciendo una conexi´on punto a punto o restringiendo el acceso en caso de que la autentificaci´on falle. En modo 802.1, FreeNAC verifica las credenciales de los usuarios (a trav´es del uso de un servidor de autentificaci´on externo) y usa la direcci´on MAC del dispositivo que se conecta para asignarlo a una red virtual. Esto crea un par de identificadores, nombre de usuario/dispositivo que es ´unico para cada cliente que se conecta.
Para un usuario malicioso no basta con saber ´unicamente la direcci´on MAC, sino que tambi´en debe de obtener credenciales v´alidas, lo cual hace m´as dif´ıcil el obtener acceso a la red.
FreeNac hace uso de mysql para la admnistraci´on (se instala por omisi´on al instalar FreeNac).
1.2.2.
Cisco NAC Appliance
Es un sistema de control de acceso a la red desarrollado por Cysco Systems, dise˜nado para producir un entorno de red limpio y seguro. Trabaja ´unicamente con equipos que tengan como sistema operativo alguna versi´on de Windows.
Funciones de Cisco NAC Appliance:
Impide el acceso no autorizado a la red para proteger sus activos de informaci´on. Ayuda a mitigar de modo activo las amenazas de la red, como virus, gusanos y spyware.
Soluciona vulnerabilidades en equipos de usuario a trav´es de la evaluaci´on peri´odica y remediacion. Conlleva un importante ahorro de costos mediante seguimiento autom´atico, reparaci´on y actualizaci´on de equipos.
Cap´ıtulo 1. Introducci´on
Eval´ua el cumplimiento de pol´ıticas de seguridad en funci´on del tipo de usuario, tipo de dispositivo y sistema operativo.
Hace cumplir las pol´ıticas de seguridad mediante el bloqueo, aislamiento y reparaci´on de maquinas no compatibles en el ´area de cuarentena sin necesidad de atenci´on del administrador.
Aplica la postura de servicios de evaluaci´on y reparaci´on para una variedad de dispositivos, sistemas oper-ativos y m´etodos de acceso a dispositivos, incluyendo LAN, WLAN, WAN y VPN.
Hace cumplir las pol´ıticas para todos los escenarios de operaci´on sin necesidad de productos independientes o m´odulos adicionales.
Proporciona autentificaci´on sin cliente web para los usuarios invitados.
Normalmente, el sistema instala una aplicaci´on conocida como el Agente Clean Access en equipos que se conec-tar´an a la red. El Clean Access Agent (abreviatura: CCAA, “Cisco Clean Access Agent”) reside en la m´aquina del cliente, adem´as de la autentificaci´on del usuario, las exploraciones de los parches y el software necesario.
Tras superar con ´exito la autentificaci´on a trav´es de una interfaz web, el servidor Clean Access se dirigir´a los clientes para descargar e instalar la aplicaci´on Clean Access Agent. Una vez instalado, el software del agente requerir´a al usuario que vuelva a autenticarse. Una vez que vuelva a autenticarse, el software del Agente revis-ar´a el equipo cliente en busca de vulnerabilidades conocidas dependiendo del sistema operativo que se utilice, para actualizar el software antivirus y las definiciones del agente. Los controles se mantienen como una serie de “reglas”del Clean Access Manager. El Administrador de Clean Access (CAM) se puede configurar para compro-bar, instalar o actualizar cualquier cosa en el sistema del usuario. Una vez que la aplicaci´on del agente comprueba el sistema, el Agente deber´a informar al usuario del resultado, ya sea con un mensaje de ´exito, o un mensaje de error (en caso de ser un mensaje fallido, se instruye al usuario sobre como proceder).
A cualquier sistema que no sea comprobado se le negar´a el acceso general a la red y es probable que se coloque en cuarentena. Para los sistemas en cuarentena, se suele dar una ventana despu´es de 60 minutos donde el usuario puede tratar de resolver el motivo (s) para la cuarentena. En tal caso, a el usuario s´olo se le permite la conectividad al sitio web de Windows Update y un n´umero de proveedores de antivirus (Symanctec, McAfee, Trend Micro, etc), o el usuario puede ser redirigido a un servidor de invitados (soluci´on que se puede agregar a Cisco NAC para integrar el acceso seguro de invitados) para la remediaci´on. El resto del tr´afico suele estar bloqueado. Una vez que la ventana 60-minutos expira, todo el tr´afico de red es bloqueado para este cliente. El usuario tiene la opci´on de volver a autenticarse con Clean Access de nuevo, y continuar el proceso seg´un sea necesario.
Cap´ıtulo 1. Introducci´on
El sistema Packetfence se basa en Linux. Ofrece funciones de vigilancia, detecci´on de intrusos y herramientas para poder proteger la red, entre las cuales se encuentran:
Captive portal: Esta modalidad se puede utilizar para obligar a los usuarios a iniciar sesi´on antes de que estos usen la red y puedan ver el contenido de esta con normalidad, convirtiendo un navegador web en un dispositivo de autentificaci´on, bloqueando todo el tr´afico de red Alerta y detecci´on de Malware. PacketFence puede trabajar con sensores remotos como Snort, que es un detector de intrusos basado en red que monitorea todo un dominio de colisi´on, por lo tanto es posible el aislamiento inmediato de las maquinas donde se detecta un comportamiento anormal.
Exploraci´on de las vulnerabilidades con Nessus: Puede utilizar el programa externo Nessus para ejecutar de manera peri´odica an´alisis de vulnerabilidad.
Aislamiento de dispositivos problem´aticos: Una de las varias t´ecnicas de aislamiento que soporta PacketFence es el aislamiento VLAN, donde los clientes problem´aticos podr´ıan ser movidos a una VLAN designada.
Caracter´ısticas principales:
Sitio web cautivo para autentificaci´on y registro de dispositivos que solicitan el acceso a la red. Detecci´on de actividades de la red anormales.
Exploraciones preventivas de vulnerabilidades. Aislamiento de los dispositivos problem´aticos. Servicio de DHCP.
Listado de potenciales BYOD. Control de acceso basado en roles.
Integraci´on de diferentes esc´aneres de vulnerabilidades y soluciones de detecci´on de intrusos. Ancho de banda controlada para cada dispositivo.
Soporte 802.1x.
Gesti´on centralizada de las redes tanto cableada como inal´ambrica.
Integraci´on con el sistema para la detecci´on de intrusos SNORT y NESSUS. Soporte VLAN y aislamiento de redes.
Cap´ıtulo 1. Introducci´on
1.3.
Descripci´
on del sistema SCARSE-A2H124
El sistema es capaz de controlar el acceso a la red, para as´ı evitar que un equipo desconocido pueda acceder a la misma. Permite al administrador decidir que m´aquinas tendr´an acceso a la red y que privilegios de navegaci´on tendr´a, esto mediante el manejo de VLAN’s.
Usuarios
El sistema maneja tres tipos de usuario, los cuales est´an clasificados en: administrador, administrador se-cundario y usuario de la red. A continuaci´on se describe de manera detallada la interacci´on de cada uno con el sistema.
Administrador
Despu´es de haber iniciado sesi´on, este usuario tendr´a acceso a la red y a todas las funcionalidades del sistema, las cuales son:
1. Administrar equipos en VLAN’s: Esto implica limitar acceso a servidores, consultar equipos en VLAN’s y mover equipos de VLAN.
2. Administrar reglas: crear regla (configurar alertas), eliminar regla, configurar regla. 3. Consultar reporte.
Administrador secundario:
Despu´es de iniciar sesi´on, este usuario tendr´a acceso a la red y a las siguientes funcionalidades del sistema: 1. Limitar el acceso a servidores de uno a varios equipos dentro de la red.
2. Restablecer la configuraci´on que ten´ıan los equipos antes de limitar el acceso a servidores. Usuario de la red: Cuando halla iniciado sesi´on, este usuario tendr´a acceso a la red.
El sistema hace uso de componentes de hardware y software. Realiza el monitoreo de la informaci´on que fluye a trav´es de la red y, en caso de detectar anomal´ıas provocadas por alg´un equipo interno o externo, procede a aislar a dicho equipo en una de las VLANs (dependiendo el problema que haya generado).
La descripci´on de estas VLANs se muestra a continuaci´on:
Cap´ıtulo 1. Introducci´on
1. Identificaci´on de usuarios para tener acceso al sistema
2. El IDS Snort estar´a monitoreando la informaci´on dentro de la red. 3. En caso de detectar alguna anomal´ıa, Snort notifica al SCARSE-A2H124.
4. El SCARSE-A2H124 solicita al switch Enterasys el puerto al cual esta conectado el ordenador.
5. Dependiendo del conflicto encontrado se mover´a a una de las VLANs al equipo que provoc´o tal conflicto. 6. Se notifica al administrador sobre el conflicto por uno de los 2 m´etodos de alerta (correo electr´onico o
mensaje emergente en la computadora del administrador -computadora donde se esta ejecutando SCARSE-A2H124-).
1.4.
Objetivo
1.4.1.
Objetivo General
Desarrollar un sistema que sea capaz de detectar y aislar a los equipos que muestren un comportamiento anormal dentro de una red que haga uso del switch enterasys A2H124; adem´as de controlar el acceso a la red.
1.4.2.
Objetivos espec´ıficos
Identificaci´on de los usuarios mediante un redireccionamiento.
Realizar la comunicaci´on del SCARSE-A2H124 con el sistema detector de intrusos SNORT. Realizar la comunicaci´on del SCARSE-A2H124 con el switch Enterasys A2H124.
Aislar equipos en una VLAN cuando el sistema detector de intrusos SNORT informe sobre alguna irregu-laridad.
Detectar la presencia de equipo no registrado en el SCARSE-A2H124.
1.5.
Justificaci´
on
Cap´ıtulo 1. Introducci´on
1.6.
Metodolog´ıa
El desarrollo del SCARSE-A2H124 bajo la metodolog´ıa en espiral.
Las actividades de esta metodolog´ıa se conforman en una espiral, en la que cada iteraci´on representa un conjunto de actividades, que son:
Determinar objetivos. An´alisis de riesgos. Planificaci´on. Desarrollar y probar.
En el modelo espiral, el software se desarrolla en una serie de versiones incrementales. Durante las primeras iteraciones la versi´on incremental podr´ıa ser un modelo en papel o un prototipo, durante las ´ultimas iteraciones se producen versiones cada vez m´as completas del sistema dise˜nado.
El modelo fue aprobado despu´es de hacer un an´alisis de las diferentes tecnolog´ıas existentes en el mercado para la soluci´on de la problem´atica y escuchar los diferentes requerimientos de algunos administradores de red.
Cap´ıtulo 2
Marco Te´
orico
Para entender el comportamiento del SCARSE-A2H124 es necesario conocer algunos conceptos que se mane-jaran en el presente documento, estos conceptos se explican a continuaci´on.
2.1.
Redes Locales Virtuales (VLAN)
Una VLAN es un m´etodo de crear redes l´ogicamente independientes dentro de una misma red f´ısica. Cada VLAN es un dominio de broadcast (subred distinta) dentro del switch.
Las VLANs son principalmente usadas en control de broadcast, esto es, reduce el tr´afico de broadcast en una red. La base de las VLANs esta en la utilizaci´on de switches y enrutadores que sirven para transmitir tr´afico dentro de una VLAN y tambi´en para transmitir tr´afico entre diferentes VLANs.
Las VLANs se pueden clasificar de acuerdo a su configuraci´on y de acuerdo a su implementaci´on.
2.1.1.
Clasificaci´
on de las VLANs de acuerdo a su configuraci´
on
De acuerdo a su configuraci´on, las VLANs se clasifican en: VLANs din´amicas y VLANs est´aticas. VLAN’s est´aticas
Las VLAN est´aticas tambi´en se denominan VLAN basadas en el puerto. Las asignaciones en una VLAN est´atica se crean mediante la asignaci´on de los puertos de un switch a dicha VLAN. Cuando un dispositivo entra en la red, autom´aticamente asume su pertenencia a la VLAN a la que ha sido asignado el puerto. Se mantiene como parte de la configuraci´on, independientemente del uso actual. La figura 4.2 muestra un ejemplo de la configuraci´on de VLAN’s est´aticas.
VLAN’s din´amicas
En las VLAN din´amicas, la asignaci´on se realiza mediante paquetes de software. El funcionamiento de estas VLANs se basa en las direcciones MAC, direcciones l´ogicas o protocolos utilizados.
El mayor beneficio de las VLAN’s din´amicas es el menor trabajo de administraci´on dentro del armario de comunicaciones cuando se cambian de lugar las estaciones de trabajo o se agregan y tambi´en notificaci´on centralizada cuando un usuario desconocido pretende ingresar en la red. La figura 2.2 muestra la configuraci´on de VLAN’s din´amicas.
2.1.2.
Clasificaci´
on de las VLAN’s de acuerdo a su implementaci´
on
Cap´ıtulo 2. Marco Te´orico
Figura 2.1: Configuraci´on de VLAN’s est´aticas
Tipos de VLANs:
VLANs basadas en puertos
VLANs por direcciones MAC (control de acceso al medio). VLANs por protocolo.
VLANs por direcciones IP VLANs basadas en pol´ıticas. VLAN por puertos
En este tipo de VLANs cada puerto del switch puede asociarse a una VLAN. De esta manera, las m´aquinas conectadas a un puerto ´unicamente ven a las m´aquinas que est´an conectadas a puertos de la misma VLAN. Existe una tabla en la que asocian el n´umero de puerto con el ID de la VLAN.
Ventajas:
Segmentaci´on del dominio de broadcast.
Cap´ıtulo 2. Marco Te´orico
Figura 2.2: Configuraci´on de VLAN’s din´amicas
Ventajas:
Facilidad de movimientos: No es necesaria la reconfiguraci´on del switch en caso de que una terminal de trabajo cambie de lugar.
Multiprotocolo.
Se pueden tener miembros en m´ultiples VLANs. Desventajas:
Problemas de rendimiento y control de broadcast: Este m´etodo de definici´on de VLAN implica que en cada puerto del switch coexisten miembros de distintas VLANs por lo que cualquier tr´afico broadcast afecta al rendimiento de todas las estaciones. El tr´afico de paquetes de tipo multicast y broadcast se propagan por todas las VLANs.
Complejidad en la administraci´on: Esto debido a que todos los usuarios deben configurarse inicialmente en una VLAN. El administrador debe registrar de forma manual todas las direcciones MAC de la red en alg´un tipo de base de datos. Cualquier tipo de cambio o nuevo usuario requiere que se modifique en la base de datos. Todo esto puede complicarse extremadamente con redes con un gran n´umero de usuarios o switches. VLAN por protocolo
Asigna a un protocolo una VLAN. Se mantiene una tabla en la que existe una relaci´on entre el protocolo de nivel de red y el ID de la VLAN. El switch se encarga de, dependiendo el protocolo al cual pertenezca la trama, derivarla a la VLAN correspondiente.
Ventajas:
Cap´ıtulo 2. Marco Te´orico
Desventajas:
Problemas de rendimiento y control de broadcast: Por las b´usquedas en tablas de pertenencia se pierde rendimiento en la VLAN.
No soporta protocolos de nivel 2 ni din´amicos. VLAN por direcciones IP
Esta basado en el encabezado de la capa 3 del modelo OSI. Las direcciones IP son le´ıdas por los switches, y pueden formarse redes independientes con ciertos conjuntos de direcciones IP.
Ventajas:
Facilidad en los cambios de estaciones de trabajo: Cada estaci´on de trabajo al tener asignada una direcci´on IP en forma est´atica no es necesario reconfigurar el switch.
Desventajas:
Perdida de tiempo en la lectura de las tablas.
Complejidad en la administraci´on: En un principio se deben configurar de forma manual las direcciones MAC de cada una de las estaciones de trabajo.
VLAN basadas en reglas
En lugar de tomar pertenencia a una VLAN basado en decisiones simples sobre la configuraci´on de un puerto, cada trama entrante puede ser examinada por el motor de clasificaci´on que utiliza una l´ogica de coincidencia basada en asignar la trama a una VLAN deseada.
Con respecto al uso de la red, las ventajas administrativas de la pol´ıtica de clasificaci´on har´ıa el abastecimiento de la red, el uso de pol´ıticas aceptables y la pol´ıtica de distribuci´on de capa. Todas estas provisiones involucran simult´aneamente la utilizaci´on de un enlace entre switches por m´ultiples VLAN’s, requiriendo atenci´on particular a los establecimientos de salidas etiquetadas, prohibidas y no etiquetadas.
2.1.3.
Estandarizaci´
on en VLAN’s
Cap´ıtulo 2. Marco Te´orico
Figura 2.3: Etiquetado de tramas seg´un la IEEE 802.1Q
IEEE 802.1Q
Est´andar recomendado por la IEEE para etiquetado de tramas VLAN. Permite transmitir en las tramas Ethernet la informaci´on de VLAN. La figura 5.2 muestra el etiquetado de tramas seg´un la IEEE 802.1Q.
802.1Q a˜nade un campo de 32 bits entre el campo de direcci´on MAC origen y el etherType/longitud de la trama original, extendiendo el tama˜no m´ınimo de la trama de 64 a 68 bytes, mientras que el tama˜no m´aximo de la trama Ethernet ser´a 1522 bytes de longitud. Los primeros 2 bytes a˜nadidos son fijos, e identifican a la trama como una trama 802.1q. Los segundos 2 bytes a˜nadidos, llamados TAG, se interpretan como tres conjuntos de bits, de longitudes de 3 bits, 1 bit y 12 bits respectivamente. En la figura 2.4 se muestran las partes de la etiqueta TAG.
Figura 2.4: Partes de la etiqueta TAG
Los primeros 3 bits de la etiqueta TAG indican la prioridad. Los valores van de 0 a 7; 0 representa la prioridad m´as baja. Estos valores pueden utilizarse para priorizar las diferentes clases de tr´afico (voz, video, datos, etc.). El cuarto bit, llamado CFI (Canonical Format Indicator), indica el formato de direcciones MAC, si este campo tiene asignado el valor 1 quiere decir que la direcci´on MAC est´a en un formato no can´onico, y si tiene asignado el valor de 0 significa lo contrario. Los ´ultimos 12 bits indican la VLAN a la cual pertenece la trama.
2.2.
Puertos espejo
El puerto espejo (port mirroring), es un m´etodo que se utiliza para el monitoreo de tr´afico en la red. Se hace una copia de cada trama que entra o que sale desde uno o unos de los puertos del switch hacia un puerto donde los datos pueden ser analizados.
Una vez que la trama fue espejeada del puerto origen al destino, se puede analizar la captura de datos asignando un analizador RMON, un sniffer o un IDS sin afectar la operaci´on normal del puerto origen del switch. Modo de uso
Cap´ıtulo 2. Marco Te´orico
de bajo costo a algunas soluciones que pueden requerir hardware adicional, puede perturbar el funcionamiento normal de la red, puede afectar a las aplicaciones cliente, e incluso puede introducir un nuevo punto de fallo en la red. Un puerto espejo es mejor que algunas alternativas y es m´as f´acil de controlar. Es conveniente utilizar en redes en las que los puertos son escasos.
Dependiendo del tipo de switch en donde se desean aplicar, se pueden configurar los siguientes puertos espejos para el tr´afico de entrada y/o salida:
Uno-a-uno (puerto origen a puerto destino) Muchos-a-uno
Uno-a-muchos Muchos-a-muchos
El switch enterasys A2H124 soporta los modos uno-a-uno y muchos-a-uno.
2.3.
Tarjeta de red virtual
Para comenzar a trabajar con VLAN, es necesario conocer bien como funcionan, es decir conocer las defini-ciones b´asicas y la forma de funcionar de un entorno que trabaje con VLAN’s.
El funcionamiento de las VLAN’s se vuelve m´as interesante cuando es combinado con l´ıneas troncales, que permiten la multiplexaci´on de m´ultiples VLAN por medio de un solo enlace.
Cada trama que viene por el enlace troncal viene etiquetada con un identificador de VLAN, de tal manera que as´ı es posible que los equipos puedan posteriormente entregar la informaci´on solamente a las VLAN’s donde pertenecen.
Los puertos troncales pueden ser configurados entre dos switches, entre un switch y un enrutador o entre un switch y una computadora que soporta trunking (por medio del est´andar IEEE 802.1q).
Las interfaces de red virtual (interfaz VLAN) nos sirven para tener varias direcciones IP utilizando una misma tarjeta de red, y as´ı ofrecer servicios en cada una estas direcciones.
Cap´ıtulo 2. Marco Te´orico
2.5.
Protocolos
2.5.1.
TELNET
TELNET (TELecommunication NETwork) es el nombre de un protocolo de red para manejar remotamente a otra maquina, como si estuvi´eramos delante de ella, la maquina a la que se acceda debe tener un programa especial que reciba y gestione las conexiones. El puerto que se utiliza generalmente es el 23.
TELNET solo sirve para acceder en modo terminal, es decir, sin gr´aficos, pero fue una buena herramienta para arreglar fallos a distancia, sin necesidad de estar f´ısicamente frente a la maquina, se puede usar para consultar datos a distancia, como informaci´on personal en maquinas accesibles por red.
El mayor problema de TELNET es la seguridad ya que todos los nombres de usuarios y contrase˜nas viajan por la red como texto plano, es decir, cadenas de texto sin cifrar. Esto facilita que cualquiera que esp´ıe el tr´afico de la red pueda obtener los nombres de usuario y contrase˜nas y as´ı acceder a todas esas maquinas. Por tal motivo surgi´o SSH, que puede describirse como una versi´on cifrada de TELNET.
Para iniciar una sesi´on con un int´erprete de comandos de otro ordenador, puede emplear el comando telnet seguido del nombre o direcci´on IP de la maquina en la que se desea trabajar, por ejemplo:
telnet scarse.com telnet 1.2.3.4
Una vez conectado podr´a ingresar el nombre de usuario y la contrase˜na remoto para iniciar una sesi´on en modo texto a modo de consola virtual. El problema de usar este protocolo, como ya se ha mencionado, es la seguridad, ya que la informaci´on que se transmite no es cifrada y puede ser vista en otros computadores con la ayuda de un sniffer.
Hay 3 razones principales por las que el TELNET no se recomienda en los sistemas modernos desde el punto de vista de la seguridad:
Los equipos conectados a una red que hace uso de TELNET tienen varias vulnerabilidades descubiertas sobre los a˜nos.
TELNET por defecto no cifra ninguno de los datos enviados sobre la conexi´on, as´ı que es f´acil interferir y conseguir el nombre de usuario y contrase˜na.
TELNET carece de un sistema de autentificaci´on que permita asegurar que la comunicaci´on est´e siendo realizada entre los dos anfitriones deseados.
Estos defectos han causado el abandono y rechazo del protocolo TELNET, a favor de un protocolo m´as seguro y mas funcional llamado SSH.
SSH provee toda la funcionalidad de TELNET, pero para evitar que la informaci´on sea interceptada agrega el cifrado de la informaci´on y la autentificaci´on mediante llave p´ublica, para asegurar que el computador remoto sea realmente quien dice ser.
2.5.2.
SSH
SSH es el nombre de un protocolo y del programa que lo implementa, y sirve para acceder a m´aquinas re-motas a trav´es de una red. Permite manejar por completo la computadora mediante un int´erprete de comandos, y tambi´en puede redirigir el tr´afico de una m´aquina X para poder ejecutar programas gr´aficos si tenemos un servidor configurado para esta opci´on (en sistemas Unix y Windows) corriendo.
Cap´ıtulo 2. Marco Te´orico
M´etodos de autentificaci´on que soporta ssh
SSH tiene una arquitectura cliente-servidor, y soporta distintos m´etodos de autentificaci´on.
Fichero .rhosts. La m´aquina cliente debe estar en el fichero /etc/hosts.equiv o en el /etc/ssh/shosts.equiv de la m´aquina remota o servidor. Adem´as, los nombres de usuario deben ser los mismos en ambas m´aquinas. Si existe el fichero .rhosts o .shosts en el home directory del usuario en la m´aquina remota y contiene una l´ınea con el nombre de la m´aquina cliente y el usuario en esa m´aquina, tambi´en permite la conexi´on. No obstante, esta forma de autentificaci´on no suele permitirla el servidor porque no es segura.
M´etodo combinado entre .rhosts o hosts.equiv y autentificaci´on basada clave p´ublica/clave pri-vada. Mediante este m´etodo, s´olo se permite el acceso si se cumple alguna de las condiciones del m´etodo anterior y si se verifica la clave p´ublica del cliente, que debe estar en el fichero en un archivo del sistema.
M´etodo basado en clave p´ublica/clave privada. El esquema est´a basado en una clave p´ublica, que se utiliza para encriptar los datos y una clave privada para descifrarlos. Cada usuario genera una pareja de claves p´ublica/privada. El servidor s´olo conoce la clave p´ublica, que se lista en un fichero del sistema. S´olo los usuarios propietarios de las claves p´ublicas que aparezcan en este fichero podr´an acceder al servidor. El proceso es el siguiente:
1. Cuando un usuario se conecta, el servicio de acceso remoto le dice al servidor con qu´e clave se va a autentificar (su clave p´ublica)
2. El servidor comprueba que la clave es v´alida y manda un n´umero aleatorio al cliente (SSH del usuario remoto) encriptado con la clave p´ublica.
3. El usuario debe descifrar el mensaje enviado con la clave privada, que en ning´un momento se baja del servidor. Si tiene ´exito la operaci´on se establece la conexi´on.
Todo este proceso lo implementa SSH autom´aticamente. El usuario genera su pareja de claves eje-cutando ssh-keygen, que deja la clave p´ublica y la privada en dos archivos del sistema. A continuaci´on, se debe copiar la primera en su archivo de llaves autorizadas de la m´aquina remota. De este modo, el usuario se po-dr´a conectar sin ninguna contrase˜na de una forma mucho m´as segura que con el fichero .rhosts. La manera m´as conveniente de utilizar este m´etodo es mediante un agente de autentificaci´on (ssh-agent)
Cap´ıtulo 2. Marco Te´orico
por un determinado puerto. De esta manera tan solo ser´ıa necesario configurar la informaci´on de las VLANs en un switch, propag´andose al resto de forma autom´atica.
Manera en la que GVRP propaga la informaci´on de las VLANs de switch a switch.
Cuando GVRP es activado sobre un switch, el switch env´ıa paquetes GVRP por todos los puertos, los paquetes GVRP lo anuncian a todas las VLANs conocidas de ese switch.
Cuando un switch habilitado con GVRP, recibe un paquete de publicidad de un conjunto de VLANs,el puerto receptor se convierte en un miembro de esas peticiones de VLANs y el switch empieza a promocionar esas VLANs a todos los puertos.
Requerimientos / Restricciones.
Para darse a conocer las VLANs, estas deben estar activas en el switch, esto es, que por lo menos un puerto del switch debe ser miembro de una VLAN. Con el fin de anunciar a esa VLAN por todos los puertos. Todas las VLANs con GVRP operan como etiquetadas. Por lo que s´ı un puerto del switch A es configurado como un miembro no etiquetado de la VLAN X, y el switch A anuncia al switch B la VLAN X, el puerto sobre switch B que estar´a conectado a la VLAN X ser´a etiquetado y la comunicaci´on del switch A y el switch B sobre la VLAN X fallar´a.
2.5.4.
SNMP
SNMP El Protocolo Simple de Administraci´on de Red o SNMP (del ingl´es Simple Network Management Protocol) es un protocolo de la capa de aplicaci´on que facilita el intercambio de informaci´on de administraci´on entre dispositivos de red. Permite a los administradores supervisar el funcionamiento de la red, buscar y resolver sus problemas, y planear su crecimiento.
Las versiones de SNMP m´as utilizadas son SNMP versi´on 1 (SNMPv1) y SNMP versi´on 2 (SNMPv2). SNMP en su ´ultima versi´on (SNMPv3) posee cambios significativos con relaci´on a sus predecesores, sobre todo en aspectos de seguridad, sin embargo no ha sido mayoritariamente aceptado en la industria.
El switch A2H124 soporta el protocolo SNMP en sus tres versiones. Una Base de Informaci´on de Adminis-traci´on (Management Information Base, MIB) es una colecci´on de informaci´on que est´a organizada jer´ arquica-mente. Las MIB’s son accedidas usando un protocolo de administraci´on de red, como es el caso de SNMP.
Un objeto administrado (algunas veces llamado objeto MIB, objeto, o MIB) es uno de cualquier n´umero de caracter´ısticas espec´ıficas de un dispositivo administrado. Los objetos administrados est´an compuestos de una o m´as instancias de objeto, que son esencialmente variables.
Un identificador de objeto (OID) identifica ´unicamente a un objeto administrado en la jerarqu´ıa MIB. La jerarqu´ıa MIB puede ser representada como un ´arbol con una ra´ız an´onima y los niveles, que son asignados por diferentes organizaciones.
2.5.5.
DHCP
Cap´ıtulo 2. Marco Te´orico
todo momento qui´en ha estado en posesi´on de esa IP, cu´anto tiempo la ha tenido y a qui´en se la ha asignado despu´es.
Se ejecuta sobre el puerto 67 para el servidor y el 68 para el cliente. Los tipos de mensaje que maneja son cuatro:
DHCP DISCOVER: Es una solicitud DHCP realizada por un cliente de este protocolo para que el servidor DHCP de dicha red de computadoras le asigne una Direcci´on IP y otros Par´ametros DHCP como la m´ascara de red o el nombre DNS.
DHCP OFFERT: Es el paquete de respuesta del Servidor DHCP a un cliente DHCP ante su petici´on de la asignaci´on de los Par´ametros DHCP. Para ello involucra su direcci´on MAC.
DHCP REQUEST: El cliente selecciona la configuraci´on de los paquetes recibidos de DHCP Offer. Una vez m´as, el cliente solicita una direcci´on IP espec´ıfica que indic´o el servidor.
DHCP ACK: Cuando el servidor DHCP recibe el mensaje DHCPREQUEST del cliente, se inicia la fase final del proceso de configuraci´on. Esta fase implica el reconocimiento DHCPACK el env´ıo de un paquete al cliente. Este paquete incluye el arrendamiento de duraci´on y cualquier otra informaci´on de configuraci´on que el cliente pueda tener solicitada. En este punto, la configuraci´on TCP / IP proceso se ha completado. El servidor reconoce la solicitud y la env´ıa acuse de recibo al cliente. El sistema en su conjunto espera que el cliente para configurar su interfaz de red con las opciones suministradas. El servidor DHCP responde a la DHCPREQUEST con un DHCPACK, completando as´ı el ciclo de iniciaci´on.
2.5.6.
DNS
Es un sistema de nomenclatura jer´arquica para computadoras, servicios o cualquier recurso conectado a In-ternet o a una red privada. Este sistema asocia informaci´on variada con nombres de dominios asignado a cada uno de los participantes. Su funci´on m´as importante, es traducir (resolver) nombres inteligibles para las personas en identificadores binarios asociados con los equipos conectados a la red, esto con el prop´osito de poder localizar y direccionar estos equipos mundialmente.
El servidor DNS utiliza una base de datos distribuida y jer´arquica que almacena informaci´on asociada a nom-bres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar diferentes tipos de informaci´on a cada nombre, los usos m´as comunes son la asignaci´on de nombres de dominio a direcciones IP y la localizaci´on de los servidores de correo electr´onico de cada dominio.
Cap´ıtulo 2. Marco Te´orico
2.6.
RMON
Monitoreo Remoto de Red (Remote MONitoring Network - RMON) es una especificaci´on est´andar de moni-toreo que habilita diversos monitores de red y sistemas de consola para el monimoni-toreo del intercambio de datos en la red.
RMON ofrece la capacidad de administrar (gestionar) la red a un nivel mas grande, es decir, muestra infor-maci´on estad´ıstica sobre toda la red y su comportamiento.
RMON proporciona una forma efectiva y eficiente de monitorizar el comportamiento de la red reduciendo la carga en otros agentes y en la estaciones de gesti´on. En este protocolo no se estudia a cada agente (nodo) en la red, si no mas bien se busca un comportamiento general de todo un conjunto. Para hacer esto el protocolo RMON agrega a la existente MIB II (Base de informaci´on de gesti´on, version 2) una nueva estructura de MIB RMON. Por lo tanto cualquier plataforma que se vaya a emplear como monitor de RMON debe soportar previamente el protocolo SNMP.
Cap´ıtulo 3
An´
alisis
3.1.
An´
alisis de riesgos
Dentro del desarrollo de nuevos sistemas inform´aticos se pueden presentar situaciones no contempladas que pueden provocar la inestabilidad del sistema. Anticipar los riesgos ayudar´a a emprender acciones para evitar futuros problemas.
En la tabla 3.1 se describen los riesgos que pueden afectar el desarrollo del sistema.
Identificador Riesgo Descripci´on R1 No disponibilidad del
hardware
El hardware esencial para llevar acabo el proyecto no est´e disponible.
R2 Cambio o baja de personal
Alg´un integrante abandona el proyecto antes de que finalice. R3 Incompatibilidad Las tecnolog´ıas a usar no se pueden integrar al sistema.
R4 Tiempo de desarrollo El tiempo requerido para el desarrollo del proyecto no es el ade-cuado.
Tabla 3.1: Riesgos en el desarrollo del sistema.
3.2.
Definici´
on de requerimientos
Para el desarrollo del “Sistema de Control de Acceso a la Red a trav´es del Switch Enterasys A2H124”(SCARSE-A2H124), se hizo un an´alisis sobre los requerimientos que deben considerarse para obtener un buen sistema.
Cap´ıtulo 3. An´alisis
Requerimiento Descripci´on
R1 Monitoreo de la informaci´on que fluye a trav´es de la red. R2 Permitir al administrador la creaci´on de reglas.
R3 Detectar equipos que transmitan c´odigo malicioso a trav´es de la red.
R4 Limitar las capacidades de comunicaci´on de los equipos problem´aticos dentro de la red.
R5 Notificar al administrador de ciertos percances ocurridos en la red. R6 Limitar la cantidad de servidores web a los que se puede tener acceso.
Tabla 3.2: Requerimientos funcionales
Requerimiento Descripci´on
RN1 El sistema contar´a con un IDS para monitorear el flujo de informaci´on dentro de la red.
RN2 El sistema realizar´a en tiempo real el monitoreo de la red. RN3 El sistema se comunicar´a con el switch v´ıa TELNET. RN4 El administrador deber´a autentificarse.
RN5 El sistema contar´a con una base de datos. RN6 El switch estar´a segmentado en cinco VLAN’s. RN7 El sistema contar´a con una interfaz web.
RN8 Configurar tramas como etiquetadas y NO etiquetadas. RN9 Configurar un puerto en modo espejo.
RN10 Configurar puerto en modo trunk
Tabla 3.3: Requerimientos no funcionales
Estas tecnolog´ıas se describieron en el cap´ıtulo dos y se retomar´an de nuevo en este cap´ıtulo para determinar las funcionalidades finales que el sistema a crear debe incluir.
La tabla 3.4 muestra las cualidades de cada software y las que nuestro sistema incluir´a:
De la tabla anterior podemos definir que nuestro sistema esta a la par con otras tecnolog´ıas existentes, con la particularidad de que nuestro sistema dar´a al usuario la opci´on de limitar el acceso a determinados servidores de la red por un periodo de tiempo determinado. Esta es una herramienta muy ´util al implementar el sistema en escuelas, debido a que permite que durante los ex´amenes se puedan establecer solo algunos servidores de acceso a las m´aquinas utilizadas.
Por lo que se considera factible la creaci´on del SCARSE-A2H124.
3.4.
Descripci´
on de herramientas
Para el desarrollo del Sistema de Control de Acceso a la Red a trav´es del Switch Enterasys A2H124 SCARSE-A2H124, se har´a uso del Switch Enterasys y del IDS Snort. El switch se utilizar´a para la administraci´on de los equipos en las VLANs, adem´as el IDS Snort estar´a conectado a un puerto espejo en el switch, esto para poder analizar el tr´afico y en caso de detectar anomal´ıas le informar´a al SCARSE-A2H124.
3.4.1.
Hardware
Switch enterasys A2H124
Cap´ıtulo 3. An´alisis
Producto FreeNAC Cisco NAC Appliance
PacketFence SCARSE-A2H124 Detecci´on de actividades
anor-males dentro de la red.
Si Si Si Si
Soporte de VLANs. No Si Si Si Aislamiento de los equipos
prob-lem´aticos.
Si Si Si Si
Servicio de DHCP. No Si Si Si Interfaz gr´afica Si Si Si Si Negar el acceso a equipos
de-sconocidos por la red
Si Si Si Si
Asignaci´on a red virtual mediante la direcci´on MAC del equipo
Si No No No
Si el equipo no esta registrado se bloquea su acceso o se coloca en una red virtual.
Si Si Si Si
Uso de PostgreSQL para la ad-ministraci´on.
Si Si Si Si
Soporta 802.1x Si No No No
Integraci´on con el sistema para la detecci´on de intrusos. Snort
No No Si Si
Reconoce y clasifica a los usuarios y sus dispositivos.
No Si No Si
Hace cumplir las pol´ıticas de seguridad mediante el bloqueo, aislamiento y reparaci´on de maquinas en el ´area de cuarente-na.
No Si No No
Asignaci´on de puertos del switch mediante VMPS.
Si No No No
Funciona con Windows (servi-dor).
No Si Si No
Funciona con Linux (servidor). Si No Si Si Tabla 3.4: Estudio de factibilidad
Cap´ıtulo 3. An´alisis Tama˜no de tabla de direcciones MAC: 8K de entradas Protocolos de gesti´on remota: SNMP 1, SNMP 2, RMON, Telnet, SNMP 3, HTTP M´etodos de auten-tificaci´on:
RADIUS, Secure Shell v.2 (SSH2)
Caracter´ısticas: Control de flujo, conmutaci´on de capa 2, auto-sensor por dispositivo, soporte de DHCP, negociaci´on autom´atica, soporte BOOTP, soporte ARP, soporte VLAN, se˜nal ascendente autom´atica (MDI/MDI-X autom´atico), snooping IGMP, soporte para Syslog
Cumplimiento de normas:
IEEE 802.1D, IEEE 802.1Q, IEEE 802.3x, IEEE 802.3ad (LACP), IEEE 802.1w, IEEE 802.1x, IEEE 802.1s, IEEE 802.1t
Procesador: 1 MPC8241 : 266 MHz Memoria RAM: 128 MB - SDRAM Memoria Flash: 16 MB Flash
Tabla 3.5: Descripci´on t´ecnica del switch Enterasys A2H124
3.4.2.
Software
Snort (IDS)
Snort es un sniffer de paquetes y un detector de intrusos basado en red (NIDS), ofrece capacidades de alma-cenamiento de sus bit´acoras tanto en archivos de texto como en base de datos (MySQL). Implementa un motor de detecci´on de ataques y barrido de puertos que permite registrar, alertar y responder ante cualquier anomal´ıa previamente definida como patrones que corresponden a ataques, barrido de puertos, intentos de aprovechar alguna vulnerabilidad, an´alisis de protocolos, etc.
Este IDS implementa un lenguaje de creaci´on de reglas flexible, potente y sencillo. Durante su instalaci´on ya nos provee de filtros o reglas para backdoor, DdoS, finger, FTP, ataques Web, CGI, Nmap, etc.
Snort puede funcionar en 3 modos diferentes:
Sniffer: visualizar en consola lo que ocurre en nuestra red, todo nuestro tr´afico.
Packet Logger: Permite guardar en un archivo los logs para su posterior an´alisis, un an´alisis offline. Network Intrusion Detection System (NIDS): Cuando un paquete coincide con alg´un patr´on es-tablecido en la reglas de configuraci´on, se loggea. As´ı se sabe cu´ando, de d´onde y c´omo se produjo el ataque.
Snort esta disponible bajo licencia GPL y funciona bajo plataformas Windows y Unix/Linux.
La caracter´ıstica m´as apreciada de Snort, adem´as de su funcionalidad, es su subsistema flexible de firmas de ataques. Snort tiene una base de datos de ataques qu´e es actualizada constantemente a trav´es de Internet. Los usuarios pueden crear “firmas” basadas en las caracter´ısticas de los nuevos ataques de red y enviarlas a las listas de correo de firmas de Snort.
Snort en modo sniffer y registro de paquetes. El formato gen´erico para este modo es:
snort [-opciones] filtro
Con la siguiente opci´on -v (verbouse) iniciamos a Snort en modo sniffer visualizando en pantalla la cabecera de los paquetes TCP/IP. Esta opci´on mostrar´a las cabeceras IP, TCP, UDP y ICMP.
Cap´ıtulo 3. An´alisis
la opci´on - i indica la interfaz de red que se usara para monitorear el tr´afico de la red en este ejemplo por se har´a uso de eth0.
Si queremos adem´as visualizar los campos de datos que pasan por la interfaz de red, a˜nadiremos -d snort -vd -i eth0
Registro de paquetes.
Para guardar los logs determinados en un directorio agregamos -l seguida de la ruta de la carpeta, en esta carpeta se crear´a una estructura de directorios donde se archivaran los logs. Podemos indicar la IP de la red a registrar (-h) y que el formato de los log’s sea en modo binario (-b), si elegimos esta opci´on los logs ya no ser´a una estructura de directorios, sino, un solo archivo.
Usando la opci´on -b no har´a falta indicarle la IP de nuestra red, tampoco las opciones -dev, ya que guardar´a to-do en un mismo archivo y recoger´a datos de toda nuestra red.
El archivo generado por snort en modo binario podemos leerlo usando alg´un analizador de protocolos.
Descripci´on de las Reglas de Snort
Reglas Snort nos proporciona reglas por omisi´on y permite crear nuestras propias reglas para configurar y as´ı tener mayor seguridad en nuestra red. A continuaci´on se describe el funcionamiento de las reglas as´ı como su estructura.
Las reglas de Snort las podemos dividir en dos secciones l´ogicas. Cabecera de la regla.
• Acci´on.
• Protocolos involucrados. • Direcciones IP origen y destino. • N´umeros de puerto.
• Direcci´on de la operaci´on. Opciones.
• Mensajes.
• Opciones de decisi´on.
Cap´ıtulo 3. An´alisis
-l sirve para especificar el directorio en donde se guardar´an los logs.
3.5.
Tecnologias a usar para la interfaz
El SCARSE-A2H124 har´a uso de una interfaz web para facilitar su correcto uso. Para esto se usar´a el servi-dor HTTP Apache, el gestor de base de datos PostgreSQL y las tecnolog´ıas web como lo son: HTML, PHP, JavaScript, CSS y AJAX.
El objetivo de esta secci´on es dar a conocer los elementos de los que se har´a uso para la interfaz, por lo que se explicar´a de manera breve y clara cada una de estas tecnolog´ıas.
Servidor HTTP Apache
El servidor HTTP Apache, es un servidor web de c´odigo abierto, es el servidor HTTP m´as usado, siendo empleado en el 70 % de los sitios web en el mundo, es un servidor multi-plataforma.
El servidor Apache se usar´a para administrar las sesiones y facilitar al usuario su interacci´on con el sistema, proporcionando una interfaz clara y sencilla.
PostgreSQL
Es un Sistema de Gesti´on de Base de datos relacional orientado a objetos y libre, publicado bajo la licencia BSD. PostgreSQL utiliza un modelo cliente-servidor y usa multiprocesos en vez de multihilos para garantizar la esta-bilidad del sistema. Un fallo en uno de los procesos no afectar´a el resto y el sistema continuar´a funcionando. El registro de incidencias, as´ı como el registro de los usuarios y el correcto manejo de sesiones se realizar´a en este gestor de base de datos, debido a sus caracter´ısticas las cuales se adaptan a las necesidades del sistema.
HTML
HTML, Hyper Text Markup Language, (Lengueje de Marcaci´on de Hipertexto) es el lenguaje de marcas de texto utilizado normalmente en la www.
HTML no es propiamente un lenguaje de programaci´on, sino un sistema de etiquetas.
Para visualizar algunas p´aginas web del sistema es necesario hacer uso de este lenguaje de marcado.
PHP
PHP es un lenguaje de programaci´on del lado del servidor dise˜nado para el desarrollo web din´amico con acceso a informaci´on almacenada en una base de datos, destacando su conectividad con MySQL y PostgreSQL. PHP puede ser utilizado en la mayor´ıa de los servidores web al igual que en casi todos los sistemas operativos y plataformas sin ning´un costo.
JavaScript
Es un lenguaje de programaci´on interpretado, se define como orientado a objetos, se utiliza principalmente del lado del cliente (aunque existe una forma del lado del servidor) permitiendo mejoras en la interfaz de usuario, soporta gran parte de la estructura de programaci´on de C, por ejemplo: sentencias if, while, for, con agunas diferencias como la omisi´on del pinto y coma.
Todos los navegadores modernos interpretan el c´odigo javascript integrado en la p´aginas web.
CSS
Cap´ıtulo 3. An´alisis
La informaci´on de estilo puede estar adjunta como un archivo separado o en el mismo documento HTML.
Cap´ıtulo 4
Dise˜
no
4.1.
Arquitectura de la interfaz
La arquitectura de la interfaz esta basada en una arquitectura de tres capas: capa de presentaci´on, capa de negocios y capa de acceso a datos, tambi´en conocidass como el modelo, vista, controlador.
Este tipo de arquitectura nos permite:
Separar la l´ogica de negocios de la l´ogica de dise˜no. Llevar a cabo el desarrollo en varios niveles. Cada nivel esta abstra´ıdo del resto de los niveles.
Proveemos de una mayor facilidad de uso del sistema al usuario.
A continuaci´on se describen brevemente cada una de las capas de este tipo de arquitectura:
Capa de presentaci´on (Vista): Es la que ve el usuario, presenta el sistema al usuario, le comunica la infor-maci´on y captura la informaci´on del usuario en un m´ınimo de proceso (realiza un filtrado previo para comprobar que no hay errores de formato). Esta capa se comunica ´unicamente con la capa de negocio.
Capa de negocio (Controlador):Es donde residen los programas que se ejecutan, se reciben las peticiones del usuario y se env´ıan las respuestas tras el proceso. Se denomina capa de negocio porque es aqu´ı donde se es-tablecen todas las reglas que deben cumplirse. Esta capa se comunica con la capa de presentaci´on, para recibir las solicitudes y presentar los resultados, y con la capa de datos, para solicitar al gestor de base de datos almacenar o recuperar datos de ´el. Tambi´en se consideran aqu´ı los programas de aplicaci´on.
Capa de acceso a datos (Modelo): Es donde residen los datos y es la encargada de acceder a los mismos. Est´a formada por uno o m´as gestores de bases de datos que realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento o recuperaci´on de informaci´on desde la capa de negocio.
Diagrama de la arquitectura de la interfaz 4.1.
4.1.1.
Vista f´ısica del sistema
El diagrama 4.2 muestra la vista f´ısica correspondiente a la arquitectura del sistema.
Descripci´on de la vista f´ısica del sistema
Cap´ıtulo 4. Dise˜no
Figura 4.1: Arquitectura de la interfaz
El switch esta segmentado en 4 VLANs, cada una con caracter´ısticas especificas y 2 puertos reservados para la administraci´on del sistema.
Puertos reservados para el sistema
En el primer puerto se encuentra el servidor SNORT, este puerto esta configurado en modo espejo (relaciona-do con el puerto de salida del switch), esto para el an´alisis de todo el tr´afico de entrada y salida de la red.
Cap´ıtulo 4. Dise˜no
Cap´ıtulo 4. Dise˜no
4.2.
Casos de uso
Cap´ıtulo 4. Dise˜no
4.2.1.
CU0 Iniciar sesi´
on
Descripci´on
Inicio de sesi´on del Usuario. Atributos
La tabla 4.1 muestra los atributos del CU0. Caso de uso: CU0 Iniciar sesi´on Versi´on: 2.2
Actor: Usuario
Prop´osito: Que el usuario ingrese sus datos para el acceso al sistema
Resumen: El sistema pide al usuario los datos necesarios para su identificaci´on, posteri-ormente le da acceso al sistema (dependiendo del tipo de usuario)
Entradas: Correo electr´onico y contrase˜na Salidas: Ninguna
Precondiciones: El usuario tiene que estar registrado Postcondiciones: Ninguna
Tipo: Primario
Tabla 4.1: CU0 Iniciar sesi´on
Trayectorias del caso de uso Trayectoria principal.
1. El usuario accede a la interfaz del sistema. 2. El sistema muestra la ventana de inicio de sesi´on.
3. El usuario introduce sus datos (correo y contrase˜na) [Trayectoria alternativa A]. 4. El usuario oprime el bot´on Iniciar sesi´on
5. El sistema verifica que el correo electr´onico y contrase˜na est´en registrados [Trayectoria alternativa B]. 6. El sistema verifica el tipo de usuario. [Trayectoria alternativa C], [Trayectoria alternativa D], [Trayectoria alternativa E].
– Fin del caso de uso
Trayectoria alternativa A. A1. El usuario cierra el navegador. – Fin de la trayectoria
Trayectoria alternativa B.
B1. El sistema muestra el mensaje de error “Error al iniciar sesi´on. Verifique los datos”. B2. El usuario presiona el bot´on aceptar.
B3. El sistema contin´ua en el paso 2 del CU0. – Fin de la trayectoria
Trayectoria alternativa C.
Condici´on: El usuario es de tipo Administrador. C1. El sistema muestra la p´agina principal del sistema. – Fin de la trayectoria
Trayectoria alternativa D.
Cap´ıtulo 4. Dise˜no
Trayectoria alternativa E.
Condici´on: El usuario es de tipo Usuario de la red.
Cap´ıtulo 4. Dise˜no
4.2.2.
CU1 Administrar equipos en VLAN
Descripci´on
Administrar las opciones de VLAN Atributos
La tabla 4.2 muestra los atributos del CU1.
Caso de uso: CU1 Administrar equipos en VLAN Versi´on: 2.2
Actor: Administrador
Prop´osito: Permitir al usuario consultar o cambiar opciones de VLAN
Resumen: El sistema muestra las opciones que el usuario tiene en cuanto a la adminis-traci´on de las VLAN
Entradas: Ninguna Salidas:
Precondiciones: Ninguna
Postcondiciones: Los equipos seleccionados por el usuario se mover´an de VLAN, teniendo as´ı diferente tipo de acceso (Ver postcondiciones CU2 y CU4)
Tipo: Primario
Tabla 4.2: CU1 Administrar equipos en VLAN
Trayectorias del caso de uso Trayectoria principal.
1. El usuario selecciona la opci´on “Administrar equipos en VLAN”del sistema.
2. El sistema muestra la ventana de Administrar equipos en VLAN con las opciones de limitar acceso a servidores, consultar equipos en VLAN y mover equipos en VLAN.
3. El sistema continua en el paso 1 del caso de uso que el usuario seleccione (CU2 - limitar acceso a servidores, CU3 - consultar equipos en VLAN, CU4 - mover equipos en VLAN).
Cap´ıtulo 4. Dise˜no
4.2.3.
CU2 Limitar acceso a servidores
Descripci´on
Establecer los servidores a los que tienen acceso las maquinas. Atributos
La tabla 4.3 muestra los atributos del CU2.
Caso de uso: CU2 Limitar acceso a servidores Versi´on: 2.2
Actor: Administrador
Prop´osito: Que el administrador pueda establecer a que servidores puede tener acceso un determinado n´umero de m´aquinas
Resumen: El administrador podr´a limitar el acceso a servidores Entradas: Direcciones de los sitios que pueden ser consultados Salidas: Mensaje de confirmaci´on
Precondiciones: Ninguna
Postcondiciones: Las m´aquinas seleccionadas tendr´an acceso restringido, es decir, solo podr´an entrar a los servidores que se establezcan
Tipo: Secundario (extends)
Tabla 4.3: CU2 Limitar acceso a servidores
Trayectorias del caso de uso Trayectoria principal.
1. El usuario selecciona la opci´on “Limitar acceso a servidores”. 2. El sistema muestra la ventana de limitar acceso a servidores.
3. El usuario selecciona los equipos que tendr´an acceso limitado e introduce los servidores (direcciones) a los cuales tendr´an acceso[Trayectoria alternativa A].
4. El usuario oprime el bot´on Aceptar.
5. El sistema verifica se haya seleccionado por lo menos un equipo [Trayectoria alternativa B].
6. El sistema muestra una ventana de confirmaci´on especificando los cambios que desea hacer el usuario. 7. El usuario oprime el bot´on aceptar [Trayectoria alternativa C].
8. El sistema cambia de VLAN a los equipos seleccionados estableciendo como acceso solo los direcciones ingre-sadas.
Cap´ıtulo 4. Dise˜no
Cap´ıtulo 4. Dise˜no
4.2.4.
CU3 Consultar equipos en VLAN’s
Descripci´on
Consultar de los equipos que se encuentran en cada VLAN. Atributos
La tabla 4.4 muestra los atributos del CU3.
Caso de uso: CU3 Consultar equipos en VLAN’s Versi´on: 2.2
Actor: Administrador
Prop´osito: El usuario podr´a ver los equipos que se encuentran en cada VLAN
Resumen: El sistema mostrar´a todas las m´aquinas conectadas a la red, as´ı como su asig-naci´on de VLAN
Entradas: Ninguna Salidas: Ninguna
Precondiciones: Por lo menos un equipo debe de estar conectado en la red Postcondiciones: Ninguna
Tipo: Secundario (extends)
Tabla 4.4: CU3 Consultar equipos en VLANs
Trayectorias del caso de uso Trayectoria principal.
1. El usuario selecciona la opci´on “Consultar equipos en VLAN’s”.
2. El sistema muestra la ventana de consultar equipos en VLAN’s con todos los equipos conectados y la VLAN a la cual esta asignado cada uno de ellos.
Cap´ıtulo 4. Dise˜no
4.2.5.
CU4 Mover equipos de VLAN
Descripci´on
Cambiar equipos de VLAN. Atributos
La tabla 4.5 muestra los atributos del CU4.
Caso de uso: CU4 Mover equipos de VLAN Versi´on: 2.2
Actor: Administrador
Prop´osito: Que el usuario pueda cambiar a los equipos de la VLAN en la que se encuentran Resumen: El sistema mostrar´a los equipos conectados a la red con la VLAN a la que est´an
asociados. El usuario podr´a cambiar estos dependiendo de las necesidades Entradas: Identificador del equipo que se cambiar´a de VLAN e identificador de la VLAN
a la que se cambiar´a Salidas: Mensaje de confirmaci´on
Precondiciones: Por lo menos un equipo tiene que estar conectado a la red
Postcondiciones: La m´aquina o m´aquinas seleccionadas estar´an asignadas a las VLAN selec-cionada, con el acceso que esta le permita
Tipo: Secundario (extends)
Tabla 4.5: CU4 Mover equipos de VLAN
Trayectorias del caso de uso Trayectoria principal.
1. El usuario selecciona la opci´on “Mover equipos de VLAN”.
2. El sistema muestra la ventana de mover equipos de VLAN con todos los equipos conectados a la red y la VLAN a la que esta asignado cada uno de ellos.
3. El usuario selecciona los equipos que desea cambiar de vlan y la VLAN a la que desea cambiarlos [Trayectoria alternativa A].
4. El usuario oprime el bot´on Aceptar.
5. El sistema verifica se haya seleccionado por lo menos un equipo [Trayectoria alternativa B]. 6. El sistema muestra una ventana con los cambios que el usuario hizo pidiendo confirmaci´on. 7. El usuario presiona el bot´on aceptar [Trayectoria alternativa C].
8. El sistema realiza los cambios de los equipos seleccionados a las VLAN’s que se establecieron. 9. El sistema muestra un ventana indicando que los cambios fueron realizados.
10. El usuario da click en aceptar.
11. El sistema muestra la p´agina .Administrar equipos en VLAN”.
– Fin del caso de uso
Trayectoria alternativa A.
A1. El usuario presiona el bot´on cancelar. A2. El sistema contin´ua con el paso 2 del CU4. – Fin de la trayectoria
Trayectoria alternativa B.
B1. El sistema muestra el mensaje de error “Error se debe de seleccionar por lo menos un equipo. B2. El usuario presiona el bot´on aceptar.
Cap´ıtulo 4. Dise˜no
– Fin de la trayectoria Trayectoria alternativa C.
Cap´ıtulo 4. Dise˜no
4.2.6.
CU5 Administrar reglas
Descripci´on
Administrar las reglas que utiliza el sistema para el an´alisis del tr´afico. Atributos
La tabla 4.6 muestra los atributos del CU5.
Caso de uso: CU5 Administrar reglas Versi´on: 2.0
Actor: Administrador
Prop´osito: Que el usuario administrador pueda efectuar modificaciones en las reglas de Snort para el an´alisis del tr´afico
Resumen: El sistema muestra al usuario las opciones que tiene para la administraci´on de las reglas Entradas: Ninguna Salidas: Ninguna Precondiciones: Ninguna Postcondiciones: Ninguna Tipo: Primario
Tabla 4.6: CU5 Administrar reglas
Trayectorias del caso de uso Trayectoria principal.
1. El usuario selecciona la opci´on “Administrar reglas”del sistema.
2. El sistema muestra la ventana de administrar reglas con las opciones de crear regla, editar regla y eliminar regla.
3. El sistema continua en el paso 1 del caso de uso que el usuario seleccione (CU6 - crear regla, CU7 editar regla y CU9 - eliminar regla).