GESTOR DE RECURSOS DE HARDWARE Y SOFTWARE RESOURCE MANAGER OF HARDWARE AND SOFTWARE Adrian E. Mena Rodríguez1, Jorge Túñez González2, Jenny de la Rosa3, Dianet Días Oduardo4, Lianet Salazar Labrada5, Diannet Sospedra6 Universidad de las Ciencias Informáticas, Cuba Carretera a San Antonio de los Baños, Km. 2 ½. Torrens, La Lisa. 1 [email protected]; 2 [email protected]; 3 [email protected]; 4 [email protected]; 5 [email protected]; 6 [email protected] RESUMEN: La progresiva informatización de la sociedad cubana es un hecho patentado por las medidas implementadas por las empresas y autoridades cubanas con el despliegue de redes para la conexión a Internet y el potenciamiento de soluciones informáticas salidas de las empresas nacionales del sector, así como de la Universidad de las Ciencias Informáticas (UCI), pilar del desarrollo del software en Cuba. Con el aumento de la conectividad viene el aumento de la redes de computadoras y con ellas se eleva la dificultad en el control de los dispositivos que las componen. Usualmente los inventarios se realizan de forma manual o empleando software que debe ser instalado y consultado en cada computadora conectada a la red. Para el desarrollo de la herramienta que da solución a esta problemática se empleó la metodología de desarrollo de software ¨Proceso Unificado Ágil¨ (AUP) en unión con el modelo Capability Maturity Model Integration for Development. El sistema desarrollado (GRHS) permite realizar el inventario de hardware y software de las computadoras donde encuentre instalado, así como la detección de algunas incidencias que se puedan producir en los clientes alertando a los interesados. Además, genera estadísticas que posibilitan la toma de decisiones con respecto al seguimiento de políticas de seguridad. Palabras Clave: inventario, seguridad, gestión, ordenadores ABSTRACT: The progressive computerization of Cuban society is a fact patented by the measures implemented by companies and Cuban authorities with the deployment of networks for Internet access and enhancement of solutions from national companies of the sector as well as the University of Informatics Science (UCI), the backbone of software development in Cuba. With the increase in connectivity comes increased of computer networks and with them the difficulty in controlling the devices that integrate the network rises. Inventories are usually performed manually or by using software that must be installed and consulted on each computer connected to the network. To develop the tool that solves this problem development methodology Agile Unified Process (AUP) software in conjunction with the Capability Maturity Model Integration for Development (CMMI) was used. The developed system allows executing an inventory of hardware and software of the computers where it is installed, as well as the detection of some incidents that may occur on clients, alerting stakeholders. It also generates statistics which allow making decisions with regard to the monitoring of security policies Keywords: inventory, security, managing, computers “XII Seminario Iberoamericano de Seguridad en las Tecnologías de la Información” d Mena Rodríguez, A; Túñez González,J., De la Rosa, Días Oduardo,D., Salazar L; Sospedra D. ”GESTOR DE RECURSOS DE HARDWARE Y SOFTWARE” 1. INTRODUCCIÓN La progresiva informatización de la sociedad cubana es un hecho patentado por las medidas implementadas por las empresas y autoridades cubanas con el despliegue de redes para la conexión a Internet (1) y el potenciamiento de soluciones informáticas salidas de las empresas nacionales del sector, así como de la Universidad de las Ciencias Informáticas (UCI), pilar del desarrollo del software en Cuba. Esta situación ha llevado a un aumento de los dispositivos conectados en red. Es por ello que las redes de ordenadores juegan un importante papel en la vida diaria de las empresas e instituciones. Una gran cantidad de los recursos que se encuentran en estas redes no son controlados correctamente por sus propietarios o los administradores de redes a pesar de la existencia de reglamentos y normas de control que así lo establecen. Los inventarios se realizan de forma manual o empleando software que debe ser instalado y consultado en cada computadora conectada a la red. El control manual de los componentes de hardware y software es una tarea compleja, aún más cuando el número de ordenadores es elevado. Normalmente este tipo de inventario no incluye el software instalado. El robo o cambio de un activo tanto tangible como intangible presente en la red puede ocasionar además de las pérdidas monetarias, pérdidas de información almacenada e inhabilitamiento de los servicios que se presten. En muchas ocasiones el control de los activos de estas redes es desarrollado a través de la utilización de sellos de seguridad, los cuales al ser componentes físicos no generan reportes ni alertas ante síntomas de intrusión. Por lo que la seguridad queda en manos de los valores éticos que posean los usuarios. Es fundamental conocer que los sistemas que automatizan procesos de inventario de hardware y software en una red de computadoras, se dividen en dos componentes lógicos diferentes. El primer componente es una aplicación que obtiene el inventario de los agentes (computadoras) y lo envía al servidor (segundo componente) dónde la información es procesada y almacenada. Este proceso se basa en la arquitectura cliente servidor. El segundo componente gestiona la información obtenida de los clientes asociados al sistema y configura los procesos de alertas. Existen varias herramientas informáticas que realizan el inventario de los dispositivos de una red, OCS Inventory (2) NG, CAIC, NetSupport DNA pertenecen a este grupo. La principal desventaja de los dos primeros radica en la ausencia de un sistema de alertas que mantenga informado a los administradores de cambios ocurridos en las computado- ras. Mientras que NetSupport DNA es una herramienta privativa solo provee soporte para su servidor en la plataforma Windows y para un pequeño grupo de plataformas en los clientes (3). Esto no lo hace recomendable en un país que apuesta por la soberanía tecnológica con el uso de sistemas operativos del ecosistema GNU/Linux. Ante esta situación surge la necesidad de crear una herramienta propia que automaticen el proceso de inventario, que cuenta con un sistema de alerta ante posibles incidentes y permitan controlar determinadas políticas de seguridad informática. Todo lo anteriormente descrito lleva al planteamiento del problema: ¿Cómo mejorar los procesos de obtención de información de hardware y software de una red de computadoras? Para dar solución a esta problemática y con el objetivo de automatizar el proceso se desarrolló el Gestor de Recursos de Hardware y Software (GRHS) actualmente en su versión 1.1. 2. MATERIALES Y MÉTODOS Para el desarrollo de GRHS y como parte de la investigación que precede al proceso de desarrollo se emplearon los métodos científicos: Analítico-Sintético: Permitió revisar por separado documentación existente sobre sistemas desarrollados que realizan las mismas funciones o tienen algún punto de contacto con GRHS, así como las tecnologías óptimas para la construcción del software según las necesidades del equipo de desarrollo. Sintetizando así las funcionalidades a incorporar a GRHS. Modelación: con el empleo de este método se modelaron los procesos de negocio principales con el objetivo de lograr una mejor comprensión de los mismos y la identificación de subprocesos. El modelo de la base de datos sirvió por su parte para determinar la estructura lógica de la misma y de manera fundamental determinar el modo de almacenar, organizar y manipular los datos que emplea GRHS. Como entorno de pruebas se utilizó la red existente en la UCI, debido a la magnitud de computadoras con que cuenta esta institución, lo que permitió testear las capacidades del sistema para soportar conexiones concurrentes. Teniendo en cuenta los datos que se recogen oficialmente en esta universidad en el expediente de cada computadora, se diseñó el inventario que debía obtenerse automáticamente. Luego de las pruebas correspondientes el sistema fue liberado por la Dirección de Calidad de la UCI. 3. METODOLOGÍA Y TECNOLOGÍA “Las metodologías de desarrollo de software son un “XII Seminario Iberoamericano de Seguridad en las Tecnologías de la Información” Mena Rodríguez, A; Túñez González,J., De la Rosa, Días Oduardo,D., Salazar L; Sospedra D. ”GESTOR DE RECURSOS DE HARDWARE Y SOFTWARE” conjunto de procedimientos, técnicas y ayudas a la documentación para el desarrollo de productos software” (4). Para el desarrollo del sistema de GRHS se utilizó una variación de la metodología ¨Proceso Unificado Ágil¨ (AUP) en unión con el modelo Capability Maturity Model Integration for Development 1( CMMI-DEV) versión 1.3. AUP es una versión simplificada del Proceso Unificado de Rational (RUP). Este describe de una manera simple y fácil de entender la forma de desarrollar aplicaciones de software de negocio usando técnicas ágiles y conceptos que aún se mantienen válidos en RUP (5). Toda metodología debe ser adaptada a las características de cada proyecto (equipo de desarrollo, recursos) lo que facilita que el proceso sea configurable. Para el sistema GRHS se utiliza una variación de la metodología AUP, que se adapta al ciclo de vida definido para la actividad productiva de la UCI. El estudio de los diferentes lenguajes de programación disponibles permitió la elección de Python en su versión 2.7.6 y los marcos de trabajo Django 1.42 y Xilema-Base-Web3 , este último desarrollado en el Centro Telemática empleando Django 1.4 como base y las librerías JavaScript como son Jquery 1.9 y Backbone 1.1. Para el modelado lo de los diagramas conceptuales, diseño de las clases y base de datos se utilizó Unified Modeling Language4 (UML) y Business Process Model and Notation5 (BPMN) para la descripción de los procesos de negocio y la herramienta CASE (Ingeniería de Software Asistida por Computación) Visual Paradigm for UML en su versión 5.0, la cual soporta el ciclo de vida completo del proceso de desarrollo del software a través de la representación de todo tipo de diagramas. sistemas: Gclient, Gserver y Gadmin. Gclient al ser instalado en las computadoras realiza el inventario del hardware con que cuenta el equipo de cómputo: memoria RAM, motherboard, procesador, dispositivos de almacenamiento, CD-ROM, teclado, ratón, impresora, escáner, multifuncional y monitor; así como elementos del software entre los que se cuenta: nombre de la computadora, dominio, localización, sistema operativo instalado, fabricante y versión del BIOS, detecta la existencia de antivirus Kaspersky y Segurmática, usuarios del sistema y controladores instalados. El inventario es enviado a Gserver quien guarda esta información en base de datos. Por su parte Gadmin es una consola de administración web donde se puede visualizar la información recopilada en los clientes (Gclient). En las imágenes que a continuación se muestran puede observarse el subsistema Gadmin. 4. RESULTADOS Y DISCUSIÓN En la figura 1 se observa el menú Agentes, el cual muestra información general sobre los agentes registrados en el sistema. Estos se dividen en colectores activos e inactivos en correspondencia con la cantidad de días que hayan pasado desde su último reporte a Gserver (cantidad de días configurable). Por su parte la figura 2 muestra los detalles de la información recopilada en un agente. Como resultado de la investigación se desarrolló el sistema GRHS el cual consta a su vez de tres sub1 Capability Maturity Model Integration for Debelopment, en español Integración de modelos de madurez de capacidades, es un modelo para la mejora y evaluación de procesos para el desarrollo, mantenimiento y operación de sistemas de software. 2 Marco de trabajo escrito en Python. 3 Marco de trabajo desarrollado en el Centro Telemática. 4 Unified Modeling Language, en español Lenguaje de Modelado Unificado. 5 Business Process Model and Notation, en español Notación y Modelado de Procesos de Negocio. Figura 1: Vista del menú Agentes “XII Seminario Iberoamericano de Seguridad en las Tecnologías de la Información” Mena Rodríguez, A; Túñez González,J., De la Rosa, Días Oduardo,D., Salazar L; Sospedra D. ”GESTOR DE RECURSOS DE HARDWARE Y SOFTWARE” Figura 2: Vista de los detalles de un agente. El sistema es capaz de detectar cambios no autorizados en el hardware, configurables según el tipo (hardware o software), componentes, estado (agregado o eliminado) y el nivel (alto, medio o bajo según la clasificación definida por la institución) según las necesidades de la institución y lanzar alertas de correo a los interesados la. En la figura 3 puede apreciarse lo anteriormente expuesto. Figura 4: Vista de las incidencias registradas. GRHS permite además conocer la localización del dispositivo inventariado según el lugar y la subred a la que pertenece. En la figura 5 se puede apreciar cómo quedaría su configuración. 5. IMPACTO Figura 3: Vista de la configuración de las incidencias. El registro de las incidencias quedaría como se muestra en la figura 4. GRHS hasta el momento ha sido desplegado en la Universidad de las Ciencias Informáticas con más de 3 500 computadoras reportándose. En esta institución GRHS fue incluido entre las políticas de seguridad. En la sede central de la Fiscalía General de la República y la Empresa Comercializadora del Cemento fue desplegado también, para 2 000 y 200 computadoras respectivamente. Estos despliegues generaron ingresos a la UCI por un valor de 30 058.52 en moneda total. Con GRHS estas instituciones gubernamentales y empresas poseen una herramienta que les permite controlar determinadas políticas de seguridad acorde con la Resolución 127/2007 del Ministerio de las Comunicaciones que establece que todas las entidades que emplean tecnologías de la información diseñar, implantar y mantener actualizado, un Sistema de Seguridad Informática. “XII Seminario Iberoamericano de Seguridad en las Tecnologías de la Información” Mena Rodríguez, A; Túñez González,J., De la Rosa, Días Oduardo,D., Salazar L; Sospedra D. ”GESTOR DE RECURSOS DE HARDWARE Y SOFTWARE” 6. CONCLUSIONES El estudio realizado permitió determinar la necesidad de desarrollar una aplicación informática para la gestión de los recursos de hardware y software pertenecientes a una red de computadoras que cuente con un sistema de alertas ante incidencias. El proceso de desarrollo de software posibilitó la obtención de un sistema escalable y extensible, integrando un sistema de alertas. 7. REFERENCIAS BIBLIOGRÁFICAS 1. Ministerio de Comunicaciones. Juventud Rebelde. [En línea] 27 de Mayo de 2013. http://www.juventudrebelde.cu/file/pdf/impreso/2013 /05/28/iespeciales.pdf. 2. OCS Inventory Team. OCS Inventory NG. [En línea] 2015. http://www.ocsinventory-ng.org/en/. 3. NetSupport Limited. NetSupport DNA. [En línea] 2015. http://www.netsupportdna.com/ES/corporate/dow nlo ads.asp. 4. Menéndez-Barzanallana Asensio, Rafael. Universidad de Murcia. [En línea] 2012. http://www.um.es/docencia/barzana/IAGP/IAGP2Me todologias-de-desarrollo.html. 5. Universidad Unión Bolivariana. Universidad Unión Bolivariana. [En línea] 2012. http://ingenieriadesoftware.mex.tl/63758_AUP.html. 8. SÍNTESIS CURRICULARES DE LOS AUTORES Adrian Ezequiel Mena Rodríguez, nació el 15 de agosto de 1990. Transitó con buenos resultados por los diferentes niveles escolares cubanos hasta graduarse como Ingeniero en Ciencias Informáticas en la Universidad de las Ciencias Informáticas radicada en La Habana, Cuba. Hace un año y tres meses es desarrollador en el Centro Telemática de la UCI además de ser el administrador de la configuración del proyecto y el encargado del despliegue de GRHS en las empresas e instituciones que lo adquieran. Ha cursado estudios de postgrado en PostgreSQL. Jorge Armando Túñez González nació en La Habana el 29 de junio de 1990. Durante su etapa como estudiante logró escalar satisfactoriamente todos los niveles educacionales, logrando alcanzar el título de Ingeniero en Ciencias Informáticas. Cursó sus estudios profesionales en la Universidad de las Ciencias Informáticas, ubicada en La Habana, Cuba. El título fue obtenido el día 19 de Julio del 2014, hace 1 año y 3 meses aproximadamente. Actualmente ejerce cómo Arquitecto de Software y Programador del proyecto GRHS desarrollado en el Centro TLM de la Universidad de las Ciencias Informáticas. El correo para el contacto es [email protected]. Durante su período de adiestramiento ha cursado diversos cursos de postgrado relacionados con el perfil profesional. “XII Seminario Iberoamericano de Seguridad en las Tecnologías de la Información”