INGENIERO EN NETWORKING Y...

156
I UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS CARRERA DE INGENIERIA EN NETWORKING DESARROLLO DE UNA PLATAFORMA WEB DE MAPEO Y ESCANEO DE DIRECCION IP DENTRO DE UNA RED IPV4 CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST PROYECTO DE TITULACIÓN Previa a la obtención del Título de: INGENIERO EN NETWORKING Y TELECOMUNICACIONES AUTOR: DOUGLAS ANTONIO TORAL HERRERA TUTOR: ING. SOL LOPEZDOMINGUEZ RIVAS, MAE. GUAYAQUIL ECUADOR 2016

Transcript of INGENIERO EN NETWORKING Y...

I

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS

CARRERA DE INGENIERIA EN NETWORKING

DESARROLLO DE UNA PLATAFORMA WEB DE MAPEO Y ESCANEO DE DIRECCION IP DENTRO DE UNA RED IPV4

CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST

PROYECTO DE TITULACIÓN

Previa a la obtención del Título de:

INGENIERO EN NETWORKING Y

TELECOMUNICACIONES

AUTOR: DOUGLAS ANTONIO TORAL HERRERA

TUTOR: ING. SOL LOPEZDOMINGUEZ RIVAS, MAE.

GUAYAQUIL – ECUADOR 2016

II

REPOSITORIO NACIONAL EN CIENCIAS Y TECNOLOGÍA

FICHA DE REGISTRO DE TESIS

TÍTULO “DESARROLLO DE UNA PLATAFORMA WEB DE MAPEO Y ESCANEO DE IP DENTRO DE UNA

RED IPV4 CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST”

AUTORA: DOUGLAS ANTONIO TORAL HERRERA REVISORES:

INSTITUCIÓN: UNIVERSIDAD DE GUAYAQUIL FACULTAD: CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERA: INGENIERÍA EN NETWORKING Y TELECOMUNICACIONES

FECHA DE PUBLICACIÓN: Abril de 2015 N° DE PÁGS.: 156

ÁREA TEMÁTICA: Educativa

PALABRAS CLAVES: aplicativo web, desarrollo, implementación, mapeo y escaneo.

RESUMEN: La empresa Mediasist cuenta con una gran cantidad de equipos tecnológicos

conectados en la red lo que demanda una mayor cantidad de direcciones IP para la

configuración de dicho equipos. Al no contar con un control y una herramienta de búsqueda

de direcciones Ip se vuelve complicado la asignación de dirección Ip a un equipo nuevo que

ingrese a la empresa. El presente proyecto tiene como finalidad implementar un aplicativo web

de mapeo y escaneo de direcciones IPv4 que permitirá la automatización de procesos de

búsqueda y generar un inventario de las direcciones Ip en uso y activas, todo esto

estableciendo estrategias metodológicas ágiles de desarrollo para cumplir con las normas de

calidad y dar como resulta un aplicativo Web que el usuario se sienta a gusto con el uso y la

funcionalidad que le brinda.

N° DE REGISTRO(en base de datos): N° DE CLASIFICACIÓN: Nº

DIRECCIÓN URL (tesis en la web):

ADJUNTO PDF SI X NO

CONTACTO CON AUTORA: DOUGLAS ANTONIO TORAL HERRERA Teléfono: 0998244927

E-mail: [email protected]

CONTACTO DE LA INSTITUCIÓN:

Universidad de Guayaquil

Nombre:

Teléfono:

III

APROBACION DEL TUTOR

En mi calidad de Tutor del trabajo de titulación, “DESARROLLO DE UNA

PLATAFORMA WEB DE MAPEO Y ESCANEO DE IP DENTRO DE UNA RED IPV4

CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST “ elaborado por el Sr.

DOUGLAS ANTONIO TORAL HERRERA, de la Carrera de Ingeniería en Networking,

Facultad de Ciencias Matemáticas y Físicas de la Universidad de Guayaquil, previo a la

obtención del Título de Ingeniero en Sistemas, me permito declarar que luego de haber

orientado, estudiado y revisado, la Apruebo en todas sus partes.

Atentamente

Ing. Sol Lopezdomínguez Rivas

TUTOR

IV

DEDICATORIA

Dedico este logro a Dios y a la Virgen María quienes me dieron la fuerza y la

inspiración para concluir el proyecto de tesis. A mis padres: Josefina Villamar y

Guillermo Toral que me dieron la vida, en especial a mi madre que siempre ha

estado conmigo en los buenos y malos momentos dándome el apoyo necesario

día y noche para salir a delante, por sus consejos, valores y más que nada por

su amor que gracias a ello me ha permitido ser una persona de bien.

V

AGRADECIMIENTO

Agradezco a Dios por haberme dado ese aliento de vida y ponerme a esa

persona tan especial que es mi Madre, por darme la salud y la fortaleza de salir

adelante, por estar a mi lado siempre enseñándome la humildad.

A mis padres y familiares a cada una de ellos que siempre han estado a mi lado,

aconsejándome y apoyándome en todo momento.

De todo corazón a mi novia Viviana Choez que con su paciencia, perseverancia

e insistencia me ha ayudo y alentó para seguir adelante, cuando parecía que me

iba a dar por vencido, gracias por estar en los momentos que más te necesitaba.

Un especial agradecimiento al Ing. David Benavides López por haberme

permitido formar parte de la gran familia de Sistemas de Mediasist, y darme la

oportunidad de seguir creciendo Profesional y Académicamente siempre

pensando en el bienestar de las personas que lo rodean, muchas gracias.

A mis amigos que son mis compañeros de trabajo Ing. Carlos Corral, Ing. Xavier

Sánchez, Ing. Paul Espín, Ing. Carlos Zumba, Ing. Danny Pinos, Ing. Antonio

Rodríguez que llegaron a forman parte importante de mi vida gracias por

brindarme siempre su apoyo y sus conocimientos de manera desinteresada.

A la UNIVERSIDAD DE GUAYAQUIL por darme los conocimientos necesarios

para salir adelante Académica y Profesionalmente.

VI

TRIBUNAL PROYECTO DE TITULACIÓN

Ab. Juan Chávez A.

SECRETARIO

Ing. Eduardo Santos Baquerizo, M.Sc.

DECANO DE LA FACULTAD

CIENCIAS MATEMATICAS

Y FISICAS

Ing. Inelda Martillo Alcívar, Mgs DIRECTORA

CISC, CIN

Nombres y Apellidos

DIRECTOR DEL PROYECTO DE

TITULACIÓN

Nombre y Apellidos

PROFESOR DEL ÁREA -

TRIBUNAL

VII

DECLARACIÓN EXPRESA

“La responsabilidad del contenido de este Proyecto de Titulación, me corresponden exclusivamente; y el patrimonio intelectual de la misma a la UNIVERSIDAD DE GUAYAQUIL”

DOUGLAS ANTONIO TORAL HERRERA

VIII

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES

Desarrollo de una plataforma Web de mapeo y escaneo de IP dentro de una Red IpV4 con equipos CISCO para la Empresa Mediasist

Proyecto de Titulación que se presenta como requisito para optar por el título de

INGENIERO EN NETWORKING Y TELECOMUNICACIONES

Auto/a: DOUGLAS ANTONIO TORAL HERRERA

C.I: 0930168711

Tutor: ING. SOL LOPEZDOMINGUEZ RIVAS

Guayaquil, Abril de 2016

IX

CERTIFICADO DE ACEPTACIÓN DEL TUTOR

En mi calidad de Tutor del proyecto de titulación, nombrado por el Consejo Directivo de la Facultad de Ciencias Matemáticas y Físicas de la Universidad de Guayaquil.

CERTIFICO:

Que he analizado el Proyecto de Titulación presentado por el/la estudiante DOUGLAS ANTONIO TORAL HERRERA, como requisito previo para optar por el título de Ingeniero en Networking y Telecomunicaciones cuyo problema es: DESARROLLO DE UNA PLATAFORMA WEB DE MAPEO Y ESCANEO DE IP DENTRO DE UNA RED IPV4 CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST

Considero aprobado el trabajo en su totalidad.

Presentado por:

Douglas Antonio Toral Herrera 0930168711

Tutor: Ing. Sol Lopezdominguez Rivas

Guayaquil, Abril de 2016

X

ABREVIATURAS UG Universidad de Guayaquil FTP Archivos de Transferencia Html Lenguaje de Marca de salida de Hyper Texto Http Protocolo de transferencia de Hyper Texto Ing. Ingeniero Ip Internet Protocol TI Tecnología de la Información Vlan Red de área local Virtual MAC Control de Acceso al Medio Https Protocolo de transferencia de Hyper Texto Seguro Httpd Proceso de Protocolo de transferencia de Hyper Texto Seguro

XI

UNIVERSIDAD DE GUAYAQUIL FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERA DE INGENIERIA EN NETWORKING Y TELECOMUNICACIONES

Autorización para Publicación de Proyecto de Titulación en Formato Digital

1. Identificación del Proyecto de Titulación Nombre Alumno: DOUGLAS ANTONIO TORAL HERRERA

Dirección: Cdla. Montebello Mz. 4A V19

Teléfono: 0998244927 E-mail: [email protected]

Facultad: Ciencias Matemáticas y Físicas

Carrera: Ingeniería en Networking y Telecomunicaciones.

Proyecto de titulación al que opta: Ingeniero en Networking y Telecomunicaciones

Profesor tutor: Sol Lopezdomínguez Rivas

Título del Proyecto de titulación: DESARROLLO DE UNA PLATAFORMA WEB DE MAPEO Y ESCANEO DE IP DENTRO DE UNA RED IPV4 CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST.

Tema del Proyecto de Titulación: mapeo y escaneo, desarrollo, plataforma web,

implementación.

2. Autorización de Publicación de Versión Electrónica del Proyecto de Titulación A través de este medio autorizo a la Biblioteca de la Universidad de Guayaquil y a la Facultad de Ciencias Matemáticas y Físicas a publicar la versión electrónica de este Proyecto de titulación. Publicación electrónica:

Inmediata X Después de 1 año

Firma Alumno:

3. Forma de envío: El texto del proyecto de titulación debe ser enviado en formato Word, como archivo .Doc. O .RTF y .Puf para PC. Las imágenes que la acompañen pueden ser: .gis, .jpg o .TIFF.

DVDROM X CDROM

XII

ÍNDICE GENERAL

APROBACION DEL TUTOR ........................................................................ III

DEDICATORIA ............................................................................................ IV AGRADECIMIENTO ..................................................................................... V TRIBUNAL PROYECTO DE TITULACIÓN ................................................ VI

DECLARACIÓN EXPRESA ....................................................................... VII CERTIFICADO DE ACEPTACIÓN DEL TUTOR ....................................... IX ABREVIATURAS .......................................................................................... X

ÍNDICE DE CUADROS ............................................................................. XIV ÍNDICE DE GRÁFICOS ............................................................................. XV RESUMEN ................................................................................................. XVI

ABSTRACT ............................................................................................... XVII INTRODUCCIÓN ........................................................................................... 1 CAPITULO I ................................................................................................... 2

EL PROBLEMA ............................................................................................. 2 PLANTEAMIENTO DEL PROBLEMA .......................................................... 2

Ubicación del Problema en un Contexto ................................................... 2

Situación Conflicto Nudos Críticos ............................................................ 3 Causas y Consecuencias del Problema ................................................... 4

Causas.................................................................................................... 4

Consecuencias ....................................................................................... 4 Delimitación del Problema ......................................................................... 5 Formulación del Problema ......................................................................... 5

Evaluación del Problema ........................................................................... 5 OBJETIVOS ................................................................................................... 7

OBJETIVO GENERAL ............................................................................... 7

OBJETIVOS ESPECÍFICOS ..................................................................... 7 ALCANCES DEL PROBLEMA ...................................................................... 7 JUSTIFICACION E IMPORTANCIA ............................................................ 8

METODOLOGÍA DEL PROYECTO: ............................................................. 9 Metodología de Desarrollo ........................................................................ 9 Supuestos y restricciones ........................................................................ 11

Plan de Calidad (pruebas a realizar)....................................................... 13 CAPITULO II ................................................................................................ 14 MARCO TEÓRICO ...................................................................................... 14

ANTECEDENTES DEL ESTUDIO .............................................................. 14 FUNDAMENTACIÓN TEÓRICA ................................................................. 14

PHP: HYPERTEXT PREPROCESSOR .................................................. 14

HTML: HYPERTEXT MARKUP LENGUAGE ......................................... 16 MYSQL ..................................................................................................... 18 HTTP APACHE SERVER ........................................................................ 19

OPEN SOURCE....................................................................................... 20 SISTEMA OPERATIVO UNIX/LINUX ..................................................... 22 JAVASCRIPT ........................................................................................... 24

PROTOCOLO SNMP .............................................................................. 26

XIII

PROTOCOLO TELNET ........................................................................... 28 PROTOCOLO TCP/IP ............................................................................. 29

PROTOCOLO SSH.................................................................................. 31 DIRECCIÓN IP......................................................................................... 33 CISCO SYSTEMS ................................................................................... 36

EQUIPOS DE ENRUTAMIENTO ............................................................ 37 ARQUITECTURA MVC ........................................................................... 39 NORMAS ISO .......................................................................................... 40

FUNDAMENTACIÓN LEGAL ...................................................................... 41 DECRETO PRESIDENCIAL No. 1014.................................................... 41

PREGUNTA CIENTÍFICA A CONTESTARSE ........................................... 44

DEFINICIONES CONCEPTUALES ............................................................ 45 CAPÍTULO III ............................................................................................... 47 PROPUESTA TECNOLÓGICA ................................................................... 47

ANÁLISIS DE FACTIBILIDAD ................................................................. 48 Factibilidad Operacional ...................................................................... 49 Factibilidad Técnica ............................................................................. 49

Factibilidad Legal ................................................................................. 50 Factibilidad Económica ........................................................................ 51

ETAPAS DE LA METODOLOGÍA DEL PROYECTO................................. 52

SPRINT 0 - ANÁLISIS Y RECOPILACIÓN DE INFORMACIÓN PARA PROYECTO ............................................................................................. 53 SPRINT 1 - MODULO DE SEGURIDAD ................................................ 56

SPRINT 2 - MÓDULO DE BÚSQUEDA DE EQUIPOS .......................... 58 SPRINT 3 - MÓDULO DE REPORTERÍA .............................................. 59 SPRINT 4 - MÓDULO DE CONFIGURACIÓN Y RESPALDO DE LOS

DISPOSITIVOS DE TELECOMUNICACIONES. .................................... 61 ENTREGABLES DEL PROYECTO ............................................................ 62 CRITERIOS DE VALIDACIÓN DE LA PROPUESTA ................................ 63

ENCUESTA DE SATISFACCIÓN ........................................................... 67 POBLACION Y MUESTA ........................................................................ 69

CAPITULO IV............................................................................................... 79

CRITERIO DE ACEPTACION DEL PRODUCTO O SERVICIO................ 79 BIBLIOGRAFÍA ............................................................................................ 83 ANEXOS ...................................................................................................... 86

ANEXO A – CRONOGRAMA DEL PROYECTO .................................... 87 ANEXO B – MANUAL TÉCNICO ............................................................ 89 ANEXO C.- MANUAL DE USUARIO ...................................................... 99

ANEXO D.- DIAGRAMA ENTIDAD RELACION. .................................. 121 ANEXO E.- CODIGO FUENTE DEL PROYECTO ............................... 122 ANEXO F.- DICCIONARIO DE DATOS ................................................ 130

XIV

ÍNDICE DE CUADROS

Cuadro No. 1 Delimitación del Problema ........................................................... 5 Cuadro No. 2 Software/Hardware a Utilizar ..................................................... 51 Cuadro No. 3 Calculo de Población................................................................. 69 Cuadro No. 4 Necesidad Del Aplicativo Web ................................................... 70 Cuadro No. 5 Inventario de Direcciones IP ...................................................... 71 Cuadro No. 6 Respaldo de configuración de dispositivos de telecomunicaciones....................................................................................................................... 71 Cuadro No. 7 Facilita sus labores diarias ........................................................ 72 Cuadro No. 8 Centralizar y administrar dispositivos de telecomunicaciones ...... 73 Cuadro No. 9 Necesaria la implementación de aplicativo para un Administrador de Red........................................................................................................... 73 Cuadro No. 10 Interfaz web amigable ............................................................. 74 Cuadro No. 11 Uso de la Aplicación ................................................................ 75 Cuadro No. 12 Funciones adicionales ............................................................. 75 Cuadro No. 13 Implementación en otras empresas.......................................... 76 Cuadro No. 14 Criterios de aceptación ............................................................ 79 Cuadro No. 15 Informe de la calidad ISO 9126 del Proyecto ............................ 81

XV

ÍNDICE DE GRÁFICOS

Gráfico 1 Metodología Ágil Scrum .................................................................. 10 Gráfico 2 Forma de usar el código PHP en HTML .......................................... 14 Gráfico 3 Funcionamiento de PHP ................................................................. 15 Gráfico 4 logo de la comunidad de Open Source ............................................ 20 Gráfico 5 Evolución del primer Sistemas Operativo Unix. ................................ 23 Gráfico 6 Estructura del Sistema Operativo Unix ........................................... 24 Gráfico 7 Clase de direcciones IP .................................................................. 36 Gráfico 8 relación entre Controlador - Vista - Modelo ..................................... 40 Gráfico 9 Interfaz de la herramienta scrumtool................................................ 53 Gráfico 10 Sprint 0 – Análisis y recopilación de información ............................ 54 Gráfico 11 burndown del Sprint 0 ................................................................... 55 Gráfico 12 Sprint 1 – Modulo De Seguridad ................................................... 56 Gráfico 13 Sprint 1 Modulo de Seguridad ....................................................... 57 Gráfico 14 Sprint 2 – Modulo de Búsqueda de Equipos................................... 58 Gráfico 15 Burndown del Sprint 2................................................................... 59 Gráfico 16 Sprint 3 – Modulo de Reportería .................................................... 59 Gráfico 17 Burndown Sprint 3 ....................................................................... 60 Gráfico 18 Sprint 4 – Modulo de configuración Respaldo de los dispositivos de Telecomunicaciones. ...................................................................................... 61 Gráfico 19 Burndown del Sprint 4 culminado .................................................. 62 Gráfico 20 Necesidad Del Aplicativo Web....................................................... 70 Gráfico 21 inventario de Direcciones IP .......................................................... 71 Gráfico 22 Respaldo de configuración de dispositivo de Telecomunicaciones .. 71 Gráfico 23 Facilita sus labores diarias ............................................................ 72 Gráfico 24 Centralizar y administrar dispositivos de telecomunicaciones ......... 73 Gráfico 25 Necesaria la implementación de aplicativo para un Administrador de Red ............................................................................................................... 73 Gráfico 26 Interfaz web amigable ................................................................... 74 Gráfico 27 Uso de la Aplicación ..................................................................... 75 Gráfico 28 Funciones adicionales .................................................................. 75 Gráfico 29 Implantación en otras empresas .................................................... 76 Gráfico 30 Preguntas ingresadas en RStudio para el análisis. ......................... 77 Gráfico 31 Selección de conjunto de datos. .................................................... 77 Gráfico 32 Opciones de Estadísticas-Test de correlación ................................ 78 Gráfico 33 Resultado de Correlación .............................................................. 78 Gráfico 34 Modelo de Calidad ISO 9126 ........................................................ 81

XVI

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS

CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES

Desarrollo de una plataforma Web de mapeo y escaneo de IP dentro de una Red IpV4

con equipos CISCO para la Empresa Mediasist

RESUMEN

La empresa Mediasist cuenta con una gran cantidad de equipos tecnológicos

conectados en la red lo que demanda una mayor cantidad de direcciones IP para

la configuración de dicho equipos. Al no contar con un control y una herramienta

de búsqueda de direcciones Ip se vuelve complicado la asignación de dirección

Ip a un equipo nuevo que ingrese a la empresa. El presente proyecto tiene como

finalidad implementar un aplicativo web de mapeo y escaneo de direcciones IPv4

que permitirá la automatización de procesos de búsqueda y generar un

inventario de las direcciones Ip en uso y activas, todo esto estableciendo

estrategias metodológicas ágiles de desarrollo para cumplir con las normas de

calidad y dar como resulta un aplicativo Web que el usuario se sienta a gusto

con el uso y la funcionalidad que le brinda.

Autor: Douglas Antonio Toral Herrera

Tutor: Ing. Sol Lopezdomínguez Rivas

XVII

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMATICAS Y FISICAS

CARRERA DE INGENIERIA EN SISTEMAS COMPUTACIONALES

DEVELOPMENT OF A WEB MAPPING PLATFORM AND SCAN IP WITHIN AN

IPV4 NETWORK WITH CISCO EQUIPMENT COMPANY MEDIASIST

ABSTRACT

Mediasist is a company with a lot of technological device connected to the

network. This requires a greater a mount of Ip addresses in order to permit the

configuration of such devices. By not having the control neither the possibily to

find Ip addresses it becomes hard to assign, thus to address to a new device

acquired by the company. The main aim of this project is to implement a web

application of mapping and scanning that will allow the automation of the search

process in order to generate an inventory of in service Ip addresses. All this by

establishing agile methodological strategias of development to that Quality

standards might be achieved and the uses fells comportable with the funtionaly it

provids.

Author: Douglas Antonio Toral Herrera

Tutor: Ing. Sol Lopezdominguez Rivas

1

INTRODUCCIÓN

Vivimos en un mundo dependiente de una Ip, el incremento de dispositivos

habilitados por Ip por ejemplo teléfonos móviles inteligentes, tabletas, Ipad,

equipos portátiles y demás dispositivos aleatorios en el lugar de trabajo han

vuelto las redes empresariales más dinámicas y complejas que antes, si una

área de TI no posee las herramientas adecuadas para manejar esta demanda la

administración de la dirección Ip puede convertirse en una pesadilla.

En algunas empresas tiene una infraestructura de red que por lo general tienen

un diseño de red jerárquico la cual cuenta con tres niveles (acceso, distribución,

núcleo), indistintamente el diseño de red que tenga, siempre cuentan con

equipos que se conectan a la red la cual si pasa de cien o más dispositivos

conectados es recomendable la asignar direcciones Ip de manera manual.

Esto genera desgaste para el personal de soporte y por descuido de

