La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Windows Server 2003 Internet Information Services 6.0

Presentaciones similares


Presentación del tema: "Windows Server 2003 Internet Information Services 6.0"— Transcripción de la presentación:

1 Windows Server 2003 Internet Information Services 6.0
Código: HOL-WIN03 Windows Server 2003 Internet Information Services 6.0 Javier Pereña Peñaranda

2 Agenda Arquitectura de IIS 6.0 Opciones de implantación Web Server
Creación y mantenimiento de múltiples sitios Web Gestión de Conjuntos de Aplicaciones (Application Pools) Gestión de extensiones y filtros ISAPI Optimización del rendimiento Garantizar la disponibilidad de las aplicaciones Asegurando aplicaciones Cuentas de servicios FTP Server Creación y mantenimiento de múltiples sitios FTP Permisos y opciones de seguridad Vinculación entre sitios Web y FTP

3 Agenda Implantación de Certificados digitales
Estrategia de copias de seguridad de IIS Gestión de la metabase Análisis de logs Gestión remota de IIS 6.0

4 Agenda Implantación de Certificados digitales
Estrategia de copias de seguridad de IIS Herramientas del Kit de recursos de IIS 6.0 Gestión de la metabase con Metabase Explorer Análisis Resolución de errores con WFetch Análisis de logs Gestión remota de IIS 6.0

5 Internet Information Services 6.0 ¿Qué es?
Proporciona a Windows... Un servidor de aplicaciones Web Un servidor de FTP Un servidor de news (NNTP) Un servidor de SMTP Da soporte a aplicaciones Web: Active Server Pages (.asp) ASP.NET (.aspx) Esto último es uno de sus factores de éxito

6 Internet Information Services 6.0 ¿Qué ha cambiado?
IIS 6.0 no es simplemente una nueva versión Prácticamente se ha rehecho Cambios en la arquitectura Aislamiento de Worker Process Kernel-Mode Queuing en el almacenamiento de la metabase en la consola de administración en el servicio de FTP

7 Internet Information Services 6.0 Nueva arquitectura
HTTP.SYS: proceso en modo kernel (núcleo); recibe y encamina peticiones http WAS: proceso de configuración y gestión (WAS = Web Administration Service) W3WP.exe: entorno de ejecución para aplicaciones web (WP=Worker Process) Nuevo esquema de aislamiento de aplicaciones Soporte para múltiples procesos WP WAS W3WP.exe W3WP.exe web app W3WP.exe web app web app web app kernel HTTP.SYS

8 Internet Information Services 6
Internet Information Services 6.0 Proceso de peticiones en el kernel: HTTP.sys Worker Process HTTP.sys Cola Peticiones Cola Peticiones Cola Peticiones Envío Respuesta Namespace Mapper Cache Motor HTTP Petición HSE_REQ_ENABLE_CACHE Respuesta

9 Internet Information Services 6.0 Fiabilidad: la arquitectura
Aislamiento total de procesos uno o más procesos en comunicación directa con el kernel Independiente de otros procesos Application Pools Agrupan sites y aplicaciones Una cola de peticiones por Application Pool Web Gardens Colas gestionadas en modo kernel Application Pool Worker Process Worker Process WAS Extensión ISAPI Extensión ISAPI Filtro ISAPI Filtro ISAPI HTTP.sys

10 Internet Information Services 6.0 Application Pools
Podemos tener uno o más Cada uno servido por uno o más W3WP.exe Cada W3WP.exe solo sirve un pool Peticiones redirigidas al pool por HTTP.sys Podemos aislar las aplicaciones Web basándonos: En sitio/cliente En la funcionalidad En la fiabilidad

11 Reciclado de aplicaciones Cambios en la Arquitectura
Objetivo: Lograr el completo aislamiento entre núcleo del servidor Web y las aplicaciones Web La funcionalidad en INETINFO se divide: HTTP.sys: escucha las peticiones en modo kernel y las enruta W3SVC: configuración y gestión de procesos W3Core: donde se ejecutan las aplicaciones Web Varias dll’s W3Core se cargan dentro de procesos W3WP.exe Dos modelos de procesos Modo de aislamiento de Worker Processes Modo de aislamiento de IIS 5.0 Objetivo: Aislar el servidor Web de las aplicaciones “chungas” que pudiesen afectarle en su funcionamiento y evitar que las aplicaciones Web se dañen entre si Lo que antes hacia principalmente INETINFO se ha separado en 3 componentes HTTP.sys se dedica a escuchar las peticiones y enrutarlas (todo en modo Kernel). Es un driver. Hace caché de las respuestas W3SVC almacena la lógica que configurar el driver HTTP.sys así como configura y gestiona los procesos que ejecutan las aplicaciones Web (W3Core) En W3Core se ejecutan las ISAPI (extensiones y filtros) y ASP y ASP.NET Varios ficheros W3Core.dll se pueden cargar dentro de procesos W3WP

