Buenas prácticas para migrar a IIS 6

Slides:



Advertisements
Presentaciones similares
Sql Server Migration Assistant
Advertisements

Siete integrado extensible delegado seguro compatible soportable internet information services Jorge Oblitas Especialista en Tecnologías de Desarrollo.
Internet y tecnologías web
Securización Internet Information Services 6.0 y SQL Server 2000
IIS 6.0 Administración Avanzada
Los objetivos de esta presentación
TNT1-112 Presentado por. Marcos Gonzalez Microsoft Certified Trainer Descripción general técnica de Microsoft Operations Manager 2005 Microsoft Corporation.
YUKON EN EL HORIZONTE Valeria Rodríguez Z. MVP SQL Server Business Manager Paradigma Software S.R.L.
Implementación de SQL Server 2000 Reporting Services
III - Gestión de memoria
Microsoft Windows Server 2008 Internet Information Services 7
Configurar, optimizar e implementar una aplicación Web Microsoft ASP
Supervisión del rendimiento de SQL Server
3/29/ :02 AM © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered.
{ Aplicaciones de Misión Crítica } Eladio Rincón SQL Server MVP Solid Quality Mentors.
Servidores Windows Http Ftp …
Instalación y configuración de los servicios Web.
Internet Information Services 7.5!
Código: HOL-SEG05. Definición de análisis forense Buenas prácticas a la hora de analizar datos Análisis logs en aplicaciones Análisis logs en Sistema.
TEMA 2: «CONFIGURACIÓN DE MÁQUINAS VIRTUALES»
Microsoft SQL Server 2008 – SQL Server Integration Services
Especialista en Business Intelligence Integration Services SSIS (Sesión 7) Microsoft SQL Server 2008 R2 (2013) Suscribase a o escríbanos.
SQL Server Integration Services SSIS
Seguridad en ASP.NET Daniel Laco
IIS 8 Windows Server 2012 Paulo Dias IT
José Parada Gimeno ITPro Evangelist
28 de junio, Primero – Aclaremos el Nombre FOPE – Forefront Online Protection for Exchange Previamente FOSE Forma parte de Exchange Hosted Services:
Administrar Internet Information Services 6.0
Antonio Gámir TSP – Windows Client
Características Técnicas
Intercambio de información Procesamiento Sin intervención del usuario Acelerando tiempos de respuesta Normalización Entre plataformas Entre lenguajes.
José Antonio Rastoll Pérez Presentación PI. Índice 1. EL OBJETO SESSION Introducción. Propiedades. Funcionamiento. Variables de sesión, desventajas y.
DESARROLLO DE APLICACIONES
TECNOLOGÍA IDC Internet Database Connector Trinitario Gómez López.
SERVIDOR.
Implementación y administración de DHCP
Mejoras y Nuevas Características de ISA Server 2004 Chema Alonso MVP Windows Server Security
Código: HOL-WIN51. Introducción a Windows Server 2008 Novedades en Windows Server 2008 R2 Actualización a Windows Server 2008 R2 Implantación Instalación.
POP3 UCLV Mapas Conceptuales para la enseñanza de Redes de Computadoras.
Diseño de una base de datos Zavaleta Nolasco Karina
InfoPath Ventajas y Uso.
SISTEMAS OPERATIVOS EN LOS QUE FUNCIONA
ASP.NET es una nueva y potente tecnología para escribir páginas web dinámica. Es una importante evolución respecto a las antiguas páginas ASP de Microsoft.
UNIVERSIDAD NACIONAL AUTONOMA DE MEXICO MODULO IV ADMINISTRACIÓN DE BASES DE DATOS Administración del DBMS E.I. L.E. Prof. Ramón Castro Liceaga SEMINARIO.
MICROSOFT ISA SERVER PRESENTADO A: FABIO LASSO
5. Sistemas de archivos avanzados1 Tema 5: Sistemas de Archivos Avanzados Resumen: –Sistema de archivos distribuido –File Replication Service.
Gestión de procesos Sistemas Operativos Edwin Morales
SEMINARIOS CIFARMA.NET Administrar Internet Information Services 6.0.
Introducción al Lenguaje. ¿Qué es PHP? O Es un lenguaje de programación que es interpretado por un servidor web. O El lenguaje es genérico. PHP está orientado.
Introducción a los SOs.
Tema 8: Introducción a los SOs. Tema 8: 2 Silberschatz, Galvin and Gagne ©2005 Fundamentos de los Computadores (ITT, Sist. Electr.), Introducción.
Diseño de Servicios Web Internet Information Server © Copyright 2003 Víctor ROBLES FORCADA
Cuentas de usuarios y grupos en windows 2008 server
“condición que necesita el usuario para resolver un problema o conseguir un objetivo determinado”. Los requisitos de un sistema son los aspectos que el.
Sebastian Madrid Perez
Proceso de resolución de un nombre de dominio Tema 3 SRI Vicente Sánchez Patón I.E.S Gregorio Prieto.
EQUIPO:#3 GRUPO:304 NOMBRES: Lizbeth Nava Barón y Erick Ali Mejía.
Teoría de Sistemas Operativos Sistemas distribuidos.
Instituto Tecnológico de las Américas (ITLA)
File Transfer Protocol.
Manual violento de Navicat
ABRIMOS NUESTRA, MMC PERSONALIZADA. NOS POSICIONAMOS DENTRO DE “ACTIVE DIRECTORY USERS AND COMPUTERS” Y LO EXPANDIMOS.
Colegio de Bachilleres Plantel 13 Xochimilco - Tepepan
• SQL Server Integration Services SSIS
Sustentante: Francis Ariel Jiménez Zapata Matricula: Grupo: 2 Profesora: Jose Doñe Asignatura: Sistema Operativo 2.
Instituto Tecnológico Superior de Libres Organismo Publico Descentralizado del Gobierno del Estado de Puebla José Alejandro Leal González.
Proceso de resolución de un nombre de dominio. –Consultas recursivas. –Consultas iterativas. –Caché y TTL. –Recursividad y caché. Gustavo Antequera Rodríguez.
WINDOWS SERVER 2008 r2 ADMINISTRACION DE RECURSOS: Con el Administrador de recursos del sistema de Windows del sistema operativo Windows Server® 2008 R2,
Módulo 7: Resolución de nombres NetBIOS mediante el Servicio de nombres Internet de Windows (WINS)
DLM Transact SQL Sesión I Introducción al SQL Server Uso de las herramientas de consultas del Transact SQL.
Transcripción de la presentación:

Buenas prácticas para migrar a IIS 6 Buenas prácticas para migrar a IIS 6.0 desde versiones anteriores Bill Staples Group Program Manager IIS Microsoft Corporation

Agenda IIS 6.0 – Introducción Consideraciones Recursos Fiabilidad – un nuevo modelo de procesos Seguridad Rendimiento y escalabilidad Mejor administración Consideraciones Recursos Preguntas y respuestas TechEd 2002

Fiabilidad Una nueva arquitectura para W3SVC en IIS 6.0 Objetivo: permitir el aislamiento total de una aplicación del resto de las aplicaciones del Web y del sistema operativo del servidor. Funcionalidad de Web Service en INETINFO repartida entre: HTTP.sys: listener en modo kernel y enrutador de peticiones W3SVC: pasa a ser el gestor de configuración y procesado W3Core: donde se procesan las aplicaciones Web Carga de múltiples DLL W3Core dentro de archivos W3WP.exe Dos modos del modelo de procesos: [Default] modo de aislamiento de proceso de usuario (worker process) Modo de aislamiento de IIS 5.0 W3SVC W3Core Web app HTTP.SYS kernel TechEd 2002

Fiabilidad Repaso – Modelo de Proceso 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 ISAPI Filters User mode Kernel mode Winsock TechEd 2002

Fiabilidad Modo de aislamiento del proceso de trabajo en IIS6.0 Application Pool Application Pool Application Pool INETINFO.exe SVCHOST.exe W3WP.exe W3WP.exe W3WP.exe W3Core metabase W3SVC W3Core W3Core ASP.net Apps All Apps (no OOP) All Apps (no OOP) ftp, smtp, nntp .Net App Domain W3 Config Mgr W3 Process Mgr .Net App Domain .Net App Domain ISAPI Filters ISAPI Filters User mode Kernel mode HTTP.SYS TechEd 2002