configuración puede aparecer problemas como perdida de direcciones Ip o

duplicación de las misma como lo que en ocasiones ocurre en la empresa

Mediasist, cuando esto sucede tiene que buscar en todas las maquinas ya

configuradas realizando doble trabajo.

Existen software que generan reportes o realizan búsquedas de dispositivos que

se encuentre conectados a la red pero esto son costosos y otros se paga licencia

por la cantidad de equipos que tenga la empresa para poder obtener un mayor

control del inventarios de direcciones Ip y de equipos.

Es por esta razón que se va a desarrollar un aplicativo web que genere un

inventario y realice búsquedas de las direcciones Ip que estén en uso algo

similar a lo realiza un software pagado, así poder solventar muchos de estos

problemas ya mencionados, como también agilitar requerimiento que a futuro

soliciten la empresa.

2

CAPITULO I

EL PROBLEMA

PLANTEAMIENTO DEL PROBLEMA

Ubicación del Problema en un Contexto

GEA ECUADOR es un grupo empresarial con más de diez años en el mercado

conformado por varias compañías y una de ellas es Mediasist, su misión

principal es brindar una propuesta integral de servicio con alto valores y bajos

costos para nuestros afiliados, y suministrar servicios especializados de

asistencia alineados a los ideales de nuestros clientes.

Mediasist en su función principal brinda servicio de asistencia médica en el

momento que el cliente lo necesita, todo esto realizado por su Call Center y

personal altamente capacitado las veinticuatro horas del día los siete días de la

semana y en cualquier lugar que se encuentre, siempre pensando en el

bienestar de sus clientes.

Con el pasar de los tiempos Mediasist fue aumentando en sus clientes

conformados por los principales banco y compañías de seguro del país,

sometiéndose a crecimiento de su infraestructura tecnológica y física, lo cual

conlleva al aumento de equipos de computación, dispositivos de enrutamiento en

sus distintas localidades, todos estos cambios que sufre la empresa implica

movimientos masivos de los equipos de cómputo y configuración de las mismas

entre ellas las colocación de dirección Ip.

Con tantos equipos de cómputo que tiene la empresa y la necesidad de asignar

direcciones Ip, al no contar con un listado de direcciones Ip utilizadas aparecen

3

inconvenientes como la duplicación y extravíos de direcciones Ip, generando

retrasos en el trabajo del usuario y pérdida de tiempo no solo al personal de

soporte que se encarga de la búsquedas de la dirección Ip en cada equipo sino

también al personal de telecomunicaciones que tiene que buscar en la interfaz

del switch para proceder a cambiar la vlan.

Cuando se requiere buscar una dirección Ip dentro de toda la red es complicado

saber dónde se encuentra y toma tiempo conocer la ubicación, para esto el

personal de soporte realiza la revisión de cada equipo de cómputo para localizar

la dirección Ip. Esto en ocasiones causa molestia al usuario ya que imposibilita

que realice su gestión de manera normal.

Situación Conflicto Nudos Críticos

El conflicto que presenta la empresa en el área tecnológica es saber de manera

exacta la ubicación de los equipos de cómputo o la direcciones Ip que en

ocasiones se necesitan para realizar cambios de permisos que son

requerimientos que solicita la empresa. Para llevar a cabo esto es indispensable

saber de manera rápida en qué lugar físico se encuentra el equipo dentro de la

empresa, otros de los casos es la pérdida o duplicación de dirección Ip que

conlleva a la búsqueda manual en cada equipo de cómputo de la empresa.

Otras empresas cuentan con aplicativos costosos que realizan procedimientos

similares como lo que es búsquedas de equipos que están conectados en la red

o mapeo y escaneo de direcciones Ip. La aplicación propuesta en este proyecto

se desarrollará sin ningún costo e implementara funciones como las de un

aplicativo pagado por medio de una interfaz web. Esto minimizara los tiempos de

búsqueda y agilitará la gestión de los usuarios evitando así pérdida de valiosa

productividad y peor aún sobrecarga de trabajo para el personal de soporte.

Para el área de sistemas de la empresa Mediasist una aplicación como la

propuesta en el presente proyecto tendría un buen aporte en sus labores diarias

podrán conseguir dar soporte de manera rápida, no solo para solventar

problemas con duplicación y pérdidas de direcciones de Ip sino también tener un

4

inventario de las mismas, así obtener una mejor organización cuando necesiten

realizar cambios de este tipo.

Causas y Consecuencias del Problema

Causas

Falta de inventario de direcciones Ip y con los cambios que sufre la empresa en

su reestructuración física ya sea por crecimiento o modificación en sus áreas de

trabajo tener un mejor control de direcciones Ip en uso.

Información errónea de identificación de los conectores de telecomunicaciones

en el área de trabajo del sistema de cableado horizontal hasta la terminación

mecánica de la interconexión horizontal localizada en el cuarto de

telecomunicaciones.

Poca organización en asignación de direcciones Ip en los equipos de cómputo y

demás terminales que se conectan en la red.

Consecuencias

Dificultad en la asignación de direcciones Ip para nuevos hosts la cual al no

saber si se encuentran configuradas en los equipos de cómputos y demás

terminales como lo es en impresoras, teléfonos Ip, router wifi, cámaras Ip,

biométricos, ocasiona la duplicación y pérdidas de direcciones Ip

Retraso en la conectividad del equipo al no saber que vlan se encuentra

configurada en la interfaz del switch lo que ocasiona que el usuario no pueda

gestionar de manera inmediata.

Perdida de direcciones Ip lo que provoca duplicación de direcciones Ip y a la

carencia de un inventario de las mismas toma tiempo en búsqueda de

direcciones Ip,

5

Delimitación del Problema

Cuadro No. 1 Delimitación del Problema

Campo: Empresarial

Área: Tecnología

Aspecto: Desarrollo de Plataforma Web y Monitoreo

Tema:

Desarrollo de una plataforma Web de escaneo y mapeo de

dirección Ip dentro de una red Ipv4 con equipos Cisco para

la empresa Mediasist.

Elaboración: Douglas Antonio Toral Herrera. Fuente: Investigación

Formulación del Problema

La empresa cuenta con gran cantidad de equipos y por la falta de un inventario

de direcciones Ip utilizadas dificulta tanto la asignación como la búsqueda de las

mismas, cuando se requiere agregar nuevos equipos no se sabe cuál dirección

Ip se le configura, es ahí cuando se presenta un problema de duplicación o

pérdida de dirección Ip.

Evaluación del Problema

Los aspectos generales de evaluación son:

Delimitado: Este aplicativo Web va ser intranet y de uso exclusivo para el

personal de Soporte, telecomunicaciones e infraestructura del área del

departamento sistemas de la empresa Mediasist, con él puede realizar

búsquedas de equipos con la dirección Ip e indica en que interfaz del dispositivo

de enrutamiento se encuentra conectado, obtener un listado de las direcciones

Ip activas.

6

Claro: El desarrollo de la aplicación Web tiene grandes beneficios ya que hace

más rápido la asignación y la búsqueda de direcciones Ip pérdidas o duplicadas,

muestra equipos que consuman mayor tráfico de red, usuarios que estén

haciendo mal uso de las herramientas de trabajo, genera reporte de las

direcciones Ip que están en uso, realiza respaldos de los dispositivos de

enrutamiento.

Evidente: Es muy importante contar con un inventario de las direcciones Ip

utilizadas en los equipos de la empresa con ello se puede llevar un control

ordenado para la asignación y no evitar que pase el inconveniente de pérdidas o

duplicación de direcciones Ip.

Concreto: Permite solventar problemas de búsqueda de direcciones Ip, realiza

un inventario actualizado de las direcciones Ip en uso, monitoreo de trafico de

red, monitoreo e ingreso de configuraciones de los equipos intermedios router y

switch por medio de una interfaz web o por líneas de comandos.

Original: El desarrollo del aplicativo surgió por la necesidad de un listado de

direcciones Ip activas para una buena asignación y configuración a equipos

nuevos y para la búsqueda de equipos de cómputo y de direcciones Ip de forma

rápida para así poder efectuar cambios requeridos por la empresa. Lo más

importante es que va a tener una interacción directa con los dispositivos switch y

router.

Factible: Este proyecto es factible ya que es necesario brindar un buen servicio

a los usuarios y cumplir con un buen tiempo de respuesta de la empresa esto

implica dar soporte de manera rápido viendo el sentido de urgencia para la

empresa y para los clientes al cual brinda sus servicios y no sobrecargar de

trabajo al personal de soporte.

7

OBJETIVOS

OBJETIVO GENERAL

Diseñar e implementar una herramienta de mapeo y escaneo de direcciones Ip

mediante una plataforma web para poder realizar búsquedas de equipos por

medio de direcciones Ip y obtener un inventario de direcciones Ip utilizadas

logrando así un mejor control de asignación dentro de la empresa.

OBJETIVOS ESPECÍFICOS

Proponer un sistema de escaneo y mapeo de direcciones Ip para facilitar la

búsqueda de direcciones Ip y duplicadas mediante la identificación de

equipos para una mejor respuesta ante un problema.

Presentar mediante el registro de los dispositivos de Networking (Cisco) un

inventario de las direcciones Ip activas que utilizan los equipos conectados

en la red.

Realizar respaldos de la configuración de los equipos de conmutación de la

empresa en cada cambio que se realice y estar preparado cuando ocurra

algún problema con dichos equipos.

Implementar un aplicativo web con múltiples servicios de diferentes

dispositivos, para realizar varias tareas sin necesidad de muchos software,

así poder cumplir con un mismo objetivo.

ALCANCES DEL PROBLEMA

El desarrollo del aplicativo web de mapeo y escaneo de direcciones Ip que se

lleva a cabo en esta tesis es de uso exclusivo para el departamento del área de

sistemas de la empresa Mediasist. Dicha aplicación web se basa en una

8

plataforma cliente servidor, utiliza herramientas de software libres tanto de

programación como en el sistema operativo en el que se implementa.

El sitio web cuenta con los siguientes servicios: genera un inventario de la

dirección Ip utilizadas en la red de la empresa, realiza respaldos de equipos de

conmutación de fabricante Cisco, incorpora un terminal con las mismas

funcionalidades que tiene un terminal de Linux, el uso del aplicativo mejorara el

tiempo de respuesta para las búsquedas de direcciones Ip y determina la interfaz

y la vlan en donde se encuentra el equipo de usuario final.

Cuenta con módulos de: ingreso de dispositivos de enrutamiento, ingreso de

usuarios, perfil de usuario, reportarías, búsqueda. Con respecto al módulo de

sistema de ingreso de dispositivos la cual permite el ingreso de todos los

dispositivos de enrutamiento que estén dentro de la de red de la empresa,

visualiza el rendimiento de los dispositivos.

Módulo de Perfil Por Usuarios tendrá tres perfiles diferentes que se definirá en el

aplicativos estos son administrador, soporte. El perfil de Administrado permite el

ingreso de todos los dispositivos de enrutamiento, usuarios, asignación de

perfiles, eliminación, consultas, editar cualquier opción necesaria dentro del

aplicativo.

JUSTIFICACIÓN E IMPORTANCIA

En la actualidad la empresa realiza algunos procedimientos para encontrar la

ubicación de una dirección Ip o equipo que la utiliza, que sólo el personal de

telecomunicación o personas que tengan conocimientos en este ámbito como

por ejemplo: con la dirección Ip se realiza un nmap en cualquier equipo que

tenga instalado dicho software para poder obtener la dirección MAC, teniendo la

información de la dirección MAC accediendo al Switch e ingresando una serie de

líneas de comandos para saber en qué interfaz se encuentra conectado, de esta

manera se toma un mayor tiempo para encontrar la ubicación o el equipo.

A través de ésta aplicación permite realizar inventarios de direcciones de Ip que

se encuentran en uso en los equipos de cómputo de la empresa para poder

evitar las perdidas y duplicación de direcciones Ip, cuenta con un plano físico de

9

la empresa para tener mejor visión de la ubicación del equipo de cómputo, con la

ayuda del personal de soporte que es encargado de configurar los nombres de

cada uno de los equipos se podrá identificar y ubicar físicamente dentro de la

empresa.

Se puede cambiar la vlan y deshabilitar la interfaz de cualquier dispositivo de

enrutamiento, sin la necesidad de ingresar comandos que solo un experto en

redes puede realizarlo, con el desarrollo web se logra lo mismo que se hace con

líneas de comandos de manera más rápida y lo puede realizar un personal que

no tenga muchos conocimientos de los comandos de configuración o ejecución

de los dispositivos del fabricante Cisco.

Por todo lo antes mencionado el desarrollo del aplicativo web tiene una función

muy importante para su uso en la empresa Mediasist para el área del

departamento de sistemas, ya que con ella se puede solventar muchos

problemas de manera eficiente y así poder brindar un buen soporte a usuario

cuando la empresa necesite cambios de este tipo.

Los principales beneficiarios serán el personal del área de Sistemas de la

empresa Mediasist lo cuales son los encargados de los equipos de tecnología,

puede aprovechar los beneficios de tener esta aplicación, para brindar soporte a

usuario de manera rápida cuando se presenten problemas ya antes

mencionados, además el desarrollo de la aplicación no tiene ningún costo.

El desarrollo del aplicativo web que se realiza en esta tesis dará un aporte muy

importante para la empresa Mediasist, ya que cuenta con una herramienta en

plataformas web de licenciamiento libre que garantiza la búsqueda de equipos

de cómputo por medio de la interfaz del dispositivo de enrutamiento a partir de la

dirección Ip.

METODOLOGÍA DEL PROYECTO:

Metodología de Desarrollo

Para el desarrollo de este proyecto se utilizará la Metodología Ágil Scrum, misma

que se enfoca en la realización de un desarrollo incremental, en vez de la

10

planificación y ejecución del producto final.

Gráfico 1 Metodología Ágil Scrum

Elaboración: Scrum MethodologyE Fuente: Scrum Methodology

1. Roles, eventos y artefactos

1.1 Roles

Product Owner es el responsable de mantener el contacto con el

cliente, tiene como funciones dividir el trabajo del equipo y

elaborar el Sprint Backlog.

Equipo Scrum son los responsables de ejecutar las tareas de

culminación del producto con los que deciden cuantos elementos

van a desarrollar durante el Sprint.

Scrum Master es el responsable de orientar al equipo de

desarrolladores para que sigas los procesos Scrum, El garantiza

que trabajen sin interrupciones externas.

1.2 Eventos

Sprint es el tiempo que se le asigna al procedimiento de

adaptación del proyecto, durante este tiempo el producto es

diseñado, codificado y probado.

Daily Scrum son reuniones diarias, donde cada miembro

11

contesta a las siguientes preguntas: ¿Qué es lo que estas

planeando hacer hoy?, ¿Has tenido algún inconveniente que te

haya impedido alcanzar tu propósito? ¿Qué has hecho desde

ayer?

Sprint Review y Retrospectiva, en el sprint review se revisa si las

funcionalidades planificadas fueron concluidas y se le da una

calificación al sprint. En cambio en la retrospectiva se analizan lo

bueno, lo malo y lo que se debe mejorar en el siguiente sprint.

1.3 Artefactos

Product Backlog son requerimiento del sistema o del usuario, es

una lista con prioridades definidas en los trabajos que se van a

realizar en el proyecto.

Sprint Backlog es el documento en el cual se lleva registrado los

requisitos detallados o tareas que van a desarrollar el equipo

Scrum en la iteración.

Burn Down Chart es una gráfica donde se va a mostrar todas las

actividades diarias que se están realizando por parte del equipo

de desarrollo.

Supuestos y restricciones

2. Fases del Proyecto

Para este proyecto que se implementará se presume que tendrá cuatro

Sprint, cada con duración de veinte días.

2.1 Sprint 0: Análisis del proyecto

Contará con la una reunión para realizar el levantamiento inicial y

definiciones de los requerimiento del usuario, esto dará como

resultado un Product Backlog. Adicional a esto se detallarán las

tareas y los tiempos para cada parte del requerimiento.

12

2.2 Sprint 1: Módulo de Seguridad

En este módulo se llevara a cabo las funcionalidades de:

Logueo.

o Se elaborarán las funcionalidades de seguridad al

sistema mediante Perfiles.

Ingreso de Usuario.

o Se elaboraran las funciones de ingresos de

usuarios, roles, opciones, adicionalmente se

configurarán las seguridades dependiendo al perfil

asignado al usuario.

Ingreso de Dispositivos de Telecomunicaciones

o Se elaborarán las funciones de ingreso de los

dispositivos de enrutamiento, claves, direcciones Ip,

localidad, número de interfaces de red.

Ingreso de nuevos perfiles

o Se podrá crear nuevos perfiles si es necesario.

Además, se podrán agregar y quietar módulos de

funcionalidad.

2.3 Sprint 2: Módulo de Búsqueda de Equipos

Se elaborarán las funcionalidades de búsqueda de equipos por

medio de la dirección Ip.

2.4 Sprint 3: Módulo de Reportes

Se elaborarán las funcionalidades de realizar un reporte o

inventario de las direcciones Ip que se encuentren activas en la red.

2.5 Sprint 4: Módulo de Configuración/Respaldo

Se facilitará la funcionalidad de realizar respaldo de las

configuraciones de los dispositivos de telecomunicaciones de manera

automática o manual.

13

Plan de Calidad (pruebas a realizar)

Las pruebas se realizan en cada Sprint culminado en el que se detalla los

errores para las correcciones y modificaciones en los módulos.

14

CAPITULO II

MARCO TEÓRICO

ANTECEDENTES DEL ESTUDIO

FUNDAMENTACIÓN TEÓRICA

PHP: HYPERTEXT PREPROCESSOR

PHP es un lenguaje de programación de código abierto que sirve especialmente

para desarrollo web creado por Rasmus Lerdorf en 1994, su primer código

publicado era un conjunto simple de ficheros binarios Common Gateway

Interface (CGI) escrito en lenguaje C, principalmente fue creado para buscar

visitas de su curriculum subido en la red, al conjunto de estos scripts lo llamo

“Personal Home Page Tools” conocido también domo “PHP Tools”.

El código PHP está encerrado entre etiquetas especiales como al inicio <?php y

al final ?> que permite la entrada y salida del “modo PHP”, las páginas de PHP

contienen contiene incrustado códigos HTML como se muestra en el ejemplo de

el gráfico 2.

Gráfico 2 Forma de usar el código PHP en HTML

Elaboración: Douglas Toral Herrera

Fuente http://php.net/manual/es/intro-whatis.php

15

“PHP es un lenguaje de programación interpretado y diseñado para la

creación de páginas web. Más allá del desarrollo web, PHP permite incluso la

creación de aplicaciones de escritorio (con una interface gráfica

independiente del navegador). Es una solución para la construcción de webs

con independencia de la Base De Datos y del servidor válido para cualquier

plataforma. El objetivo final es conseguir la integración de las paginas HTML5

con aplicaciones que corran en el servidor como procesos integrados en el

mismo, y no como un proceso separado”. (Vikram, 2010, p.5)

PHP se caracteriza por ser open source y multiplataforma, puede interactuar con

muchos tipos de bases de datos, una de las características más importante es

que su código se ejecuta en el servidor, generando HTML y lo envía al cliente. El

cliente genera la petición recibe el resultado de ejecutar del script ocultando el

código fuente tal como se muestra en el gráfico 3.

Gráfico 3 Funcionamiento de PHP

Elaboración: Douglas Toral Herrera Fuente: http://redgrafica.com/El-lenguaje-de-programacion-PHP

Según Ángel Cobos (2005) “En definitiva, PHP es uno de los lenguajes más

utilizados actualmente en el desarrollo de aplicaciones web y viene

experimentado un constante crecimiento en su nivel de utilización en internet” (p.

23).

Ventajas:

16

Es un lenguaje multiplataforma.

Capacidad de conectarse con la mayoría de los motores de base de

datos.

Permite modificar dinámicamente el contenido de una página web de

manera fácil y rápida.

Puede interactuar con diferentes lenguajes de programación y

contenedores con archivos.

El código fuente de PHP se ejecuta en el servidor es invisible al

navegador lo cual lo hace segura y confiable

Desventajas:

Es un lenguaje que se interpreta en ejecución lo que resulta un

inconveniente en ocultar el código fuente.

HTML: HYPERTEXT MARKUP LENGUAGE

Comenzó como un formato abierto que apareció a partir de las etiquetas SGML

(Standard Generalized Markup Language), traducido al español como “Estándar

de lenguaje de Marcado Generalizado” y que se entiende como un sistema que

permite ordenar y etiquetar diversos documentos dentro de un listado que utiliza

para especificar los nombres de todas las etiquetas que se utilizan al ordenar. No

existen reglas para dicha organización, por eso se dice que es un sistema de

formato abierto.

HTML fue creado por CERN (Organización Europea para la investigación

Nuclear) en los años de 1945 para realizar un sistema de almacenamiento donde

la información no se pierdan y pudieran ser conectadas a través de

17

hipervínculos. En los años 1980 Tim Berners-Lee trabajador de CERN propuso

un nuevo sistema de “hipertexto” utilizado para compartir documento, en 1991

fue el primero en describir componentes para un diseño más básico y simple del

HTML.

HTML es un lenguaje para desarrollo de páginas web, permite escribir texto de

forma estructurada a esto se le llama como hipertexto, está compuesto por

etiquetas que marcan el inicio y el fin de cada elemento del documento estas

etiquetas son atributos y palabras claves rodeados de los signos mayor y menor

(por ejemplo <html>…..</html>).

En los documentos hipertexto no solo están compuesto de texto sino también de

imágenes, sonidos, videos, etc., lo que da como resultado un documento

multimedia. Todos los documentos HTML deben tener la extensión htm o html

para que puedan ser visualizados por diferentes navegadores.

Gracias a estas etiquetas o marcas que utiliza HTML se pueden crear diferentes

plantillas las que se utilizan en el desarrollo web esto lo hace más amigable al

usuario que lo vaya a utilizar.

“HTML es un lenguaje puramente descriptivo que permite definir las páginas

web pero que en modo alguno se puede considerar un lenguaje de

programación. Con HTML no se pueden generar estructuras iterativas o

condicionales, no se pueden definir funciones que sean utilizadas en distintos

puntos del documento, no se pueden declarar variables, no se pueden

realizar cálculos matemáticos. Las páginas creadas únicamente con HTML