12 Internet Information Services 6.0 Reciclado periódico de los procesos
Qué es Reiniciamos las aplicaciones Web basándonos en: El tiempo que llevan funcionando El número de peticiones En un calendario En el consumo de memoria Bajo demanda Porqué usarlo Prevenir que aplicaciones defectuosas afecten al sistema Refrescar las aplicaciones para aumentar la disponibilidad

13 Internet Information Services 6.0 Arquitectura con autorecuperación
Qué es Diseñada para detectar bloqueos de threads dentro de W3WP.exe Cómo funciona W3SVC consulta cada W3WP.exe (pinging) El proceso tiene un tiempo para responder Si no responde en ese tiempo: Matar el proceso, publicar un evento y lanzar uno nuevo (por defecto) IIS puede ser configurado para realizar una acción sobre el proceso

14 Internet Information Services 6.0 Detección de fallos y recuperación
W3SVC detecta “casques” en W3WP.exe W3SVC lanzará un nuevo W3WP.exe si es necesario Las peticiones son encoladas por HTTP.sys mientras se crea el nuevo W3WP Resultado: no existe interrupción en el servicio Protección Solo se permiten x fallos en y minutos El pool será detenido si se superan estos valores (error 503 para las peticiones)

15 Internet Information Services 6.0 Fiabilidad: gestión de procesos
Extensión ISAPI Filtro ISAPI Worker Process HTTP.SYS Web Admin Service (WAS) Extensión ISAPI Filtro ISAPI Worker Process Extensión ISAPI INETINFO metabase

16 Internet Information Services 6
Internet Information Services 6.0 Escalabilidad: Dynamic Kernel Caching GET Sin Cache Con Cache Petición Respuesta Petición Respuesta OutputCache Duration="10" VaryByParam="none" %>

17 Reciclado de aplicaciones El modelo de procesos de IIS 5.0
DLLHOST.exe Pooled OOP Apps INETINFO.exe metabase ftp, smtp, nntp ASPNET_WP.exe DLLHOST.exe .Net App Domain W3SVC DLLHOST.exe .Net App Domain Isolated OOP App .Net App Domain DLLHOST.exe Isolated OOP App ASP.NET In-proc Apps Isolated OOP App Las peticiones son redirigidas a IIS por WinSock Inetinfo es el proceso master donde funciona todo… ftp, smtp, metabase, y el W3SVC que es donde se ejecutan las aplicaciones… Las aplicaciones dentro de procesos pueden tumbar el servidor Web si fallan. Las aplicacions que se ejecutan en aislamiento medio o alto, se ejecutan en un proceso DLLHost (varios si el aislamiento es medio, o una aplicación en cada DLLHost si el aislamiento es alto) Esto es un poco confuso. Si tenemos una aplicación Web con páginas ASP, páginas ASP.NET, contenido estático y filtros ISAPI resulta que cada una de estas cosas puede estar ejecutandose o gestionandose en un sitio distinto NOTA: ASP.NET incluye su propio worker_process (en vez de DLLHOST.exe) y se llama ASPNET_WP.exe Filtros ISAPI Modo usuario Modo kernel Winsock

18 Reciclado de aplicaciones Modo de aislamiento de Worker Processes en IIS 6.0
Application Pool Application Pool Application Pool INETINFO.exe SVCHOST.exe W3WP.exe W3WP.exe W3WP.exe W3Core W3Core W3Core metabase W3SVC ASP.net Apps Apps (no OOP) Apps (no OOP) ftp, smtp, nntp .Net App Domain W3 Config Mgr W3 Process Mgr .Net App Domain .Net App Domain Filtros ISAPI Filtros ISAPI Modo usuario IIS 6.0 funcionando en Worker Process Isolation Mode Ahora HTTP.sys es el que recibe las peticiones de la red en vez de Winsocks. HTTP.sys redirige estas peticiones a la aplicación, es decir a su W3WP.exe (esto incluye peticiones para contenido estático, asp, asp.net, etc.) En IIS 5.0 solo teníamos un application pool, ahora podemos tener varios. Se pueden crear los que se quiera. Cada uno puede hospedar 1 o varias aplicaciones. W3SVC se ejecuta dentro de SVCHOST.exe. Se encarga de la configuración y administración de los procesos. INETINFO todavía existe y se encarga del FTP,SMTP, etc y de la metabase. Se pueden configurar un montón de cosas acerca de cómo funciona un pool Modo kernel HTTP.SYS

19 Reciclado de aplicaciones Application Pools
Podemos tener uno o más Cada uno servidor por uno o más W3WP.exe Cada W3WP.exe solo sirve un pool Peticiones redirigidas al pool por HTTP.sys Podemos aislar las aplicaciones Web basándonos: En sitio/cliente En la funcionalidad En la fiabilidad Es un límite que definimos para contener nuestras aplicaciones. Podemos hacer que un pool se ejecute en uno o más Worker Process (esto se llama Web Garden). O sea tener varios W3WP.exe para un pool Un W3WP solo puede atender un pool Objetico: Aislamiento entre aplicaciones Web y entre aplicaciones Web y el servidor