Fiabilidad Agrupamientos de aplicaciones (“pools”) Se pueden crear uno o más agrupamientos de aplicaciones Cada uno, servido por uno o más archivos W3WP.exe Cada W3WP.exe trabaja con un solo pool Peticiones encaminadas directamente al pool desde HTTP.sys Aislamiento de aplicaciones en base a: Site/Cliente Funcionalidad Fiabilidad TechEd 2002

Fiabilidad Reciclaje periódico del proceso ¿Qué es? Reinicio periódico de las aplicaciones en base a: Tiempo [Default] Número de peticiones Reinicios planificados Consumo de memoria Bajo demanda ¿Por qué hacerlo? Refrescar aplicaciones para garantizar su disponibilidad Previene que aplicaciones mal desarrolladas puedan colapsar el sistema Efecto en las aplicaciones Cambio de estado o pérdida de cache en el reciclado Posibles incidencias debidas a múltiples instancias. TechEd 2002

Fiabilidad Arquitectura auto contenida Chequeo de “salud” (pinging) ¿Que es? Diseñado para detectar bloqueos en threads de W3WP.exe Puede engancharse si no hay threads en W3WP.exe disponibles para responder en la ventana de tiempo asignada. ¿Cómo funciona? W3SVC hará “ping” a cada W3WP.exe El proceso tiene un tiempo preconfigurado de respuesta Si no responde en ese periodo: Por defecto: mata el proceso, publica el evento y arranca un nuevo proceso. O puede configurarse para ejecutar otra acción o proceso => “Orphaning” ASP y ASP.NET utilizan el ping para solicitar un reciclaje si aparecen síntomas de error. TechEd 2002

Fiabilidad Detección de caídas y recuperación W3SVC detecta la caída de W3WP.exe W3SVC arrancará un nuevo W3WP.exe si hay demanda Peticiones encoladas en HTTP.sys mientras arranca el nuevo W3WP Efecto neto: servicio no interrumpido Protección rápida frente a fallos Únicamente permite x caídas en y minutos Automáticamente para el pool si se excede ese valor – Devuelve error 503 a las peticiones a ese pool. TechEd 2002

Fiabilidad Consideraciones para las aplicaciones Diseñar las aplicaciones pensando en su reciclaje Independizar los estados y cache del proceso del servidor Para ASP.NET, usar el servicio de estado de sesión externo o Microsoft® SQL Server™ para almacenar los estados. Cuidado con los problemas derivados de la multiinstancia Pueden aparecer durante: Reciclajes: se superponen por defecto, pero puede deshabilitarse el reciclaje con superposición o reciclarlos todos juntos. Dos pools de aplicaciones cargando el mismo código de aplicación. Si no se puede cambiar el código, asignar todos los URL al mismo agrupamiento. “IIS 5-ismos” – dependencias de comportamientos de IIS5.0 Ejecución con privilegios LocalSystem En el modelo de aislamiento de Proceso de Trabajo no se utiliza OOP de COM+ Filtros de datos globales. Si lo anterior no puede modificarse, ejecutar IIS6.0 en el modo de aislamiento de IIS5.0 Carga W3Core dentro de INETINFO, como hace OOP en IIS5.0 TechEd 2002

Seguridad en IIS 6.0 Seguridad en la instalación Instalación limpia IIS no se instala en una instalación limpia por defecto. Utilizar el asistente Configure su Servidor para instalar el rol de servidor de aplicaciones. Instala: IIS 6.0 FPSE (deshabilitado) ASP.NET (deshabilitado) Actualizaciones W3SVC deshabilitado salvo que se instale URLScan antes de la actualización. TechEd 2002