son básicamente estáticas, es decir, siempre muestran la misma información

y no ofrecen ningún grado de interactividad con el usuario. Los únicos

elementos de HTML que podrían de alguna forma considerarse interactivos

son los formularios a través de los cuales se solicita información al usuario”.

(Ángel Cobos, 2005, p 8)

18

MYSQL

MySQL, la base de datos más popular para su uso en sitios web, fue

desarrollado para ser rápido y pequeño, específicamente para sitios web.

MySQL es particularmente popular para el uso con los sitios web que están

escritas en PHP, PHP y MySQL trabajar de manera excelente juntos.

MySQL es un software de código abierto, el origen del servidos MySQL se

encuentra en un sistema de base de datos llamada Unireg desarrollado por

Michael Widenius “Monty” para una empresa sueca llamada TcX durante los

años de 1980. La versión inicial del servidor MySQL se creó en 1995, cuando

Monty añadió una interfaz SQL para Unireg.

Características importantes que se puede encontrar en MySQL:

Escalabilidad.- Puede soportar grandes cantidades de bases de datos, es

utilizado por grandes compañías como Google, Cisco.

Portabilidad.- Se ejecuta en varios sistemas operativos, incluyendo Unix,

Linux, Windows y MacOS, también se puede ejecutar en diferentes

arquitecturas y equipos desde de gama baja a las gamas altas como

servidores.

Conectividad.- Se puede usar en red y es compatible con TCP/IP socket,

Socket Unix, se puede acceder desde cualquier lugar del internet, es

multiusuario varios usuarios pueden conectar al mismo tiempo.

Seguridad.- Tiene un sistema de control al acceso de datos, utiliza una

estructura basada en el usuario-hostand que controla quien puede

manipular la información.

Velocidad.- Procesa gran cantidad de bases de datos de manera rápida y

en poco tiempo.

19

Facilidad de Uso.- MySQL es fácil de instalar y ejecutar, funciona en

cuestiones de minutos. Es relativamente fácil de optimizar, sobre todo en

comparación con otros productos.

Código Fuente Abierto.- Se puede descargar y utilizar sin necesidad de

licencias ni permisos, lo que lo hace Open Source.

HTTP APACHE SERVER

El proyecto Apache se inició en el febrero 1995 simplemente común lugar para

recoger los parches de mejora para el desarrollo HTTPS, todo comenzó como un

desarrollo de código abierto de un servidor web HTTPD por Rob McCool en

NCSA (Centro Nacional para aplicaciones de Supercomputación) de la

Universidad de Illinois en los años de 1994, tras no terminar el proyecto por

haber dejado NCSA, un grupo "Apache Group" que constaba de 8 chicos que

querían añadir funcionalidad a, y solucionar problemas con el existente Código

HTTPD los cuales son Brian Behlendorf, Andrew Wilson, David Robinson, Roy T.

Fielding, Randy Terbush, Rob Hartill, Cliff Skolnick, Robert S. Thau.(Apache

Tomcat 7 Essentials.)

Http Apache en la actualidad es uno de los servidores Web más exitosos y muy

utilizados por la industria de la TI, las razones por lo que es utilizado por muchos

son las siguientes:

Sirve eficientemente para ejecución de contenidos estáticos como

imágenes, JS, CSS, HTML.

La velocidad de los contenidos estáticos es 10 por ciento más en

comparación con Tomcat.

Se puede conectar varias instancias de Tomcat, es una solución estable y

muy rentable.

20

La seguridad que tiene Apache puede permitir la seguridad de usuario

basada en el host.

Una de las mejores características del servidor Http Apache es que

puede contener múltiples sitios Web.

Apache es muy flexible con referencia a los módulos. Podemos compilar

y descompilar cualquier módulo basado en los requerimientos de la

aplicación.

El servidor web Apache soporta redirecciones y reescrituras son normas

diseñadas para servir a la solicitud del usuario basándose en el contenido

de la aplicación.

OPEN SOURCE

Open Source es una marca de certificación propiedad de la Open Source

Initiative fundado por Eric Raymond y Bruce Perens. Es un término con el que se

conoce al software distribuido como código abierto o desarrollo libremente.

Gráfico 4 Logo de la comunidad de Open Source

Elaboración: opensource.org

Fuente: http://opensource.org/

21

En 1980 por primera vez apareció el término utilizado por algunos usuarios de la

comunidad del Software Libre, el que utilizaron para reemplazar el nombre

original de free software traducido al español significa free (libre, gratuito),

software(programa) lo que expresa software que se puede redistribuir de manera

gratuita, modificar su código y ser leído sin ningún problema.

En la actualidad el término código libre es utilizado por programadores que

ofrecen sus códigos fuentes de los programas para su alteración con la

respectiva autorización por parte del autor, pero el software no es total mente

libre.

El tipo de licencia que utiliza en la de GPL (General Public License), la cual tiene

dos versiones que se utiliza en muchas comunidades de código abierto:

o Licencia Publica General GNU, versión 2.0 (GPL-2.0): Se permite la

copia y la distribución de copias.

o Licencia Publica General GNU, versión 3.0 (GPL-3.0): Se permite la

copia y la distribución pero la modificación no está permitido.

Para que sea un software de código abierto debe cumplir con los siguientes

requisitos:

Redistribución gratuita: La licencia no requerirá una regalía u otra

cuota por dicha venta.

Código Fuente: El programa debe incluir el código fuente y permitir su

distribución.

Trabajos Derivados: La distribución de modificaciones del software

debe estar permitida.

Integridad del código fuente del autor: La licencia puede restringir que

se distribuya el código fuente modificado, cualquier modificación que

sufra debe ser incluido como parche.

Sin discriminación contra personas o grupos: Debe ser distribuida

para cualquier persona o grupo.

22

Sin discriminación en función de iniciativa: La licencia no puede

restringir la utilización del programa como uso comercial.

Distribución de la Licencia: La licencia del programa debe ser

redistribuida a todos por igual.

La licencia no debe ser específica para un producto: El programa no

puede licenciarse solo como parte de una distribución mayor.

La licencia no debe restringir otro Software: La licencia no puede

obligar que los demás programas distribuidos en el mismo medio

sean software de código abierto.

La licencia debe ser tecnológicamente neutral: En ningún momento el

programa debe solicitar licencia ni durante ni después de la

instalación de la instalación.

Ángel Cobo (2005) aclara:

“Es importante aclarar que open source hace referencia a la libre

disponibilidad en cuanto a utilizar, modificar y distribuir el software y su código

fuente y no al coste o precio de adquisición. Por tanto, es posible encontrar un

software open source y software libre que no sea gratis, que presente un

precio de adquisición, que de haberlo es generalmente muy reducido”.

SISTEMA OPERATIVO UNIX/LINUX

Todo comenzó en el año 1969 con un pequeño proyecto de investigación por

Dennis Ritchie y Ken Thompson en el AT & T Bell Labs para la DEC PDP - 7,

diseñaron un sistemas operativo llamado UNIX que apareció para sustituir el

sistema operativo Multics que utilizaban.

En el gráfico 5 se muestra la evolución y crecimiento del primer Sistemas

Operativo UNIX:

23

Gráfico 5 Evolución del primer Sistemas Operativo Unix.

Elaboración: Douglas Antonio Toral Herrera Fuente: Timeline of UNIX/Linux and The GNU. [RobotWisdom02]

“Una vez Multics fue retirado como el sistema operativo en el AT & T,

Thompson y Ritchie desarrollaron UNIX en el PDP - 7 con el fin de jugar

un juego popular en ese entonces llamado Space Travel” (Unix / Linux

History04).

La meta para Unix era proporcional un sistemas operativo multitareas y

multiusuario que apoye la portabilidad de la aplicación, lo que significa que se

pueda ejecutar en muchas plataformas y arquitecturas de hardware.

La primera versión útil de UNIX (versión 1) se introdujo a finales de 1971. Esta

versión de UNIX fue escrito en el lenguaje B (precursor del lenguaje C). Fue

sede de un pequeño número de comandos, muchos de los cuales todavía están

disponibles en los sistemas UNIX y Linux hoy en día (como el cat, cp, ls y who).

En 1972, UNIX fue reescrito en el lenguaje C de nueva creación. En los próximos

tres años, UNIX siguió evolucionando, con cuatro nuevas versiones producidas.

En 1979, el shell Bourne fue introducido.

El sistema operativo GNU / Linux está organizado en una serie de capas, en el

centro es el núcleo de Linux, que interviene en el acceso a los recursos de

hardware subyacentes, tales como la memoria, la CPU a través del programador,

y los periféricos. La shell (de los cuales hay muchos tipos diferentes) proporciona

el acceso del usuario al kernel. La shell ofrece la interpretación de comandos y

los medios para cargar las aplicaciones de usuario y ejecutarlos. Por último, las

24

aplicaciones se muestran que componen la mayor parte del sistema operativo

GNU / Linux. Estas aplicaciones proporcionan las funciones útiles para el

sistema operativo, como los sistemas de ventanas, navegadores web,

programas de correo electrónico , intérpretes de lengua y herramientas , por

supuesto , de programación y de desarrollo. En el grafico 6 se muestra las capas

de Linux

Gráfico 6 Estructura del Sistema Operativo Unix

Elaboración: Douglas Antonio Toral Herrera Fuente: Jones, M. Tim. GNU/Linux Application Programming.

JAVASCRIPT

Ángel Cobo (2005) afirma: “JavaScript es un lenguaje intérprete basado en

guiones que son integrados directamente en el código HTML. El código es

transferido al cliente para que lo interprete al cargar la página. Con JavaScript no

pueden crearse programas independientes” (p.18).

JavaScript ocurrió durante el tiempo de la guerra de navegadores

aproximadamente 1996 – 2001. Eran los inicios del internet cuando los dos

principales navegadores Vendors-Netscape y Microsoft, estaban compitiendo por

ganar la acogida del mercado. Estos dos grandes vendedores estaban

constantemente añadiendo más características a sus navegadores y a sus

versiones de JavaScript lo que ocasiono varias versiones al no tener un estándar

acorde al desarrollo.

25

JavaScript es un lenguaje de programación ligero, orientado a objetos también

conocido como lenguaje de scripts para páginas Web, es un multi-paradigma de

lenguaje de scripting basados en prototipos que son de forma dinámica y soporta

la mayoría de estilos de programación orientado a objetos, se ejecuta en el lado

del cliente de la web y se utiliza para diseñar, programar las páginas web sobre

la ocurrencia de un evento y el control del comportamiento.

“El lenguaje JavaScript, trabajando en conjunto con las características del

navegador relacionados, es una tecnología para mejorar el web. Cuando se

emplea en el equipo cliente, el lenguaje puede ayudar a convertir una página

estática de contenido en una experiencia atractiva, interactiva e inteligente.

Las aplicaciones pueden ser tan sutil como la bienvenida a los visitantes de

un sitio con el saludo ' ' cuando es por la mañana en la zona horaria del

equipo cliente " ¡Buenos días!" - A pesar de que es la hora de cenar, donde

se encuentra el servidor. O bien, las aplicaciones pueden ser mucho más

evidentes, como la entrega de contenido de una presentación de diapositivas

en una descarga de una página mientras JavaScript controla la secuencia de

su escondite, mostrando, y '' slide volar ' ' transiciones mientras navegamos a

través de la presentación”.

(Goodman, Danny, Morrison, Michael, and Novitski, Paul, 2010, p.3)

Beneficios

Proporciona una interfaz amigable para que los datos de información en

la base del producto.

El control de la navegación de múltiples marcos, plug-ins o applets de

Java basado en opciones de usuario en el documento HTML.

Pre procesamiento de datos en el cliente antes de su presentación a un

servidor. Cambio de contenido y estilos en los navegadores modernos

dinámicamente y al instante, en respuesta a la interacción del usuario.

Solicitud de archivos desde el servidor, y hacer leer y escribir solicitudes

de secuencias de comandos del lado del servidor.

26

Solicitud de archivos desde el servidor , y hacer leer y escribir solicitudes

de secuencias de comandos del lado del servidor

PROTOCOLO SNMP

SNMP significa Protocolo simple de administración de redes. Es un componente

de la de protocolos de Internet comúnmente conocida como TCP / IP, definido

por Internet Engineering Task Force (IETF). Desarrollado en 1988 para

proporcionar capacidad de red monitorear dispositivos para redes basadas en

TCP / IP, SNMP fue aprobado como un estándar de Internet en el año 1990 por

la Junta de Arquitectura de Internet (IAB) y ha estado en uso generalizado desde

entonces. Más recientemente, Intercambio de Paquetes (IPX) basado en redes

ha añadido soporte para SNMP. Actualmente, la mayoría de los proveedores de

equipos de red proporcionan soporte SNMP en sus productos.

El uso típico SNMP en algunos sistemas o dispositivos para la gestión, y uno o

más sistemas de gestión de ellos. Un componente de software llamado “agente

SNMP” se ejecuta en todos los sistemas o dispositivos administrados y envía la

información al sistema de Monitoreo y Administración de gestión a través de

SNMP. Agentes SNMP exponen los datos de gestión en los sistemas

administrados o dispositivos normalmente como: la memoria, la configuración, el

proceso, la ruta y muchos más. Protocolo también permite que las tareas de

gestión de activos, tales como la aplicación o modificar la configuración.

Las variables que se acceden en diferentes sistemas administrados por SNMP,

se organizan en un orden jerárquico. Estas jerarquías son descritas por las MIB

(Management Information Bases). SNMP no define qué información debe ofrecer

un sistema administrado, sino que utiliza el diseño amplio ofrecido por las MIB.

SNMP es parte de la arquitectura de gestión de la red Internet.

El modelo de gestión de la red se compone de varios elementos definidos en

diferentes RFC:

27

Elementos de la red: Estos son en su mayoría de hardware conectado

a la red, IP habilitado, como un ordenador, router, switch, UPS,

impresora, y así sucesivamente.

Agentes: Los agentes son módulos de software que residen en los

elementos de red que son responsables de recoger y almacenar

información como los errores, el estado, la temperatura y la

configuración.

Gestionado objeto: Gestionado objeto es una característica de un

sistema administrado que se puede administrar.

Management Information Base (MIB): Un MIB es una colección de

objetos administrados almacenados en una base de datos de

información virtual.

Notación de sintaxis: Este es un lenguaje para describir objetos

gestionados de MIB en un formato independiente de la máquina.

Estructura de Gestión de Información (SMI): SMI define las reglas

para la descripción de la información de gestión utilizando ASN.1

(Abstract Syntax Notation).

Estaciones de gestión de red (SMN): se utilizan estos dispositivos

(como una consola de ordenador) para ejecutar aplicaciones de gestión

para controlar o configurar los elementos de red.

Management Protocolo: Este es el protocolo para el intercambio de

información entre un sistema administrado (elementos de red) y un

sistema gestor (SMN). SNMP es el protocolo de gestión estándar de

facto.

El protocolo SNMP utiliza los comandos:

GetRequest: Solicitan al dispositivo información sobre una variable MIB.

Son los mensajes que utilizan las consolas SNMP para monitorear el

estado de los dispositivos.

GetNextRequest: Permite requerir información respecto de la próxima

instancia de una variable MIB.

GetResponse: Mensaje generado por el agente SNMP que opera en un

dispositivo, para responder a la solicitud enviada por la consola.

28

SetRequest: Comando que reinicia o cambia el valor de una variable

MIB. Son los mensajes que utilizan las consolas SNMP para realizar

cambios de configuración.

Trap: Mensaje SNMP generado por el agente que opera en un

dispositivo, sin necesidad de ser solicitado por la consola. Se produce

cuando el agente SNMP detecta un cambio de parámetros.

Son los mensajes que se utilizan para los sistemas de alerta.

PROTOCOLO TELNET

Telnet es uno de los protocolos de aplicación más antiguos utilizados dentro de

la Internet, y su origen está vinculado con la red ARPANET. La historia de Telnet

se remonta a 1969, cuando la palabra " Telnet " nació como un acrónimo de

Protocolo de Red de Telecomunicaciones. RFC 764 Telnet estandarizada en

1980, y RFC 854 reemplazaron en 1983.

Según RFC 764:

“El propósito del Protocolo TELNET es proporcionar una instalación bastante

general, bidireccional de ocho byte de fácil orientada comunicaciones. Su

objetivo principal es permitir un método estándar de interfaz de dispositivos

terminales y procesos terminales orientadas a la otra. Se prevé que el

protocolo también se puede usar para el terminal - terminal de comunicación

("conexión") y la comunicación proceso de proceso (computación distribuida).

Una conexión Telnet es un protocolo de control de transmisión (TCP)

conexión utilizada para transmitir datos con control de TELNET intercaladas

información. TCP y el procedimiento de establecimiento de conexión son

documéntenos en el Manual del Protocolo de ARPA Internet.”

El protocolo TELNET se basa en tres ideas principales:

29

1.- Utiliza el concepto de una “Red Terminal Virtual”: También conocida

como NVT, es un dispositivo imaginario que proporciona un estándar, de toda

la red, la representación intermedia de una terminal canónica. Esto elimina la

necesidad de un servidor y anfitriones para mantener información sobre las

características de los terminales de cada uno y manipulación en el terminal.

2.- El principio de opción de negociación: Telnet permite tener en cuenta

que ciertos terminales ofrecen servicios adicionales, no definidos en las

especificaciones básicas.

La sintaxis de la negociación de opciones se ha establecido de manera que si

ambas partes solicitan una opción a la vez, cada uno de ellos ver a los otros

la solicitud requerida.

3.- Visión Simétrica de terminales y procesos: Son reglas de negociación

que toma en cuenta para las opciones la cual permiten evitar situaciones de

bucles, las solicitudes solo deben enviarse en el momento de un cambio de

modo.

Telnet es un protocolo de transferencia que sirve para conectarse a un host de

manera remota, los datos que transfieren por la red son de forma de texto plano

no cifrados lo que es muy inseguro este protocolo, se le ha asignado el puerto 23

para su conexión.

PROTOCOLO TCP/IP

El término nació como "lenguaje" hablado por los anfitriones en la ARPAnet en

1969 fue llamado NCP. Sin embargo, NCP tenía demasiadas limitaciones y no

era lo suficientemente robusta como para el SUPERNETWORK, que comenzaba

a crecer fuera de control. Las limitaciones de la NCP y el crecimiento de la

ARPAnet condujeron a la investigación y el desarrollo de un nuevo lenguaje de

la red.

En 1974 Vint Cerf y Bob Kahn, dos pioneros de Internet, publicó "Un Protocolo

de paquetes de red de interconexión." Este artículo describe el Protocolo de

30

Control de Transmisión (TCP), que es un protocolo en el conjunto de protocolos

que eventualmente reemplazar NCP.

El protocolo TCP se describe la parte de host a host de una comunicación. TCP

explica cómo dos hosts pueden establecer esta comunicación y cómo pueden

mantenerse en contacto unos con otros, se están transfiriendo datos. PNC no

resolvió estos problemas en la medida en que el TCP era capaz de hacerlo.

TCP es responsable de asegurarse de que los datos lleguen hasta el otro host.

Se realiza un seguimiento de lo que se envía y retransmite nada que no llegó a

través. Si algún mensaje es demasiado grande para un solo paquete, TCP divide

el mensaje en varios paquetes y se asegura de que todos ellos lleguen

correctamente. Después de que hayan llegado, TCP en el otro extremo pone

todos los paquetes de nuevo juntos en el orden correcto.

Para 1978, las pruebas y el desarrollo de este lenguaje condujo a un nuevo

conjunto de protocolos denominado Transmission Control Protocol / Internet

Protocol (TCP / IP). En 1982, se decidió que el TCP / IP reemplazaría NCP como

el lenguaje estándar de la ARPAnet. RFC 801 describe cómo y por qué la

transición de NCP a TCP iba a tener lugar. El 1 de enero de 1983, ARPANET

cambió a TCP / IP, y la red continuó creciendo de manera exponencial.

En 1990, la ARPAnet dejó de existir. El Internet ha crecido desde entonces a

partir de raíces de ARPANET, y TCP / IP se ha desarrollado para satisfacer las

necesidades cambiantes de la Internet.

TCP / IP es un conjunto de protocolos que permiten la comunicación entre

ordenadores. Hubo un momento en que no era importante para que las

computadoras se comunican entre sí. No hubo necesidad de un protocolo

común. Pero cuando los ordenadores se convirtieron en red, surgió la necesidad

de computadoras a un acuerdo sobre ciertos protocolos.

Hoy en día, un administrador de red puede elegir muchos protocolos, pero el

protocolo TCP / IP es el más utilizado. Parte de la razón es que TCP / IP es el

31

protocolo de elección en la red mundial más grande en Internet. Si desea una

computadora para comunicarse a través de Internet, que tendrá que utilizar

TCP/IP.

PROTOCOLO SSH

Secure Shell (SSH) es una utilidad que se puede describir de muchas maneras

diferentes. Esto puede ser descrito como un protocolo, una herramienta de

cifrado, una aplicación cliente/servidor, o una interfaz de comandos. Junto con

sus diversas descripciones, SSH proporciona diversas funciones con un solo

paquete. SSH es variado conjunto de servicios y la capacidad de prestar esos

servicios de manera segura, le han permitido convertirse en un alimento básico

en muchas de las redes empresariales.

SSH utiliza una arquitectura cliente/servidor, donde los clientes de SSH,

disponible en todas las versiones de Windows, los diferentes sabores de Unix, y

diversos sistemas operativos Macintosh, conectarse a servidores SSH, que

pueden ser sistemas operativos como Solaris de Sun o Microsoft Windows o

dispositivos como un router Cisco.

¿Cuáles son los beneficios de usar SSH en cualquier tipo de entorno, y por

qué hay una necesidad de utilidades como SSH?

SSH ofrece muchas de las mejores prácticas en materia de seguridad. Las

mejores prácticas son requisitos previos, a fin de desplegar una cantidad

aceptable de seguridad en una entidad dada. Cuatro de las mejores prácticas

que SSH ofrece son los siguientes:

La Autenticación: la autenticación de dos factores

Cifrado: comunicaciones seguras (cifradas) con 3DES o equivalente

La Integridad: MD5 y hash SHA1

Autorización: filtrado de IP/DNS

32

SSH proporciona autenticación de dos factores, ofreciendo el uso de claves

públicas y privadas, además de un nombre de usuario y contraseña para