20 Reciclado de aplicaciones Reciclado periódico de los procesos
Qué es Reiniciamos las aplicaciones Web basándonos en: El tiempo que llevan funcionando El número de peticiones En un calendario En el consumo de memoria Bajo demanda Porqué usarlo Prevenir que aplicaciones defectuosas afecten al sistema Refrescar las aplicaciones para aumentar la disponibilidad Antes había gente que programa un IISRESET cada cierto tiempo para que el servidor no se corrompiese… (esto produce un corte aunque sea pequeño en el servicio) Esta es una solución más elegante. Mientras se reciclan los Worker Process, HTTP.sys sigue encolando peticiones… => no hay corte en el servicio OJO!!. Durante el proceso de reciclado, puede ser que varias instancias existan a la vez, la vieja que está acabando de procesar las peticiones que tenía y la nueva a la cual ahora HTTP.sys empezará a redirigir las peticiones. Reciclado solapado.

21 Reciclado de aplicaciones Arquitectura con autorecuperación
Qué es Diseñada para detectar bloqueos de threads dentro de W3WP.exe Cómo funciona W3SVC consulta cada W3WP.exe El proceso tiene un tiempo para responder Si no responde en ese tiempo: Matar el proceso, publicar un evento y lanzar uno nuevo (por defecto) IIS puede ser configurado para realizar una acción sobre el proceso Consultamos a los worker process para ver si hay threads libres para atender respuestas… si no hay, lo reiniciamos…

22 Reciclado de aplicaciones Detección de fallos y recuperación
W3SVC detecta “casques” en W3WP.exe W3SVC lanzará un nuevo W3WP.exe si es necesario Las peticiones son encoladas por HTTP.sys mientras se crea el nuevo W3WP Resultado: no existe interrupción en el servicio Protección Solo se permiten x fallos en y minutos El pool será detenido si se superan estos valores (error 503 para las peticiones) Si una aplicación está fallando muy a menudo… posiblemente queramos detenerla… A partir de haberla detenido… el servidor responderá con un error 503 (servicio no disponible)

23 Reciclado de aplicaciones Rendimiento
Web Garden Application pool con más de un Worker Process Afinidad de procesador Vincular los procesos de un Application pool a uno o más procesadores Se hace caché de las respuestas en HTTP.sys (kernel) Se liberan los procesos después de un tiempo de inactividad Se relanzarán cuando sea necesario (peticiones) Esto no implica que la aplicación no esté activa!!

24 Introducción a los servicios de Internet
IIS 6.0 proporciona capacidad de Servidor Web en Intranet, Internet o Extranet. Puede ser implementado en diferentes entornos. PYMES Grandes empresas

25 Introducción a los servicios de Internet
IIS 6.0 no se instala por defecto en Windows Server 2003 Ayuda a proteger los sistemas de ataques a servicios no utilizados o no monitorizados. Las extensiones de servicios Web están bloqueadas por defecto. IIS solo sirve contenido estático. Es necesario habilitar manualmente las extensiones específicas ASP ASP.NET Server-Side Includes WebDAV publishing FrontPage® 2002 Server Extensions Si no se habilitan IIS responde con un error HTTP 404 (“File or directory not found”).

26 Tipos de Aplicaciones Web
Web Site público. Información destinada al público. Intranet (ERP/CRM/Productividad) Información privada de acceso interno. Extranet (Productividad/B2B/B2C) Información privada de acceso externo.

27 Mejoras de IIS 6.0 Confiabilidad. Manejabilidad. Seguridad.
Mejor confiabilidad al poder aislar aplicaciones unas de otras. Manejabilidad. Mejor manejabilidad al poder adaptar la Metabase mediante ficheros XML configurables. Seguridad. Seguridad reforzada basada en una estrategia de seguro por defecto. Rendimiento y escalabilidad. Rendimiento mejorado gracias al aislamiento dentro de los procesos. Mejor escalabilidad al ofrecer una arquitectura que permite consolidar sitios y aplicaciones en menos Servidores.

28 Arquitectura de IIS 6.0 IIS 6.0 se puede ejecutar en uno de los dos modelos de procesamiento: Worker process isolation mode IIS 5.0 isolation mode

29 Worker process isolation mode
Ofrece todas las ventajas de la arquitectura rediseñada de IIS 6.0 Se pueden agrupar las aplicaciones Web en Conjunto de aplicaciones (Application Pools) Proporciona aislamiento de aplicaciones sin disminución del rendimiento.

