Servidores WEB Ing. Mauricio Rucci mauricior@ ar mauricior@ipp.com. ipp.com.ar Temario ! Tema 1. Introducción ! ! ! Tema 2. Servidores web ! ! ! ! Internet - La Historia Algo de Terminología Como funciona? funciona? DNS Algunos conceptos de Seguridad Tema 3. El lenguaje de publicación en la web ! ! ! La programación web Tendencia Ejercicio. Ejercicio. IIS - instalación y configuración 1 Introducción ! Internet ! ! Origen - US Advanced Research Projects Agency (ARPA) La llegada del TCP/IP ! ! ! Por que Internet? ! Revolución en la manera de realizar los negocios ! ! Network Control Protocol TCP/IP (Transport (Transport Control Protocol/Internet Protocol/Internet Protocol) Protocol) Intranet – Extranet – e-Commerce –e-Government Más allá del HTTP ! SMTP – NNTP – IRC – FTP – TELNET HTTP DHTML HTML XHTML XML CGI JavaScript JScript WebLogic Applets WebSphere Apache IIS J2EE Servlets JSP ASP PHP CSS ASP.NET TomCat Windows DNA SSL Volver 2 Servidores WEB ! Servidor de Web (Web Server): ! ! Sitio Web (Web Site): Site): ! ! Conjunto de páginas relacionadas en contenido y pertenecientes a un mismo creador. El creador puede ser un individuo, una organización, etc. etc. DNS (Domain (Domain Name System): System): ! ! Es el dispositivo en el que se encuentran almacenadas las páginas. páginas. Se encarga de administrar el acceso a ellas Conjunto de protocolos y servicios que permite a los usuarios utilizar nombres jerá jerárquicos sencillos para comunicarse con otros equipos, en vez de memorizar y usar sus direcciones IP . Principales servidores en el mercado Mundial (Fuente: http://www http://www..inktomi. inktomi.com/ com/webmap/) webmap/) ! ! ! Apache 60.33% MicrosoftMicrosoft-IIS 25.26% NetscapeNetscape-Enterprise 3.79% Evolución ! ! Funcionamiento del WWW Seguridad Más ejemplos ... Volver Más ejemplos ... Linux – www. kernel. org: emplea 14 servidores para atender a gran cantidad de peticiones del kernel de Linux. ! Buscadores – Google (web(web- search engine): usa un cluster de 4000 Servers ! – www. msn. com: usa 7 servidores (mirrors) para asegurar el servicio en todo momento (tolerancia a fallos) fallos) ! Volver 3 Servidores en Internet Volver Funcionamiento de WWW 1) Petición de URL a través de HTTP Browser 4) El Browser muestra el HTML <HTML> <TITLE>Ejemplo</TITLE> <BODY> <H1>Un ejemplo de ASP</H1> <HR> Hola! <HR> </BODY> </HTML> Web Server 2) El servidor Web lee HTML y ejecuta script <HTML> <TITLE>Ejemplo</TITLE> <BODY> <H1>Un ejemplo de ASP</H1> <% response.write "<HR>" response.write "Hola!" response.write "<HR>” %> </BODY> </HTML> ejemplo.asp 3) HTML resultante es enviado al browser a través de HTTP Volver 4 Seguridad ! FireWalls Mecanismo para controlar el flujo de datos entre dos partes de una una red con niveles de confianza diferentes. ! Virus – Gusanos Programa que puede ejecutarse independientemente y que se puede propagar a otras máquinas. ! Algunos Consejos ! ! ! ! ! ! ! Usar restricciones de Direcciones IP y Domain Name Deshabilite los servicios opcionales o innecesarios Configurar Autenticación al Web Server Usar “Client Certificates” Segurizar las comunicaciones usando SSL Usar Local Security Policies en el Web Server Auditar todo acceso al Web Server Volver FireWall Internet Internet ! ! ! Firewall Red Red Privada Privada (LAN) (LAN) Desarrollar un Plan de Seguridad Implementar un Firewall Monitorear el trafico de Red Port Service 20?… closed 21?… FTP 22?… closed 23?… closed 24?… close 25?… SMTP Servidor WEB Volver 5 Seguridad: Gusanos ! CODE RED (CRv1 (CRv1,, CRv2a, CRv2a, CRv2b) CRv2b) ! Sistemas afectados ! ! CODE RED II ! Sistemas afectados ! ! ! Windows NT / 2K con IIS 4.0/5.0 Windows NT / 2K con IIS 4.0/5.0 %SYSTEM%CMD.EXE (puerta trasera) CODE BLUE ! Sistemas afectados ! ! Windows NT / 2K con IIS 4.0/5.0 IIS Extended UNICODE Directory Traversal Vulnerability ! GET /.. [Encoded characters].../winnt/system32/cmd.exe?/c+dir Volver El lenguaje de publicación en la web 6 HTML HyperText Markup Language ! Deriva del SGML (Standard Generalized Markup Language) Language) ! No es un lenguaje de programación sino de codificación ! La representación de la página dependerá del navegador utilizado, de su versión y de los módulos de extensión instalados. ! Páginas estáticas http://www.domicio.com <HTML> … <IMG src=“logo.gif”> … </HTML> GET “http://www.dominio.com” Index.html GET “www.dominio.com/logo.gif” Logo.gif Servidor Web 7 Páginas dinámicas (JSP, ASP, ETC) http://dominio.com /search/default.jsp? section=allsections &q1=http&Submit= Go GET “…&Submit=Go” Lógica de negocio Sdfg dfg df g Dsf gsdfg sdfg Dsfg dsfg sdfg Sdfg dfg df g Dfg Dsf gsdfg sdfg Dsfg dsfg sdfg Sdfg dfg df g Dfg Dsf gsdfg sdfg Dsfg dsfg sdfg Dfg BD Plantillas Respuesta dinámica + Servidor Web Arquitectura de aplicaciones Web 8 Tendencia - Aplicaciones por capas Número de capas: cantidad de capas que atraviesa la información desde la capa de datos hasta la de presentación ! Cada capa suele ejecutar en un sistema diferente o en espacios de proceso diferentes dentro de la misma máquina o en distintas máquinas. ! Modelo de 2 capas Cliente Browser HTTP Servidor WEB – APP – DB Lógica de negocio 9 Modelo de 3 capas Cliente HTTP Lógica de negocio Capa Present. Datos Servicios Presentación Servidor WEB (Ej: ASP – JSP) Servicios de datos Servicios de trabajo (Ej: SQL Server– Oracle) Servidor de APP (Ej: Win DNA – WebSphere) Aplicaciones Web hoy Cliente Cliente Browser Browser HTTP Servidor Presentación Web Lógica de negocio Cliente Cliente Protocolo de No No objetos Browser Browser Navegador DBMS Lógica de negocio Servicios Soportados DBMS Servidor Web Máquina Servidora Acceso a datos Aplicaciones existentes Volver 10 Servidor de Aplicaciones ! Los servidores que proporcionan servicios a las aplicaciones tales como persistencia, transacciones, seguridad, escalabilidad... se denominan Servidores de Aplicaciones. Volver Caso Práctico Diseño de Servicios Web Internet Information Server 5.0 11 Servicios incluidos Servidor web ! Servidor ftp ! Seguridad integrada con Windows NT/2000 ! Programable: CGI, ISAPI y ASP ! Facilidades de acceso a Base de Datos ! Servidor SMTP ! Servidor NNTP ! Instalación ! PWS ! ! ! ! Windows 95/98: Programa de instalación en el directorio ADDADDONS Windows NT Workstation: Workstation: Option Pack Windows 2000 Professional por defecto (PWS) IIS ! Windows NT Server con SP 3 o superior: Option Pack Windows 2000 Server: Incluido ! Requisitos mínimos ! ! ! ! ! CPU: Intel Pentium 90MHz RAM: 64 MBytes Disco: 200 MBytes Video: Video: SVGA 800x600, 256 colores Intalación 12 Instalando IIS Autenticación Directorios IIS Usuarios %SystemRoot%\Inetpub\Wwwroot %SystemRoot%\Inetpub\Ftproot " " IUSR_computername IWAM_computername FTP Publishing Service IIS Admin Service " SMTP Service " World Wide Web Publishing " Servicios " 13 Administrando IIS ! ! ! Se realiza a través del MMC (Microsoft Management Console) Console) Es accesible desde el panel de control Configuración a 3 niveles: ! ! ! ! Sitio Web por defecto Específico a cada sitio Configuración por fichero Configuraciones heredables Configurando IIS 14 Más posibilidades ! Directorios virtuales: ! Directorio que no está físicamente contenido en el IIS ! Dentro de la propia máquina o en la red ! Servidores virtuales: virtuales: ! Mantiene múltiples dominios dentro de una máquina. Creando Sites adicionales Agregando Agregando Puertos Puertos Multiples Multiples Direcciones DireccionesIP IP Web Site 1 192.168.114.10: 192.168.114.10: 80 80 192.168.114.10 192.168.114.10 http://Ventas http://Ventas 192.168.114.10 192.168.114.10 http:// http:// Ventas Ventas Web Site 2 192.168.114.10: 192.168.114.10: 1050 1050 192.168.36.17 192.168.36.17 http://Compras http://Compras 192.168.114.10 192.168.114.10 http:// http:// Compras Compras Web Site 3 192.168.114.10: 192.168.114.10: 1051 1051 192.168.8.255 192.168.8.255 http://Produccion http://Produccion 192.168.114.10 192.168.114.10 http://Produccion http://Produccion Host Host Headers Headers Volver 15 Muchas Gracias Ing. Mauricio Rucci mauricior@ ar mauricior@ipp.com. ipp.com.ar 16