autenticar dos servidores SSH.

El propósito primordial de una implementación de SSH

La implementación de SSH en un entorno de confianza o no fiable puede

proteger contra muchas de las cuestiones relacionadas con la seguridad y el

Protocolo de Internet versión 4 (IPv4). El uso de SSH no sólo protege contra los

ataques comunes de LAN descrito anteriormente; protege contra los siguientes

tipos de ataques: Falsificación de direcciones IP.

Un dispositivo remoto, generalmente un sistema operativo, puede cambiar su

dirección IP y pretender ser una fuente diferente, generalmente de una fuente de

confianza.

La modificación de datos: Como los datos se pasan a través de las redes

corporativas e Internet, cualquier intermediario puede modificar los datos

mientras están en tránsito.

La contaminación ARP: Esto ocurre cuando los paquetes ARP incorrecta

para redirigir y capturar los datos confidenciales están distribuidos.

Secuestro de sesiones: Esto ocurre cuando los individuos adivinar o

predecir el ISN en cabeceras TCP, ganando el control de sesiones telnet

y ssh.

Borrar los datos de texto: Esto ocurre cuando críticos o importantes datos

de texto claro, como nombres de usuario, contraseñas y comandos, es

interceptado.

Tipos de clientes/servidores SSH

Servidores SSH

OpenSSH es una versión gratuita del protocolo SSH suite. Servidores y

clientes OpenSSH están disponibles para Unix y Windows.

33

OpenSSH ha sido portado a Windows con la popular utilidad Cygwin. El

proyecto fue creado por la simplicidad de la Red (www

.networksimplicity.com) y ha sido adoptada por el siguiente sitio:

http://lexa.mckenna.edu/sshwindows/.

SSH2 (www.ssh.com): SSH2 es una versión comercial de SSH, con

honorarios de licencia necesarios para uso comercial (uso no comercial

es gratuita). Clientes/servidores SSH comerciales están disponibles tanto

para sistemas Windows y Unix.

VanDyke Software (www.vandyke.com): VanDyke Software hace una

versión comercial de SSH, con honorarios de licencia necesarios para su

uso. Servidores SSH (VShell comercial) y clientes (SecureCRT) están

disponibles para el sistema operativo Windows.

Los clientes de SSH

Commerical SSH

OpenSSH

PuTTY

Secure-CRT

MindTerm— SSH over Java with Web browsers

WinSCP

DIRECCIÓN IP

Una dirección IP tiene 4 bytes, se configura únicamente una interfaz de red. Una

dirección tan singular se denomina una dirección IP unicast. Si un sistema utiliza

varias tarjetas de red (varias interfaces de red) y todos ellos utilizan el protocolo

IP, entonces cada interfaz de red tiene su propia dirección IP. Es similar a la

dirección de una casa; cada casa tiene una sola dirección.

34

La otra alternativa es también posible. Varias direcciones IP pueden ser

asignados a una interfaz de red. La primera dirección se denomina dirección

principal, mientras que los otros se llaman direcciones secundarias o alias. El

uso de direcciones IP secundarias es común con los servidores web; por

ejemplo, los servidores web de varias compañías diferentes, cada uno de los

cuales tiene su propia página web, se pueden ejecutar en un solo ordenador o

servidor.

El uso de direcciones IP secundarias para los servidores web es, sin embargo,

en la práctica considerada como desperdicio; así que los servidores web

virtuales se utilizan en su lugar. En ese caso, muchos servidores web comparten

una dirección IP y la especificación del servidor se lleva a cabo en el nivel de

aplicación en el protocolo HTTP (mediante el encabezado de host).

Blank, Andrew G, 2004 afirma:

Cada host en una red TCP / IP debe tener una dirección única, similar a usted

que necesita una dirección única para su casa. Con esta dirección única, es

posible enviar datos desde un host a otro. Cada paquete contiene información

de direccionamiento en la cabecera, y la dirección IP en la cabecera se utiliza

para enrutar paquetes. Si varias personas en su calle tenían la misma

dirección, la oficina de correos podría tener dificultades para clasificar el

correo. Por una razón similar, las direcciones IP son únicos en cada red.

(Blank, 2004) (p.68)

Como la mayoría de los equipos utilizan una interfaz de red, es común que la

dirección IP de una interfaz de red que se llama la dirección IP del ordenador.

Una dirección IP tiene cuatro bytes. Está escrito en una notación punteada de

bytes adyacentes de la dirección de 4 bytes están separados por un punto. Las

notaciones utilizadas son las siguientes:

Notación binaria, donde todos los bits individuales de cada byte se

expresan como un número binario, por ejemplo,

10101010.01010101.11111111.11111000.

35

Notación decimal, donde los cuatro números binarios de 8 dígitos se

convierten a la notación numérica decimal, es decir, 170.85.255.248.

La notación hexadecimal, donde cada byte de la dirección IP se expresa

como un número hexadecimal, es decir, AA.55.FF.F8.

Una dirección IP se estructuró en una dirección de red y una dirección de equipo

dentro de una red, como se muestra en la siguiente figura:

A (local) de direcciones de red

Una dirección de la computadora en una red (local)

Es los bits iniciales del primer byte de una dirección IP que determinan el número de

bytes de la dirección IP conforman la dirección de red. Hay cinco clases de dirección IP:

Clase A: El valor del bit más alto del primer byte es 0. Los 7 bits restantes del

primer byte representan la dirección de red y el resto (24 bits) se reservan para

la dirección de equipo dentro de la red. Hay 126 redes dentro de la Clase A (0 y

127 son redes con un significado específico). En cada red hay 2^24-2

direcciones informáticas (direcciones que constan en su totalidad por ceros o

unos son direcciones con un significado específico).

Clase B: El valor de los dos bits más altos de la primera byte es 10 exp2. Los 6

bits restantes del primer byte y el segundo byte siguiente representan la

dirección de red. Esto nos permite tener 2^14 redes cada uno consta de 2^16-2

computadoras.

Clase C: El valor de los tres bits más altos de la primera byte es 110 2. Los 5 bits

restantes y los siguientes dos bytes representan la dirección de red. Esto nos

permite tener 2 21 redes compuestas por 128-2 computadoras.

Clase D: El valor de los cuatro bits más altos de la primera byte es 1.110 2. Las

direcciones de clase D no se dividen en una red y un direcciones de ordenador,

debido a que son propios direcciones de multidifusión.

36

Clase E: El resto de las direcciones están reservadas para uso futuro.

Gráfico 7 Clase de direcciones IP

Elaboración: Cisco CCNA 1 Fuente: Cisco - CCNA1

CISCO SYSTEMS

Según Cisco Systems 1984:

“Cisco Systems es una empresa global con sede en San José, principalmente

dedicada a la fabricación, venta, mantenimiento y consultoría de equipos de

telecomunicaciones. Dispositivos de conexión para redes informáticas:

routers, switches y hubs.

La empresa fue fundada en 1984 por el matrimonio de Leonard Bosack y

Sandra Lerner, quienes formaban parte del personal de computación de

la Universidad de Stanford. El nombre de la compañía viene de la palabra

"San Francisco"; al mirar por la ventana había al frente un cartel que decía

"San Francisco" y un árbol se interponía entre la palabra separando San Fran

Cisco, de ahí proviene el nombre de la empresa. Allí comenzó su despliegue

como empresa multinacional.”

Cisco es el líder mundial en TI que ayuda a las empresas a aprovechar las

oportunidades del mañana, demostrando que cosas asombrosas pueden

suceder cuando se conecta. En Cisco los clientes son lo primero y una parte

integral de nuestro ADN está creando duraderas alianzas de los clientes y

37

trabajar con ellos para identificar sus necesidades y ofrecer soluciones que

apoyan su éxito.

El concepto de soluciones siendo impulsado para hacer frente a los retos

específicos de los clientes ha sido con Cisco desde sus inicios. Marido y mujer

Len Bosack y Sandy Lerner, ambos trabajan para la Universidad de Stanford,

querían un correo electrónico unos a otros desde sus respectivas oficinas

ubicadas en diferentes edificios, pero no pudieron debido a deficiencias

tecnológicas. Una tecnología tuvo que ser inventado para hacer frente a los

protocolos de área local dispares; y como resultado de la resolución de su

problema nació el router multiprotocolo.

Bosack adaptó el software para enrutadores multiprotocolo originalmente escrito

por William Yeager, otro empleado de informática en esa universidad. Cisco

Systems creó el primer router comercialmente exitoso.

EQUIPOS DE ENRUTAMIENTO

Cisco Systems:

Los dispositivos intermediarios o de enrutamiento interconectan dispositivos

finales. Estos dispositivos proporcionan conectividad y operan detrás de escena

para asegurar que los datos fluyan a través de la red. Los dispositivos

intermediarios conectan los hosts individuales a la red y pueden conectar varias

redes individuales para formar una internetwork.

Los siguientes son ejemplos de dispositivos de red intermediarios:

Acceso a la red (switches y puntos de acceso inalámbrico)

Internetworking (routers)

Seguridad (firewalls)

La administración de datos, así como fluye en la red, es también una función de

los dispositivos intermediarios. Estos dispositivos utilizan la dirección host de

38

destino, conjuntamente con información sobre las interconexiones de la red para

determinar la ruta que deben tomar los mensajes a través de la red.

Los procesos que se ejecutan en los dispositivos de red intermediarios realizan

las siguientes funciones:

Volver a generar y transmitir las señales de datos.

Conservar información acerca de las rutas que existen a través de la red

y de internetwork.

Notificar a otros dispositivos los errores y las fallas de comunicación.

Dirigir los datos a lo largo de rutas alternativas cuando hay una falla en el

enlace.

Clasificar y dirigir los mensajes según las prioridades de calidad de

servicio (QoS, Quality of Service).

Permitir o denegar el flujo de datos de acuerdo con la configuración de

seguridad.

Los switches se usan para conectar varios dispositivos en la misma red. En una

red diseñada correctamente, los switches LAN son responsables de controlar el

flujo de datos en la capa de acceso y de dirigirlo a los recursos conectados en

red.

Los switches de Cisco son de configuración automática y no necesitan ninguna

configuración adicional para comenzar a funcionar. Sin embargo, los switches

Cisco ejecutan Cisco IOS y se pueden configurar manualmente para satisfacer

mejor las necesidades de la red. Esto incluye el ajuste de los requisitos de

velocidad, de ancho de banda y de seguridad de los puertos.

Además, los switches Cisco se pueden administrar de manera local y remota.

Para administrar un switch de forma remota, este se debe configurar con una

dirección IP y un gateway predeterminado. Estos son solo dos de los parámetros

de configuración que se analizan en este capítulo.

39

Los switches funcionan en lugares de la capa de acceso donde los dispositivos

de red cliente se conectan directamente a la red y donde los departamentos de

TI quieren que los usuarios accedan de forma simple a esta. Es una de las áreas

más vulnerables de la red, ya que está muy expuesta al usuario. Los switches se

deben configurar para que sean resistentes a los ataques de todo tipo y, al

mismo tiempo, protejan los datos de los usuarios y permitan que haya

conexiones de alta velocidad. La seguridad de puertos es una de las

características de seguridad que proporcionan los switches administrados por

Cisco.

En este capítulo, se analizan algunas de las opciones de configuración básica de

switch que se requieren para mantener un entorno LAN conmutado seguro y

disponible.

ARQUITECTURA MVC

MVC (por sus siglas en inglés Model View Controller, y sus siglas en español

Modelo Vista Controlador) es diseño de arquitectura de software que clasifica los

datos de una aplicación, la interfaz gráfica del usuario y la lógica de negocio o

control en tres elementos distintos.

Según la información disponible, indica que esta fue creada en el año 1979 por

el Sr. Trygve Reenskaug.

Pues bien entonces que se comprende de:

Modelo: básicamente comprende de un fragmento del sistema, de los datos

del negocio, y lo que maneja en sí la pertinencia.

Vista: se refiere a todo lo que recepta el usuario al aplicativo web, es decir

aquí es donde se envía la información y el procesamiento de interacción que

hubo.

Controlador: es el mediador entre el modelo y la vista, pues es aquí donde

se procesa la información receptada por ambos y luego se la transforma

para cumplir las necesidades de cada uno.

40

En el gráfico 8 se muestra los componentes de y relación del método vista controladora.

Gráfico 8 relación entre Controlador - Vista - Modelo

Elaborado: Douglas Antonio Toral Herrera

Fuente: http://www.w3schools.com/aspnet/mvc_intro.asp

En el cuadro se detalla que las líneas sólidas es la relación directa que hay entre

estos tres tipos Modelo - Vista - Controlador, en cambio, las líneas segmentadas

es la relación indirecta que hay entre Vista con Modelo y Controlador.

NORMAS ISO

ISO (International Standard Organization) es una organización internacional de

normas y estándares para la gestión de calidad, dedicadas a la elaboración de

normas para todos los sectores con excepción del sector electrónico y el

electrotécnico. El objetivo de la ISO es llegar a un consenso con respecto a las

soluciones que cumplan con las exigencias comerciales y sociales (tanto para

los clientes como para los usuarios). Estas normas se cumplen de forma

voluntaria ya que la ISO, siendo una entidad no gubernamental, no cuenta con la

autoridad para exigir su cumplimiento. (Normas ISO)

41

Que son las normas ISO 9001

Según las normas ISO:

“La ISO 9001 es una norma internacional que se aplica a los sistemas de gestión

de calidad (SGC) y que se centra en todos los elementos de administración de

calidad con los que una empresa debe contar para tener un sistema efectivo que

le permita administrar y mejorar la calidad de sus productos o servicios.

Los clientes se inclinan por los proveedores que cuentan con esta acreditación

porque de este modo se aseguran de que la empresa seleccionada disponga de

un buen sistema de gestión de calidad (SGC).

Esta acreditación demuestra que la organización está reconocida por más de

640.000 empresas en todo el mundo.

Cada seis meses, un agente de certificadores realiza una auditoría de las

empresas registradas con el objeto de asegurarse el cumplimiento de las

condiciones que impone la norma ISO 9001. De este modo, los clientes de las

empresas registradas se libran de las molestias de ocuparse del control de

calidad de sus proveedores y, a su vez, estos proveedores sólo deben

someterse a una auditoría, en vez de a varias de los diferentes clientes. Los

proveedores de todo el mundo deben ceñirse a las mismas normas.”

FUNDAMENTACIÓN LEGAL

Dentro del marco legal, se establecen leyes; que respaldan la viabilidad del tema

propuesto.

DECRETO PRESIDENCIAL No. 1014

RAFAEL CORREA DELGADO

PRESIDENTE CONSTITUCIONAL DE LA REPUBLICA

CONSIDERANDO:

42

Que en el apartado g) del numeral 6 de la Carta Iberoamericana de Gobierno

Electrónico, aprobada por el IX Conferencia Iberoamericana de Ministro de

Administración Pública y Reforma del Estado, realizada en Chile el 1 de Junio de

2007, se recomienda el uso de estándares abiertos y software libre, como

herramientas informáticas;

Que es el interés del Gobierno alcanzar soberanía y autonomía tecnológica, así

como un significativo ahorro de recursos públicos y que el Software Libre es en

muchas instancias un instrumento para alcanzar estos objetivos;

Que el 18 de Julio del 2007, se creó e incorporó a la estructura orgánica de la

Presidencia de la República la Subsecretaría de Informática, dependiente de la

Secretaría General de la Administración, mediante Acuerdo No. 119 publicado

en el Registro Oficial No. 139 de 1 de Agosta del 2007;

Que el un eral 1 del artículo 6 del acuerdo No. 119, faculta a la Subsecretaria de

Información a elaborar y ejecutar planes, programas, proyectos, estrategias,

políticas, proyectos de leyes y reglamentos para el uso de Software Libre en las

dependencias del gobierno central; y,

En ejercicio de la atribución que le confiere el numeral 9 del artículo 171 de la

Constitución Política de la Republica;

DECRETA:

Artículo 1.- Establecer como política pública para las Entidades de la

Administración Publica Central la utilización de Software Libre en sus sistemas y

equipamientos informáticos.

Artículo 2.- Se entiende por Software Libre, a los programas de computación que

se pueden utilizar y distribuir sin restricción alguna, que permitan su acceso a los

códigos fuentes y que sus aplicaciones puedan ser mejoradas.

Estos programas de computación tienen las siguientes libertades:

a) Utilización del programa con cualquier propósito de uso común.

b) Distribución de copias sin restricción alguna.

43

c) Estudio y modificación del programa (Requisito: código fuente disponible).

d) Publicación del programa mejorado (Requisito: código fuente disponible).

Artículo 3.- Las entidades de la Administración Publica Central previa a la

instalación del software libre en sus equipos, deberán verificar la existencia de

capacidad técnica que brinda el soporte necesario para el uso de este tipo de

software.

Articulo 4.- Se faculta la utilización de software propietario (no libre) únicamente

cuando no existe una solución de software libre que supla las necesidades

requeridas, o cuando esté en riesgo la seguridad nacional, o cuando el proyecto

informático se encuentre en un punto de no retomo.

Para efectos de este decreto se comprende como seguridad nacional, las

garantías para la supervivencia de la colectividad y la defensa de patrimonio

nacional.

No. 1014

RAFEL CORREA DELGADOO

PRESIDENTE CONSTITUCIONAL DE LA REPUBLICA

Para efectos de este decreto se entiendo por punto de no retorno, cuando el

sistema o proyecto informático se encuentre en cualquiera de estas condiciones:

a) Sistema en producción funcionando satisfactoriamente y que un análisis

de costo beneficio muestre que no es razonable ni conveniente una

migración a Software Libre.

b) Proyecto en estado de desarrollo y que un análisis de costo – beneficio

muestre que no es conveniente modificar el proyecto y utilizar Software

Libre.

Periódicamente se evaluarán los informáticos que utilizan software propietario

con la finalidad de migrarlo a software Libre.

44

Articulo 5.- Tanto para software propietario, siempre y cuando se satisfagan los

requerimientos, se debe preferir las soluciones en este orden:

a) Nacionales que permiten autonomía y soberanía tecnológica.

b) Regionales con componente nacional.

c) Regionales con proveedores nacional.

d) Internacionales con componente nacional.

e) Internacionales con proveedores nacionales.

f) Internacionales.

Artículo 6.- La Subsecretaría de informática como órgano regulador y ejecutor de

las políticas y proyectos informáticos en las entidades del Gobierno Central

deberá realizar el control y seguimiento de este Decreto.

Para todas las evaluaciones constantes en este decreto la Subsecretaria de

Informática establecerá los parámetros y metodologías obligatorias.

Articulo 7.- Encárguese de la ejecución de este decreto los señores Ministro

Coordinadores y el señor Secretario General de la Administración Publica y

comunicación.

Dado en el Palacio Nacional en la ciudad de San Francisco de Quito, Distrito

Metropolitano, el día de hoy 10 de abril de 2008.

PREGUNTA CIENTÍFICA A CONTESTARSE

1. ¿Qué beneficio tendrá la implementación del aplicativo web de mapeo y

escaneo de direcciones Ip para la empresa Mediasist?

2. ¿Favorece un reporte de inventario de direcciones Ip al personal de

Infraestructura y Telecomunicaciones del departamento de sistemas?

3. ¿Servirá el módulo de búsqueda de direcciones Ip al personal de soporte del

departamento de Sistemas?

45

DEFINICIONES CONCEPTUALES

Dirección Ip: es un conjunto de cuatro números del 0 al 255 separados por

puntos que se le asigna a un dispositivo para poderse conectar a la red.

Open Source: conocido como también como código abierto son software que

puede ser accesible de manera libre sin necesidad que comprar o pedir

autorización del uso, modificación o la distribución de la misma.

Dispositivos de enrutamiento: son equipos que se encargar de interconectar a

todos los terminales conectados en la red y brindar la comunicación entre ellos.

Cisco: Cisco Systems es una empresa mundial dedicada a la fabricación,

mantenimiento, venta y consultoría de equipos de telecomunicaciones.

Protocolo SNMP: Es un protocolo que utilizan los Administradores de red para

poder monitorear el rendimiento de un equipo que se encuentra en la red como

el hardware, parámetros de configuración, capacidad de disco, RAM y

procesador utilizado.

Protocolo SSH: SSH o Secure Shell es un protocolo que facilita la comunicación

de forma remota a un host por medios de comandos, dicho comunicación es

segura ya que todos los datos son encriptados.

Protocolo HTTP: Es un protocolo de transferencia de hipertexto utilizado para la

transacción de páginas web.

Protocolo Telnet: Facilita la comunicación de forma remota a un host por medio

de comandos a diferencia del protocolo ssh, este protocolo no tiene ninguna

seguridad ya que no encripta ninguna información escrita.

Sistema Operativo GNU/Linux: Linux es un sistema operativo como el

Windows pero a diferencia de Windows, Linux es un software libre, todo su

código fuente puede ser utilizado, modificarlo y de libre distribución, tiene licencia

GPL (Licencia Publica General).

46

Plataforma: Es un sistema que como base para hacer funcionar determinados

módulos de hardware o software con los que son compatibles.

Mapeo: Es una técnica para examinar y obtener información de toda la red y con

ello realizar un mapa de todo lo que se ha conseguido con la información.

47

CAPÍTULO III PROPUESTA TECNOLÓGICA

El desarrollo del aplicativo web de mapeo y escaneo de direcciones Ip que se va

a llevar a cabo en esta tesis será uso exclusivo para el departamento del área de

Sistemas de la empresa Mediasist, dicho aplicativo utilizara herramientas de

software libres de programación y será una aplicación web basada en una

plataforma cliente servidor.

El sitio web podrá contar con los siguientes servicios:

Generar un reporte de inventario de la dirección Ip utilizadas en la red de

la empresa.

Permitir realizar configuraciones básicas en equipos de conmutación de

fabricante Cisco.

visualizar el rendimiento de los equipos de enrutamiento tanto switch

como router que se encuentran conectados en la empresa.

Mediante la búsqueda de la dirección Ip da como resultado el equipo que

la contenga, la interfaz de switch, la vlan, además el switch especifico en

el que se encuentra conectado el host.

Realiza respaldos de los equipos de enrutamiento de marca Cisco que se

encuentran en la empresa.

48

Permite verificar el tráfico de la red por medio de la interfaz de los

equipos de enrutamiento.

Cuenta con un terminal donde podrá configurar los dispositivos de