30 IIS 5.0 Isolation mode Se mantiene la compatibilidad con aplicaciones que dependen de características específicas de IIS 5.0 También se pueden aislar aplicaciones Low Isolation (in-process) Medium isolation (pooled out of process) High isolation (out of process) Disminuye el rendimiento.

31 IIS 5.0 Isolation mode Consideraciones de seguridad:
Cuando IIS 6.0 corre en modo IIS 5.0, las aplicaciones Web establecidas en modo Low isolation corren con la cuenta local de sistema (Local System account.) La cuenta local de sistema tiene acceso a todos los recursos del equipo. En los modos Medium o High isolation, las aplicaciones corren por defecto con la cuenta IWAM_ComputerName.

32 Arquitectura de IIS 6.0 Functionality IIS 4.0 IIS 5.0 IIS 5.1 IIS 6.0
Platform Microsoft® Windows NT® 4.0 operating system Windows® 2000 Server operating Windows® XP Professional operating system Windows Server 2003 Architecture 32-bit 32-bit and 64-bit Network subsystem TCP/IP kernel HTTP.sys kernel Application Request Processing model MTX.exe: Multiple DLL hosts in High application isolation. Inetinfo.exe: In‑process as DLLs with Low isolation. DLLHost.exe: Multiple DLL hosts in Medium or High application isolation. W3wp.exe: In worker process isolation mode (multiple worker processes). Inetinfo.exe: Only in IIS 5.0 isolation mode with in-process applications. DLLHost.exe: Only in IIS 5.0 isolation mode with out-of-process applications.

33 Arquitectura de IIS 6.0 Functionality IIS 4.0 IIS 5.0 IIS 5.1 IIS 6.0
Metabase configuration Binary XML Security Windows authentication Secure Sockets Layer (SSL) SSL Kerberos .NET Passport support Remote administration HTMLA1 HTMLA No HTMLA Terminal Services Remote Administration Tool (HTML)

34 Arquitectura de IIS 5.0 isolation mode

35 Arquitectura de IIS 6.0 worker process mode

36 Arquitectura IIS 6.0 Procesamiento de solicitudes HTTPS en modo Worker Process Isolation Mode

37 Arquitectura IIS 6.0 Procesamiento de solicitudes HTTPS en modo IIS 5.0 con Low Isolation Mode

38 Arquitectura IIS 6.0 Procesamiento de solicitudes HTTPS en modo IIS 5.0 con High Isolation Mode

39 Servicios de IIS 6.0 Nombre del Servicio Descripción Nombre Corto
Componente Principal Host World Wide Web Publishing Service (WWW service) Delivers Web publishing services. W3SVC Iisw3adm.dll Svchost.exe File Transfer Protocol (FTP) Allows file uploads and downloads from remote systems. MSFTPSVC Ftpsvc2.dll Inetinfo.exe Simple Mail Transfer Protocol (SMTP) Sends and receives electronic messages ( ). SMTPSVC Smtpsvc.dll Network News Transfer Protocol (NNTP) Distributes network news messages. NNTPSVC Nntpsvc.dll IIS Admin Service Manages the metabase. IISADMIN Iisadmin.dll

40 Arquitectura Multicapa
Interfaz de Usuario (GUI) Lógica de la Aplicación Almacén de Datos DCOM WebService Web Servers RPC

41 Arquitectura: Cliente
Navegador de Internet: Ejecuta código en contexto de usuario. Lenguajes potentes: HTML/DHTML vbScript/JavaScript/Jscript Programas embebidos Applets Java ActiveX Shockwave Flash Códigos No protegidos Cifrado cliente: Atrise. Ofuscación de código.

42 Arquitectura: Lógica de Aplicación
Servidor Web Ejecuta código en contextos privilegiados. Lenguajes potentes Acceden a BBDD Envían programas a clientes Transferir ficheros Ejecutar comandos sobre el sistema. Soporte para herramientas de administración de otro software. Códigos de Ejemplo

43 Arquitectura: Almacén de Datos
SGBD Lenguaje de 3ª y 4ª Generación. Soporta múltiples bases de datos. Catálogo global de datos. Ejecuta programas sobre Sistema. LOPD. Transacciones económicas. Información clave de negocio.

44 Mejoras de seguridad en IIS 6.0
IIS se instala en modo seguro por defecto. Extensiones “Multipurpose Internet Mail Extensions” (MIME) restrictivas. Múltiples procesos de ejecución (worker processes) afectan el estado del filtro Internet Server API (ISAPI). La funcionalidad ASP y ASP.NET está deshabilitada por defecto.

45 Mejoras de seguridad en IIS 6.0
Las rutas de acceso primarias están deshabilitadas por defecto (..\) [AspEnableParentPaths]. Los eventos de Global.asa se ejecutan como usuario anónimo. [AspRunOnEndAnonymously] La sincronzación de contraseñas anónimas está deshabilitado por defecto. Autenticación Microsoft® .NET Passport authentication requiere derechos de la cuenta LocalSystem. El acceso a ejecutables está restringido.

