tesis

Embed Size (px)

Citation preview

  • TECNOLGICO DE ESTUDIOS SUPERIORES DE CHALCO

    Ingeniera en Sistemas Computacionales

    REFERENCIA:

    CENTRO ESPECIALIZADO DE ATENCIN PRIMARIA A LA SALUD ATLAUTLA

    MONTAJE DE UN SERVIDOR WEB PARA EL CENTRO ESPECIALIZADO DE ATENCIN PRIMARIA A LA SALUD

    ATLAUTLA (CEAPS ATLAUTLA)

    TESIS

    QUE PARA OBTENER EL TITULO DE:

    Ingeniero en Sistemas Computacionales

    P R E S E N T A:

    ANTONIO ALVAREZ GALICIA

    CHALCO, ESTADO DE MXICO A 20 DE MAYO DE 2014

  • 2

    INDICE NDICE DE FIGURAS .......................................................................................................................... 6

    CAPITULO 1. INTRODUCCIN ......................................................................................................... 8

    1.1. PLANTEAMIENTO DEL PROBLEMA .................................................................................. 8

    1.2. JUSTIFICACIN ....................................................................................................................... 9

    1.3. OBJETIVOS ............................................................................................................................. 10

    1.3.1. Objetivo General ............................................................................................................ 10

    1.3.2. Objetivos Especficos .................................................................................................. 10

    1.4. HIPTESIS .............................................................................................................................. 11

    1.5. ACTIVIDADES REALIZADAS .............................................................................................. 11

    1.5.1. Interaccin con el cliente ............................................................................................ 12

    1.5.2. Planificacin ................................................................................................................... 12

    1.5.3. Diseo, desarrollo y pruebas ..................................................................................... 13

    1.5.4. Cronograma de actividades........................................................................................ 14

    CAPITULO 2. MARCO TERICO ................................................................................................... 15

    2.1. SERVIDORES .............................................................................................................................. 15

    2.1.1. Definicin de Servidor ...................................................................................................... 15

    2.1.2. Tipos de Servidores ....................................................................................................... 17

    2.2. SISTEMAS OPERATIVOS PARA SERVIDORES ................................................................. 19

    2.2.1. Caractersticas de los Sistemas Operativos de Red ................................................ 19

    2.3. SERVIDORES WEB ................................................................................................................... 21

    2.3.1. Definicin de servidor web .......................................................................................... 21

    2.4. ADMINISTRACIN DE LA SEGURIDAD. .............................................................................. 24

    2.4.1. Definicin de administracin de la seguridad. ........................................................... 25

    2.4.2. Buenas Prcticas en la seguridad de servidores ..................................................... 26

    2.5. TECNOLOGAS DE LOS SISTEMAS WEB ........................................................................... 29

    2.5.1. HTML 5 .................................................................................................................................. 29

    2.5.1.1. Ventajas ......................................................................................................................... 30

    2.5.1.2. Desventajas .................................................................................................................. 30

    2.5.2. PHP ........................................................................................................................................ 31

    2.5.2.1. Ventajas ......................................................................................................................... 32

    2.5.2.2. Desventajas .................................................................................................................. 33

    2.5.3. DomPDF ................................................................................................................................ 33

  • 3

    2.5.3.1. Ventajas ......................................................................................................................... 34

    2.5.3.2. Desventajas .................................................................................................................. 34

    2.5.4. MySQL .................................................................................................................................. 34

    2.5.4.1. Ventajas ......................................................................................................................... 36

    2.5.4.2. Desventajas .................................................................................................................. 37

    2.5.4.3. Algunos detalles tcnicos de MySQL .................................................................... 37

    2.5.5. Apache .................................................................................................................................. 37

    2.5.5.1. Ventajas ......................................................................................................................... 39

    2.5.5.2. Desventajas .................................................................................................................. 40

    2.5.6. AJAX ...................................................................................................................................... 41

    2.5.6.1. Tecnologas incluidas en Ajax ................................................................................ 42

    2.5.6.2. Problemas e Inconvenientes.................................................................................... 42

    2.5.7. JQuery ................................................................................................................................... 43

    2.5.7.1. Ventajas ......................................................................................................................... 43

    2.5.7.2. Desventajas .................................................................................................................. 44

    2.6. VULNERABILIDAD DE LOS SERVICIOS EN LA WEB ...................................................... 44

    2.7. DESCRIPCIN DE LAS VULNERABILIDADES CON MAYOR RIESGO PARA LAS

    APLICACIONES WEB ....................................................................................................................... 46

    2.7.1. Fallos de Inyeccin ............................................................................................................ 46

    2.7.2. Secuencia de Comandos en Sitios Cruzados (XSS) ................................................. 46

    2.7.3. Perdida de Autenticacin y Gestin de Sesiones ..................................................... 47

    2.7.4. Referencia Insegura y Directa a Objetos ..................................................................... 47

    2.7.5. Falsificacin de Peticin en Sitios Cruzados (CSRF)............................................... 47

    2.7.6. Configuracin defectuosa de seguridad...................................................................... 47

    2.7.7. Almacenamiento Criptogrfico Inseguro ..................................................................... 48

    2.7.8. Fallos de restriccin de acceso a URL ......................................................................... 48

    2.7.9. Comunicaciones Inseguras ............................................................................................. 48

    2.7.10. Redirecciones y Reenvos no validados.................................................................... 48

    2.8. MEDIDAS DE PREVENCIN CONTRA LAS VULNERABILIDADES .............................. 48

    2.9. PROGRAMACIN EXTREMA .................................................................................................. 50

    2.9.1. Caractersticas fundamentales ....................................................................................... 54

    2.10. DIAGRAMA DE CASO DE USO ............................................................................................ 56

    2.10.1. Diagramas de Casos de Uso UML ............................................................................... 56

  • 4

    2.11. DIAGRAMA UML ...................................................................................................................... 57

    2.12. DIAGRAMA ENTIDAD RELACIN .................................................................................... 58

    2.13. CALIDAD .................................................................................................................................... 60

    2.13.1. Medida de la calidad de software ................................................................................ 62

    2.14. ESTADISTICA INFERENCIAL ............................................................................................... 62

    2.14.1. Planteamiento del problema ......................................................................................... 63

    2.14.2. Elaboracin de un modelo ............................................................................................. 63

    2.14.3. Extraccin de la muestra ............................................................................................... 63

    2.14.4. Tratamiento de los datos ............................................................................................... 64

    2.14.5. Estimacin de los parmetros ...................................................................................... 64

    2.14.6. Contraste de hiptesis ................................................................................................... 64

    2.14.7. Conclusiones .................................................................................................................... 64

    2.15. SOFTENG AGILE ..................................................................................................................... 64

    2.15.1. Estudio estratgico ......................................................................................................... 64

    2.15.3. Produccin ........................................................................................................................ 66

    2.15.3. Control de calidad ............................................................................................................ 66

    2.15.4. Puesta en marcha ............................................................................................................ 66

    2.15.5. Gestin del proyecto ....................................................................................................... 67

    2.16. VARIABLES DE MEDICION ................................................................................................... 67

    Tamao Muestral ........................................................................................................................... 67

    2.16.1. Variables Humanas de Medicion ................................................................................. 68

    2.16.1.1. Satisfaccin ................................................................................................................ 68

    2.16.1.2. Calidad ......................................................................................................................... 70

    2.16.2. Variables Tecnolgicas de Medicin .......................................................................... 70

    2.16.2.1. Carga ............................................................................................................................ 70

    2.16.2.2. Tiempo ......................................................................................................................... 72

    2.17. ADMINISTRACIN DEL SERVIDOR EN UBUNTU SERVER 12.04 ............................... 72

    2.17.1. Instalacion del sistema operativo Ubuntu Server 12.04 ........................................ 73

    2.17.2. Instalacion de servidor DNS en Ubuntu Server 12.04 ............................................ 82

    2.17.3. Configuracin de Samba ............................................................................................... 85

    2.17.4. Instalacion de un servidor de Correo en Ubuntu Server 12.04 ............................ 93

    2.17.5. Instalacion de los Servicios SSH y Telnet en Ubuntu Server 12.04 ................. 107

    2.17.6. Conclusiones Sobre Telnet ......................................................................................... 110

  • 5

    2.17.7. Manejo e instalacin de SSH ...................................................................................... 110

    REFERENCIAS ................................................................................................................................. 114

  • 6

    NDICE DE FIGURAS

    Figura 1. Imagen de un servidor ....................................................................................................... 15

    Figura 2. Esquema del funcionamiento del modelo cliente-servidor ........................................... 16

    Figura 3. Operatividad bsica de una peticin cliente-servidor .................................................. 21

    Figura 4. Predominancia de servidores con sistema operativo presintalado a la venta en el

    mercado ................................................................................................................................................ 22

    Figura 5. Distribucion de los sistemas operativos para servidor de las familias UNIX y Linux

    en el mercado ...................................................................................................................................... 23

    Figura 6. Distribucion de los sistemas operativos Linux en servidores ..................................... 24

    Figura 7. Ciclo de la administracin de la seguridad ..................................................................... 25

    Figura 8. Monitoreo Bsico del anlisis de seguridad en servidores ......................................... 28

    Figura 9. Estructura bsica del documento HTML 5 ..................................................................... 29

    Figura 10. Logo de PHP .................................................................................................................... 31

    Figura 11. Posicionamiento de los lenguajes de programacin para servidor .......................... 32

    Figura 12. Uso de los Sistemas Gestores de Base de Datos mas populares a nivel mundial 36

    Figura 13. Posicionamiento de Apache frente a sus competidores ............................................ 38

    Figura 14. Funcionamiento bsico de Apache ............................................................................... 39

    Figura 15. Analisis Basico del ataque SQL injection ..................................................................... 45

    Figura 16. Esquematizacion de los valores de XP ......................................................................... 53

    Figura 17. Principios bsicos del trabajo con programacin extrema ........................................ 55

    Figura 18. Simbologia bsica de los diagramas de caso de uso ................................................. 56

    Figura 19. Ejemplo de un diagrama de caso de uso para un restaurante ................................. 57

    Figura 20. Ejemplo del diagrama entidad relacin. .................................................................... 59

    Figura 21. Gestion de proyectos segn SOFTENG Agile ............................................................. 65

    Figura 22. Eleccion de Lenguaje para Instalacion de Ubuntu Server ......................................... 73

    Figura 23. Instalacion de Ubuntu Server ......................................................................................... 74

    Figura 24.Eleccion de pas en Ubuntu Server ................................................................................ 75

    Figura 25. Configuracin de un teclado para latam para nuestra PC. ........................................ 76

    Figura 26. Configuracin del nombre de la mquina, en este caso, naranja. ........................... 77

    Figura 27. Configuracin del nombre de nuestro superusuario para usarlo dentro del sistema

    operativo. .............................................................................................................................................. 77

    Figura 28. creamos nuestro usuario personal y no un superusuario ya que una es la cuenta

    individual y la otra la del superusuario. ............................................................................................ 78

    Figura 29. Configuracin de la contrasea de la cuenta del usuario. ......................................... 78

    Figura 30. Configuracin de la zona horaria del servidor, debemos seleccionar de la lista

    completa para conseguir el adecuado. ............................................................................................ 79

    Figura 31. Confirmacin de la parte del disco a formatear para instalar nuestro sistema

    operativo. .............................................................................................................................................. 80

    Figura 32. Confirmacin de escritura en disco de los cambios propuestos. .............................. 80

    Figura 33. Servicios con los que cuenta el servidor y que pueden ser instalados desde un

    principio usando la barra espaciadora como seleccionador. ........................................................ 81

    Figura 34. Pantalla de finalizacin de instalacin de Ubuntu Server 12.04 ............................... 82

    Figura 35. Configuracion de Carpetas ............................................................................................. 83

    Figura 36. Instalacion de Complementos ........................................................................................ 84

  • 7

    Figura 37. Configuracion del archivo smb.conf .............................................................................. 86

    Figura 38. Configuracion del archivo smb.conf (parte2) ............................................................... 87

    Figura 39. Configuracion de la carpeta ............................................................................................ 88

    Figura 40. Configuracion de usuarios en samba ............................................................................ 89

    Figura 41.Configuracion de usuarios en samba ............................................................................. 90

    Figura 42. Entrada al dominio desde un cliente ............................................................................. 91

    Figura 43. Windows XP en el dominio ............................................................................................. 92

    Figura 44. Alternativa de Acceso al dominio ................................................................................... 92

    Figura 45. Servicios Previos ante instalacin de un servidor de Correo .................................... 93

    Figura 46. Configuracion de La red estatica ................................................................................... 94

    Figura 47Confguracion del servidor Web Apache.......................................................................... 95

    Figura 48. Instalacion de los servicios de Correo .......................................................................... 96

    Figura 49. Instalacion de otros servicios ......................................................................................... 97

    Figura 50. Configuracion de Postfix ................................................................................................. 98

    Figura 51. Configuacion de Squirrelmail .......................................................................................... 99

    Figura 52. Configuracion de Squirrelmail (parte2) ....................................................................... 100

    Figura 53. Configuracion de Squirrelmail (parte3) ....................................................................... 101

    Figura 54. Configuracion de Squirrelmail (parte4) ....................................................................... 102

    Figura 55. Configuracion de Squirrelmail (parte5) ....................................................................... 103

    Figura 56. Creacion de un enlace simbolico ................................................................................. 104

    Figura 57. Primer acceso a SquirrelMail ........................................................................................ 105

    Figura 58. Interfaz Cliente Servidor de correo. ............................................................................. 105

    Figura 59. Primer Correo en el cliente ........................................................................................... 106

    Figura 60.Detalle de la pantalla de correo enviado. .................................................................... 107

    Figura 61. Instalacion de los servicios ........................................................................................... 108

    Figura 62. Acceso a Telnet .............................................................................................................. 109

    Figura 63. Finalizacion del Servicio telnet ..................................................................................... 110

    Figura 64. Instalacion del servicio SSH ......................................................................................... 111

    Figura 65. Uso de Putty .................................................................................................................... 112

    Figura 66. Uso de Putty (parte2) ..................................................................................................... 112

    Figura 67. Configuracion de Putty .................................................................................................. 113

    Figura 68. Incio de Putty .................................................................................................................. 113

  • 8

    CAPITULO 1. INTRODUCCIN

    1.1. PLANTEAMIENTO DEL PROBLEMA

    El CEAPS Atlautla es una institucin regional que cuenta con un sistema web

    de administracin web, sin embargo, dicho sistema no cuenta con una generacin

    dinmica de formatos para evitar datos redundantes que apoyen a los mdicos en

    sus informes para evitar la sobrecarga de trabajo, esto disminuye la atencin que se

    le da a los pacientes evitando un servicio ptimo, adems de que el sistema est en

    internet y muchas veces se traba1.

    Implementar un servidor web Linux en centros regionales con estas

    caractersticas y, en particular, para los CEAPS que tienen la misma problemtica

    abre las puertas a la implementacin intranet de sistemas ms eficientes y de bases

    de datos ms rpidas trabajando con recursos mnimos. Otra caracterstica valuada

    en dicho centro es el impacto que tiene en la sociedad, directamente afecta a 3

    agentes, los cuales son en orden de importancia, los derechohabientes, los mdicos

    de rea externa y la administracin del rea de estadstica.

    Por un lado los derechohabientes deben esperar largas filas en los

    consultorios ya que con cada cita que atienden los mdicos estos ltimos deben

    llenar alrededor de 22 formatos para llevar un correcto control de informacin, ya que

    por da deben entregar un informe de actividades traducido en ficha del da lo que

    ocasiona que el tiempo de respuesta para la siguiente consulta sea muy tardado y el

    tiempo en consulta sea mnimo, ello se traduce en una atencin muy rpida y poco

    profunda para el paciente.

    Por otro lado el rea de estadstica se enfrenta al problema de entregar

    informes mensuales a sus autoridades y muchas veces los datos que entregan los

    mdicos no son correctos por la enorme carga que tiene de trabajo a la hora de

    1 (Pea, 2014)

  • 9

    hacer sus registros ocasionando datos redundantes, falsos, y regreso de documentos

    para su realizacin una y otra vez.

    Un servidor con sistema libre que pueda almacenar una base de datos y

    respaldarla en servidores ajenos (usando trabajos en CRON) para evitar prdidas y

    siempre tener un respaldo2, resulta costeable y de alto impacto a los

    derechohabientes, los mdicos externos y el flujo de informacin estadstico

    formando un canal que abre las posibilidades del centro a mejorar an ms los

    servicios proporcionados.

    1.2. JUSTIFICACIN

    En la actualidad, y con el incremento de la poblacin, uno de los problemas

    ms comunes en las clnicas regionales es el flujo de informacin para llevar un

    correcto control de las operaciones realizadas acertadamente en el rea de consulta

    externa.

    Tal es el caso del Centro Especializado de Atencin Primaria a la Salud

    seccin Atlautla (CEAPS Atlautla) donde el rea de consulta externa carece de un

    sistema que apoye a los mdicos para generar sus informes mensuales que cuentan

    con datos como el nmero de pacientes atendidos, el tipo de programa al que

    pertenecen (Seguro Popular, por ejemplo), su diagnstico entre otros datos, ello

    provoca que al final de cada mes se vean muy presionados para poder entregar

    dicha documentacin al rea de estadstica provocando un descontrol en el flujo de

    informacin, un desorden de datos y, en algunas ocasiones, datos que no coinciden

    por lo apresurado de registrarlos3.

    2 (W3Techs, Linux.org, 2014)

    3 (Pea, 2014)

  • 10

    Implementar un servidor web con tecnologas libres en una de las maquinas

    con las que cuenta el centro para la instalacin de un sistema a medida que ayude a

    la administracin de formatos del rea de consulta externa ayudara a que los datos

    generados por consulta en cada da y multiplicada por mes y por 24 horas generando

    dichos formatos de manera dinmica ayudara a que los mdicos del centro tengan

    menos trabajo para brindar un mejor servicio y mayor tiempo de atencin a los

    derechohabientes evitando que los datos no coincidan cuando pasen al rea de

    estadstica ya que estos ya fueron llenados apoyados desde el servidor web que se

    encontrara en intranet.

    Hacer uso de tecnologas libres e indagar sobre ellas creara un nuevo

    panorama de accin para cualquier estancia de gobierno y no solo limitndose a un

    rea de clnica, ya que este tipo de administracin de servidores Linux evitara

    problemas sobre licencias, creara una conciencia de legalidad en las instituciones y

    aumentara gravemente la seguridad, fiabilidad y flujo de informacin para esta y

    otras instituciones.

    1.3. OBJETIVOS

    1.3.1. Objetivo General

    Montar un servidor web con sistema operativo Linux, para instalar el sistema

    de administracin de consulta externa en una clnica regional, acelerando su

    atencin a derechohabientes.

    1.3.2. Objetivos Especficos

    Convertir una PC del Centro Especializado de Atencin Primaria a la Salud de

    Atlautla (CEAPS Atlautla) en un servidor web Linux con sistema operativo

    Ubuntu Server en apache para la instalacin de un sistema de administracin

    de consulta externa programado en PHP, HTML 5, JQuery, AJAX, JavaScript,

    JQuery UI en una plataforma de navegacin Google Chrome.

  • 11

    Generar automticamente los informes diarios y mensuales de cada mdico,

    extrayendo dicha informacin de los registros de cada da de la base de datos

    en MySQL en el servidor usando la librera DomPDF para reducir el trabajo en

    el rea de consulta externa proporcionando ms atencin a los

    derechohabientes.

    Instalar el protocolo SSH para la comunicacin remota al servidor por parte de

    administrador, facilitando su mantenimiento y evitando estar presente para

    crear nuevas funcionalidades o corregir errores posibles que se presenten

    ante en el centro.

    Instalar el protocolo FTP mediante los repositorios de Ubuntu para la gestin

    de archivos remotamente en caso de requerirse una actualizacin en el

    servidor o en el propio sistema de administracin, reduciendo el tiempo de

    mantenimiento generando mayor satisfaccin en los usuarios.

    1.4. HIPTESIS

    El montaje de un servidor web para instalar un sistema de administracin

    de los pacientes aumentara la calidad del servicio proporcionado a los

    derechohabientes y la satisfaccin del servicio.

    Un servidor web dedicado a un sistema de administracin de pacientes

    reduce el tiempo invertido en trabajo de los mdicos de consulta externa al generar

    sus reportes de manera automtica.

    1.5. ACTIVIDADES REALIZADAS El montaje del servidor web y la programacin del sistema administrador de

    pacientes para consulta externa fueron elaborados bajo la filosofa de la

    programacin extrema debido a la necesidad de implementar lo ms rpido posible

    este sistema informtico.

  • 12

    1.5.1. Interaccin con el cliente

    Se plantea la realizacin de 5 entrevistas con respectivos 5 avances para

    generar el software destinado a los mdicos bajo la supervisin del jefe de

    estadstica, Lic. Orlando Valdez Pea del Centro Especializado de Atencin Primaria

    a la Salud en el municipio de Atlautla. En primera instancia se puntualiz en la

    necesidad que tienen los mdicos de entregar informes mensuales y diarios dados

    los datos de los pacientes ya que estos consumen tiempo que ya no dedican a los

    pacientes sino a generar documentacin de su trabajo. Estos informes muchas veces

    no coinciden con los datos que se tienen en el rea de archivo, generando fallas e

    inconsistencias que ms tarde repercuten en rehacer todos los informes desde cero.

    Adicionalmente, el centro cuenta con un sistema de administracin, sin

    embargo es ineficiente y carece de funcionalidades ya que es necesaria una

    conexin a internet mejor que la tpica con la que se cuenta y por ello el sistema no

    es utilizado.

    Momentneamente el centro cuenta con un rea de consulta externa la cual

    llena formatos iguales para todos los mdicos una clase de formatos denominados

    SIS, los cuales evocan a datos particulares de los pacientes como su edad, genero,

    programa de apoyo de adscripcin, diagnostico que presenta, si viene o no de otra

    clnica, si pertenece a otro seguro, si es indgena, migrante, extranjero, etc. Todo

    esto con un marcado riesgo de error ya que al registrar la consulta tambin debera

    registrarse el informe mensual pero a su vez ocasionara inconsistencia o riesgo a

    perdida de datos ya que cada paciente se maneja por una clave y lo mismo ocasiona

    para el diagnstico.

    1.5.2. Planificacin

    Una vez obtenido el objetivo del proyecto se plantea el montaje de un servidor

    web en el centro donde se instale un sistema de administracin para el rea de

    consulta externa, registrando los pacientes para cada consulta, esto con el fin de

  • 13

    compartir la conexin a internet en una red intranet y que cada mdico pueda

    acceder desde su consultorio al sistema en cuestin, por supuesto, para evitar el

    problema de la conexin tambin es necesario este servidor, ya que, al encontrarse

    en el centro mismo no requerir de un gran ancho de banda para generar resultados

    ptimos.

    Dada la necesidad los mdicos solo tendran que dar consulta ordinaria para

    generar los informes correspondientes a los das y meses del ao, ya que en una

    consulta se pueden recuperar los datos necesarios para este fin evitando la

    redundancia de datos cumpliendo con el objetivo general.

    1.5.3. Diseo, desarrollo y pruebas

    Bajo la filosofa de la programacin extrema se han realizado varias pruebas

    conforme avances se realizan acordes a las especificaciones e ideas generadas en

    las entrevistas como se marca en el cronograma de actividades siguiente.

    Lo que se pretende es continuar hasta la finalizacin del prototipo con las

    entrevistas y la retroalimentacin de los involucrados en el proyecto para

    enriquecerlo y extenderlo, adicionalmente este sistema apoyara en la generacin

    ms rpida de los informes diarios y mensuales de cada mdicos para despus

    adaptarlo a otros centro y a otras reas subsecuente a la finalizacin del software

    como se indica en el cronograma.

  • 14

    1.5.4. Cronograma de actividades

    TIEMPO ESTABLECIDO MARZO ABRIL MAYO JUNIO JULIO

    NP ACTIVIDADES 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 1 2

    1 ELECCIN DEL TEMA

    2 IDENTIFICACIN DEL PROBLEMA

    3 ELABORACIN DE LA PROPUESTA DEL PROYECTO

    4 PRIMERA ENTREVISTA CEAPS ATLAUTLA

    5 ELABORACIN DE OBJETIVOS

    6 DESARROLLO DEL PROTOTIPO FASE 1

    7 ELABORACIN DE LA JUSTIFICACIN Y PLANTEAMIENTO DEL PROBLEMA

    8 SEGUNDA ENTREVISTA CEAPS ATLAUTLA

    9 DESARROLLO DEL PROTOTIPO FASE 2

    10 TERCERA ENTREVISTA CEAPS ATLAUTLA

    11 ELABORACIN DE LA HIPTESIS Y CARATULA

    12 DESARROLLO DEL PROTOTIPO FASE 3

    13 MARCO TERICO

    14 CUARTA ENTREVISTA CEAPS ATLAUTLA

    15 DESARROLLO DEL PROTOTIPO FASE 4

    16 QUINTA ENTREVISTA CEAPS ATLAUTLA

    17 PRUEBAS E IMPLEMENTACIN EN SERVIDOR

    18 ANLISIS DE RESULTADOS

    19 CONCLUSIONES Y RECOMENDACIONES

    20 ELABORACIN DE ESQUEMAS FINALES DEL TRABAJO ESCRITO

  • 15

    CAPITULO 2. MARCO TERICO

    2.1. SERVIDORES

    2.1.1. Definicin de Servidor

    Un servidor, es un ordenador o mquina informtica que est al servicio de

    otras mquinas, ordenadores o personas llamadas clientes y que le suministran a

    estos, todo tipo de informacin4.

    Figura 1. Imagen de un servidor

    Un servidor en informtica es un ordenador u otro tipo de dispositivo que

    suministra una informacin requerida por unos clientes (que pueden ser personas, o

    tambin pueden ser otros dispositivos como ordenadores, mviles, impresoras, etc.).

    Por tanto, el siguiente esquema general, en el denominado esquema cliente-

    servidor que es uno de los ms usados ya que en l se basa gran parte de internet.

    4 (Augusto, 2011)

  • 16

    Figura 2. Esquema del funcionamiento del modelo cliente-servidor

    Como se aprecia, tenemos una mquina servidora que se comunica con

    variados clientes, todos demandando algn tipo de informacin. Esta informacin

    puede ser desde archivos de texto, video, audio, imgenes, emails, aplicaciones,

    programas, consultas a base de datos, etc.

    Por regla general, las mquinas servidoras suelen ser algo ms potentes que

    un ordenador normal5. Sobre todo suelen tener ms capacidad tanto de

    almacenamiento de informacin como de memoria principal, ya que tienen que dar

    servicio a muchos clientes. Pero como todo, tambin depende de las necesidades,

    ya que podemos tener un servidor de menores prestaciones si vamos a tener pocos

    clientes conectados, o si los servicios que queramos en el servidor no requieren una

    gran capacidad servidora. Por general, los servidores suelen estar situados en

    centros de datos de empresas (edificios con grandes salas dedicadas a alojar a los

    servidores).

    5 (Dueas, 2008)

  • 17

    2.1.2. Tipos de Servidores

    Servidores de Aplicaciones (Application Servers)

    Designados a veces como un tipo de middleware (software que conecta dos

    aplicaciones), los servidores de aplicaciones ocupan una gran parte del territorio

    entre los servidores de bases de datos y el usuario, y a menudo los conectan.

    Servidores de Audio/Video (Audio/Video Servers)

    Los servidores de Audio/Video aaden capacidades multimedia a los sitios

    web permitindoles mostrar contenido multimedia en forma de flujo continuo

    (streaming) desde el servidor.

    Servidores de Chat (Chat Servers)

    Los servidores de chat permiten intercambiar informacin a una gran cantidad

    de usuarios ofreciendo la posibilidad de llevar a cabo discusiones en tiempo real.

    Servidores de Fax (Fax Servers)

    Un servidor de fax es una solucin ideal para organizaciones que tratan de

    reducir el uso del telfono pero necesitan enviar documentos por fax.

    Servidores FTP (FTP Servers)

    Uno de los servicios ms antiguos de Internet, File Transfer Protocol permite

    mover uno o ms archivos.

  • 18

    Servidores Groupware (Groupware Servers)

    Un servidor groupware es un software diseado para permitir colaborar a los

    usuarios, sin importar la localizacin, va Internet o va Intranet corporativo y trabajar

    juntos en una atmsfera virtual.

    Servidores IRC (IRC Servers)

    Otra opcin para usuarios que buscan la discusin en tiempo real, Internet

    Relay Chat consiste en varias redes de servidores separadas que permiten que los

    usuarios conecten el uno al otro va una red IRC.

    Servidores de Listas (List Servers)

    Los servidores de listas ofrecen una manera mejor de manejar listas de correo

    electrnico, bien sean discusiones interactivas abiertas al pblico o listas

    unidireccionales de anuncios, boletines de noticias o publicidad.

    Servidores de Correo (Mail Servers)

    Casi tan ubicuos y cruciales como los servidores web, los servidores de correo

    mueven y almacenan el correo electrnico a travs de las redes corporativas (va

    LANs y WANs) y a travs de Internet.

    Servidores Proxy (Proxy Servers)

    Los servidores proxy se sitan entre un programa del cliente (tpicamente

    un navegador) y un servidor externo (tpicamente otro servidor web) para filtrar

    peticiones, mejorar el funcionamiento y compartir conexiones.

  • 19

    Servidores Web (Web Servers)

    Bsicamente, un servidor web sirve contenido esttico a un navegador, carga

    un archivo y lo sirve a travs de la red al navegador de un usuario. Este intercambio

    es mediado por el navegador y el servidor que hablan el uno con el otro mediante

    HTTP.

    Se pueden utilizar varias tecnologas en el servidor para aumentar su potencia

    ms all de su capacidad de entregar pginas HTML; stas incluyen scripts CGI,

    seguridad SSL y pginas activas del servidor (ASP).

    2.2. SISTEMAS OPERATIVOS PARA SERVIDORES

    Un sistema operativo de red (Network Operating System) es un componente

    software de una computadora que tiene como objetivo coordinar y manejar las

    actividades de los recursos del ordenador en una red de equipos. Consiste en un

    software que posibilita la comunicacin de un sistema informtico con otros equipos

    en el mbito de una red. Dependiendo del fabricante del sistema operativo de red, el

    software de red para un equipo personal se puede aadir al propio sistema operativo

    del equipo o integrarse con l. Netware de Novell es el ejemplo ms familiar y

    famoso de sistema operativo de red donde el software de red del equipo cliente se

    incorpora en el sistema operativo del equipo. El equipo personal necesita ambos

    sistema operativos para gestionar conjuntamente las funciones de red y las funciones

    individuales.

    2.2.1. Caractersticas de los Sistemas Operativos de Red

    En general, se puede decir que un Sistema Operativo tiene las siguientes

    caractersticas:

    - Conveniencia. Un Sistema Operativo hace ms conveniente el uso de una

    computadora.

  • 20

    - Eficiencia. Un Sistema Operativo permite que los recursos de la

    computadora se usen de la manera ms eficiente posible.

    - Habilidad para evolucionar. Un Sistema Operativo deber construirse de

    manera que permita el desarrollo, prueba o introduccin efectiva de nuevas

    funciones del sistema sin interferir con el servicio.

    - Encargado de administrar el hardware. El Sistema Operativo se encarga

    de manejar de una mejor manera los recursos de la computadora en

    cuanto a hardware se refiere, esto es, asignar a cada proceso una parte

    del procesador para poder compartir los recursos.

    - Relacionar dispositivos (gestionar a travs del kernel). El Sistema

    Operativo se debe encargar de comunicar a los dispositivos perifricos,

    cuando el usuario as lo requiera.

    - Organizar datos para acceso rpido y seguro.

    - Manejar las comunicaciones en red. El Sistema Operativo permite al

    usuario manejar con alta facilidad todo lo referente a la instalacin y uso de

    las redes de computadoras.

    - Procesamiento por bytes de flujo a travs del bus de datos.

    - Facilitar las entradas y salidas. Un Sistema Operativo debe hacerle fcil al

    usuario el acceso y manejo de los dispositivos de Entrada/Salida de la

    computadora.

    - Tcnicas de recuperacin de errores.

    - Evita que otros usuarios interfieran. El Sistema Operativo evita que los

    usuarios se bloqueen entre ellos, informndoles si esa aplicacin est

    siendo ocupada por otro usuario.

    - Generacin de estadsticas.

    - Permite que se puedan compartir el hardware y los datos entre los

    usuarios.

  • 21

    Figura 3. Operatividad bsica de una peticin cliente-servidor

    2.3. SERVIDORES WEB

    2.3.1. Definicin de servidor web

    Los servidores web son los que hacen posible el Web hosting, es decir, la

    posibilidad de alquilar un espacio en un servidor para alojar nuestro sitio.

    La principal funcin de un servidor Web es almacenar los archivos de un sitio y

    emitirlos por Internet para poder ser visitado por los usuarios. Bsicamente, un

    servidor Web es una gran computadora que guarda y transmite datos va Internet.

    Cuando un usuario entra en una pgina de Internet su navegador se comunica con

    el servidor enviando y recibiendo datos que determinan qu es lo que ve en la

    pantalla.

    Cada servidor Web y cada computadora conectada a Internet tienen

    asignado una direccin de IP irrepetible que lo identifica en la red. La direccin de

    IP vendra a ser como los datos del remitente en una carta postal. Cuando se entra

    a un sitio Web, se enva un pedido desde la direccin de IP hacia la direccin IP del

    servidor. El servidor Web responde mandando datos a la direccin IP que los pide.

  • 22

    La capacidad de un servidor depende del tipo de servidor que sea y de los

    componentes que lo conforman.

    Por supuesto, la gran diferencia en velocidad, seguridad, viabilidad,

    usabilidad y administracin de un servidor web depende mucho del sistema

    operativo como punto de montaje. En la actualidad, los servidores vienen con

    sistemas operativos instalados por defecto (Vease figura 4) que pueden o no

    cumplir con las normas y/o policas empresariales.

    Figura 4. Predominancia de servidores con sistema operativo presintalado a la venta en el mercado

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-

    linux/all/all

    Observamos una clara predominancia de los sistemas operatrivos de la

    familia Microsoft, sin embargo, ello no implica que los mas usados sean estos

    precisamente, sino que la figura muetra aquellos servidores cuyo sistema por

    defecto es Windows, en este aspecto, es necesario destacar que cuando la

    73.90%

    21.10%

    Sistemas Operativos de Servidor

    Windows Server Linux

  • 23

    empresa lo requiere los sistemas operativos por defecto son sustituidos

    primordialmente por productos de la familia Linux6.

    Adjunto a las polticas y predominancia de los sistemas operativos de

    servidor y la actualizacin a familia Linux ello implica un anlisis detallado de la

    concurrencia de esta familia en el mercado de los servidores en contraste a la

    familia Windows (Vease Figura 5).

    Figura 5. Distribucion de los sistemas operativos para servidor de las familias UNIX y Linux en el

    mercado

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-

    linux/all/all

    Quizs la predominancia de la familia Linux se deba a la facilidad de uso

    para usuarios promedio adjuntos a las nuevas tecnologas, ello implica un anlisis

    de la predominancia de esta familia de sistemas operativos en el mercado para

    destacar la viabilidad en contraste a la conveniencia del fin ultimo (Vase Figura 6).

    6 (Gelbmann, 2013)

    67.50%

    38.90%

    UNIX y Linux en Servidores

    Linux UNIX

  • 24

    Figura 6. Distribucion de los sistemas operativos Linux en servidores

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-

    linux/all/all

    .

    2.4. ADMINISTRACIN DE LA SEGURIDAD.

    Para que un esquema de seguridad quede completo, es necesario que se

    lleve a cabo la administracin de la seguridad.

    29%

    22.80% 19.80%

    6.70%

    2.00%

    1.90%

    1.20% 16.60%

    Linux en Servidores

    Debian Ubuntu CentOS RedHat

    Gentoo Fedora SuSE Otros

  • 25

    Figura 7. Ciclo de la administracin de la seguridad

    imagen de Claudia Yvette Castro Jaime, T. H. (2010). Polticas y Buenas Prcticas de seguridad en

    Servidores Web del CDMIT. Distrito Federal: Ciudad Universitaria.

    .

    2.4.1. Definicin de administracin de la seguridad.

    La administracin de la seguridad se refiere a gestionar y dirigir todas las

    acciones que se lleven a cabo con el fin de proteger la informacin, hacer uso lcito

    de sta, as como de los recursos con los que cuenta la organizacin7.

    La administracin consta de cuatro etapas

    que son:

    Etapa 1: Planeacin. Se debe llevar a cabo una revisin peridica de las polticas

    de seguridad, por lo que hay que revisar el esquema de seguridad

    desarrollado para identificar si se requiere actualizar, remover y modificar las que

    ya existen.

    Etapa 2: Proteccin. Despus de revisar y actualizar las polticas de seguridad

    del entorno, se debe de reforzar la seguridad con base en stas y hacer uso de

    7 (Claudia Yvette Castro Jaime, 2010)

  • 26

    nuevas tecnologas, ya que estas nuevas formas de proteccin elevan el nivel de

    seguridad del entorno en cuestin.

    Etapa 3: Deteccin. Es necesario contar con sistemas que permitan realizar

    actividades de monitoreo de forma continua y permanente en toda informacin,

    reas y sistemas que sean considerados dentro de las polticas como de

    relevancia; y as mismo, generar reportes que permitan detectar alguna anomala

    para tomar las medidas pertinentes, es decir, reaccionar a la anomala.

    Etapa 4: Reaccin ante el incidente. En sta etapa se toman las decisiones que

    dictan las acciones orientadas a salvaguardar los bienes informticos de

    la empresa u organizacin, esto con base en la informacin obtenida de la etapa

    anterior, se realiza de manera continua un anlisis de sta para tomar una decisin

    de cambio de polticas o mecanismos. Estos cambios pueden ser desde actualizar

    la tecnologa para llevar a cabo la proteccin de los bienes, modificar esquemas

    de seguridad o llevar a cabo una revisin extraordinaria de las polticas, entre

    otros.

    2.4.2. Buenas Prcticas en la seguridad de servidores

    Aunque nadie puede garantizar la seguridad al 100% de los algoritmos y la

    estabilidad de un servidor, si que es posible generar un grado alto de calidad en el

    montaje y administracin de los mismos para obtener resultados optimos, la

    deteccin de las fallas es posible mediante el anlisis de las vulnerabilidades que

    mas afectan en la actualidad a esta clase de dispositivos (vase Figura) por lo que es

    importante seguir algunos patrones de conducta cuando se habla de instalar un

    servidor:

    1. No instalar servicios que no son necesarios. En general, en una operacin

    tpica de instalacin, por defecto, del sistema no es seguro, ya que muchos

    servicios de red que se descargan no son realmente necesarios por el usuario.

    Esto se convierte en ms peligroso porque los servicios estn abiertos en el

    servidor, es decir, ms puertos potenciales para los hackers puedan introducirse

  • 27

    en el mismo. Al eliminar estos servicios innecesarios de su servidor de red o

    nunca descargarlos en primer lugar, estaras tomando importantes medidas

    preventivas para prevenir una brecha en la seguridad del servidor.

    2. Accesibilidad de inicio de sesin remoto. En el pasado, muchos servidores

    slo eran accesibles a travs de un Login de forma local. Sin embargo, esto no es

    propicio para el entorno empresarial actual. Existe una mayor posibilidad de un

    fallo de seguridad en el servidor cuando el acceso remoto est disponible, pero

    se pueden tomar medidas para asegurar una conexin remota. Tneles y cifrado

    junto con software de seguridad y otros equipos son una buena manera de

    garantizar la mayor proteccin posible si se utiliza el acceso remoto a un servidor.

    3. Seguimiento, Monitoreo, y auditora del servidor. A menudo, las brechas de

    seguridad se producen porque el departamento de TI no es consciente de lo que

    est pasando. Todos los registros en los servidores web deben ser almacenados

    en un rea inaccesible por separado. Estos registros, incluyendo registros de

    acceso del sitio web, registros de servicios de red, los registros del sistema y los

    registros de la base de datos del servidor se les debe realizar un seguimiento de

    por lo menos una vez por semana, si no todos los das. Ser consciente de una

    posible infraccin, ya que si se produce puede ser la mejor manera de minimizar

    los daos, se puede resolver o incluso se puede detectar que se est

    produciendo.

    4. Desarrollo y prueba de aplicaciones Web. Debido a que es ms fcil y ms

    rpido probar nuevas aplicaciones web en el servidor en s, muchos

    desarrolladores lo hacen. Sin embargo, esto es muy peligroso porque estas

    aplicaciones web por lo general en sus primeras fases de desarrollo y no tienen

  • 28

    ningn tipo de restricciones de seguridad desarrollada. Debido a estos peligros,

    las nuevas aplicaciones web ya sea en desarrollo o prueba siempre deben

    llevarse a cabo en distintos servidores de Internet, y an ms importante, nunca

    se debe conectar a los datos importantes o bases de datos.

    5. Privilegios y acceso al servidor. Cuando un servidor web se ve comprometido

    por medio de una violacin del mismo, a menudo el hacker puede utilizar la

    cuenta que est corriendo en el servidor para ejecutar tareas maliciosas. Es por

    esto que es tan importante que para conceder determinados permisos slo a

    ciertos individuos, por lo general una violacin no da lugar a que el hacker tenga

    acceso a toda la informacin. Como regla general, slo se debe permitir que los

    privilegios mnimos para el usuario annimo, estos privilegios usualmente slo

    permiten el acceso a la pgina web, archivos de aplicaciones web, datos

    generales y bases de datos.

    Figura 8. Monitoreo Bsico del anlisis de seguridad en servidores

    imagen de Claudia Yvette Castro Jaime, T. H. (2010). Polticas y Buenas Prcticas de seguridad en

    Servidores Web del CDMIT. Distrito Federal: Ciudad Universitaria.

  • 29

    .

    2.5. TECNOLOGAS DE LOS SISTEMAS WEB

    2.5.1. HTML 5

    HTML 5 es una coleccin de estndares para el diseo y desarrollo de pginas web.

    Esta coleccin representa la manera en que se presenta la informacin en el

    explorador de internet y la manera de interactuar con ella.

    HTML 5 est siendo desarrollado por Ian Hickson de Google Inc. y David Hyatt de

    Apple Inc. junto con todas las personas que participan en Web Hypertext Application

    Technology Working Group.

    HTML 5 nos permite una mayor interaccin entre nuestras pginas web y contenido

    media (video, audio, entre otros) as como una mayor facilidad a la hora de codificar

    nuestro diseo bsico8.

    Figura 9. Estructura bsica del documento HTML 5

    Esta nueva versin se bas en el diseo ms comn de las pginas web

    8 (Gauchat, 2012)

  • 30

    alrededor del mundo para llegar a un estndar de etiquetas que realicen las mismas

    tareas de manera ms rpida y eficiente

    2.5.1.1. Ventajas

    Las principales ventajas que presenta HTML5, tenemos las siguientes:

    Nueva estructura de etiquetas mejorada, esta nueva estructura permite

    definir por separado el encabezado, la barra de navegacin, las secciones de la

    pgina web, los textos del sitio, los dilogos y el pi de pgina de los sitios web. Esta

    nueva estructura, incluso permite desarrollar blogs con gran facilidad.

    Inclusin de las etiquetas video y audio, dicha etiqueta soporta de manera

    eficiente y estable cualquier opcin de ejecucin de video y audio, sin generar

    errores o incluir cdigo flash en nuestro sitio web.

    Capacidad de realizar ejecuciones offline de las pginas web creadas con

    cdigo HTML5, lo que permite realizar aplicaciones de escritorio con este cdigo tan

    verstil.

    Incluye una nueva etiqueta de dibujo sobre la pgina web, llamada canvas,

    que vuelve el proceso de crear dibujos en el sitio web tan fcil como dibujar con

    aplicaciones como Paint.

    2.5.1.2. Desventajas

    No se preveen buenos filtros a los campos de texto insertados

    En algunas ocasiones el PHp emebebido ocasiona conflictos con las nuevas

    etiquetas

    No todos los navegadores detectan aun esta nueva tendencia

    Aun no se prevee la inclusin del CSS3 en todos los navegadores

    Algunos dispositivos mviles no reconocen la snuevas etiquetas.

  • 31

    2.5.2. PHP

    PHP es un lenguaje de cdigo abierto muy popular, adecuado para desarrollo

    web y que puede ser incrustado en HTML. PHP (acronimo de "PHP: Hypertext

    Preprocessor") es un lenguaje interpretado de alto nivel embebido enpginas HTML y

    ejecutado en el servidor9.

    Figura 10. Logo de PHP

    PHP se utiliza para generar pginas web dinmicas. Se llama pgina esttica

    a aquella cuyos contenidos permanecen siempre igual, mientras que se llama pgina

    dinmica a aquella cuyo contenido no es el mismo siempre. Por ejemplo, los

    contenidos pueden cambiar en base a los cambios que haya en una base de datos,

    de bsquedas o aportaciones de los usuarios, etc.

    Estas caractersticas convierten a PHp en una de las herramientas mas tiles

    en la programacin e intalacion de sistemas web y ha generado gran expectativa por

    su constante actualizacin frente a sus competidores (vase figura 11)

    9 (Martnez, 2002) (Jimmy Wales, 2011)

  • 32

    Figura 11. Posicionamiento de los lenguajes de programacin para servidor

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-

    linux/all/all

    2.5.2.1. Ventajas

    - Es un lenguaje multiplataforma.

    - Completamente orientado al desarrollo de aplicaciones web dinmicas con

    acceso a informacin almacenada en una Base de Datos.

    - El cdigo fuente escrito en PHP es invisible al navegador y al cliente ya que

    es el servidor el que se encarga de ejecutar el cdigo y enviar su resultado HTML al

    navegador. Esto hace que la programacin en PHP sea segura y confiable.

    - Capacidad de conexin con la mayora de los motores de base de datos que

    se utilizan en la actualidad, destaca su conectividad con MySQL y PostgreSQL.

    - Capacidad de expandir su potencial utilizando la enorme cantidad de

    mdulos (llamados ext's o extensiones).

    81.80%

    17.90%

    2.70% 0.80% 0.60% 0.50% 0.20% 0.10%

    Lenguajes para Servidores

    PHP ASP .NET Java ColdFusion

    Perl Ruby Python JavaScript

  • 33

    2.5.2.2. Desventajas

    Como es un lenguaje que se interpreta en ejecucin para ciertos usos puede

    resultar un inconveniente que el cdigo fuente no pueda ser ocultado. La ofuscacin

    es una tcnica que puede dificultar la lectura del cdigo pero no la impide y, en

    ciertos casos, representa un costo en tiempos de ejecucin

    2.5.3. DomPDF

    En ocasiones surge la necesidad de devolver va web un fichero con

    formato PDF. La utilizacin de herramientas para la elaboracin de informes suelen

    dar resultados muy profesionales permitiendo personalizar la parte visual poniendo

    nmero de pgina, cabecera, etc. Sin embargo, cuando esta informacin se est

    mostrando por pantalla en un HTML y se desea que sea descargable en un

    documento nos obliga a tener que realizar la misma tarea dos veces, una

    para HTML y otra para PDF.

    DomPDF es una herramienta que permite leer un documento HTML y

    convertirlo a PDF. El objetivo de esta herramienta no es crear un documento

    estticamente profesional y personalizado, sino permitir con el mismo

    documento HTML generar un documento PDF para que el usuario lo pueda

    descargar ms fcilmente. Cuando la parte esttica no es tan importante, a veces

    viene bien simplificar el trabajo realizando una sola vez la programacin.

    Este proyecto es muy reciente, an por la versin Dompdf v0.5, por lo que en

    la actualidad es una herramienta para considerarla con mucha prudencia.

    Actualmente, la mayor parte de la funcionalidad soporta la mayor parte de CSS2. El

    mayor reto que se pueden encontrar est en el desarrollo del soporte de los ltimos

    estndares HTML 5 y CSS3.

    Aunque tambin tiene limitaciones importantes. No siempre se puede plasmar

    lo que puede ver el usuario en el caso de utilizar AJAX o contiene JavaScript. Por

    otra parte, para poder utilizar esta librera es necesario que el HTML est en una

    cadena por lo que el consumo de memoria puede ser considerable si el informe que

  • 34

    se desea imprimir es muy grande. Adems obligara a poner el CSS dentro del

    fichero HTML.

    Como punto positivo adicional, no es preciso incorporar mdulos o libreras

    externas (en la configuracin del apache) ya que utiliza la clase R&OS escrita

    en PHP que genera el PDF. Esta librera soporta PHP5 o superior y la licencia

    es LGPL.

    2.5.3.1. Ventajas

    - Es posible convertir el cdigo HTML visualizado en una web en un

    documento PDF

    - Detecta CSS3 en las etiquetas de HTML

    - Los diseos son fieles a la visualizacin en PDF despus de renderizar.

    - Es agil con el servidor apache

    2.5.3.2. Desventajas

    - Existen varios problemas en cuanto a coordenadas en la inclusin de

    etiquetas HTML

    - No es posible atrapar aun todas las excepciones

    - Es un proyecto de origen nuevo y por ello no cuenta con gran

    documentacin

    - La mayora de las funcionalidades nuevas se basan en la experiencia de

    otros usuarios.

    2.5.4. MySQL

    MySQL es el servidor de bases de datos relacionales ms popular,

    desarrollado y proporcionado por MySQL AB. MySQL AB es una empresa cuyo

  • 35

    negocio consiste en proporcionar servicios en torno al servidor de bases de datos

    MySQL10.

    Una base de datos es una coleccin estructurada de datos. La informacin

    que puede almacenar una base de datos puede ser tan simple como la de una

    agenda, un contador, o un libro de visitas, o tan vasta como la de una tienda en lnea,

    un sistema de noticias, un portal, o la informacin generada en una red corporativa.

    Para agregar, accesar, y procesar los datos almacenados en una base de datos, se

    necesita un sistema de administracin de bases de datos, tal como MySQL.

    Una base de datos relacional almacena los datos en tablas separadas en lugar

    de poner todos los datos en un solo lugar. Esto agrega velocidad y flexibilidad. Las

    tablas son enlazadas al definir relaciones que hacen posible combinar datos de

    varias tablas cuando se necesitan consultar datos. La parte SQL de "MySQL"

    significa "Lenguaje Estructurado de Consulta", y es el lenguaje ms usado y

    estandarizado para accesar a bases de datos relacionales.

    El servidor MySQL fue desarrollado originalmente para manejar grandes

    bases de datos mucho ms rpido que las soluciones existentes y ha estado siendo

    usado exitosamente en ambientes de produccin sumamente exigentes por varios

    aos. Aunque se encuentra en desarrollo constante, el servidor MySQL ofrece hoy

    un conjunto rico y til de funciones. Su conectividad, velocidad, y seguridad hacen de

    MySQL un servidor bastante apropiado para accesar a bases de datos en Internet.

    10

    (Jimmy Wales, 2011)

  • 36

    Figura 12. Uso de los Sistemas Gestores de Base de Datos mas populares a nivel mundial

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-linux/all/all

    2.5.4.1. Ventajas

    1. MySQL software es Open Source

    2. Velocidad al realizar las operaciones, lo que le hace uno de los gestores con

    mejor rendimiento.

    3. Bajo costo en requerimientos para la elaboracin de bases de datos, ya

    que debido a su bajo consumo puede ser ejecutado en una mquina con

    escasos recursos sin ningn problema.

    4. Facilidad de configuracin e instalacin.

    Soporta gran variedad de Sistemas Operativos

    5. Baja probabilidad de corromper datos, incluso si los errores no se producen

    en el propio gestor, sino en el sistema en el que est.

    6. Su conectividad, velocidad, y seguridad hacen de MySQL Server

    altamente apropiado para acceder bases de datos en Internet

    MongoDB, 12% CouchDB,

    0%

    MySQL, 58%

    PostgreSQL, 10%

    MariaDB, 20%

    USO DE SGBD

  • 37

    7. El software MySQL usa la licencia GPL

    2.5.4.2. Desventajas

    1. Un gran porcentaje de las utilidades de MySQL no estn documentadas.

    2. No es intuitivo, como otros programas (ACCESS).

    2.5.4.3. Algunos detalles tcnicos de MySQL

    El software de bases de datos MySQL consiste de un sistema cliente/servidor

    que se compone de un servidor SQL multihilo, varios programas clientes y

    bibliotecas, herramientas administrativas, y una gran variedad de interfaces de

    programacin (APIs). Se puede obtener tambin como una biblioteca multihilo que se

    puede enlazar dentro de otras aplicaciones para obtener un producto ms pequeo,

    ms rpido, y ms fcil de manejar.

    2.5.5. Apache

    Apache es el Servidor Web ms utilizado, lder con el mayor nmero de

    instalaciones a nivel mundial muy por delante de otras soluciones como el IIS

    (Internet Information Server) de Microsoft. Apache es un proyecto de cdigo abierto y

    uso gratuito, multiplataforma (hay versiones para todos los sistemas operativos ms

    importantes), muy robusto y que destaca por su seguridad y rendimiento (vase

    figura).

  • 38

    Figura 13. Posicionamiento de Apache frente a sus competidores

    extraida de W3Techs Web Technology Surveys: http://w3techs.com/technologies/details/os-linux/all/all

    Su misin es crtica, ya que es el encargado de aceptar las peticiones de

    pginas (o recursos en general) que provienen de los visitantes que acceden a

    nuestro sitio web y gestionar su entrega o denegacin, de acuerdo a las polticas de

    seguridad establecidas. Esto, que puede parecer simple, implica muchas facetas y

    funcionalidades que debe cubrir, como pueden ser:

    Atender de manera eficiente, ya que puede recibir un gran nmero de peticiones

    HTTP, incluyendo una ejecucin multitarea ya que pueden darse peticiones

    simultneas. Cualquier peticin compleja (por ejemplo con acceso a base de datos)

    dejara colapsado el servicio.

    Restricciones de acceso a los ficheros que no se quieran exponer, gestin de

    autentificaciones de usuarios o filtrado de peticiones segn el origen de stas.

    Manejar los errores por pginas no encontradas, informando al visitante y/o

    redirigiendo a pginas predeterminadas.

    Gestin de la informacin a transmitir en funcin de su formato e informar

    adecuadamente al navegador que est solicitando dicho recurso.

    64.92%

    14.39%

    9.89% 3.16%

    Uso de Servidores (2012)

    Apache Microsoft Nginx Google

  • 39

    Gestin de logs, es decir almacenar las peticiones recibidas, errores que se han

    producido y en general toda aquella informacin que puede ser registrada y

    analizada posteriormente para obtener las estadsticas de acceso al sitio web.

    Figura 14. Funcionamiento bsico de Apache

    imagen de Claudia Yvette Castro Jaime, T. H. (2010). Polticas y Buenas Prcticas de seguridad en

    Servidores Web del CDMIT. Distrito Federal: Ciudad Universitaria.

    2.5.5.1. Ventajas

    El paquete del servidor es ms flexible en tiempo de ejecucin porque el

    proceso actual del servidor puede ser ensamblado en tiempo de ejecucin por

    medio de LoadModule en httpd.conf en lugar de hacerlo por medio de la

    configuration en tiempo de compilacin. De este modo se pueden arrancar

    diferentes instancias del servidor (estndar, versin SSL, mnima, versin

    potenciada [PHP, etc. ], etc.) con una nica instalacin de Apache.

    El paquete del servidor puede ser fcilmente ampliado con mdulos de

    terceros incluso despus de la instalacin. Esto representa un gran beneficio

    para los que mantienen paquetes, ya que les permite crear el paquete del

    ncleo de Apache y adicionalmente paquetes que contengan extensiones

    como PHP, mod_perl, mod_fastcgi, ...

  • 40

    Mayor facilidad en los prototipos de mdulos Apache porque con DSO y apxs

    se puede trabajar fuera del rbol fuente de Apache y necesitar un nico

    comando apxs -i seguido de un apachectl restart para cargar una nueva

    versin del mdulo desarrollado en el servidor Apache que est funcionando

    actualmente.

    2.5.5.2. Desventajas

    El mecanismo DSO no puede ser usado en todas las plataformas porque no

    todos los sistemas operativos soportan carga dinmica del cdigo en el

    espacio de direcciones de un programa.

    El servidor es aproximadamente un 20% ms lento en su arranque debido a la

    sobrecarga que la resolucin representa para el cargador (loader).

    El servidor es aproximadamente un 5% ms lento en su ejecucin bajo

    algunas plataformas porque el PIC (Position Independent Code, posicin de

    cdigo independiente) necesita maniobras complicadas para direccionamiento

    dinmico, que no es necesariamente tan rpido como el direccionamiento

    absoluto.

    No se puede usar DSO para todo tipo de mdulos, debido a que los mdulos

    DSO no pueden ser enlazados con otras bibliotecas basadas en DSO (ld -lfoo)

    en todas las plataformasB.4. En otras palabras, los mdulos compilados como

    ficheros DSO estn restringidos a utilizar slo smbolos del ncleo de Apache,

    de las biblioteca C (libc ) y todas las dems bibliotecas dinmicas o simblicas

    usadas por el ncleo de Apache o desde archivos de bibliotecas estticas

    (libfoo.a ) que contengan PIC. La nica ocasin de usar otro cdigo es, o bien

    asegurarse de que el ncleo de Apache ya contenga una referencia a l,

    cargando uno mismo el cdigo por medio de dlopen() , o bien habilitando la

    regla SHARED_CHAIN cuando se compila Apache y la plataforma soporta el

    enlace de ficheros DSO contra bibliotecas DSO.

    Bajo algunas plataformas (varios sistemas SVR4) no hay forma de forzar al

    enlazador para que exporte todos los smbolos globales cuando se enlaza el

  • 41

    programa ejecutable httpd. Pero sin la visibilidad de los smbolos del ncleo de

    Apache, ningn mdulo estndar de Apache podra ser usado como DSO. La

    nica posible solucin es compilar el sistema con la opcin SHARED_CORE

    porque de este modo los smbolos globales se fuerzan a ser exportados.

    2.5.6. AJAX

    Ajax, acrnimo de Asynchronous JavaScript And XML (JavaScript asncrono

    y XML), es una tcnica de desarrollo web para crear aplicaciones interactivas o RIA

    (Rich Internet Applications). Estas aplicaciones se ejecutan en el cliente, es decir, en

    el navegador de los usuarios mientras se mantiene la comunicacin asncrona con el

    servidor en segundo plano. De esta forma es posible realizar cambios sobre las

    pginas sin necesidad de recargarlas, lo que significa aumentar la interactividad,

    velocidad y usabilidad en las aplicaciones11.

    Ajax es una tecnologa asncrona, en el sentido de que los datos adicionales

    se solicitan al servidor y se cargan en segundo plano sin interferir con la visualizacin

    ni el comportamiento de la pgina. JavaScript es el lenguaje interpretado (scripting

    language) en el que normalmente se efectan las funciones de llamada de Ajax

    mientras que el acceso a los datos se realiza mediante XMLHttpRequest, objeto

    disponible en los navegadores actuales. En cualquier caso, no es necesario que el

    contenido asncrono est formateado en XML.

    Ajax es una tcnica vlida para mltiples plataformas y utilizable en muchos

    sistemas operativos y navegadores dado que est basado en estndares abiertos

    como JavaScript y Document Object Model (DOM).

    11

    (Jimmy Wales, 2011)

  • 42

    2.5.6.1. Tecnologas incluidas en Ajax

    Ajax es una combinacin de cuatro tecnologas ya existentes:

    XHTML (o HTML) y hojas de estilos en cascada (CSS) para el diseo que

    acompaa a la informacin.

    Document Object Model (DOM) accedido con un lenguaje de scripting por

    parte del usuario, especialmente implementaciones ECMAScript como

    JavaScript y JScript, para mostrar e interactuar dinmicamente con la

    informacin presentada.

    El objeto XMLHttpRequest para intercambiar datos de forma asncrona con el

    servidor web. En algunos frameworks y en algunas situaciones concretas, se

    usa un objeto iframe en lugar del XMLHttpRequest para realizar dichos

    intercambios.

    XML es el formato usado generalmente para la transferencia de datos

    solicitados al servidor, aunque cualquier formato puede funcionar, incluyendo

    HTML preformateado, texto plano, JSON y hasta EBML.

    Como el DHTML, LAMP o SPA, Ajax no constituye una tecnologa en s, sino que

    es un trmino que engloba a un grupo de stas que trabajan conjuntamente.

    2.5.6.2. Problemas e Inconvenientes

    Las pginas con AJAX son ms difciles de desarrollar que las pginas

    estticas.

    Las pginas creadas dinmicamente mediante peticiones sucesivas AJAX, no

    son registradas de forma automtica en el historial del navegador, as que

    haciendo clic en el botn de "volver" del navegador, el usuario no ser

    devuelto a un estado anterior de la pgina, en cambio puede volver a la ltima

    pgina que visit. Soluciones incluyen el uso de IFrames invisible para

    desencadenar cambios en el historial del navegador y el cambio de la porcin

    de anclaje de la direccin.

  • 43

    Los motores de bsquedas no entienden JavaScript. La informacin en la

    pgina dinmica no se almacena en los registros del buscador.

    Hay problemas usando Ajax entre nombres de dominios. Eso es una funcin

    de seguridad.

    El sitio con Ajax usa ms recursos en el servidor. Recomendacin: slo usar

    las peticiones necesarias en Ajax, no desarrollar todo el sitio en AJAX. Con

    esto garantizamos menos recursos del servidor.

    Es posible que pginas con Ajax no puedan funcionar en telfonos mviles,

    PDA u otros aparatos. Ajax no es compatible con todo el software para ciegos

    u otras discapacidades.

    2.5.7. JQuery

    JQuery es una biblioteca de JavaScript, creada inicialmente por John Resig,

    que permite simplificar la manera de interactuar con los documentos HTML,

    manipular el rbol DOM, manejar eventos, desarrollar animaciones y agregar

    interaccin con la tcnica AJAX a pginas web. Fue presentada el 14 de enero de

    2006 en el BarCamp NYC12.

    JQuery es software libre y de cdigo abierto, posee un doble licenciamiento

    bajo la Licencia MIT y la Licencia Pblica General de GNU v2, permitiendo su uso en

    proyectos libres y privativos. jQuery, al igual que otras bibliotecas, ofrece una serie

    de funcionalidades basadas en JavaScript que de otra manera requeriran de mucho

    ms cdigo, es decir, con las funciones propias de esta biblioteca se logran grandes

    resultados en menos tiempo y espacio.

    2.5.7.1. Ventajas

    La ventaja principal de jQuery es que es mucho ms fcil que sus

    competidores. Usted puede agregar plugins fcilmente, traducindose esto en un

    12

    (Jimmy Wales, 2011)

  • 44

    ahorro substancial de tiempo y esfuerzo. De hecho, una de las principales razones

    por la cual Resig y su equipo crearon jQuery fue para ganar tiempo (en el mundo de

    desarrollo web, tiempo importa mucho).

    La licencia open source de jQuery permite que la librera siempre cuente con

    soporte constante y rpido, publicndose actualizaciones de manera constante. La

    comunidad jQuery es activa y sumamente trabajadora.

    Otra ventaja de jQuery sobre sus competidores como Flash y puro CSS es su

    excelente integracin con AJAX.

    2.5.7.2. Desventajas

    Una de las principales desventajas de jQuery es la gran cantidad de versiones

    publicadas en el corto tiempo. No importa si usted est corriendo la ltima versin de

    jQuery, usted tendr que hostear la librera usted mismo (y actualizarla

    constantemente), o descargar la librera desde Google (atractivo, pero puede traer

    problemas de incompatibilidad con el cdigo).

    Adems del problema de las versiones, otras desventajas que podemos mencionar:

    jQuery es fcil de instalar y aprender, inicialmente. Pero no es tan fcil si lo

    comparamos con CSS

    Si jQuery es implementado inapropiadamente como un Framework, el entorno

    de desarrollo se puede salir de control.

    2.6. VULNERABILIDAD DE LOS SERVICIOS EN LA WEB

    Los primeros ataques a la red aprovecharon las vulnerabilidades relacionadas

    con la implementacin de conjuntos de protocolos TCP/IP. Al corregirlas

    gradualmente, los ataques se dirigieron a las capas de aplicaciones y a la Web en

  • 45

    particular, ya que la mayora de las empresas abrieron sus sistemas de firewall al

    trfico en Internet13.

    El protocolo HTTP (o HTTPS) representa el estndar que posibilita la

    transferencia de pginas Web a travs de un sistema de solicitud y respuesta.

    Internet, que se utiliza principalmente para transferir pginas Web estticas, se ha

    convertido rpidamente en una herramienta interactiva que permite proporcionar

    servicios en lnea14. El trmino "aplicacin Web" se refiere a cualquier aplicacin a

    cuya interfaz se pueda acceder en la Web desde un simple navegador. Hoy en da, el

    protocolo HTTP, la base para una determinada cantidad de tecnologas (SOAP,

    JavaScript, XML-RPC, etc.), juega un indudable papel estratgico en la seguridad de

    sistemas de informacin.

    Debido a que los servidores Web estn cada vez ms protegidos, los ataques estn

    dirigiendo su atencin al aprovechamiento de las fallas de las aplicaciones Web.

    Como tal, la seguridad de los servicios de Internet debe tenerse en cuenta al

    momento del diseo y desarrollo.

    Figura 15. Analisis Basico del ataque SQL injection

    imagen de Claudia Yvette Castro Jaime, T. H. (2010). Polticas y Buenas Prcticas de seguridad en

    Servidores Web del CDMIT. Distrito Federal: Ciudad Universitaria.

    13

    (Claudia Yvette Castro Jaime, 2010) 14

    (Claudia Yvette Castro Jaime, 2010)

  • 46

    Las vulnerabilidades de aplicaciones Web se pueden clasificar de la siguiente

    manera:

    Vulnerabilidades del servidor Web. Este tipo es cada vez ms atpico ya que la

    mayora de los desarrolladores de servidores Web han aumentado su seguridad

    con los aos;

    Manipulacin de URL, incluida la modificacin manual de parmetros de URL para

    modificar el comportamiento esperado del servidor Web;

    Aprovechamiento de las debilidades de los identificadores de sesin y sistemas de

    autenticacin;

    Inyeccin de cdigo HTML y Secuencia de comandos entre sitios;

    Inyeccin de comandos SQL.

    2.7. DESCRIPCIN DE LAS VULNERABILIDADES CON MAYOR

    RIESGO PARA LAS APLICACIONES WEB

    2.7.1. Fallos de Inyeccin

    Los fallos de inyeccin, tales como SQL, OS, y LDAP, ocurren cuando datos

    no confiables son enviados a un intrprete como parte de un comando o consulta.

    Los datos hostiles del atacante pueden engaar al intrprete y ejecutar comandos no

    intencionados o acceder a datos sin autorizacin.

    2.7.2. Secuencia de Comandos en Sitios Cruzados (XSS)

    Los fallos XSS ocurren cada vez que una aplicacin toma datos no confiables

    y los enva al navegador web sin una validacin y codificacin apropiada. XSS

    permite a los atacantes ejecutar secuencia de comandos en el navegador de la

    vctima los cuales pueden secuestrar las sesiones de usuario, destruir los sitios web,

    o dirigir al usuario hacia un sitio malicioso.

  • 47

    2.7.3. Perdida de Autenticacin y Gestin de Sesiones

    Las credenciales de cuentas y los testigos de sesin (session token)

    frecuentemente no son protegidos adecuadamente. Los atacantes obtienen

    contraseas, claves, o testigos de sesin para obtener identidades de otros usuarios.

    2.7.4. Referencia Insegura y Directa a Objetos

    Una referencia directa a objetos ("direct object reference") ocurre cuando un

    programador expone una referencia hacia un objeto interno de la aplicacin, tales

    como un fichero, directorio, registro de base de datos, o una clave tal como una URL

    o un parmetro de formulario Web. Un atacante podra manipular este tipo de

    referencias en la aplicacin para acceder a otros objetos sin autorizacin.

    2.7.5. Falsificacin de Peticin en Sitios Cruzados (CSRF)

    Un ataque CSRF fuerza al navegador validado de una vctima a enviar una

    peticin a una aplicacin Web vulnerable, la cual entonces realiza la accin elegida

    por el atacante a travs de la vctima. CSRF puede ser tan poderosa como la

    aplicacin que est siendo atacada.

    2.7.6. Configuracin defectuosa de seguridad

    Una buena seguridad requiere tener definida e implementada una

    configuracin segura para la aplicacin, marcos de trabajo, servidor de aplicacin,

    servidor web, base de datos, y plataforma. Todas estas configuraciones deben ser

    definidas, implementadas, y mantenidas ya que por lo general no son seguras por

    defecto. Esto incluye mantener todo el software actualizado, incluidas las libreras de

    cdigo utilizadas por la aplicacin.

  • 48

    2.7.7. Almacenamiento Criptogrfico Inseguro

    Las aplicaciones Web raramente utilizan adecuadamente funciones

    criptogrficas para proteger datos y credenciales. Los atacantes usan datos

    dbilmente protegidos para llevar a cabo robos de identidad y otros crmenes, tales

    como fraude de tarjetas de crdito.

    2.7.8. Fallos de restriccin de acceso a URL

    Frecuentemente, una aplicacin solo protege funcionalidades delicadas

    previniendo la visualizacin de enlaces o URLs a usuarios no autorizados. Los

    atacantes utilizan esta debilidad para acceder y llevar a cabo operaciones no

    autorizadas accediendo a esas URLs directamente.

    2.7.9. Comunicaciones Inseguras

    Las aplicaciones frecuentemente fallan al autenticar, cifrar, y proteger la

    confidencialidad e integridad de trfico de red sensible. Cuando esto ocurre, es

    debido a la utilizacin de algoritmos dbiles, certificados expirados, invlidos, o

    sencillamente no utilizados correctamente.

    2.7.10. Redirecciones y Reenvos no validados

    Las aplicaciones web frecuentemente redirigen y reenvan a los usuarios hacia

    otras pginas o sitios web, y utilizan datos no confiables para determinar la pgina de

    destino. Sin una validacin apropiada, los atacantes pueden redirigir a las vctimas

    hacia sitios de phishing o malware, o utilizar reenvos para acceder pginas no

    autorizadas.

    2.8. MEDIDAS DE PREVENCIN CONTRA LAS VULNERABILIDADES

    El anlisis de las vulnerabilidades potenciales es un objetivo bsico para el

    incremento de la seguridad en las aplicaciones web, que en ocasiones es

    subestimado como factor de riesgo crtico. El mantener parmetros que no son

  • 49

    verificados, roles sin controlar, desbordamientos que se producen en la memoria son

    algunas de las situaciones que pueden provocar brechas de seguridad en las

    aplicaciones.

    Los desarrollos que se realizan comercialmente presentan las mismas

    deficiencias. De ah, que necesiten una actualizacin constante para asegurar la

    reparacin de bugs que se van encontrando en el tiempo de vida de las aplicaciones.

    Con frecuencia, se asemeja la seguridad de una aplicacin con la seguridad de la

    plataforma donde se ejecuta. El esfuerzo que se realice para aumentar la seguridad

    tanto a nivel de desarrollo como de diseo, debe de ser un esfuerzo a nivel de grupo.

    Los servidores de produccin y los otros sistemas deben mantenerse

    regularmente con las ltimas firmas para garantizar que estn libres de

    vulnerabilidades a nivel de sistema. Se recomienda seguir las siguientes indicaciones

    destinadas a mantener una aplicacin alejada de las vulnerabilidades:

    Entornos de trabajo diferenciados. Es muy aconsejable mantener entornos

    separados del de produccin. Los entornos de calidad y de desarrollo son

    frecuentemente manipulados por lo que entrarn en conflicto con los datos

    mostrados por produccin. Es primordial que sus entornos estn bien diferenciados,

    a ser posible mediante unos cortafuegos. Esta situacin es prioritaria cuando el

    entorno de produccin es una zona interna o de transicin y accesible desde Internet.

    Si el entorno de produccin tramita y ejecuta procesos, hay que asegurar los mismos

    tanto a nivel de sistema como de aplicacin previamente a incluir nuevos procesos.

    Este principio hay que mantenerlo cada vez que se actualice o mejore.

    Distribucin de las actualizaciones. Con cierta frecuencia las aplicaciones realizan

    actualizaciones para cubrir posibles deficiencias que se detectan a lo largo del ciclo

    de vida de la aplicacin. Dependiendo del carcter de estas aplicaciones, si son

    externas, las actualizaciones son inmediatas, si son internas se debe adems

    examinar el cdigo de las aplicaciones creadas internamente e introducir las

    actualizaciones o nuevas versiones a medida que vaya siendo necesario.

    Contramedidas temporales. Es necesario realizar un protocolo de respuesta ante

    posibles situaciones que entraen riesgo para las aplicaciones. En este protocolo se

  • 50

    pueden indicar acciones a realizar en funcin de la gravedad del riesgo detectado

    (cerrar puertos, bloquear direcciones, routers). Es muy importante, para lograr

    eficiencia en la respuesta, saber interpretar los efectos que delimitan el riesgo y

    mantener a todo el equipo de trabajo involucrado plenamente informado del protocolo

    de respuesta ante la activacin del mismo.

    Modo de Fallos. Se debe de disponer de un plan que permita mantener en

    funcionamiento el proceso crtico si se da la situacin que una aplicacin falle. Es

    decir, debe de permitir una transaccin que permita enrutarse, de forma ajena a la

    aplicacin, o bien permitir realizar de forma manual las funciones descritas en la

    aplicacin. Lo ms importante es mantener el criterio de " cierre ante fallo". Una

    aplicacin no debe abrirse si detecta un fallo. Si lo hace, corre el riesgo de permitir

    todo tipo de acciones en el sistema. Las aplicaciones o sus comprobaciones internas

    siempre deben cerrarse al fallar.

    Conocimiento de desarrolladores y polticas. Es muy importante que todas las

    personas involucradas en