enrutamiento por medio de líneas de comandos.

Permite el ingreso de todos los equipos de enrutamiento que estén dentro

de la de red de la empresa Mediasist.

Visualizar el rendimiento de los dispositivos.

Perfil Por Usuarios

Se han creado módulos de perfil de usuario para mayor control y seguridad de la

aplicación los cuales son conformados por: administrador, soporte.

1. Administrador.- Permite la administración de todo el aplicativo, ingreso de

todos los dispositivos, usuarios, asignación de perfiles, eliminación,

consultas, editar y agregar cualquier opción necesaria.

2. Soporte.- Tiene disponible la búsqueda de equipos por medio de la dirección

Ip, visualiza inventario de direcciones Ip en uso, el nombre del equipo, el

plano físico de la empresa para ubicar de manera rápida el equipo de

cómputo.

ANÁLISIS DE FACTIBILIDAD

En base al análisis realizado en el proceso de búsqueda de direcciones IP que

lleva la empresa Mediasist, se pudo determinar que los procesos actuales que

utilizan para la búsqueda de direcciones IP no son útiles y poco efectivas.

Adicional a lo anteriormente mencionado, se encontraron mejoras para que el

proceso de búsqueda sea más rápido y eficaz lo cual el tiempo de respuesta

para dichos problemas se reducirá considerablemente.

49

Factibilidad Operacional

Para encontrar un equipo de cómputo o una dirección Ip se solicitaba al

administrador de sistemas que revise su archivo donde tiene registrado todas las

direcciones Ip y en qué equipo de cómputo se encuentra configurado La

desventaja de esto es que sólo una persona cuenta con esta información.

Cuando el administrador de sistemas no se encuentra disponible se realiza una

búsqueda en todos los equipos de cómputo de manera manual por parte del

personal de soporte del departamento de sistemas tomando un mayor tiempo de

solución para el inconveniente que presenta la empresa.

Por estas falencias anteriormente mencionadas, el administrador de sistemas

brinda el apoyo necesario para el desarrollo de la plataforma web y la facilidad

de realizar pruebas con el personal de soporte en sitio quienes también se

encuentran interesados en la aplicación ya que la forma actual en que se

realizan estos tipos de búsquedas es tediosa y demorada.

El desarrollo de la plataforma web ha tenido una buena acogida por parte del

área de Sistemas y del personal de soporte de la empresa Mediasist debido a

que ya no dependen de una sola persona para realizar este tipo de búsquedas,

además lo gestionan de manera más rápida y efectiva.

Factibilidad Técnica

Gracias al interés que presenta el Administrador de Sistemas por la

implementación de la plataforma Web de mapeo y escaneo de direcciones Ip

para el proyecto se cuenta con un servidor de características mínimas ya que va

a realizar procedimiento que demandan poco recursos. En él se instaló el

aplicativo en software libre.

El sistema operativo utilizado es Centos 7, esta distribución de Linux es open

source y dedicada para estos tipos de aplicaciones, en él se instaló los servicios

50

de la base como el MySQL server y los de la plataforma Web que son Apache

2.2, PHP 5.0.

El desarrollo para esta aplicación se llevó a cabo en AptanaStudio3 que es un

software libre multiplataforma para elaborar aplicaciones web dinámicas que

empleen PHP, Ruby y Python, en nuestra aplicación se implementó el lenguaje

de programación PHP.

Para las creaciones de las bases se aprovechó los beneficios WorkBench 6.3.

Dicho software es un herramienta visual de diseño de base de datos, se puede

administrar las bases de datos, monitorear, modificar y realizar mantenimiento de

las bases, conexiones remotas bases de datos MySQL.

Factibilidad Legal

La implementación del proyecto que se realizó en la empresa Mediasist utiliza

software libre para evitar la compra de licencias y no incurrir en quebrantar las

leyes de propiedad intelectual de software.

El uso de la aplicación es administrada por los jefes conformados por

Telecomunicación, Infraestructura, Soporte, para que otros usuarios no tengan

accesos a las bases de datos.

Según El Decreto Presidencial:

“Artículo 1.- Establecer como política pública para las Entidades de la

Administración Publica Central la utilización de Software Libre en sus

sistemas y equipamientos informáticos.

Artículo 2.- Se entiende por Software Libre, a los programas de

computación que se pueden utilizar y distribuir sin restricción alguna, que

permitan su acceso a los códigos fuentes y que sus aplicaciones puedan

ser mejoradas.

51

Estos programas de computación tienen las siguientes libertades:

a) Utilización del programa con cualquier propósito de uso común.

b) Distribución de copias sin restricción alguna.

c) Estudio y modificación del programa (Requisito: código fuente

disponible).

d) Publicación del programa mejorado (Requisito: código fuente

disponible).

Artículo 3.- Las entidades de la Administración Publica Central previa a la

instalación del software libre en sus equipos, deberán verificar la existencia

de capacidad técnica que brinda el soporte necesario para el uso de este

tipo de software.

Articulo 4.- Se faculta la utilización de software propietario (no libre)

únicamente cuando no existe una solución de software libre que supla las

necesidades requeridas, o cuando esté en riesgo la seguridad nacional, o

cuando el proyecto informático se encuentre en un punto de no retomo.”

Factibilidad Económica

En lo que respecta a la Factibilidad económica el coste del desarrollo de la

herramienta sería inexistente debido a que es programado por estudiantes

egresado de la carrera CISC & CINT como proyecto de titulación.

Cuadro No. 2 Software/Hardware a Utilizar

RUBROS C/Unitario Cantidad TOTAL

Centos 7 - 1 0

MySQL Server - 1 0

Apache Server - 1 0

Mano de Obra - 1 0

52

Elaboración: Douglas Antonio Toral Herrera Fuente: Investigación

Referente a la adquisición del servidor, la empresa cuenta con uno de

virtualización lo que es redundante la compra del nuevo, los software

implementados son Open Source y es innecesario la compra de licenciamientos

para su uso.

ETAPAS DE LA METODOLOGÍA DEL PROYECTO

Para la elaboración de este proyecto de titulación se utilizó la Metodología Ágil

Scrum la cual se basa en recopilar información del usuario que vienen a formar

parte de los Backlog, a partir de esos requerimiento se forman los Sprint que son

los tiempos que se le asigna a cada módulo de funcionalidad de la aplicación.

Se utilizó una herramienta en plataforma Web en línea que sirve para la

elaboración del proceso de la Metodología Scrum la cual es

“https://app.scrumtool.me”, en el gráfico 9 se muestra la interfaz web de la

herramienta.

HP Proliant ML310e Gen8v2 / (1)

Intel® Xeon® Quad core E3-1240v3

(3.4GHz/4-core/8MB/69W, HT)

Processor / 8GB (1 x 8GB) PC3-

10600E-9 DDR3 UDIMM / HP Ethernet

1Gb 2-port 330i Adapter /Smart Array

B120i Controller soporta

RAID(0/1/1+0) SATA / 4 LFF SATA

HDD / HP 2TB 6G SATA 7.2k 3.5in

NHP MDL HDD / HP DVD-RW

$ 1030 1 $ 1030

TOTAL DE COSTO DEL PROYECTO $ 1030

53

Gráfico 9 Interfaz de la herramienta scrumtool

Elaboración: Douglas Antonio Toral Herrera

Fuente: Herramienta scrumtool

Gracias a las funcionalidades de esta herramienta se pudo llevar a cabo el

proceso de cada Sprints con las diferentes tareas asignadas en un periodo de

tiempo, cuenta con un Burndown que sirve para visualizar el avance del sprint

representado en gráficos estadísticos.

SPRINT 0 - ANÁLISIS Y RECOPILACIÓN DE INFORMACIÓN PARA PROYECTO

En el gráfico 10 se muestra el Backlog o requerimiento de los usuarios, en cada

uno de ellos se detalla las tareas que se van a realizar y quien es el responsable

de ejecutarlas en un periodo de tiempo que se define de acuerdo al grado de

dificultad.

54

Gráfico 10 Sprint 0 – Análisis y recopilación de información

Elaboración: Douglas Antonio Toral Herrera

Fuente: https://app.scrumtool.me

En el Sprints inicial se hace un listado de todo los que se debe realizar:

Se realizara las reuniones con el usuario para el levantamiento de la

información para los requerimientos de la aplicación, cada uno de los

requerimiento que se recopila del usuario forman parte de los new story

todos estos requerimiento son facilitados por el Jefe de

Telecomunicaciones.

o Función para realizar la búsqueda de direcciones IP.

o Función de la reporte de inventario de direcciones Ip.

o Que pueda realizar respaldos de configuración de los dispositivos

de telecomunicaciones.

Investigaciones de la metodología Scrum para el proyecto de desarrollo.

o Leer sobre los procesos de la metodología.

Definir que lenguaje de programación se utilizara para el desarrollo de la

aplicación Web.

55

o Para la implementación se utilizara el lenguaje de programación

PHP con HTML y jscripts.

Investigación para la funcionalidad de los módulos de reporte y

búsqueda.

o Se encontró una librería para gestionar la conexión a los

dispositivos de telecomunicación desde PHP.

o Enlistar los comandos de los equipos de telecomunicaciones para

realizar las funcionalidades que solicita el usuario.

Cada uno de estos story o listados de requerimiento se le determina un tiempo

de progreso para realizar, una vez aceptado se da por culminado el

requerimiento, y se continúa con el siguiente Sprints.

Para cada Sprint culminado se obtiene un Burndown del cumplimiento por

tiempo y valoración tal como se muestra en el gráfico 11

Gráfico 11 burndown del Sprint 0

Elaboración: Douglas Antonio Toral Herrera

Fuente: https://app.scrumtool.me/projects/564169f89cbf59000300000f/sprints

56

SPRINT 1 - MODULO DE SEGURIDAD

En este Sprint se realizarán las funcionalidades de ingreso de formularios como

módulo de logueo, tipos de perfiles, ingreso de usuario, ingreso de dispositivos

de telecomunicaciones.

Gráfico 12 Sprint 1 – Modulo De Seguridad

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me

Módulo de Logueo

o Se define el modelado y creación de la base de datos para

autenticación de usuario.

o Se procede con la creación de formulario en HTML

o Validación de ingresos de datos mediante el formulario.

o Se define los accesos y seguridad al aplicativo web por medio del

perfil.

Se realizan las pruebas de ingreso de Logueo y se corrigen los errores

encontrados.

57

Definición de Perfiles.

o Se definen los perfiles de Administrador, Monitoreo y Soporte.

o Se define los accesos para cada perfil.

Creación de módulo de Creación, modificación y eliminación.

o Modelado y creación de la base de datos para el ingreso de

usuario.

o Creación del formulario de gestión de Usuarios.

o Prueba y validación de ingreso de datos en la base de datos.

Módulo de Creación, Modificación y Eliminación de los equipos Switch

Cisco

o Modelado y creación de la base de datos, definición de campos

que será requeridos para la información de los dispositivos de

telecomunicaciones.

o Creación de formulario para el ingreso de los dispositivos de

telecomunicaciones.

o Validación de ingreso de datos a la base por medio del formulario.

Sprint culminado con éxito se detalla el burndown de la gráfica de progreso

Gráfico 13 Sprint 1 Modulo de Seguridad

Elaboración: Douglas Antonio Toral Herrera

Fuente: https://app.scrumtool.me

58

SPRINT 2 - MÓDULO DE BÚSQUEDA DE EQUIPOS

En este sprint de da comienzo al módulo de búsqueda de direcciones IP.

Gráfico 14 Sprint 2 – Modulo de Búsqueda de Equipos

Elaboración: Douglas Antonio Toral Herrera

Fuente: https://app.scrumtool.me

Creación del formulario para la búsqueda de direcciones IP.

o Diseño del formulario en HTML.

o Realizar la programación de la funcionalidad de búsqueda de

direcciones IP.

Investigaciones de comandos para realizar la búsqueda de direcciones IP

o Identificar comandos para equipos Cisco.

o Integración de comandos en PHP par-a realizar el proceso de

búsqueda.

Pruebas y Correcciones del módulo de búsqueda de Equipos Cisco.

o Se produjo un error en la búsqueda de direcciones la cual no

presentaba nada de información.

o Se realizó la corrección del proceso de la búsqueda de

direcciones IP.

o Se produjo un error en la presentación de la gráfica del switch.

o Se realizó las correcciones de la presentación de la gráfica del

switch.

59

Gráfico 15 Burndown del Sprint 2

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me/projects

SPRINT 3 - MÓDULO DE REPORTERÍA

En el sprint 3 de realiza el módulo de Reportería su funcionalidad es presentar un inventario de las direcciones IP de se encuentre en uso y activa en la red.

Gráfico 16 Sprint 3 – Modulo de Reportería

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me/projects

Requerimiento del reporte de inventario de direcciones IP

o Levantamiento de información con el usuario para definir los

campos que necesite en el reporte.

60

o Realizar la programación de la función para la obtención de la

información.

Requerimiento del reporte de inventario de equipos de telecomunicación.

o Reunión con el usuario para definir los campos que se

presentaran en el reporte de inventario.

o Programa la exportación del reporte en formato excel.

Pruebas y correcciones de errores del módulo de Reportería

o En las pruebas realizadas se encontraron errores de presentación

en la información.

o Error al exportar en formato Excel.

o Corrección en el código de ejecución para extraer la data de las

bases de datos.

o Corrección de arreglo visual indicada por el Usuario en el

formulario del inventario.

o Correcciones de los errores presentados en el módulo actual.

En el gráfico 17 se presenta el burndown del Sprint 3 de manera culminada con

el progreso de las actividades.

Gráfico 17 Burndown Sprint 3

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me/projects

61

SPRINT 4 - MÓDULO DE CONFIGURACIÓN Y RESPALDO DE LOS DISPOSITIVOS DE TELECOMUNICACIONES.

En este sprint se procederá con la creación y programaciones del módulo de configuración y respaldo de los dispositivos de telecomunicaciones.

Gráfico 18 Sprint 4 – Modulo de configuración Respaldo de los dispositivos de Telecomunicaciones.

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me/projects

Programación del formulario para la configuración de los dispositivos

de telecomunicaciones.

o Realizar formulario de Configuración de respaldos

automáticos.

o Integrar comandos cisco en la programación PHP.

Programación de la función para la ejecución de configuraciones

básicas de los equipos Ciscos.

o Crear función para ejecución de comandos en equipos Cisco

mediante el aplicativo Web.

Pruebas y correcciones de errores de las funcionalidades del módulo

actual.

o Se realizó pruebas para la ejecución de comandos.

o Error en la Ejecución de comandos.

o Se corrigen los errores de la función del respaldo automático.

62

o Se realizó pruebas de respaldo de los equipos Cisco

quedando completado el módulo.

En el gráfico 19 se muestra el progreso del Sprint 4 culminado.

Gráfico 19 Burndown del Sprint 4 culminado

Elaboración: Douglas Antonio Toral Herrera Fuente: https://app.scrumtool.me/projects

ENTREGABLES DEL PROYECTO

Con base a la metodología aplicada detalla los entregables de este proyecto

que se adjuntaran como anexos.

Cronograma del proyecto.

Código Fuente del Proyecto.

Modelo Entidad Relación.

Manual Técnico.

Manual de Usuario.

Diccionarios de datos.

63

CRITERIOS DE VALIDACIÓN DE LA PROPUESTA

Para proporcionar la solución a la problemática existente en la empresa se

realizó la revisión de los procesos operativos actualmente, ya que eso estaba

basado en toda la investigación del campo. Con base a ello se establece los

diferentes módulos a desarrollar, cada vez que se culminaba un módulo se

realizaba una prueba de funcionalidad con ello se optimiza la corrección de

errores por parte y no al final de todo el desarrollo evitando acumular la carga

operativo del desarrollo y liberando cada módulo terminado en su totalidad.

Para los criterios de validación de la propuesta se llevara a cabo con:

Informes de pruebas

Encuestas de Satisfacción

INFORME DE PRUEBAS

De acuerdo al informe de pruebas funcionales realizada con el usuario, se

detalla el estado de los puntos indicados a corregir.

64

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERAS DE INGENIERÍA EN SISTEMAS COMPUTACIONALES E INGENIERÍA EN

NETWORKING

INFORME DE AJUSTES DE PRUEBAS

MÓDULO: “Seguridad”

DATOS DE DESARROLLO

PARTICIPANTES: Douglas Antonio Toral Herrera

CARGO: Jefe de Soporte

1. PRUEBAS DE CALIDAD

N° OPCIÓN CASO RESULTADO ESTADO

1 Inicio de

sesión

Prueba de ingreso de usuarios: problemas

con la autenticación de perfiles.

ERROR

VALIDAR CORREGIDO

2 Asignación de

Perfil Corrección de Autenticación de perfiles ERROR PERFIL CORREGIDO

3

Ingreso de

datos de

usuarios

No guarda toda la información ingresada por

el formulario

ERROR

GUARDAR CORREGIDO

4

Ingresos de

datos de los

dispositivos de

telecomunicaci

ones

Error al guardar los datos de ingreso a la

base de datos

ERROR

GUARDAR CORREGDO

65

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERAS DE INGENIERÍA EN SISTEMAS COMPUTACIONALES E INGENIERÍA EN

NETWORKING

INFORME DE AJUSTES DE PRUEBAS

MÓDULO: “Reportería”

DATOS DE DESARROLLO

PARTICIPANTES: Douglas Antonio Toral Herrera

CARGO: Jefe de Soporte / Soporte

1. PRUEBAS DE CALIDAD

N° OPCIÓN CASO RESULTADO ESTADO

1 Reporte de

inventarios

Error en la ejecución del código para el

inventario de direcciones IP

ERROR

EJECUCION CORREGIDO

2 Reporte de

Inventarios

Pruebas para obtener el inventario de las

direcciones IP

ERROR

EJECUCION CORREGIDO

3 Exportar

Inventarios

Error al exportar el Inventario en formato

Excel

ERROR

EJECUCIÓN CORREGIDO

66

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS

CARRERAS DE INGENIERÍA EN SISTEMAS COMPUTACIONALES E INGENIERÍA EN

NETWORKING

INFORME DE AJUSTES DE PRUEBAS

MÓDULO: “Configuración/Respaldo”

DATOS DE DESARROLLO

PARTICIPANTES: Paul Espín Huayamabe

CARGO: Jefe de Telecomunicaciones

1. PRUEBAS DE CALIDAD

N° OPCIÓN CASO RESULTADO ESTADO

1 Respaldo de

configuración Error en la Ejecución de comandos.

ERROR

EJECUCION CORREGIDO

67

ENCUESTA DE SATISFACCIÓN

Universidad De Guayaquil

Facultad De Ciencias Matemáticas y Físicas

Carreras de Ingeniería en Sistemas Computacionales e Ingeniería en

Networking

ENCUESTA PARA PROYECTO DE TESIS

CARGO: ________________________________________________________

GÉNERO: Masculino ____ Femenino____

Responda las siguientes preguntas con una “X”.

1. ¿Cree usted necesario un aplicativo web que ayude con el escaneo y

diseño de mapa de direcciones Ip?

SI ( ) NO ( )

2. ¿Le ayudaría a usted poder contar con un inventario de las direcciones Ip

que estén en uso?

SI ( ) NO ( )

3. ¿Considera necesario que la aplicación web realice respaldos de

configuración de los equipos de enrutamiento periódicamente?

Muy Necesario ( ) Necesario ( ) Poco Necesario ( )

4. ¿Cree usted que esta aplicación web le servirá como una herramienta de

trabajo que facilite sus labores diarias?

SI ( ) NO ( )

68

5. ¿Cree usted que sea de utilidad un aplicativo que centralice todo la

configuración y administración de los dispositivos de enrutamiento?

SI ( ) NO ( )

6. En la labor diaria de un administrador de red ¿cree que es necesaria la

implementación de esta aplicación?

SI ( ) NO ( )

7. ¿Considera usted necesario que el aplicativo web tenga una interfaz de

usuario amigable y de fácil manejo?

Muy Necesario ( ) Necesaria ( ) Poco Necesario ( )

8. A su criterio, ¿cómo considera usted el uso de esta aplicación?

Muy Necesario ( ) Necesaria ( ) Poco Necesario ( )

9. ¿Qué funcionalidad adicional creería usted se debe agregar en el

aplicativo web de mapeo y escaneo?

__________________________________________________________

__________________________________________________________

__________________________________________________________

__________________________________________________________

_________________________________________

10. ¿Recomienda usted la implementación del aplicativo web en otras

empresas?

SI ( ) NO ( )

69

POBLACION Y MUESTA

Para la realización de este proyecto se ha tomado como población al personal de

soporte del área de sistemas, el Administrador de Telecomunicaciones y al Jefe de

Sistemas de la Empresa Mediasist. Como definición de población se puede destacar lo

publicado por Pedro Martel y Francisco Díez en su libro Probabilidad y estadística

matemática publicado en 1997 en el que manifiesta que “Es el conjunto de elementos

que tienen características comunes, a cada uno de los elementos que comprenden al

grupo se les conoce como individuos”. (pág. 95).

Cuadro No. 3 Calculo de Población

POBLACION TAMAÑO DE LA POBLACIÓN PORCENTAJE

Personal de Soporte 10 83.3333%

Administrador de

Telecomunicaciones 1 8.3333%

Jefe de Sistemas 1 8.3333%

Total 12 100%

Elaboración: Douglas Toral Fuente: Investigaciones del Tema

MUESTRA

“Debido a la incapacidad de la mayoría de los estudios para evaluar todos los

individuos de una población, se ve necesaria la utilización de subconjuntos, los

cuales a su vez reciben el nombre de muestras”. (Pedro Martel, 1997, pág. 95)

“La muestra es una parte de la población que se estudia, seleccionada de

manera que en ella queden representadas las características que distinguen a la

población de la que fue tomada, existen tres tipos principales de muestras:

probabilísticas o aleatorias, no probabilísticas y mixtas”. (Bayardo, 1987, pág. 9)

Para este proyecto se no se detallan fórmulas para obtener la muestra que se

considera la misma que la población

70

PROCESAMIENTO Y ANALISIS

Para el procesamiento y análisis de la información obtenida en las encuestas de

satisfacción, se realizó la tabulación de los datos en una hoja de cálculo Excel,

obteniendo el porcentaje, gráfico y explicaciones para cada pregunta.