46 Cuentas de seguridad integradas en IIS 6.0
LocalSystem Alto nivel de derechos de acceso Parte del grupo de Administradores. Si un proceso de ejecución corre con LocalSystem, tiene acceso completo al sistema. En el modo de aislamiento IIS 5.0, esta es la cuenta de ejecución por defecto para los procesos

47 Cuentas de seguridad integradas en IIS 6.0
Network Service Tiene menos derechos que LocalSystem Puede interactuar en la red con las credenciales del equipo Es la cuenta establecida por defecto en IIS 6.0 para los procesos de los conjuntos de aplicaciones Replace a process-level token (SeAssignPrimaryTokenPrivilege) Adjust memory quotas for a process (SeIncreaseQuotaPrivilege) Generate security audits (SeAuditPrivilege) Bypass traverse checking (SeChangeNotifyPrivilege) Access this computer from a network (SeNetworkLogonRight) Log on as a batch job (SeBatchLogonRight) Log on as a service (SeInteractiveLogonRight) Allow log on locally (SeInteractiveLogonRight)

48 Cuentas de seguridad integradas en IIS 6.0
Local Service Tiene menos derechos que la cuenta Network Service. Los derechos están limitados al equipo local. Se puede utilizar si el proceso no requiere acceso externo al servidor en donde se ejecuta Tiene los siguientes derechos Replace a process-level token (SeAssignPrimaryTokenPrivilege) Adjust memory quotas for a process (SeIncreaseQuotaPrivilege) Generate security audits (SeAuditPrivilege) Bypass traverse checking (SeChangeNotifyPrivilege) Access this computer from a network (SeNetworkLogonRight) Log on as a batch job (SeBatchLogonRight)

49 Cuentas de seguridad integradas en IIS 6.0
IIS_WPG Tiene los mínimos derechos necesarios para iniciar y ejecutar procesos en el servidor Web. Tiene los siguientes derechos: Log on as a batch job (SeBatchLogonRight) Impersonate a client after authentication (SeImpersonatePrivilege) IUSR_ComputerName Se utiliza para el acceso anónimo a IIS. El usuario que accede con autenticación anónima es mapeado a esta cuenta de seguridad. Access this computer from a network (SeNetworkLogonRight) Bypass traverse checking (SeChangeNotifyPrivilege) Allow log on locally (SeInteractiveLogonRight)

50 Cuentas de seguridad integradas en IIS 6.0
IWAM_ComputerName Se utiliza para iniciar aplicaciones con aislamiento de procesos en el modo de aislamiento IIS 5.0. Tiene los siguientes derechos: Replace a process-level token (SeAssignPrimaryTokenPrivilege) Adjust memory quotas for a process (SeIncreaseQuotaPrivilege) Bypass traverse checking (SeChangeNotifyPrivilege) Access this computer from a network (SeNetworkLogonRight) Log on as a batch job (SeBatchLogonRight) ASPNET Se utiliza para ejecutar el proceso ASP.NET en el modo de aislamiento IIS 5.0. Log on as a service (SeInteractiveLogonRight) Deny logon locally (SeDenyInteractiveLogonRight) Deny logon through Terminal Services (SeDenyRemoteInteractiveLogonRight)

51 Sitios Web Seguros IIS 6.0 soporta los siguientes métodos de autenticación: Autenticación anónima. Autenticación Básica. Las credenciales se envían sin encriptar. Autenticación Digest. Parecido al básico, excepto que la contraseña se envía como un valor Hash. Solo disponible en dominios con DC Windows. Autenticación avanzada Digest. Las credenciales se almacenan como Message Digest (MD5) hash en Active Directory en el DC Windows 2003. Autenticación integrada. Utiliza tecnología de encriptación Autenticación .NET Passport. Servicio de autenticación que permite a los usuarios tener un único inicio de sesión. Autenticación con Certificados. Utiliza certificados Secure Sockets Layer (SSL) para autenticar servidores y clientes.

52 Crosses Proxy Servers and Firewalls
Sitios Web Seguros Method Security Level How Passwords Are Sent Crosses Proxy Servers and Firewalls Client Requirements Anonymous authentication None N/A Yes Any browser Basic authentication Low Base64 encoded clear text Yes, but sending passwords across a proxy server or firewall in clear text is a security risk because Base64 encoded clear text is not encrypted. Most browsers Digest authentication Medium Hashed Internet Explorer 5 or later Advanced Digest authentication Integrated Windows authentication High Hashed when NTLM is used; Kerberos ticket when Kerberos is used. No, unless used over a PPTP connection Internet Explorer 2.0 or later for NTLM; Windows 2000 or later with internet Explorer 5 or later for Kerberos Certificate authentication Yes, using an SSL connection Internet Explorer and Netscape .NET Passport authentication Encrypted

