microsoft windows server 2008 internet information services 7 joshua sáenz g....

52
Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. [email protected] Código: HOL-WIN33

Upload: nieves-picazo

Post on 14-Apr-2015

3 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Microsoft Windows Server 2008Internet Information Services 7

Joshua Sáenz [email protected]

Código: HOL-WIN33

Page 2: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Agenda• Introducción.• Consola de administración de IIS.• Administración IIS 7.0.

– Roles IIS.– Delegación Administración local.– Delegación Administración remota.

• Configuración de sitios.– Módulos.– Aplicaciones.– Sesiones– Conexiones a bases de datos.

• Securización de IIS 7.0– Autentificación.– Autorización.– Restricciones.– Configuración SSL.

• Monitorización.– Monitorización del flujo de trabajo.– Configuración de LOG.– Monitorización de peticiones fallidas.– Informes de resultados

Page 3: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Introducción a IIS 7

• IIS supone un cambio radical en la filosofía de servidor de aplicaciones

• Es uno de los desarrollos más completo y destacados de Windows Server 2008

• Incluye nuevas características tanto para programadores como administradores

Page 4: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Introducción a IIS 7

• Basado en:– La potencia y seguridad de IIS6

• Seguridad• Confiabilidad• Rendimiento

– ASP.NET 2.0• Productividad del desarrollador• Extensibilidad total de la plataforma• Poder del desarrollo en .NET

Page 5: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Introducción a IIS 7

• Características más destacadas:– Instalación totalmente modularizada.– Mejor integración de ASP.net e IIS– Mejor extensibilidad.– Servidor Web verdaderamente personalizable.– Descubrimiento y reparación de problemas en

minutos.– Delegación de sitios o aplicaciones en usuarios no

administradores.– Compatibilidad con aplicaciones IIS6– Nuevo esquema de configuración. (Desaparece

metabase.xml)

Page 6: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Consola de administración

• Uno de los cambios más significativos

• Totalmente rediseñada:– Basada en MMC 3.0– Administración basada en tareas– Fácil delegación de sitios y aplicaciones– Administración remota a través de http(s)– Extensible

Page 7: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Roles IIS.

• Delegación Administración local.

• Delegación Administración remota.

Page 8: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Roles de IIS 7:– Common HTTP Features– Application Development– Health and Diagnostics– Security– Performance– Management Tools– FTP Publishing Service

Page 9: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Common HTTP Features:– Static Content– Default Document– Directory Browsing– HTTP Errors– HTTP Redirection

Page 10: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Application Development:– ASP.Net– Net Extensibility– ASP– CGI– ISAPI Extensions– ISAPI Filters– Server Side Includes

Page 11: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Health and Diagnostics– HTTP Logging– Logging Tools– Request Monitor– Tracing– Custom Logging– ODBC Logging

Page 12: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Security:– Basic Authentication– Windows Authentication– Disgest Authentication– Client Certificate Mapping Authentication– IIS Client Certificate Mapping Authentication– URL Authorization– Request filtering– IP and Domain Restrictions

Page 13: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7• Delegación de la administración

– En IIS 7 se pueden delegar características a administradores de sitios Web o aplicaciones

– Esto permite que los administradores del servidor deleguen el control de características específicas a administradores de sitios o aplicaciones sin necesidad de dar control completo

– Existen 3 roles administrativos:• Administrador de servidor Web• Administrador de sitio Web• Administrador de aplicación Web

– Tipos de credenciales admitidas• Usuarios de Windows o de dominio• Credenciales de IIS Manager

Page 14: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Delegación de administración local– Delegación por defecto– Delegación personalizada– Las características

delegadas son heredadas por los sitios y aplicacionesen ámbitos inferiores del árbol

– Se puede sobreescribir un valor de delegación a nivel de sitio o aplicación

Page 15: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Administración de IIS 7

• Delegación de administración remota– La administración remota permite conectarse

a sitios o aplicaciones directamente delegados.

– Se requiere el servicio de administración remota, el cual no se instala por defecto.

Page 16: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Módulos.

• Aplicaciones.

• Sesiones

• Conexiones a bases de datos.

• Servicios.

Page 17: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Módulos– IIS 7 se construye a partir de módulos que

procesan las solicitudes de los clientes– Se pueden cargar solo aquellos que se

necesitan– Se pueden crear componentes

personalizados• Componentes nativos (C++)• Componentes administrados (.net)

Page 18: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Arquitectura de IIS 6– Implementación

monolítica (w3core.dll)– Personalización limitada– Funcionalidades fijas– Difícil extensibilidad

de filtros ISAPI

Authentication

Basic NTLM Anon

...

DetermineHandler

...

Response Compression

Logging

HTTP Request

HTTP Response

CGI

Static File

ISAPI

Page 19: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Authentication