Seguridad en IIS 6.0 Reducción de la superficie de ataque Lista de Restricciones Sólo ejecuta peticiones para extensiones y CGIs permitidos. Por defecto no se permiten extensiones ni CGI Si se solicita una extensión o CGI no permitidos, se devuelve un error 404.2 Usar el nodo Web Service Extensions en MMC para permitir o prohibir extensiones y CGIs Extensiones de archivo conocidas Únicamente suministra peticiones definidas en MIMEMAP Error 4.403 para peticiones no incluidas en MIMEMAP Consideraciones Si se usa Visual Studio .NET, definir los archivos .tmp en MIMEMAP Visual Studio .NET resuelve esto en SP1. TechEd 2002

Seguridad en IIS 6.0 Identidad del Proceso de Trabajo configurable El Proceso de trabajo puede iniciarse como: Servicio Network (default) Local system Local service ID preconfigurado IIS_WPG Nuevo grupo de usuarios Recursos IIS puestos dentro de una ACL en este grupo Devuelve errores 503 si la cuenta configurada no forma parte de IIS_WPG Consideraciones El mapeo de Passport para Directorio Activo exige uso de LocalSystem Kerberos puede necesitar configuración adicional para este ID TechEd 2002

Seguridad en IIS 6.0 Cambios de seguridad desde IIS 5.0 Sub-autenticación no se instala por defecto en instalaciones limpias Efecto: las passwords pueden caducar para las cuentas IWAM y IUSR Solución: instalar SubAuth o resolverlo con un esquema de sincronización propio URLs restringidas a un máximo de 16Kb de longitud con un parsing más restrictivo No se admiten caracteres extraños, etc. El contenido en Inetpub se protege contra escritura Las herramientas de línea de comandos solo las pueden utilizar los administradores. TechEd 2002

Seguridad en IIS 6.0 Recomendaciones Hacer una instalación limpia en lugar de actualización – más seguro por defecto No hay aún una herramienta de bloqueo para que IIS6.0 pueda gestionar las actualizaciones Ejecutar los archivos W3WP.exe de los pools de aplicaciones como Network Service (valor por defecto) Permitir solamente las extensiones que necesitan las aplicaciones. Prohibir todo lo demás para reducir la superficie de ataque Revisar los logs de visitas a IIS y el log HTTPERR Log de visitas de IIS: códigos de substatus guardados en formatos válidos para W3C y binarios. HTTPERR: detalles de los motivos para errores 503 y finalización de conexiones TechEd 2002

Rendimiento en IIS 6.0 Mejor rendimiento en el mundo real Benchmarks de e-commerce de Doculabs. Medidas del rendimiento global de algunos escenarios comunes en entornos de comercio electrónico. Logon, visualización de elementos, búsquedas, operaciones de carrito de la compra y pagos Cache de archivos estáticos, operaciones de BBDD, gestión del estado de sesión. 1P: 49% 4P: 120% 8P: 170% Reqs/sec 1P - 4P: 3.3x 1P - 8P: 5.0x TechEd 2002

Rendimiento en IIS 6.0 Respuestas cacheadas en HTTP.SYS Contenido dinámico cacheado, suministrado directamente desde HTTP.SYS Podría operar al doble de velocidad cuando se suministra desde el modo de transición del kernel – no usuario Sus aplicaciones no reciben las peticiones si se sirven desde la cache Archivos estáticos cacheados por defecto Cache inteligente: sólo se cachea contenido estático muy solicitado Rellamada al API de invalidación Se potencia también la cabecera “Expires” para establecer un timeout automático para las respuestas cacheadas. Consideraciones Utilizar en respuestas dinámicas si pueden mantenerse por un cierto periodo de tiempo Se reduce la carga en el servidor si la respuesta puede entregarse desde la cache ASP.NET -> usar la directiva OutputCache Location=“Server” para marcar una respuesta como cacheable. TechEd 2002 4

Rendimiento en IIS 6.0 traza del Capacity Planning Se conecta en posiciones clave durante el tiempo de vida de la petición, desde el inicio de la misma hasta el envío definitivo de la respuesta: HTTP Start, Route, Cache Hit, End ISAPI Filter Start/Stop (nombre del filtro, notificación) ISAPI Extension Start/Stop ASP Start/Stop ASP.net Start/Stop Útil en depuración también - ¿dónde se bloquea la petición? Ejemplo de un cliente: MS.COM Utiliza esto para localizar páginas de alto consumo de CPU También se emplea para diagnosticar dónde se producen retrasos TechEd 2002 4