53 Sitios Web seguros Control de acceso a Bases de Datos:
Utilizar los permisos incorporados en la aplicación de bases de datos del DBMS. Utilizar data source name (DSN). Utilizar permisos NTFS. Utilizar subwebs para restringir el acceso a una sección del Web site. Utilizar un método de autenticación apropiado para la aplicación Web

54 Sitios Web seguros Certificados de seguridad
Los Certificados son documentos digitales de identificación Permiten a los clientes y servidores autenticarse mutuamente. Incluyen llaves que establecen una conexión cifrada con SSL. El proceso de autenticación y transmisión de datos está basado en el par de llaves pública y privada. Además se crea una llave de sesión para la transmisión de datos.

55 Sitios Web seguros Filtrado de puertos TCP Default TCP Port Number
Internet Service 20 FTP Data Channel 21 FTP Control Channel 23 Telnet (enabled on some intranet or Internet servers) 25 Simple Mail Transfer Protocol (SMTP) 80 HTTP for World Wide Web 119 Network News Transfer Protocol (NNTP) 443 Hypertext Transfer Protocol over TLS/SSL (HTTPS) for secure World Wide Web 563 Network News Transfer Protocol over TLS/SSL (NNTPS)

56 Sitios Web Seguros Filtrado de puertos UDP UDP Port Number Service 53
DNS name queries (supports some Internet services) 161 SNMP

57 Sitios Web Seguros Encriptación con IPSec
Internet Protocol security (IPSec) está diseñado para encriptar los datos que viajan en la red. La configuración en Windows 2000/2003 está basada en directivas de seguridad Proporciona un método robusto de seguridad de punto a punto.

58 demo

59 Diagnóstico de errores HTTP 500
Introducción a los errores HTTP 500 Varios tipos de errores 500 Diagnóstico

60 Errores HTTP 500 El protocolo HTTP está formado por varios mensajes
100: Información 200: OK 300: Redirección 400: Error del cliente 500: Error del servidor El RFC para el protocolo HTTP

61 Errores HTTP 500 (II) Los errores HTTP 500 devuelven una página genérica al cliente ( asp) Excepciones: 500.16 500.19 Internet Explorer a menudo reemplazará este error Deshabilitar los mensajes descriptivos de error en Internet Explorer Opciones de Internet, Opciones Avanzadas, Examinar

62 Errores HTTP 500 (III) Algunas herramientas y logs ayudan a solucionar los problemas de errores HTTP 500: Los logs de IIS: %windir%\system32\logfiles Visor de sucesos Monitor de red WFetch: Q284285 IIS Debug ToolKit 1.1 Herramientas de depuración para Windows

63 HTTP 503 Service Unavailable
El servidor es actualmente incapaz de manejar la petición debido a una sobrecarga temporal o a mantenimiento del servidor. Las herramientas de depuración de IIS y el monitor de rendimiento son útiles para solucionar este problema. Posibles causas del problema Problemas de conectividad a la Base de Datos Más peticiones de las esperadas están llegando al servidor El App Pool está offline

64 HTTP 500.100 El mensaje de error:
HTTP – Internal Server Error – ASP Error Si deshabilitamos los errores de Internet Explorer: Podría ser un problema de permisos que podemos solucionar con regmon o filemon

65 HTTP (II) Con los mensajes de error de Internet Explorer deshabilitados podríamos obtener Este error está documentado en el artículo La solución fue registrar de nuevo el componente (dll)

66 demo

67 Trazado y auditoría con Windows Server 2003 SP1
Nueva instrumentación en IIS6 SP1 Enhanced Request-based Tracing Currently-executing Requests Tracing Auditoría de la Metabase Uso de la nueva instrumentación Cuelgues o fallos en peticiones Problemas de Autenticación/Autorización ¿Qué se está ejecutando actualmente? ¿Quién cambió qué, cuándo y cómo?

68 Enhanced Request-based Tracing Introducción
OBJETIVO: seguir las peticiones a través de IIS y en ASP/ASP.NET a través de eventos de traza CÓMO: Eventos de traza ETW en 4 proveedores principales IIS: WWW Server IIS: W3 Isapi IIS: Active Server Pages (ASP) ASP.NET Events PORQUÉ usar ETW? Mecanismo de trazado general de alto rendimiento Configuración dinámica – no es necesario reiniciar para reconfigurar SIN VOLCADOS!!

69 Enhanced Request-based Tracing Un vistazo a ETW
Controller Session Control Enable/Disable Events Event Tracing Sessions Trace files Session 1 Session 2 Session 64 Buffers Logged Events Real time delivery Events Provider A Provider C Consumer Consumer Provider B