...

ExecuteHandler

...

SendResponse

HTTP Request

HTTP Response

Authorization

UpdateCache

ResolveCache

Configuración de sitios

Authentication

...

DetermineHandler

...

SendResponse

HTTP Request

HTTP Response

BasicNTLM Anon

CGI

Static File

ISAPI

Log Compression

• Arquitectura de IIS 7

• Basada en componentes– Características modulares

– Línea de ejecución genérica

• Permite– Servidores más ligeros

– Servidores personalizados y especializados

UrlAuthz

OutputCache

Forwarder

Basic40+

Page 20: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

basicauth.dll

Configuración de sitios

• Modelo público de extensibilidad• Desarrollo de DLL

• API C++ basada en clases

• Modelo de objetos

• Permite• Extensibilidad completa

• Código más robusto y simple

Authentication

...

ExecuteHandler

...

SendResponse

HTTP Request

HTTP Response

Authorization

UpdateCache

ResolveCache

Basic

httpserv.h:

IHttpContext{ IHttpRequest IHttpResponse IHttpUser ...};

IHttpServer{ GetConfig LogEvent Recycle ... };

Page 21: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Módulos de IIS 7 frente a Filtros ISAPI y extensiones:– Más potente– API mucho más rica– Notificaciones más granulares– Más fácil de desarrollar

• Orientado a objetos con C++• Patrones simplificados

– Más fácil de administrar• Administración de características consistente• Configuración granular

21

Page 22: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• ¿Qué son los Módulos?– Un módulo es un componente que

proporciona servicios de procesamiento de solicitudes independientemente del tipo de recurso solicitado

– En IIS 7 hay dos tipos de módulos:• Nativos (Desarrollados en C++. Solo se pueden

registrar a nivel de servidor. Se habilitan en cualquier nivel)

• Administrados (Desarrollados en lenguajes .net)

Page 23: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• ¿Qué son los Manejadores (Handlers)?– Un manejador es un componente que está

implementado tanto de forma nativa como administrada

– Solo proporciona servicios de procesamiento para el tipo de recurso solicitado que esté mapeado en el manejador, como ASP (asp.dll), CGI

Page 24: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Registro de módulos en línea de comandos– Appcmd install module /name:string /image:string

– Appcmd install module /name:ImageCopyrightModule /image:C:\%WINDIR%\system32\inetsrv\imageCopyrightModule.dll

• Para habilitar un módulo:– Appcmd add module /name:string /app.name:string– Appcmd add module /name:ImageCopyrightModule

/app.name:”Default Web Site/”

Page 25: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Aplicaciones:– Las aplicaciones se ejecutan en el contexto

del conjunto de aplicaciones (Application Pool)

– Un conjunto deaplicaciones es un grupo de una o más URLs que están proporcionadas por un conjunto de procesos de trabajo

Page 26: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Beneficios del conjunto de aplicaciones:– Mejor rendimiento– Mejor disponibilidad– Mejor seguridad y aislamiento

• El módulo de conjunto de aplicaciones tiene dos modos– Modo integrado– Modo ISAPI

Page 27: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Para agregar una aplicación en línea de comandos– Appcmd add app /site.name:string /path:string

/physicalPath:string– Appcmd add app /site.name:contoso /path:/marketing

/physicalPath:C:\application

Page 28: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Sesiones:– IIS 7 permite el almacenamiento de

información de la sesión en los procesos de trabajo de cada conjunto de aplicaciones

– Ese modo se denomina “in-process”

– Se requiere el servicio aspnet_state.exe

– Appcmd set config /commit:WEBROOT /section:sessionState /mode:InProc

Page 29: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Sesiones:– Otro modo de control de sesión es con el uso

de cookies– La cookie asocia información de la conexión

del usuario y se pasa junto con todas las solicitudes.

– El uso de cookies es más eficiente– Appcmd set config /commit:WEBROOT /section:sessionState

/cookieless:UseCookies /cookieName:string /timeout:timespan

Page 30: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• La configuración de sesiones se puede realizar en los siguientes niveles:– Servidor Web– Sitio Web– Aplicación Web– Directorios físicos y virtuales– Archivos

• Se requiere el módulo “Session”

Page 31: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Conexiones a bases de datos:– La configuración de conexiones a bases de

datos se puede realizar en los siguientes niveles:

• Servidor Web• Sitio Web• Aplicación Web• Directorios físicos y virtuales• Archivos

Page 32: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Configuración de sitios

• Se pueden configurar conexiones a bases de datos para uso de las aplicaciones

• Appcmd set config /commit:MACHINE /section:connectionStrings /+”[connectionString=‘string’, name=‘string’, providerName=‘string’]”