1. ¿Cree usted necesario un aplicativo web que ayude con el escaneo y

diseño de mapa de direcciones Ip?

Cuadro No. 4 Necesidad Del Aplicativo Web

Elaboración: Douglas Toral

Fuente: Investigación del tema

OPC. FREC. PORCTJ

SI 11 91,67%

NO 1 8,33%

TOTAL 12 100%

Gráfico 20 Necesidad Del Aplicativo Web

Elaboración: Douglas Toral

Fuente: Investigación del tema

Con respecto a la necesidad del aplicativo se demuestra que el 91.67% de los

usuario está de acuerdo que es necesario el desarrollo del aplicativo Web para

mejorar el proceso de búsqueda de direcciones IP y contar con un inventario,

mientas que el 1% no cree necesario un aplicativo web que brinde estas

funcionalidades.

2.- ¿Le ayudaría a usted poder contar con un inventario de las direcciones

Ip que estén en uso?

71

Cuadro No. 5 Inventario de Direcciones IP

OPC. FREC. PORCTJ

SI 12 100,00%

NO 0 0,00%

TOTAL 12 100%

Elaboración: Douglas Toral

Fuente: Investigación del tema

Gráfico 21 inventario de Direcciones IP

Elaboración: Douglas Toral Fuente: Investigación del tema

De acuerdo a la encuesta se demuestra que el 100% de los usuarios les

ayudaría contar con un inventario de las direcciones IP que este en uso, ya que

con este reporte se tendría más control con en las asignación de direcciones IP y

se reduciría el problema de direcciones IP duplicadas.

3.- ¿Considera necesario que la aplicación web realice respaldos de

configuración de los equipos de enrutamiento periódicamente?

Cuadro No. 6 Respaldo de configuración de dispositivos

de telecomunicaciones.

OPC. FREC. PORCTJ

Muy Necesario

2 16,667%

Necesario 10 83,333%

Poco Necesario

0 0,000%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación del tema

Gráfico 22 Respaldo de configuración de dispositivo de Telecomunicaciones

Elaboración: Douglas Toral Fuente: Investigación del tema

72

Respecto a la pregunta de respaldo de configuración de dispositivos de

telecomunicaciones, el 16.66% considera muy necesario que se realicen estos

respaldo, mientras que el 83.33% lo valora como necesario, se debe tener en

cuenta que el 16.66% se toma de las 2 encuestas del Administrador de

Telecomunicaciones y el Jefe de Sistemas.

4.- ¿Cree usted que esta aplicación web le servirá como una herramienta de

trabajo que facilite sus labores diarias?

Cuadro No. 7 Facilita sus labores diarias

OPC. FREC. PORCTJ

SI 10 83,33%

NO 2 16,67%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación de campo

Gráfico 23 Facilita sus labores diarias

Elaboración: Douglas Toral

Fuente: Investigación de campo

Con respecto al gráfico 23 se muestra que 83.33% si le serviria una herramienta

como esta para sus labores diarias, mientras que el 16.6% no les serviria para

sus labores diarias.

5.- ¿Cree usted que sea de utilidad un aplicativo que centralice todo la

configuración y administración de los dispositivos de enrutamiento?

73

Cuadro No. 8 Centralizar y administrar dispositivos de

telecomunicaciones

OPC. FREC. PORCTJ

SI 11 91,67%

NO 1 8,33%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación de campo

Gráfico 24 Centralizar y administrar dispositivos de telecomunicaciones

Elaboración: Douglas Toral Fuente: Investigación de campo

El grupo de encuestados un 91.67% manifestó que si es de utilidad la

centralización y configuración de los dispositivos de telecomunicaciones, por otro

la un mínimo del 8.33% no le parece útil centralizar todos los dispositivos en un

solo aplicativo para su administración.

6.- ¿En la labor diaria de un administrador de red cree que es necesaria la

implementación de esta aplicación?

Cuadro No. 9 Necesaria la implementación de aplicativo para

un Administrador de Red

OPC. FREC. PORCTJ

SI 11 91,67%

NO 1 8,33%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación del tema

Gráfico 25 Necesaria la implementación de aplicativo para un Administrador de Red

Elaboración: Douglas Toral Fuente: Investigación del tema

74

Con respecto al gráfico 25 se muestra que el 91.67% si le serviria una

herramienta como esta para un administrado de red ya que en la actualidad es

muy necesario tener un control de este tipo, mientras que el 8.33% no les

serviria a un administrador de red.

7.- ¿Considera usted necesario que el aplicativo web tenga una interfaz de

usuario amigable y de fácil manejo?

Cuadro No. 10 Interfaz web amigable

OPC. FREC. PORCTJ

Muy Necesario

8 66,667%

Necesario 4 33,333%

Poco Necesario

0 0,000%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación del tema

Gráfico 26 Interfaz web amigable

Elaboración: Douglas Toral

Fuente: Investigación del tema

De acuerdo a la respuesta de los encuestados el 66.667% indica que es muy

necesario que el aplicativo web se amigable y de fácil manejo, mientras que

33.33% indican que es necesario que la interfaz web sea amigable. Un aplicativo

web siempre debe tener una interfaz web amigable y de fácil manejo ya que de

eso depende la acogida y el uso diario. En muchas ocasiones un software queda

olvidado más no por las funcionalidades sino por la interfaz y el manejo, por eso

la importancia de crear un aplicativo web con una buena interfaz y que el manejo

sea de manera didáctica.

75

8.- A su criterio, ¿cómo considera usted el uso de esta aplicación?

Cuadro No. 11 Uso de la Aplicación

OPC. FREC. PORCTJ

Muy Necesario

9 75,000%

Necesario 2 16,667%

Poco Necesario

1 8,333%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación del tema

Gráfico 27 Uso de la Aplicación

Elaboración: Douglas Toral

Fuente: Investigación del tema

Con lo que respecta al uso de la aplicación el 75% indica que es muy necesario

el desarrollo de la aplicación, mientras que el 16.66% menciona que es

necesario el uso, el 8.33% indica que es poco necesario el uso de la aplicación.

9.- ¿Qué funcionalidad adicional creería usted se debe agregar en el

aplicativo web de mapeo y escaneo?

Cuadro No. 12 Funciones adicionales

OPC. FREC. PORCTJ

Módulo de Chat

interno 6 50%

Alertas de duplicación

de dirección Ip

2 16,66666667%

Presentar un Floor

Plant de la Localidad

3 25%

Subir Archivos

1 8,333333333%

TOTAL 12 100% Elaboración: Douglas Toral

Fuente: Investigación del tema

Gráfico 28 Funciones adicionales

Elaboración: Douglas Toral

Fuente: Investigación del tema

76

El grupos de encuestados un 50% manifestó que el aplicativo se le puede

adicionar un funcionalidad de Modulo de chat interno para mantenerse

comunicados en el aplicativo, por otra parte un 16.66% manifestó que sería

bueno que envié alertas cuando haya una dirección IP duplicada, el 25%

comento que una aplicación como esta fuera más funcional si presentara un

Floor Plan de la localidad con las direcciones IP, y el 8.33% indico que sería

bueno que se pudiera subir y almacenar archivos de importancia.

10.- ¿Recomienda usted la implementación del aplicativo web en otras

empresas?

Cuadro No. 13 Implementación en otras empresas.

OPC. FREC. PORCTJ

SI 11 91,67%

NO 1 8,33%

TOTAL 12 100%

Elaboración: Douglas Toral Fuente: Investigación del tema

Gráfico 29 Implantación en otras empresas

Elaboración: Douglas Toral

Fuente: Investigación del tema

Con respecto a la implementación en otras empresas el 91.67% de las personas encuestadas mencionaron de manera positiva dicha pregunta, mientras que el minino de 8.33% menciona que no recomienda la implementación de aplicativo en otras empresas.

Análisis de la Correlación de Pearson Para el análisis de la correlación de Pearson se utilizó la aplicación RStudio que sirve para realizar cálculos estadísticos, dicho software se lo puede descargar en la siguiente dirección https://www.rstudio.com/. Para el primer análisis se consideró las preguntas: 1, 2, 4, 5, 6 y 10 por ser del mismo tipo respuesta de selección de SI y NO, tal como se muestra en el gráfico 10 las preguntas mencionadas.

77

Gráfico 30 Preguntas ingresadas en RStudio para el análisis.

Elaboración: Douglas toral

Fuente: Investigación del tema

En el software elegimos los datos o variables a analizar tal como se puede observar en el

gráfico 31.

Gráfico 31 Selección de conjunto de datos.

Elaboracion: Douglas Toral Herrera

Fuente: Investigacion del tema

Una vez seleccionados los datos en este caso SI.NO, se procede a realizar el Test de

Correlación de Pearson tal como se muestra en el gráfico 32.

78

Gráfico 32 Opciones de Estadísticas-Test de correlación

Elaboración: Douglas Toral

Fuente: Investigación del tema

Le damos Click en Aceptar para que realice el proceso de correlación de Pearson, en el gráfico 33.

Gráfico 33 Resultado de Correlación

Elaboración: Douglas Toral

Fuente: investigación del tema

data: NO and SI t = -Inf, df = 4, p-value < 2.2e-16 alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval: -1 -1 sample estimates: cor -1 Como se muestra en el resultado es el 95% de aceptación y en una correlación inversa perfecta.

79

CAPITULO IV

CRITERIO DE ACEPTACIÓN DEL PRODUCTO O SERVICIO

De acuerdo al alcance propuesto se detalla por cada una de los módulos los

puntos de criterio de aceptación, con la finalidad de identificar y visualizar por

que se desarrolló el aplicativo y cuál es la utilización.

Cuadro No. 14 Criterios de aceptación

TIPO DE

REQUISITO

DESCRIPCIÓN

DE REQUISITO

CRITERIOS DE ACEPTACIÓN

Autenticación

por Perfil

1.- Autenticación

de los usuarios

de acuerdo a los

perfiles

asignados.

1.1.- Permite identificar a los usuarios del

sistema, mediante número de cédula y

una contraseña.

1.2.- Permite verificar a que base de que

perfil fue asignado una vez creado el

usuario.

1.3.- Permite identificar cuáles son los

módulos respectivos a cargar

correspondiente al perfil del usuario.

Usuario

Administrador

2.- Módulo de

Seguridad

2.1.- Permite que el administrador cree e

ingresar datos de un nuevo usuario.

2.2.- Permite crear e ingresar datos

nuevos de dispositivos de

telecomunicaciones.

2.3.- Permite Crear un perfil nuevo si es

necesario.

80

2.4.- Permite asignar los módulos a los

perfiles

3.- Módulo de

Búsqueda de

Equipos

3.1.- Permite que el administrador cree e

ingrese datos de una dirección IP para

realizar la búsqueda del equipo.

4.- Módulo de

Reportería

4.1.- Permite que el administrador genere

un reporte del inventario de direcciones

IP.

4.2.- Permite que el administrador exporte

el reporte en formato Excel de los equipos

de telecomunicación.

5.- Módulo De

Configuración y

Respaldo

5.1.- Permite que el administrador realice

de manera manual el respaldo de la

configuración de los equipos de

telecomunicaciones.

5.2.- Permite que el administrador cree

respaldos de manera programada y que

generen los respaldos de manera

automática.

Usuario

Soporte

1.- Módulo de

Búsqueda de

Equipos

1.1.- Permite que el personal de soporte

cree e ingrese datos de una dirección IP

para realizar la búsqueda del equipo.

2.- Módulo de

Reportería

2.1.- Permite que el personal de soporte

visualice un reporte del inventario de

direcciones IP.

2.2.- Permite que el personal de soporte

exporte un reporte del inventario de

direcciones IP en formato Excel.

Elaboración: Douglas Toral Fuente: Investigación del Tema

81

NORMAS DE CALIDAD ISO 9126 PARA ANÁLISIS DE UN SOFTWARE De acuerdo a las normas de Calidad ISO 9126 para que un software cumpla con los estándares de calidad y certificación se debe cumplir con las siguientes características.

Gráfico 34 Modelo de Calidad ISO 9126

Elaboración: Douglas Toral

Fuente: Investigación del tema

Cuadro No. 15 Informe de la calidad ISO 9126 del Proyecto

CALIDAD ISO 9126 IMPLEMENTACION DEL APLICATIVO

Funcionalidad

El aplicativo web desarrollado en este proyecto

cumple con las funcionalidades indicadas en los

alcances del proyecto, el uso y la manipulación de

los datos y la información utilizada solo la puede

realizar el usuario autorizado, ningún otro usuario

tiene la capacidad de acceder a los datos.

Confiabilidad

El aplicativo muestra mensajes de alertas o error

si encuentra uno para que el usuario este

advertido de las fallas que puedan o estén

ocurriendo en el momento.

CALIDAD

ISO/IEC 9126

FUNCIONALIDAD

EFICIENCIA

USABILIDAD

MANTENIMIENTO

PORTABILIDAD

CONFIABILIDAD

82

Usabilidad

La interfaz web que se elaboró para la aplicación

le permite al usuario entender el uso de manera

adecuada y fácil, podrá operarlo sin ningún

problema.

Eficiencia

El aplicativo es multitarea y multiusuario, el

desempeño de la aplicación tiene un tiempo de

respuesta de acuerdo a la funcionalidad y

requerimiento que deseen realizar los usuarios.

Mantenimiento

El aplicativo que se realizó en este proyecto se

puede modificar su código, aumentar más

funcionalidades y corregir errores si en el caso se

encontrase, se pueden realizar pruebas sin poner

en riesgo la integridad de los datos.

Portabilidad

La aplicación es multiplataforma, lo que permite

adaptarse a cualquier sistema operativo o

hardware sin que tenga problemas.

Elaboración: Douglas Toral Fuente: Investigación del tema

83

BIBLIOGRAFÍA

PHP:

Vikram, V. (2010). Desarrollo de sitios web con PHP.

PHP y MySQL: Tecnología para el desarrollo de aplicaciones Web. Ángel Cobo

2005

http://php.net/manual/es/intro-whatis.php

http://www.ecured.cu/PHP

http://redgrafica.com/El-lenguaje-de-programacion-PHP

METODOLOGÍA DE DESARROLLO:

http://scrummethodology.com/

OPEN SOURCE:

http://opensource.org/osd

http://www.gpsos.es/soluciones-open-source/definicion-de-open-source/

MYSQL:

https://dev.mysql.com/downloads/mysql/

Murphy, Keith, and Cabral, Sheeri K.. MySQL Administrator's Bible. Hoboken,

NJ, USA: Wiley, 2009.

Valade, Janet, and Suehring, Steve. PHP, MySQL, JavaScript and HTML5 All-in-

One For Dummies. Somerset, NJ, USA: John Wiley & Sons, 2013.

APACHE:

Khare, Tanuj. Apache Tomcat 7 Essentials. Olton, Birmingham, GBR: Packt

Publishing Ltd, 2012.

https://httpd.apache.org/ABOUT_APACHE.html

GNU/LINUX:

Nagpal, Namrata. UNIX and Shell Programming. Lucknow, IND: Word-Press,

2009.

Jones, M. Tim. GNU/Linux Application Programming. Hingham, MA, USA:

Charles River Media / Cengage Learning, 2005.

84

JAVASCRIPT:

Stefanov, Stoyan. Object-Oriented JavaScript. Olton, Birmingham, GBR: Packt

Publishing Ltd, 2008.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/About_JavaScript

Goodman, Danny, Morrison, Michael, and Novitski, Paul. JavaScript Bible (7th

Edition). Hoboken, NJ, USA: John Wiley & Sons, 2010.

PROTOCOLO SNMP

Kundu, Dinangkur, and Lavlu, S. M. Ibrahim. Cacti 0. 8 Network Monitoring.

Olton, Birmingham, GBR: Packt Publishing Ltd, 2009.

SNMP: A Guide to Network Management - Sidnie Feit, 1995.

Prácticas de Redes - Julian Veron Piquero, 2010 - 238 pages.

PROTOCOLO TELNET

Dostálek, Libor, and Kabelová, Alena. Understanding TCP/IP. Olton,

Birmingham, GBR: Packt Publishing, 2006.

https://tools.ietf.org/html/rfc764

Williams, Al. Java 2 Network Protocols Black Book. Phoenix, AZ, USA: Paraglyph

Press, 2001.

PROTOCOLO TCP/IP:

Blank, Andrew G. TCP/IP Foundations. Alameda, CA, USA: Sybex, 2004.

Dostálek, Libor, and Kabelová, Alena. Understanding TCP/IP. Olton,

Birmingham, GBR: Packt Publishing, 2006.

PROTOCOLO SSH

Dwivedi, Himanshu. Implementing SSH: Strategies for Optimizing the Secure

Shell. Hoboken, NJ, USA: Wiley, 2003.

DIRECCIÓN IP:

Dostálek, Libor, and Kabelová, Alena. Understanding TCP/IP. Olton,

Birmingham, GBR: Packt Publishing, 2006.

85

Blank, Andrew G. TCP/IP Foundations. Alameda, CA, USA: Sybex, 2004.

CISCO:

http://www.cisco.com/

EQUIPOS DE ENRUTAMIENTO:

http://itroque.edu.mx/cisco/cisco1/course/module1/1.2.1.3/1.2.1.3.html

http://cisco/ccna5.1/course/module3/index.html#3.0.1.1

MVC:

Programación Avanzada en Java, Sonia Jaramillo Valbuena, Sergio Augusto

Cardona, Dumar Antonio Villa Zapata, Primera Edición Diciembre 2008

DECRETOS:

http://decretos.presidencia.gob.ec/decretos/

NORMAS ISO:

http://www.normas9000.com/que-es-iso-9000.html

86

ANEXOS

87

ANEXO A – CRONOGRAMA DEL PROYECTO

NOMBRE DE TAREA COMIENZO FIN RECURSOS

DESARROLLO DE UNA

PLATAFORMA WEB DE MAPEO Y ESCANEO DE IP DENTRO DE UNA RED IPV4 CON EQUIPOS CISCO PARA LA EMPRESA MEDIASIST

2015-09-01 2015-12-09 DOUGLAS

TORAL

DESARROLLO 2015-09-16 2015-12-11 DOUGLAS

TORAL

DOCUMENTACION DE LOS

CAPITULOS DEL PROYECTO DE

TITULACION

2015-09-16 2015-12-11 DOUGLAS

TORAL

DETALLAR PRIMER CAPITULO 2015-09-01 2015-09-17 DOUGLAS

TORAL

DESCRIPCION DEL CONTENIDO 2015-09-01 2015-09-17 DOUGLAS

TORAL

SPRINT 0 – ANALISIS DE

INFORMACION PARA EL

DESARROLLO DE PROYECTO

2015-09-01 2015-09-15 DOUGLAS

TORAL

LEVANTAMIENTO DE INFORMACION

CON EL USUARIO 2015-09-01 2015-09-03

DOUGLAS

TORAL

DEFINICION DE LA METODOLOGIA A

UTILIZAR 2015-09-04 2015-09-05

DOUGLAS

TORAL

INVESTIGACION DE LOS MODULOS

DE REPORTE Y BUSQUEDA 2015-09-06 2015-09-10

DOUGLAS

TORAL

DEFINICION DE PLATAFORMA DE

PROGRAMACION A UTILIZAR 2015-09-11 2015-09-14

DOUGLAS

TORAL

DETALLAR SEGUNDO CAPITULO 2015-09-16 2015-10-31 DOUGLAS

TORAL

DESCRIPCION DEL CONTENIDO 2015-09-16 2015-10-31 DOUGLAS

TORAL

SPRINT 1 - MODULO DE SEGURIDAD 2015-09-16 2015-10-14 DOUGLAS

TORAL

MODULO DE LOGUEO 2015-09-17 2015-09-20 DOUGLAS

TORAL

DEFINICION DE PERFILES POR

USUARIO 2015-09-21 2015-09-27

DOUGLAS

TORAL

MODULO DE CREACIÓN ,

MODIFICACIÓN Y ELIMINACIÓN DE

USUARIOS

2015-09-29 2015-10-06 DOUGLAS

TORAL

MODULO DE CREACIÓN, 2015-10-07 2015-10-11 DOUGLAS

88

MODIFICACIÓN Y ELIMINACIÓN DE

LOS EQUIPOS SWITCH CISCO

TORAL

PRUEBAS Y CORRECCIONES DE

LOS MÓDULOS CREADOS HASTA EL

MOMENTO

2015-10-12 2015-10-14 DOUGLAS

TORAL

SPRINT 2 - MÓDULO DE BÚSQUEDA

DE EQUIPOS 2015-10-15 2015-10-31

DOUGLAS

TORAL

CREACIÓN DEL FORMULARIO PARA

LA BÚSQUEDA DE DIRECCIONES IP 2015-10-15 2015-10-20

DOUGLAS

TORAL

INVESTIGAR COMANDOS PARA

REALIZAR LA BÚSQUEDA DE

DIRECCIONES IP

2015-10-21 2015-10-26 DOUGLAS

TORAL

PRUEBAS Y CORRECCIÓN DEL

MÓDULO DE BÚSQUEDA DE

EQUIPOS CISCOS

2015-10-27 2015-10-31 DOUGLAS

TORAL

DETALLA TERCER CAPITULO 2015-11-01 2015-11-20 DOUGLAS

TORAL

DESCRIPCION DEL CONTENIDO 2015-11-01 2015-11-20 DOUGLAS

TORAL

SPRINT 3 - MÓDULO DE

REPORTERÍA 2015-11-01 2015-11-20

DOUGLAS

TORAL

INVENTARIO DE DIRECCIONES IP 2015-11-01 2015-11-09 DOUGLAS

TORAL

INVENTARIO DE EQUIPOS DE

COMUNICACIÓN 2015-11-10 2015-11-15

DOUGLAS

TORAL

PRUEBAS DEL MÓDULO DE

REPORTERÍA 2015-11-16 2015-11-20

DOUGLAS

TORAL

SPRINT 4 - MÓDULO DE

CONFIGURACIÓN/RESPALDO DE

DISPOSITIVOS DE

TELECOMUNICACIÓN

2015-11-21 2015-12-08 DOUGLAS

TORAL

PROGRAMACIÓN DEL FORMULARIO

PARA LA CONFIGURACIÓN DE LOS

DISPOSITIVOS DE

TELECOMUNICACIONES.

2015-11-21 2015-11-25 DOUGLAS

TORAL

PROGRAMACIÓN DE LA FUNCIÓN