70 Enhanced Request-based Tracing - IIS y ETW
C:\logman stop IisTrace -ets C:\Logman start IisTrace –pf MyProvs.txt -ets W3wp.exe Tracing enabled Tracing enabled Asp.dll ETW Infrastructure Some COM obj IisTrace Session COM_OBJ_START COM_OBJ_END ASP_REQ_START ASP_REQ_END FILTER_START FILTER_END REQ_START REQ_END Isapi filter IisTrace.etl New request

71 Enhanced Request-based Tracing Uso de trazas
Controlar las trazas Logman.exe Perfmon Logs & Alerts service APIs de la plataforma no manejadas Consumir trazas Tracerpt.exe: consume ETL’s, informes de salida y csv’s Excel para ver csv’s LogParser 2.2: lee ETL’s

72 Enhanced Request-based Tracing IIS WWW Server Provider
Los eventos cubren Cuando W3WP.exe recoge la petición – a – Cuando W3WP.exe termina con la petición EXCLUYE: El manejo de ISAPI -> cubierto por IIS: W3 Isapi & proveedores ISAPI individuales (ASP/ASP.net) Flags: 9 en total, 7 para filtrado Verbosidad: 0. GENERAL 1. Errores críticos 2. Errores 3. Advertencias 4. Información 5. Verbose Flag # Descripción UseUrlFilter 0x1 Filtras URL’s específicas IISAuthentication 0x2 Eventos autenticación IISSecurity 0x4 Eventos autorización IISFilter 0x8 Eventos filtros ISAPI IISStaticFile 0x10 Manejador de ficheros estáticos IISCGI 0x20 Eventos relacionados con CGI’s IISCompression 0x40 Compresión estática & dinámica IISCache 0x80 Eventos relacionados con la caché IISAll 0xFE Todos los eventos