• Appcmd set config /commit:MACHINE /section:connectionStrings /+”[connectionString=‘DataSource=localhost;Integrated Security =SSPI;Initial Catalog=Northwind;‘, name=‘Northwind’, providerName=‘System.Data.SqlClient’]”

Page 33: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Por defecto IIS 7 no se instala en Loghorn• La instalación básica solo permite el

contenido estático• En la securización intervienen los

siguientes componentes:– Autenticación.– Autorización.– Restricciones.– Configuración SSL.– Configuración WebDAV.

Page 34: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Autenticación– AD Client Certificate– Anónima– ASP.Net impersonal– Básica– Digest– Basada en Formularios– Windows

• Se puede configurar en todos los niveles

Page 35: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• AD Client Certificate– Permite utilizar sevicios de directorio para

mapear usuarios con certificados de clientes

• Autenticación anónima:– Permite que cualquier usuario acceda al

contenido público del sitio Web

• ASP.Net impersonal:– Permite ejecutar aplicaciones asp.net en un

contexto diferente de la cuenta ASPNET

Page 36: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Autenticación básica:– Requiere que los usuarios proporcionen sus

credenciales. Se transmiten sin cifrar y se recomienda utilizarla junto con SSL

• Autenticación Digest:– Utiliza un controlador de domínio de Windows para

autenticar usuarios. Mejora la autenticación básica

• Autenticación basada en formularios– Utiliza redirección del lado del cliente para enviar a

los usuarios a un formulario. Se recomienda utilizarlo junto con SSL

Page 37: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Autenticación Windows:– Utiliza NTLM o Kerberos. Es la

recomendación en entornos de Intranet.

Page 38: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Autorización– Permite definir el control de acceso a los

contenidos tienen usuarios o grupos de usuarios

– Se pueden definir verbosespecíficos

Page 39: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Restricciones– Se pueden definir restricciones para los

módulos ISAPI (.dll) y CGI (.exe)– Las restricciones permiten habilitar o

deshabilitar el servicio de contenido dinámico– También se pueden

definir restricciones por IP o dominio

Page 40: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Configuración de SSL– La configuración SSL permite restringir las

conexiones únicamente a un canal seguro– Se establece además el nivel de cifrado

exigido– Se requiere un

“Binding” SSL y uncertificado deservidor

Page 41: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Securización de IIS 7

• Machine Key– Esta característica configura las claves de

cifrado y descifrado que se utilizan para proteger los datos de las cookies en la autenticación basada en formularios

Page 42: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• IIS 7 incluye dos avances importantes en materia de diagnóstico y resolución de problemas– Captura y compilación de información de estado

en tiempo real de• Conjuntos de aplicaciones• Procesos de trabajo• Sitios• Aplicaciones• Solicitudes en ejecución

– Recolección de trazas detalladas de eventos

Page 43: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Monitorización del flujo de trabajo (working processes)– IIS 7 permite conocer la actividad en tiempo

real de cada uno de los procesos de trabajo en ejecución

– Facilita la tarea de identificad aplicaciones con problemas y ejecutar acciones de corrección

– Se identifica el estado, consumo de CPU, consumo de memoria privada y virtual

Page 44: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• La monitorización del flujo de trabajo se realiza a nivel de servidor Web

Page 45: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Si se identifica in proceso con un uso de recursos excesivo, se pueden visualizar las solicitudes actuales

• La información detallada consiste en:– ID de sitio– URL– Verbo– IP de cliente– Estado– Nombre del módulo– Tiempo en ejecución

Page 46: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Configuración de Log– El logging permite

capturar la actividad deun sitio web o de sus aplicaciones

– El log de sitios Web sepuede habilitar a nivel de servidor Web o de Sitio Web

Page 47: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Monitorización de peticiones fallidas– Una de las novedades más interesantes para

administradores y desarrolladores– Permite identificar rápidamente problemas con las

solicitudes de los clientes– IIS proporciona un log específico de la traza sin

necesidad de buscar en un log genérico– No se requiere recrear el error para poder resolverlo– Se pueden habilitar a nivel de

• Servidor Web• Sitio Web• Aplicación Web• Directorios físicos y virtuales

Page 48: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Para habilitar las trazas por línea de comandos:– Appcmd configure trace “site” /enable /directory:string

/maxLogFiles:int

Page 49: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Además de las trazas de solicitudes con error, IIS 7 permite crear reglas para registrar contenido específico

Page 50: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Monitorización

• Informes de resultados

Page 51: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

TechNews de Informática 64

• Suscripción gratuita en [email protected]

Page 52: Microsoft Windows Server 2008 Internet Information Services 7 Joshua Sáenz G. jsaenz@informatica64.com Código: HOL-WIN33

Contactos

• Informática 64– http://www.informatica64.com– [email protected]– +34 91 665 99 98

• Joshua Sáenz G.– [email protected]