PARA LA EJECUCIÓN DE

CONFIGURACIONES BÁSICAS DE

LOS EQUIPOS CISCOS.

2015-11-26 2015-11-30 DOUGLAS

TORAL

PRUEBAS Y CORRECCIONES DE

ERRORES DE LAS

FUNCIONALIDADES DEL MÓDULO

ACTUAL

2015-11-31 2015-12-08 DOUGLAS

TORAL

DETALLAR CUARTO CAPITULO 2015-12-01 2015-12-09 DOUGLAS

TORAL

DESCRIPCION DEL CONTENIDO

DEL CUARTO CAPITULO 2015-12-01 2015-12-09

DOUGLAS

TORAL

89

ANEXO B – MANUAL TÉCNICO

REQUERIMIENTO MINIMOS RECOMENDADOS

Para el desarrollo del aplicativo web se emplearos las siguientes tecnologías que

se mencionan a continuación.

1.- Instalación del Sistema Operativo Centos 7.

Procedemos a descargar el ISO de la página oficial

https://www.centos.org/download/, una vez descargado se procede a generer un

DVD o USB booteable.

Entramos a la primea opciones “Install CentOS 7”

90

Elegimos el idioma y le damos continuar.

En la pantalla de resumen de instalación le damos click al botón Destino de la

instalación.

91

Se visualizarán los discos donde podemos instalar, en este caso sólo sale un

solo disco y debe estar seleccionado, le damos click al botón y Listo.

Volvemos al resumen de instalación y le damos click en RED y Nombre de host.

92

Se escribe el nombre del host y se procede a la configuración de la tarjeta de

red.

Volvemos a Resumen de Instalación le damos click en Comenzar la instalación.

93

Mientras se instala te aparecerá una pantalla de configuración en la cual te

pedirá el cambio de clave del usuario ROOT le damos click

Procedemos a escribir la clave 2 veces para la confirmación y listo

94

Volvemos a la pantalla de progreso de instalación esperando a que se termine la

instalación.

2.- Instalación del servidor apache y Server MySQL

Nota: El S.O. debe contar con internet para que pueda descargar todos

los paquetes que se mencionan a continuación:

a. Comienzo de la instalación del Servidor Apache.

En el terminal escribimos la siguiente línea:

sudo yum install httpd

Se comienza a descargar e instalar los paquetes de servidor apache, una

vez terminada la instalación procedemos a habilitar el arranque del

servicio de manera automática cuando se inicie el S.O.

systemctl enable httpd.services

systemctl start httpd.services

95

Ya realizado todo esto verificamos el servicio que esté funcionando de

manera correcta, en un navegador escribimos la dirección del servidor y

nos debe dar como resultado “Testing 123..”

b. Instalación del MySQL server

En un terminal ejecutamos la siguiente línea de comando:

sudo yum install http://dev.mysql.com/get/mysql-community-

release-el7-5.noarch.rpm

Una vez ejecutada procede a descargar y añadir todos repositorios de

MySQL, ya culminado el proceso verificamos que todos los repositorios

estén activos, ejecutamos la siguiente línea:

sudo yum repolist enabled | grep "mysql.*-community.*"

Nos debe mostrar lo siguiente

mysql-connectors-community/x86_64 MySQL Connectors Community 9

mysql-tools-community/x86_64 MySQL Tools Community 4

mysql56-community/x86_64 MySQL 5.6 Community Server 49

96

Luego de que estén activos los repositorios procedemos con la

instalación de los paquetes del Servidor MySQL, escribimos lo siguiente:

sudo yum install mysql-community-server

Ya culminada la instalación de los paquetes procedemos a levantar el

servicio y probamos que esté completamente funcional:

sudo systemctl start mysqld

Nos conectamos desde el localhost escribiendo lo siguiente:

msysql –u root

Nos debe mostrar un mensaje como este:

Welcome to the MySQL monitor. Commands end with ; or \g.

Your MySQL connection id is 2

Server version: 5.6.19 MySQL Community Server (GPL)

Se recomienda activar el servicio en el arranque del S.O. para esto se

ejecuta lo siguiente:

sudo systemctl enable mysqld.service

3.- Instalación del Spreadsheet.

Este paquete se lo utiliza para la funcionalidad de Reportería.

Se procede con la instalación de los paquetes que se detallan a continuaciones.

a. Download the latest epel-release rpm from

http://dl.fedoraproject.org/pub/epel/7/x86_64/

c. Install epel-release rpm:

# rpm -Uvh epel-release*rpm

d. Install perl-Spreadsheet-WriteExcel rpm package:

# yum install perl-Spreadsheet-WriteExcel

e. Download the latest epel-release rpm from

97

http://dl.fedoraproject.org/pub/epel/7/x86_64/

f. Install epel-release rpm:

# rpm -Uvh epel-release*rpm

g. Install perl-Spreadsheet-XLSX rpm package:

# yum install perl-Spreadsheet-XLSX

4.- Instalación de Shell in a Box

Es un emulador de terminal basado en web que proporciona toda la

funcionalidad de un terminal nativo de Linux.

Se procede con la instalación del paquete:

# yum install openssl shellinabox

# nano /etc/sysconfig/shellinaboxd

Se agregan la línea OPTS="-s /:SSH:192.168.10.206 para que permita la

conexión al servidor

98

Desarrollo del aplicativo Web

Lenguaje de programación: PHP v5.5, HTML

Lenguaje de estilos: CSS framework – bootstrap v3.2

Lenguaje de script: JavaScript, librería – jquery v2.1

Software para programación: AptanaStudio3

Software para gestionar las bases de datos: MySQL Workbench 6.3

99

ANEXO C.- MANUAL DE USUARIO

Manual de Usuario

Dultron Versión 1.0

Fecha Diciembre 09 del 2015

100

INGRESO AL SISTEMA

Para ingresar al sistema de Dultron, se deberá abrir su navegador y colocar la

dirección correspondiente: 192.168.10.206/Dultron

A continuación se muestra la captura de imagen de la página de inicio de sesión

del Aplicativo Dultron para tener acceso al Sistema.

El sistema de Dultron es una aplicación web,

por lo cual su acceso y carga de los

módulos correspondientes se deberán

realizar desde un browser de Internet

(Firefox, Internet Explorer, Google Chrome).

Para acceder al sistema se deberán ingresar

los datos correspondientes proporcionados

por el administrador.

Una vez ingresado los datos correctos de acceso al sistema y realizada la validación necesaria, se mostrará el menú principal de opciones (pantalla de inicio).

Dentro del aplicativo se visualiza los siguientes módulos correspondientes al perfil de Administrador:

101

1. Dashboards 1.1. Monitoreo

2. Seguridad

2.1. Usuarios 2.2. Perfiles 2.3. Políticas de clave 2.4. Opciones

3. Administración 3.1. Comunidad SNMP 3.2. Conexiones 3.3. Dispositivos 3.4. Interfaces 3.5. Localidad 3.6. Tipo Dispositivos 3.7. Ubicaciones

4. Búsqueda

4.1. Dispositivos

5. Reporte 5.1. D 5.2. D

6. Operaciones

6.1. Shell Local 6.2. Respaldo

1. DASHBOARDS

En caso de seleccionar el módulo , muestra el perfil del usuario en este

caso Administrado y la fecha, hora de su última conexión y el nombre del

sistema.

102

1.1 Monitoreo

En el caso de selecciona monitoreo mostrara el

estatus del estado del servidor como es el Hardware y Software,

información de los Switch principales de la empresa y también las

vlan de las mismas.

103

2. SEGURIDAD

En el caso de seleccionar el modulo , En esta opción permite realizar

el ingreso de usuarios, perfiles, opciones y establecer las políticas de claves

mediante el ingreso de los datos correspondientes para cada punto

anteriormente mencionado.

2.1 Opciones

En esta opción se agregan las opciones del Sistema.

ELIMINAR: el boton permite eliminar el usuario.

CREAR: el boton nuevo se podra registrar nevas opciones

para el sistema.

EDITAR:el boton editar permite modificar los datos de las

opciones del sistema.

104

2.2. Perfiles

En esta opción se podrá visualizar los perfiles ingresados hasta el momento, crear, editar y eliminar.

ELIMINAR: el boton permite eliminar el perfil.

OPCIONES: el boton permite agregar y quitar opciones de las

funcionalidades del sistema.

105

CREAR: al darle click en se podra registrar nuevos

usuarios del sistema,

EDITAR:el boton permite editar y modificar la informacion del

usuario

Para las dos opciones de Nuevo y Editar se utiliza la misma plantilla

106

2.2 Políticas de clave

En esta opcion se dara las poiticas de seguridad para el ingreso de

las claves del usuario cuando se crea.

ELIMINAR: el boton permite eliminar la politica de claves.

CREAR: el boton nuevo se podra registrar nevas politicas

de clave.

EDITAR:el boton editar permite modificar la informacion de las

politicas de claves ya configuradas.

Para las dos opciones de Nuevo y Editar se utiliza la misma plantilla.

107

2.1. Usuario

En esta opción se podrá visualizar los usuarios creados hasta el

momento, ingresar nuevos usuario, modificar.

CREAR: al darle click en se podra registrar nuevos

usuarios del sistema,

108

EDITAR:el boton permite editar y modificar la informacion del

usuario

ELIMINAR: el boton permite eliminar el usuario.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

3. ADMINISTRACIÓN

En el caso de seleccionar el modulo , En esta opción permite realizar el

ingreso de: la información de los dispositivos de intermedio, comunidad SNMP,

conexiones, interfaces, dispositivos, localidad y demás información necesario

que se utilizara para agilitar las búsquedas de direcciones IP.

3.1 Comunidad SNMP

En esta opción se ingresa la comunidad del SNMP que tiene

configurado los equipos Intermedios de la Empresa.

109

ELIMINAR: el boton permite eliminar la informacion de la

Comunidad ingresada en el sistema.

CREAR: al darle click en se podra registrar una nueva

informacion de la comunidad SNMP.

EDITAR:el boton permite editar y modificar la informacion de la

comunidad.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

110

3.2 Conexiones

En esta opción se ingresa los tipos de conexiones que se utilizaran

para acceder a los distintos dispositivos ya sea por SSH, Telnet u

otro tipo de conexión.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra registrar una nueva

informacion de conexión.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

111

3.3 Interfaces

En esta opción se ingresan toda clase de interfaces que exista en los

dispositivos intermedios como los Switch y Router.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra registrar una nueva

informacion de las interfaces.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

112

3.4 Localidad

En esta opción se ingresa las sucursales o localidades que tiene la

empresa.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra registrar una nueva

localidad.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

113

3.5 Tipo de Dispositivos

En esta opción se agrega el tipo del dispositivo intermedio que puede

ser un switch o un router.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra agregar un nuevo

Dispositivo.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

114

3.6 Ubicaciones

En esta opción se agregar los distintos segmentos de red que tenga

la empresa con su respectiva localidad y descripción.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra agregar un nuevo

segmento de red.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

115

3.7 Dispositivos

Una vez llenada todas las opciones anteriores se procede con esta

opción ya que aquí se agrega todos los dispositivos intermedios que

tenga la empresa.

ELIMINAR: el boton permite eliminar la informacion ya ingresada.

CREAR: al darle click en se podra agregar un nuevo

dispositivo intermedo.

EDITAR:el boton permite editar y modificar la informacion.

Para las dos opciones de Nuevo y Editatr se utiliza la

misma plantilla.

En esta opcion debe ser ingresado por el personal de sistema

encargado de la infraestructura de red que tiene la empresa ya que

aquí se agrega las contraseñas de todos los dispositivos intermedios

como los switch y router.

Con este modulo podremos conectarnos a todos los dispositivos

intermedios para poder realizar uno de los funcionamientos del

sistema el cual es la busqueda de las direcciones Ip.

116

4. BUSQUEDA

En el caso de seleccionar el modulo , esta opción es la encargada de

realizar busquedas de direcciones ip, la busqueda lo reaiza de manera que solo

se quiera una sola direccion ip o se necesite buscar todo un segmento de red.

117

Al seleccionar la pestaña aparecera un formulario donde podra

realizar la busqueda que necesita ya sea por unidad o por segmento de red.

En tipo de busqueda usted podra seleccionar la busquedas ya antes

mencionadas.

4.1 Tipo de Busqueda: Dirección IP

La busqueda lo realiza un una dirección ip y localidad especifica.

Cuando realiza la busqueda muestra la informacion de la siguiente

pantalla.

118

4.2 Tipo de Búsqueda: Localidad.

La búsqueda lo realiza por segmento de red y la localidad especifica.

Cuando realiza la búsqueda muestra la información de la siguiente

manera.

119

Para ambos tipos de busquedas tienen cuatro opciones que son

Con estas opciones puedes marcar toda

la informacion o marcar la que necesites, para que una vez seleccionado lo

necesario se puedas exportar o guardar la informacion.

Con este boton exporta la infomacion que necesitas.

Con este boton guardas en base la informacion que necesitas.

5. REPORTE

Cuando seleccionas el modulo de reporte , podras exportar un excel

donde se encuentran el listado de las busquedas generadas previamente

guardadas.

Seleccionas la informacion que deseas visualizar en el reporte una vez

seleccionado le das click en y se genera el reporte.

120

6. TERMINAL

En el modulo de se podra realizar funcionalidades de un terminal y sacar

respaldos de los equipos intermedios principales.

6.1 Shell Local

En esta opción mostrara un shell o terminal dentro de nuestro sistema,

con las mismas funcionalidades que tiene un terminal nativo de Linux.

6.2 Respaldos

En esta opción se podra realizar respaldos de los dispositivos de

telecomunicaciones como los switch principales de las diferentes

localidades.

121

ANEXO D.- DIAGRAMA ENTIDAD RELACION.

122

ANEXO E.- CODIGO FUENTE DEL PROYECTO

MASTER.PHP <? include('../../controller/header.php'); if(session_var(VAR_USER) == null){ send_redirect('../../login.php?'.VAR_MESSAGE.'=Sesion finalizada'); }else{ setlocale(LC_TIME, "es_ES"); $objGlobalUser = User::cast(session_var(VAR_USER)); $objGlobalEvent = Event::cast(session_var(VAR_LOGINOUT)); $objGlobalMessage = SystemMessage::cast(session_var(VAR_MESSAGE)); $objGlobalConnect = Util::createConnection(DB_TYPE, $database[DB_SYSTEM]); $objGlobalConnect->connect(); if(controller_name()=='' && (controller_action() == 'home' || controller_action() == '')){ set_request_var('op_padre',-1); } if(request_var('op_padre')<>''){ $menuClass=str_replace("clase='".request_var('op_padre')."'","clase='dropdown active'",$objGlobalUser->getOptions()); $objGlobalUser->setOptions($menuClass); //set_session_var(VAR_USER,$objGlobalUser); } $menu = Util::parsearMenu($objGlobalUser->getOptions(), "../../menu.xsl"); $menuClass=str_replace("clase='dropdown active'", "clase='".request_var('op_padre')."'",$objGlobalUser->getOptions()); $objGlobalUser->setOptions($menuClass); if(controller_name()==''){ if(controller_action() == 'logoff'){ $objGlobalEvent->setEndDate(Util::getDateSQL()); $objGlobalEvent->updateEvent($objGlobalConnect); session_finish(); send_redirect('../../login.php?'.VAR_MESSAGE.'=Sesion finalizada'); }else if(controller_action() == 'home' || controller_action() == ''){ $page = '../../controller/welcome.php'; set_session_var(VAR_MAINPAGE, $page); include('master_view.php'); }

123

}else{ $page = '../../controller/'. controller_module().'/'.controller_name().'.php'; if(register_log()){ Util::registerOptionLog($objGlobalConnect, $objGlobalUser->getUsername(), detail_option(), $page); } set_session_var(VAR_MAINPAGE, $page); include('master_view.php'); } } ?> LOGIN.PHP <?php require('./libs/utils.php'); require('./model/SystemConstants.php'); require('./config/SystemVars.php'); require('./model/SystemMessage.php'); require('./model/MyException.php'); require('./model/IConnection.php'); require('./model/ConnectionSqlServer.php'); require('./model/ConnectionSqlServerMS.php'); require('./model/ConnectionMySql.php'); require('./model/Util.php'); require('./model/NativeObject.php'); require('./model/Option.php'); require('./model/Profile.php'); require('./model/User.php'); require('./model/Privileges.php'); require('./model/Event.php'); require('./model/Claves.php'); require('./model/ConfigVar.php'); session_init(); if (controller_action() == 'login') { try { $date = Util::getDateSQL(); $connect = Util::createConnection(DB_TYPE, $database[DB_SYSTEM]); $connect->connect(); $objUser = new User(strtolower(trim(request_var('txt_username'))), request_var('txt_password')); $objEvent = new Event(0, $objUser->getUsername(), Util::getIP(), LOGEO, $date, $date); $objMessage = new SystemMessage(); $objConfigVar = ConfigVar::getConfigVar($connect); $objClaves = Claves::getClaves($connect, $objConfigVar->getPoliticaClave()); //print_r($connect);

124

//print_r($objUser); if (User::isUser($connect, $objUser)) { if($objUser->getStatus()=='A'){ $parametros = array(); $parametros[] = request_var('txt_username'); // $rs = $objClaves->ValidarDiasVigencia($connect, $parametros); // while ($data = $connect->getRows($rs)) { // $diasvigencia = $data['diferencia']; // } /* if ($objClaves->getPol_vigenciaminima() > 0 && $diasvigencia > $objClaves->getPol_vigenciaminima()) {

set_request_var(WARNING_TYPE, 'Vigencia de contarse�a

Caducada, Cambiar contrase�a'); include('login_users_pass.php'); } else {*/ if ($objUser->getProfile()->getPageinitial() == '') { $objUser->getProfile()->setPageinitial(WELLCOME_DEFAULT); } $objEvent->insertEvent($connect); set_session_var(VAR_USER, $objUser); set_session_var(VAR_MESSAGE, $objMessage); set_session_var(VAR_LOGINOUT, $objEvent); send_redirect('./main/master/master.php'); // } }else{ set_request_var(VAR_MESSAGE, 'Usuario inactivo. Comuniquese con Sistemas'); include('login_view.php'); } } else { try { $parametros = array(); $parametros[] = request_var('txt_username'); $parametros[] = Util::getIP(); $parametros[] = date('Y-m-d H:i:s'); $objClaves->InsertarIntentosLogeo($connect, $parametros); $parametros = array(); $parametros[] = request_var('txt_username'); $parametros[] = $objClaves->getPol_bloqueo(); $rs = $objClaves->ValidarIntentosLogeo($connect, $parametros); $intentos = $connect->numRows($rs); set_request_var(VAR_MESSAGE, 'Usuario o clave incorrecta'); } catch (MyException $ex) { set_request_var(VAR_MESSAGE, 'Usuario o clave incorrecta'); }

125

include('login_view.php'); } } catch (MyException $ex) { set_request_var(VAR_MESSAGE, $ex->getMessage()); include('login_view.php'); } } elseif (controller_action() == 'savePassword') { $date = Util::getDateSQL(); $connect = Util::createConnection(DB_TYPE, $database[DB_SYSTEM]); $connect->connect(); $parametros = array(); $parametros[] = request_var('txt_username'); $parametros[] = Util::getIP(); $objUser = new User(request_var('txt_username'), request_var('txt_password')); $objEvent = new Event(0, $objUser->getUsername(), Util::getIP(), LOGEO, $date, $date); $objMessage = new SystemMessage(); $objConfigVar = ConfigVar::getConfigVar($connect); //$objClaves = Claves::getClaves($connect, $objConfigVar->getPoliticaClave()); $objUser->updatePassword($connect); //$objClaves->insertContrasenaLog($connect, request_var('txt_username'), request_var('txt_password')); $objEvent->insertEvent($connect); set_session_var(VAR_USER, $objUser); set_session_var(VAR_MESSAGE, $objMessage); set_session_var(VAR_LOGINOUT, $objEvent); include('login_view.php'); } else { if (session_var(VAR_USER) !== null) { send_redirect('./main/master/master.php'); } include('login_view.php'); } ?>

126

LOGIN_VIEW.PHP <!DOCTYPE html> <!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7"><![endif]--> <!--[if IE 7]><html class="no-js lt-ie9 lt-ie8"><![endif]--> <!--[if IE 8]><html class="no-js lt-ie9"><![endif]--> <!--[if gt IE 8]><!--><html class="no-js"><!--<![endif]--> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"> <title><?php echo APP_DEPLOY ?></title> <meta name="description" content=""> <meta name="viewport" content="width=device-width"> <script src="./js/adminflare-demo-init.min.js" type="text/javascript"></script> <link href="http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,400,300,600,700" rel="stylesheet" type="text/css"> <script type="text/javascript"> // Include Bootstrap stylesheet document.write('<link href="./css/' + DEMO_CURRENT_THEME + '/bootstrap.min.css" media="all" rel="stylesheet" type="text/css" id="bootstrap-css">'); // Include AdminFlare stylesheet document.write('<link href="./css/' + DEMO_CURRENT_THEME + '/adminflare.min.css" media="all" rel="stylesheet" type="text/css" id="adminflare-css">'); document.write('<link href="./css/pages.min.css" media="all" rel="stylesheet" type="text/css">'); </script> <script src="./js/modernizr-jquery.min.js" type="text/javascript"></script> <script src="./js/adminflare-demo.min.js" type="text/javascript"></script> <script src="./js/jquery.validate.js"></script> <script src="./js/Application.js"></script> <script src="./js/validation.js"></script> <!--[if lte IE 9]> <script src="./js/jquery.placeholder.min.js" type="text/javascript"></script> <script type="text/javascript"> $(document).ready(function () { $('input, textarea').placeholder(); }); </script> <![endif]--> <link href="./css/signin.css" rel="stylesheet" type="text/css"> <script type="text/javascript"> $(document).ready(function() {

127

/*$('.signin-container').submit(function() { document.location = 'dashboard.html'; return false; });*/ var updateBoxPosition = function() { $('.signin-container').css({ 'margin-top': ($(window).height() - $('.signin-container').height()) / 2 }); }; $(window).resize(updateBoxPosition); setTimeout(updateBoxPosition, 50); $('#form-login').validate({ rules: { txt_username: { minlength: 4, maxlength: 15, validarUsername: true }, txt_password: { required: true } }, highlight: function (element) { $(element).closest('.control-group').removeClass('success').addClass('error'); }, success: function(element) { element .closest('.control-group').removeClass('error').addClass('success'); } }); $("#btn_login").click(function(){ $('#form-login').submit(); }); }); $.validator.addMethod("validarUsername", function(value, element) { return / [̂a-zA-Z][_\w]+$/.test(value); }, "Ingrese un nombre v&aacute;lido" ); </script>