73 Enhanced Request-based Tracing Trazar URLS específicas
La posibilidad de trazar solo URLs específicas en vez de todas las URLs ¿Cómo usarlo…? Establecer la propiedad TraceUriPrefix del sitio Establecer el flag UseUrlFilter en IIS: WWW Server provider NOTA: se DEBE usar el proveedor IIS: WWW Server con el flag UseUrlFilter establecido para filtrar eventos ASP & ASP.net por URL. Adsutil set w3svc/1/TraceUriPrefix = “/*.aspx” “IIS: WWW Server” 0x “IIS: Active Server Pages (ASP)” 0xFFFFFFFF 5º

74 ANTES: montones de problemas alrededor…
Enhanced Request-based Tracing Resolviendo problemas de Autenticación/Autorización ANTES: montones de problemas alrededor… ¿Se autenticó el usuario correctamente? ¿Es el ID del usuario anónimo correcto? ¿Qué UID se está usando para acceder al contenido? ¿Dónde se le está denegando el acceso al usuario? CÓMO: usar flags para el diagnóstico: Explicación: 0x => Eventos de Autenticación 0x => Eventos de Seguridad/Autorización Verbosity = 5 => Todos los eventos anteriores “IIS: WWW Server” 0x

75 Enhanced Request-based Tracing IIS: Active Server Pages Provider (ASP)
¿De QUÉ se hace log? Encolado/Desencolado: ¿cuanto tiempo permaneció en la cola? Tiempo de parseo y compilación Configuración de los objetos intrínsecos a la petición Eventos en tiempo de ejecución. OnApplication, etc. Ejecución de Global.asa Tiempos de objetos COM Creación de objetos Llamada a métodos Llamada a GetObject ¿PORQUÉ usarlo? La mayoría de las llamadas a soporte -> cuelgues en páginas ASP Método actual para la resolución -> volcado del proceso INETINFO o dllhost.exe, envío a PSS.

76 Currently Executing Requests Qué está ocurriendo realmente ahora
¿De QUÉ se hace log? Estadísticas de los Worker Processes Estadísticas para todas las peticiones actualmente en ejecución ¿PORQUÉ usarlo? Lista de la peticiones en ejecución sin tener que matar el proceso para ver HTTPERR log No hay que usar el depurador y extensiones del depurador para ver esto – integrado & no-intrusivo ¿CÓMO usarlo?: Usar ETW para volcar los datos o… IISReqMon.vbs (con LogParser 2.2) C:\Logman start CurrReqDump –p “IIS: Request Monitor” -ets

77 Currently Executing Requests Datos registrados
Estadísticas del Worker Process PID AppPoolID # Requests Served Total Worker Threads Available Worker Threads Process Start Time Process Uptime Estadísticas de la petición Start time Context ID (to correlate back to req-based tracing) Site ID Local IP & Port Host Name Connection ID Client IP Request Verb Request URL Processing State Elapsed total Time Elapsed time in State

78 Currently Executing Requests Auditoría de la Metabase
¿QUÉ?: Entrada en el log de eventos del sistema cada vez que hay un cambio en el metabase NT Security Audit Log Fuente: IISADMIN-Metabase ¿CÚANDO se registran los cambios? Intentos exitosos o fallidos de añadir, cambiar, mover, o borrar claves/propiedades ¿PORQUÉ usarlo? Auditoría de cambios Common Criteria Certification

79 Currently Executing Requests Auditoría de la Metabase
¿QUÉ se logea? Lo que está siendo cambiado Path de la Metabase Viejo valor de la Propiedad/Clave Nuevo valor de la Propiedad/Clave Quién lo cambió: dominio & nombre de usuario si se puede obtener Cómo fue cambiada: nombre del ejecutable usado para hacer el cambio (MMC.exe, etc.) & IP remota si está disponible. Éxito o fallo de la operación ¿CUÁNDO se hace (en detalle)? Operaciones sobre las claves: mover/borrar/copiar/añdir/renombrar Operaciones sobre las propiedades: añadir/modificar/borrar

80 Currently Executing Requests Habilitar la auditoría de la Metabase
Deshabilitada por defecto ¿CÓMO habilitarla?: Habilitar la auditoría global de objetos primero Establecer la ACE Audit Success & Audit Failure sobre los nodos de la metabase que se quieran auditar, & para qué usuarios (todos?) NOTA: esto configurará la propiedad AdminACL en la metabase para el nodo seleccionado La configuración de los nodos hijos sobreescribirán esta configuración

81 demo

82 LogParser Introducción a LogParser LogParser 2.2
Formatos de entrada y de salida Funciones Plantillas de salida Cómo empezar… LogParser 2.2 El nuevo formato de salida ‘chart’ CheckPoint

83 Log Parser es… Una herramientas gratuita, aplicación independiente
Versión 2.1: buscar por “IIS 6.0 Resource Kit Tools” Versión 2.0: buscar por “Log Parser” Desarrollada por Gabriele Giuseppini, del equipo de IIS No soportada oficialmente (www.logparser.com) Disponible de dos formas: .exe en línea de comandos Objeto COM No hay ningún GUI por el momento

84 LogParser Conceptos clave
Log Parser requiere… Formato de entrada [+opciones] Consulta Formato de salida Lenguaje de consulta Soporte la mayoría de la sintaxis de SQL Extiende el lenguaje con funciones adicionales

85 LogParser Funciones Para obtener una lista de las funciones Ejemplos:
[2.1] logparser –h 2 [2.0] logparser –h FUNCTIONS Ejemplos: Funciones de conversión TO_TIMESTAMP TO_LOCALTIME TO_INT Manejo de cadenas STRLEN SUBSTR STRCAT Otras REVERSEDNS QUANTIZE EXTRACT_EXTENSION [2.2] CASE [2.2]

86 LogParser Ejemplo de función
Convertir el timestamp del fichero de log de UTC a hora local SELECT TO_DATE(TO_LOCALTIME(TO_TIMESTAMP(date, time))) AS date, TO_DATE( TO_LOCALTIME( TO_TIMESTAMP(date, time))) AS time, c-ip, cs-username, s-ip, s-port, cs-method, FROM C:\Windows\system32\logfiles\w3svc1\ex log

87 LogParser Plantillas de salida
Logparser –h –o: TPL Formada por: Cabecera Cuerpo Pie Mejora el aspecto del resultado

88 LogParser Cómo empezar
Encontrar los nombres de las columnas en la fuente de datos logparser –h –i:<IISW3C|IIS|EVT> o… “SELECT * FROM <datasource>” Para ficheros TSV o CSV: logparser –h –i:csv/tsv <nombre_fichero> Comprender los datos en cada columna Aplicar las funciones necesarias para convertir los datos [2.2] opción -queryinfo

89 LogParser Novedades en LogParser 2.2
Nuevos formatos de entrada ETW – “Event Tracing for Windows”, ficheros de log y sesiones vivas TSV – “Tab and Space Separated value text files” ADS – Lee información de objetos del DA REG – Lee información del registro NETMON – parsea las capturas de NETMON Nuevos formatos de salida CHART SYSLOG TSV

90 LogParser Checkpoint – parseo incremental
Parsea sólo lo que no ha sido parseado anteriormente ex*.log …de todos los ficheros de log en un directorio <1> …de todos los ficheros de log del sitio 1 System …del log de eventos del sistema Requiere un fichero de checkpoint para almacenar datos logparser “SELECT TimeGenerated, EventTypeName, Strings FROM System WHERE SourceName = ‘W3SVC’” –icheckpoint event.lpc

91 demo

92 Próximas Acciones Servidores: Desarrollo:
Servidores: Desarrollo:

93 Boletín quincenal TechNews

94 ¿ Preguntas ?

95 Contacto Javier Pereña Peñaranda Technet Informatica64
Technet Informatica64 Material Seminarios


Descargar ppt "Windows Server 2003 Internet Information Services 6.0"

Presentaciones similares


Anuncios Google