Rendimiento en IIS 6.0 Jardines Web y afinidad de procesador Web Garden Application Pool Jardines web: Pools de aplicaciones con más de un proceso de trabajo Enrutamiento basado en conexión dentro del Jardín Afinidad de procesador Asignación de procesos de un pool de aplicaciones a una o más CPUs Configuración basada en máscaras Consideraciones Jardines Web Posibles incidencias en multi-instancia Reciclaje: posible todo a la vez Afinidad Crear silos virtuales de trabajo en grandes sistemas MP Asignar de acuerdo con la arquitectura MP (asignar a CPUs en el mismo bloque físico) W3WP.exe W3WP.exe SVCHOST.exe W3WP.exe W3Core W3Core W3Core W3SVC All Apps (no OOP) All Apps (no OOP) All Apps (no OOP) W3 Config Mgr W3 Process Mgr ISAPI Filters ISAPI Filters ISAPI Filters HTTP.SYS kernel TechEd 2002

Rendimiento en IIS 6.0 Tiempo de inactividad y arranque por demanda Se detiene un proceso si está inactivo por encima de un periodo de tiempo prefijado Libera recursos para aplicaciones activas. Las aplicaciones siguen estando disponibles aun cuando el proceso de trabajo está inactivo y se ha detenido Arranque por demanda Sólo se inicia el proceso de trabajo si existe demanda para el pool de aplicaciones Consideraciones Usar el timeout por inactividad para liberar recursos para otras aplicaciones de uso más intensivo Valorar el desactivar la función de timeout si el arranque de la aplicación lleva mucho tiempo Nota: la finalización de un proceso inactivo causa: Pérdida de la cache en memoria TechEd 2002

Administración de IIS 6.0 Mejoras en la Metabase Metabase en XML Metabase guardada en XML Autoversión: como un backup automático Editar mientras trabaja Se pueden hacer cambios directamente al archivo metabase.xml mientras IIS está ejecutándose. Se puede usar cualquier editor: Notepad, .NET, PERL, etc. Consideraciones Es más seguro usar ADSI o la UI para hacer cambios en la metabase Nota: Metabase.bin sigue existiendo, pero solo como un archivo de compromiso para las aplicaciones antiguas. ADSI UI Admin Base Objects Metabase.xml MBSchema.xml TechEd 2002

Administración de IIS 6.0 Mejoras en la metabase: Import/Export Importación/exportación de la configuración de la metabase a/desde XML Opciones: Exportar/importar propiedades heredadas Exportar/importar un nodo solamente (o todo el subárbol) Fichero exportado cifrado con password. Uso con ASP.NET XCOPY para instalar aplicaciones Se exporta la configuración de la metabase de IIS6.0 para una aplicación .NET Se guarda en el directorio de aplicaciones .NET Se importa el archivo de configuración de la metabase después de XCOPY Admin Base Objects ADSI UI Metabase.xml MBSchema.xml TechEd 2002

Administración en IIS 6.0 Proveedor WMI y nuevas herramientas de línea de comandos IIS WMI Provider Soporte para consultas Asociaciones Transformable en script Nuevas herramientas de línea de comandos Orientación a tareas Herramientas soportadas – actualmente en %windir%\system32 Basadas en WMI Provider Ejemplo: usar IISCNFG.vbs como parte de una estrategia de migración de aplicación .NET entre dos sistemas con IIS6.0 Command Line Tools ADSI WMI UI Admin Base Objects Metabase.xml MBSchema.xml TechEd 2002

Resumen IIS 6.0 se ha mejorado al hacer que las aplicaciones Web sean mas: Seguras Fiables Escalables Manejables TechEd 2002

Recursos Introducción a IIS 6.0 en TechNet: http://www.microsoft.com/windows.netserver/evaluation/overview/technologies/iis.mspx Introducción técnica a IIS 6.0: http://www.microsoft.com/windows.netserver/docs/IISOverview.doc TechEd 2002