128

</head> <body class="pages-pricing"> <!-- Page content ================================================== --> <section class="signin-container"> <section class="row-fluid plans container"> <div class="span4"></div> <div class="span4"> <div class=" best-choice"> <form id="form-login" action="login.php" method="post"> <input type="hidden" name="controller_action" value="login" /> <div class="best-choice header "> <div class="price primary-background"> <small> <small> </small> </small> <img src="./images/af-logo-signin.png" alt="Sign in to Admin Flare"> <?php echo APP_DEPLOY ?><small> </small> </div> </div> <div class="box best-choice login-fields"> <div class="control-group"> <div class="social"> <p>Por favor ingrese sus datos de acceso</p> </div> <div class="field"> <label for="username" id="lbl_username" name="lbl_username" >Username:</label> <input type="text" id="txt_username" name="txt_username" value="" placeholder="Username" class="login username-field" /> </div> <!-- /field --> <div class="field"> <label for="password" id="lbl_password" name="lbl_password" >Password:</label>

129

<input type="password" id="txt_password" name="txt_password" value="" placeholder="Password" class="login password-field" /> </div> <span class="label label-inverse"><?php echo request_var(VAR_MESSAGE) ?></span> </div> </div> <div class="box best-choice content"> <button id="btn_login" class="btn btn-large btn-primary" tabindex="4" type="button">Login</button> </div> </form> </div> </div> <div class="span4"></div> </section> </section> </body> </html>

130

ANEXO F.- DICCIONARIO DE DATOS

Un diccionario de datos es un conjunto o grupos de metadatos que contiene

propiedades lógicas y fundamentales de los datos que se van a manejar en el

sistema que se programa.

Nombre de Archivo: BD usuarios

Descripción: Base de dato que contendrá información de los Usuario.

Nombre de Archivo: BD usuarios_intentologuin de logues

Descripción: Base de dato que contendrá el historial de logueo del usuario.

Nombre de Archivo: BD usuario_contraseñalog

Descripción: Base de dato que contendrá información de los todas las contraseñas que haya cambiado el usuario.

Nombre de Archivo: BD usuario_privilegios

Descripción: Base de dato que contendrá información de la asignación de los privilegios que se le fue asignado al usuario.

131

Nombre de Archivo: BD privilegios

Descripción: Base de dato que contendrá información del id de los privilegios que se pueden asignar.

Nombre de Archivo: BD políticas_contrasenas

Descripción: Base de dato que contendrá información de las políticas de contraseñas.

Nombre de Archivo: BD perfiles

Descripción: Base de dato que contendrá información de los perfiles de los usuarios.

Nombre de Archivo: BD opcionesxperfiles

Descripción: Base de dato que contendrá información para unir las tablas de opciones con la de perfiles.

Nombre de Archivo: BD opciones

Descripción: Base de dato que contendrá información de las opciones que se podrán configurar en el perfil del usuario.

132

Nombre de Archivo: BD dispositivos

Descripción: Base de dato que contendrá información de los dispositivos de telecomunicaciones.

CREACIÓN DE TABLAS DE LA BASE DE DATOS

Se detalla la creación de las tablas de la Base de Datos. /*!40101 SET NAMES utf8 */; /*!40101 SET SQL_MODE=''*/; /*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; CREATE DATABASE /*!32312 IF NOT EXISTS*/`dultron` /*!40100 DEFAULT CHARACTER SET latin1 */; USE `dultron`; /*Table structure for table `alertas` */ DROP TABLE IF EXISTS `alertas`; CREATE TABLE `alertas` ( `alt_codigo` int(11) NOT NULL AUTO_INCREMENT, `alt_nombre` varchar(50) DEFAULT NULL, `alt_titulo` varchar(50) DEFAULT NULL, `alt_descripcion` varchar(250) DEFAULT NULL, `alt_correos` text, `alt_from` varchar(100) DEFAULT NULL, `alt_estado` char(1) DEFAULT NULL, PRIMARY KEY (`alt_codigo`) ) ENGINE=MyISAM AUTO_INCREMENT=18 DEFAULT CHARSET=latin1; /*Data for the table `alertas` */ insert into `alertas`(`alt_codigo`,`alt_nombre`,`alt_titulo`,`alt_descripcion`,`alt_correos`,`alt_f

133

rom`,`alt_estado`) values (1,'ALERTA_SMS','envio sms','Envío de alertas sms','[email protected]','[email protected]','A'); /*Table structure for table `configuraciones` */ DROP TABLE IF EXISTS `configuraciones`; CREATE TABLE `configuraciones` ( `cfg_id` int(11) NOT NULL AUTO_INCREMENT, `cfg_email_admin` varchar(60) DEFAULT NULL, `cfg_email_host` varchar(60) DEFAULT NULL, `cfg_email_user` varchar(60) DEFAULT NULL, `cfg_email_pass` varchar(60) DEFAULT NULL, `cfg_email_port` int(11) DEFAULT NULL, `cfg_email_enable` int(1) DEFAULT NULL, `cfg_ultimo_usuario` int(11) DEFAULT NULL COMMENT 'ULTIMO ID DE USUARIO EN ALTITUDE', `cfg_politica_clave` int(2) DEFAULT NULL, `cfg_sms_enable` int(1) DEFAULT NULL, PRIMARY KEY (`cfg_id`), KEY `fk_politica` (`cfg_politica_clave`), CONSTRAINT `configuraciones_ibfk_1` FOREIGN KEY (`cfg_politica_clave`) REFERENCES `politicas_contrasenas` (`pol_codigo`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; /*Data for the table `configuraciones` */ insert into `configuraciones`(`cfg_id`,`cfg_email_admin`,`cfg_email_host`,`cfg_email_user`,`cfg_email_pass`,`cfg_email_port`,`cfg_email_enable`,`cfg_ultimo_usuario`,`cfg_politica_clave`,`cfg_sms_enable`) values (1,'[email protected]','[email protected]','[email protected]','[email protected]',0,1,NULL,1,1); /*Table structure for table `eventos` */ DROP TABLE IF EXISTS `eventos`; CREATE TABLE `eventos` ( `eve_codigo` int(11) NOT NULL AUTO_INCREMENT COMMENT 'a new comment2', `eve_usuario` varchar(20) NOT NULL, `eve_ip` varchar(20) NOT NULL DEFAULT '', `eve_evento` varchar(20) NOT NULL DEFAULT '', `eve_fechahoraini` datetime NOT NULL, `eve_fechahorafin` datetime NOT NULL, `eve_comentarios` text NOT NULL, PRIMARY KEY (`eve_codigo`), UNIQUE KEY `fecha_hora_evento` (`eve_usuario`,`eve_fechahoraini`,`eve_evento`), KEY `ix_fechaini` (`eve_fechahoraini`,`eve_evento`),

134

KEY `ix_fecha_hora_fin` (`eve_fechahorafin`), KEY `ix_fecha_hora_ini` (`eve_fechahoraini`), KEY `ix_usuario_ini` (`eve_usuario`,`eve_fechahoraini`), KEY `ix_evento` (`eve_evento`), KEY `ix_fht_ev_fhi` (`eve_usuario`,`eve_fechahorafin`,`eve_evento`,`eve_fechahoraini`), CONSTRAINT `eventos_ibfk_1` FOREIGN KEY (`eve_usuario`) REFERENCES `usuarios` (`usu_usuario`) ) ENGINE=InnoDB AUTO_INCREMENT=99 DEFAULT CHARSET=latin1; /*Table structure for table `opciones` */ DROP TABLE IF EXISTS `opciones`; CREATE TABLE `opciones` ( `opc_id` int(11) NOT NULL AUTO_INCREMENT, `opc_prefijo` varchar(9) NOT NULL DEFAULT '' COMMENT 'INDICE DE ORDEN DE LA OPCION', `opc_nombre` varchar(60) NOT NULL DEFAULT '' COMMENT 'ETIQUETA DE LA OPCION', `opc_url` varchar(100) DEFAULT NULL, `opc_nodopadre` int(11) DEFAULT NULL COMMENT 'CLAVE DE OPCION DEL NODO SUPERIOR', `opc_estado` char(1) NOT NULL DEFAULT '' COMMENT 'A=ACTIVO; I=INACTIVO', `opc_icono` varchar(80) DEFAULT NULL COMMENT 'IMAGEN DE LA OPCION', `opc_parametros` varchar(180) NOT NULL DEFAULT '' COMMENT 'PARAMETROS PARA ACCEDER AL ARCHIVO .PHP', PRIMARY KEY (`opc_id`), KEY `fk_nodopadre` (`opc_nodopadre`), CONSTRAINT `opciones_ibfk_1` FOREIGN KEY (`opc_nodopadre`) REFERENCES `opciones` (`opc_id`) ) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=latin1; /*Data for the table `opciones` */ insert into `opciones`(`opc_id`,`opc_prefijo`,`opc_nombre`,`opc_url`,`opc_nodopadre`,`opc_estado`,`opc_icono`,`opc_parametros`) values (-1,'0','Dashboards','',NULL,'A','fa fa-home',''),(1,'1','Seguridad','',NULL,'A','fa fa-cogs',''),(2,'1.4','Opciones','',1,'A','','module=seguridad&amp;controller=seg_options'),(3,'1.5','Perfiles','',1,'A','','module=seguridad&amp;controller=seg_profiles'),(4,'1.7','Usuarios','',1,'A','','module=seguridad&amp;controller=seg_users'),(5,'1.3','Excepciones','',1,'A','','module=seguridad&amp;controller=seg_exceptions'),(6,'1.2','Configuracion de Variables','',1,'A','','module=seguridad&amp;controller=seg_configvar'),(7,'1.1','AlertasZZZ','',1,'A','','module=seguridad&amp;controller=seg_alertSystem'),(8,'1.6','Politicas de

135

claves','',1,'A','','module=seguridad&amp;controller=seg_claves'),(9,'3','Administracion','',NULL,'A','fa fa-dashboard',''),(10,'3.1','Importaciones','',9,'A',NULL,'module=procesos&amp;controller=pro_importContacts'),(11,'4','Plusservices','',NULL,'A','fa fa-comments-o',''),(12,'4.1','Clientes Activos Siga','',11,'A',NULL,'module=procesos&amp;controller=pro_debugRegistersSiga'),(13,'4.5','Motivo Anterior','',11,'A',NULL,'module=procesos&amp;controller=pro_debugRegistersByReason'),(14,'4.2','Cliente Corporativo','',11,'A',NULL,'module=procesos&amp;controller=pro_debugCorporateClient'),(15,'5','Monitoreos','',11,'A',NULL,'module=procesos&amp;controller=pro_debugRegistersPrefixByPlan'),(16,'5.1','Prefijo por Tarjeta','',11,'A',NULL,'module=procesos&amp;controller=pro_debugCorporateClientByCreditCard'),(17,'6','Reportes','',11,'A',NULL,'module=procesos&amp;controller=pro_debugRegistersConsolidated'),(18,'6.1','Exportar Datos','',9,'A',NULL,'module=procesos&amp;controller=pro_exportContacts'),(19,'6.2','Nemonico Institucional','',11,'A',NULL,'module=procesos&amp;controller=pro_getNemonicoInstitutional'); /*Table structure for table `opcionesxperfil` */ DROP TABLE IF EXISTS `opcionesxperfil`; CREATE TABLE `opcionesxperfil` ( `oxp_perfil` int(11) NOT NULL COMMENT 'CLAVE DEL PERFIL', `oxp_opcion` int(11) NOT NULL COMMENT 'CLAVE DE LA OPCION', PRIMARY KEY (`oxp_perfil`,`oxp_opcion`), KEY `fk_opcion` (`oxp_opcion`), CONSTRAINT `opcionesxperfil_ibfk_1` FOREIGN KEY (`oxp_perfil`) REFERENCES `perfiles` (`per_id`), CONSTRAINT `opcionesxperfil_ibfk_2` FOREIGN KEY (`oxp_opcion`) REFERENCES `opciones` (`opc_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*Data for the table `opcionesxperfil` */ insert into `opcionesxperfil`(`oxp_perfil`,`oxp_opcion`) values (1,-1),(4,-1),(1,1),(4,1),(1,2),(1,3),(1,4),(1,5),(1,6),(4,6),(1,7),(1,8),(1,9),(4,9),(1,10),(1,11),(1,12),(1,13),(1,14),(1,15),(1,16),(1,17),(1,18),(1,19); /*Table structure for table `perfiles` */ DROP TABLE IF EXISTS `perfiles`; CREATE TABLE `perfiles` ( `per_id` int(11) NOT NULL AUTO_INCREMENT, `per_nombre` varchar(60) NOT NULL DEFAULT '' COMMENT 'NOMBRE DEL PERFIL', `per_estado` char(1) NOT NULL DEFAULT '' COMMENT 'A=ACTIVO, I=INACTIVO',

136

`per_imagen` varchar(150) DEFAULT '' COMMENT 'IMAGEN DEL PERFIL', `per_paginainicial` varchar(250) DEFAULT '', PRIMARY KEY (`per_id`) ) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=latin1; /*Data for the table `perfiles` */ insert into `perfiles`(`per_id`,`per_nombre`,`per_estado`,`per_imagen`,`per_paginainicial`) values (1,'ADMINISTRADOR','A','','module=homes&controller=hom_welcome_default'),(2,'SISTEMAS','A','','module=homes&controller=hom_welcome_default'),(4,'testing','A','',''); /*Table structure for table `politicas_contrasenas` */ DROP TABLE IF EXISTS `politicas_contrasenas`; CREATE TABLE `politicas_contrasenas` ( `pol_codigo` int(11) NOT NULL AUTO_INCREMENT, `pol_nombre` varchar(80) DEFAULT NULL COMMENT 'NOMBRE DE LA POLITICA', `pol_detalle` varchar(200) DEFAULT NULL COMMENT 'EXPLICACION DE LA POLITICA', `pol_longitudminima` int(11) DEFAULT NULL COMMENT 'LONGITUD MINIMA DE LA CONTRASENA', `pol_minimomayusculas` int(11) DEFAULT NULL COMMENT 'CANTIDAD MINIMA DE MAYUSCULAS', `pol_minimominusculas` int(11) DEFAULT NULL COMMENT 'CANTIDAD MINIMA DE MINUSCULAS', `pol_minimodigitos` int(11) DEFAULT NULL COMMENT 'CANTIDAD MINIMA DE DIGITOS', `pol_minimoespeciales` int(11) DEFAULT NULL COMMENT 'CANTIDAD MINIMA DE CARACTERES ESPECIALES', `pol_vigenciaminima` int(11) DEFAULT NULL COMMENT 'DIAS DE VIGENCIA DE LA CONTRASENA', `pol_historialcontrasenas` int(11) DEFAULT NULL COMMENT 'CANTIDAD DE HISTORIAL DE CONTRASENAS', `pol_intentoslogeo` int(11) DEFAULT NULL COMMENT 'INTENTOS DE LOGEOS AL SISTEMA; 0=INDEFINIDO', `pol_bloqueo` int(11) DEFAULT NULL COMMENT 'INTERVALOS DE HORAS PARA PROXIMOS INTENTOS', `pol_estado` char(1) DEFAULT 'A' COMMENT 'A=ACTIVO; I=INACTIVO', PRIMARY KEY (`pol_codigo`) ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=latin1; /*Data for the table `politicas_contrasenas` */ insert into `politicas_contrasenas`(`pol_codigo`,`pol_nombre`,`pol_detalle`,`pol_longitudminima`,`pol_minimomayusculas`,`pol_minimominusculas`,`pol_minimodigitos`,`pol_

137

minimoespeciales`,`pol_vigenciaminima`,`pol_historialcontrasenas`,`pol_intentoslogeo`,`pol_bloqueo`,`pol_estado`) values (1,'Politica Default','politicas de claves para los usuarios de perfil administrador',6,0,3,1,0,25,5,5,0,'A'); /*Table structure for table `privilegios` */ DROP TABLE IF EXISTS `privilegios`; CREATE TABLE `privilegios` ( `prv_codigo` char(3) NOT NULL DEFAULT '', `prv_nombre` varchar(30) NOT NULL DEFAULT '', `prv_estado` char(1) DEFAULT 'A' COMMENT 'A=ACTIVO, I=INACTIVO', PRIMARY KEY (`prv_codigo`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*Data for the table `privilegios` */ insert into `privilegios`(`prv_codigo`,`prv_nombre`,`prv_estado`) values ('ADM','Administrador','A'),('SIS','Sistemas','A'); /*Table structure for table `usuarios` */ DROP TABLE IF EXISTS `usuarios`; CREATE TABLE `usuarios` ( `usu_usuario` char(20) NOT NULL DEFAULT '' COMMENT 'USUARIO DE ACCESO AL SISTEMA', `usu_clave` varchar(50) NOT NULL DEFAULT '' COMMENT 'CLAVE DE ACCESO AL SISTEMA', `usu_nombres` varchar(30) NOT NULL, `usu_apellidos` varchar(30) NOT NULL, `usu_cedula` varchar(15) DEFAULT NULL, `usu_perfil` int(11) DEFAULT NULL, `usu_genero` char(2) DEFAULT 'SO' COMMENT 'M=MASCULINO; F=FEMENINO', `usu_email` varchar(60) NOT NULL, `usu_estado` char(1) DEFAULT 'A' COMMENT 'A=ACTIVO, I=INACTIVO, S=SUSPENDIDO', PRIMARY KEY (`usu_usuario`), KEY `fk_perfil` (`usu_perfil`), CONSTRAINT `usuarios_ibfk_1` FOREIGN KEY (`usu_perfil`) REFERENCES `perfiles` (`per_id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*Data for the table `usuarios` */ insert into `usuarios`(`usu_usuario`,`usu_clave`,`usu_nombres`,`usu_apellidos`,`usu_cedula`,`usu_perfil`,`usu_genero`,`usu_email`,`usu_estado`) values ('dultron','5efc53f1e51f1d9ba2c18d2d68d04f0f','douglas','toral','0930168711',1,'M'

138

,'','A'),('zumbac','97d02709937f0c5c5f061ab1aa05465c','Carlos Polivio','Zumba Vásquez','0921138244',1,'','[email protected]','A'); /*Table structure for table `usuarios_contrasenaslog` */ DROP TABLE IF EXISTS `usuarios_contrasenaslog`; CREATE TABLE `usuarios_contrasenaslog` ( `ucl_id` int(11) NOT NULL AUTO_INCREMENT, `ucl_usuario` char(20) DEFAULT NULL, `ucl_contrasena` varchar(50) DEFAULT NULL, `ucl_fecha` date DEFAULT NULL, PRIMARY KEY (`ucl_id`), KEY `ucl_usuario` (`ucl_usuario`), CONSTRAINT `usuarios_contrasenaslog_ibfk_1` FOREIGN KEY (`ucl_usuario`) REFERENCES `usuarios` (`usu_usuario`) ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=latin1; /*Data for the table `usuarios_contrasenaslog` */ insert into `usuarios_contrasenaslog`(`ucl_id`,`ucl_usuario`,`ucl_contrasena`,`ucl_fecha`) values (1,'zumbac','97d02709937f0c5c5f061ab1aa05465c','2015-01-09'),(2,'zumbac','97d02709937f0c5c5f061ab1aa05465c','2015-01-09'),(3,'zumbac','97d02709937f0c5c5f061ab1aa05465c','2015-01-09'),(4,'dultron','5efc53f1e51f1d9ba2c18d2d68d04f0f','2015-11-26'),(5,'dultron','5efc53f1e51f1d9ba2c18d2d68d04f0f','2015-11-26'); /*Table structure for table `usuarios_intentoslogin` */ DROP TABLE IF EXISTS `usuarios_intentoslogin`; CREATE TABLE `usuarios_intentoslogin` ( `uil_id` int(11) NOT NULL AUTO_INCREMENT, `uil_usuario` char(20) DEFAULT NULL, `uil_ip` varchar(30) DEFAULT NULL, `uil_fechahora` datetime DEFAULT NULL, PRIMARY KEY (`uil_id`), KEY `uil_usuario` (`uil_usuario`), CONSTRAINT `usuarios_intentoslogin_ibfk_1` FOREIGN KEY (`uil_usuario`) REFERENCES `usuarios` (`usu_usuario`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*Data for the table `usuarios_intentoslogin` */ /*Table structure for table `usuarios_privilegios` */ DROP TABLE IF EXISTS `usuarios_privilegios`; CREATE TABLE `usuarios_privilegios` ( `usp_usuario` char(20) NOT NULL,

139

`usp_privilegio` char(3) NOT NULL DEFAULT '', PRIMARY KEY (`usp_usuario`,`usp_privilegio`), KEY `fk_privilegios` (`usp_privilegio`), CONSTRAINT `fk_privilegios` FOREIGN KEY (`usp_privilegio`) REFERENCES `privilegios` (`prv_codigo`), CONSTRAINT `fk_usuario` FOREIGN KEY (`usp_usuario`) REFERENCES `usuarios` (`usu_usuario`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1; /*Data for the table `usuarios_privilegios` */ insert into `usuarios_privilegios`(`usp_usuario`,`usp_privilegio`) values ('dultron','ADM'),('zumbac','ADM'); /* Function structure for function `fun_nombre_estado` */ /*!50003 DROP FUNCTION IF EXISTS `fun_nombre_estado` */; DELIMITER $$ /*!50003 CREATE DEFINER=`root`@`%` FUNCTION `fun_nombre_estado`(var_estado char(1)) RETURNS varchar(20) CHARSET latin1 BEGIN DECLARE var_nombre VARCHAR(20); IF(var_estado = 'A')THEN SET var_nombre = 'ACTIVO'; ELSEIF(var_estado = 'I')THEN SET var_nombre = 'INACTIVO'; ELSEIF(var_estado = 'S')THEN SET var_nombre = 'SUSPENDIDO'; ELSE SET var_nombre = 'DESCONOCIDO'; END IF; RETURN var_nombre; END */$$ DELIMITER ; /*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;