Actividad 1.1 (Inciso A)

Tarea Inciso A
Investigacion
Servidores Web
Los servidores web son aquellos cuya tarea es alojar sitios y/o aplicaciones, las cuales son accedidas por los clientes utilizando un navegador que se comunica con el servidor utilizando el protocolo HTTP (hypertext markup language).
Básicamente un servidor WEB consta de un intérprete HTTP el cual se mantiene a la espera de peticiones de clientes y le responde con el contenido según sea solicitado. El cliente, una vez recibido el código, lo interpreta y lo exhibe en pantalla.
Además los servidores pueden disponer de un intérprete de otros lenguajes de programación que ejecutan código embebido dentro del código HTML de las páginas que contiene el sitio antes de enviar el resultado al cliente. Esto se conoce como programación de lado del servidor y utiliza lenguajes como ASP, PHP, Perl y Ajax. Las ventajas de utilizar estos lenguajes radica en la potencia de los mismos ejecutando tareas más complejas como, por ejemplo acceder a bases de datos abstrayendo al cliente de toda la operación.
Apache
Apache es uno de los servidores web más utilizados, posiblemente porque ofrece instalaciones sencillas para sitios pequeños y si se requiere es posible expandirlo hasta el nivel de los mejores productos comerciales. Además el servidor HTTP (Hypertext Transfer ProtocolApache, es un software libre y de código abierto para las plataformas Windows, Mac OS X y UNIX (GNU, BSD, etc),
En cuanto a las características que posee Apache y que la llevo al éxito en la inserción y utilización en ámbitos empresariales, tecnológicos y educativos:
·         Fundamentalmente corre sobre una multitud de plataformas y Sistemas Operativos.
·         Ofrece tecnología libre y de código abierto.
·         Es un servidor Web configurable y de diseño modular, capaz de extender su funcionalidad y la calidad de sus servicios.
·         Trabaja en conjunto con gran cantidad de lenguajes de programación interpretados como PHP, Perl, Java, JSP (Java Server Pages) y otros lenguajes de script, que son el complemento ideal para los sitios web dinámicos.
·         Es posible configurar y personalizar cada uno de los mensajes de error que se pueden producir por la utilización del servidor.
·         Contar con los archivos Log, en donde registra gran cantidad de información global del sistema, errores producidos en un determinado tiempo, en la cual estos archivos son de gran importancia para los administradores de sistemas y pueden influenciar de alguna manera las políticas de seguridad debido a la gran cantidad de información que contiene.
·         Otra particularidad propia de Apache, es que al ser tan popular y utilizado, es posible encontrar gran cantidad de documentos, ejemplos y ayuda en internet en todos los idiomas.
Si se utiliza para un sitio pequeño que solo contenga archivos en HTML, esto es, no requiera de aplicaciones de servidor su funcionalidad es excelente, pero ¿qué sucede cuando se requiere una aplicación de Servidor? La aplicación de servidor implica lo siguiente:
Cuando el servidor de páginas (Apache) recibe la requisición para "x" página éste reconoce cuando debe enviar un documento estático (HTML) o ejecutar algún tipo de aplicación, en el diagramase puede observar que la solicitud de "x" página invoca un programa en Perl y este a su vez solicita información a una base de datos, por lo tanto para llevar a cabo esta operación debieron iniciarse 2 procesos nuevos, quizás esto no sea de gran importancia para un sitio de con pocas visitas diarias, de lo contrario si no se tienen los suficientes recursos en cuanto a memoria y procesadores se refiere, seguramente caerá el servidor o bien se queme el "Host" (computadora física) por la demanda excesiva. Apache tiene tanto tiempo de desarrollo que han sido desarrolladas diferentes soluciones para evitar estas ineficiencias, algunas:
·         Es capaz de utilizar otros interpretadores y lenguajes como "Tcl", "PhP" y "Python".
·         Puede conectarse directamente a una Base de datos.
·         Entre otras, posee diversos módulos que le permiten utilizar una gran gamma de lenguajes y desarrollar funcionalidades avanzadas.
Cabe mencionar que muchos sitios de alto tráfico aún permanecen bajo este tipo de Arquitectura, en ocasiones si se tienen los recursos suficientes continua siendo costeable esta metodología migrar a otro tipo de desarrollo, sin embargo, siempre es conveniente conocer otras alternativas.
Módulos
Un módulo en Apache es una manera de agrupar ciertas funcionalidades para el servidor, existen una gran cantidad de módulos para utilizarse con Apache, una de las principales razones de emplear módulos, es que no toda instalación requiere de las mismas funcionalidades.
Por lo tanto, si fueran incluidas todas las funcionalidades posibles en una versión única de Apache, esto lo haría sumamente pesado en cuanto a requerimientos de Memoria RAM y espacio en Disco Duro, por esto se opta por crear módulos e incluir en las versiones solo lo necesario.
INTERNET WEB SERVER
(Internet Information Services). IIS es un conjunto de servicios para servidores usando Microsoft Windows. Es especialmente usado en servidores web, que actualmente es el segundo más popular sistema de servidor web (a agosto de 2007, funciona en el 35% de los servidores de todos los sitios web).
Versiones de IIS

* IIS 1.0: Windows NT 3.51, disponible Como add-on gratuito.* IIS 2.0: Windows NT 4.0
* IIS 3.0: Windows NT 4.0 Service Pack 3
* IIS 4.0: Windows NT 4.0 Option Pack
* IIS 5.0: Windows 2000
* IIS 5.1: Windows XP Professional* IIS 6.0: Windows Server 2003 y Windows XP Professional x64 Edition
* IIS 7.0: Windows Vista y Windows Server 2008
Microsoft ha mejorado sustancialmente su software estrella en el campo de los servicios Web. Los avances vienen motivados sobre todo por la seguridad y el rendimiento, aunque todavía adolece de algunos agujeros de seguridad.
Las características agregadas en seguridad se aprovechan de las últimas tecnologías de cifrado y métodos de autenticación mediante certificados de cliente y servidor. Una de las formas que tiene IIS de asegurar los datos es mediante SSL (Secure Sockets Layer). Esto proporciona un método para transferir datos entre el cliente y el servidor de forma segura, permitiendo también que el servidor pueda comprobar al cliente antes de que inicie una sesión de usuario.
Otra característica nueva es la autenticación implícita que permite a los administradores autenticar a los usuarios de forma segura a través de servidores de seguridad y proxy.
IIS 5.0 también es capaz de impedir que aquellos usuarios con direcciones IP conocidas obtengan acceso no autorizado al servidor, permitiendo especificar la información apropiada en una lista de restricciones.
Volviendo de nuevo a la seguridad, IIS tiene integrado el protocolo Kerberos v5 (como le ocurre al sistema operativo). El almacenamiento de certificados se integra ahora con el almacenamiento CryptoAPI de Windows. Se puede utilizar el administrador de certificados de Windows para hacer una copia de seguridad, guardar y configurar los certificados.
Además, la administración de la seguridad del servidor IIS es una tarea fácilmente ejecutable a base de asistentes para la seguridad. Se pueden definir permisos de acceso en directorios virtuales e incluso en archivos, de forma que el asistente actualizará los permisos NTFS para reflejar los cambios. Si se trabaja con entidades emisoras de certificados, es posible gestionar la lista de certificados de confianza (CTL, Certificate Trust List) con el asistente para CTL.