Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
por equipo de IIS, Tobin Titus
Compatibility
| Versión | Notas |
|---|---|
| IIS 7.0 y versiones posteriores | Las características descritas en este artículo se introdujeron en IIS 7.0. |
| IIS 6.0 y versiones anteriores | Las características descritas en este artículo no se admiten antes de IIS 7.0. |
Introducción
IIS 7.0 y versiones posteriores tienen una nueva interfaz de usuario de versiones anteriores de IIS: el Administrador de IIS. En este artículo se describe la apariencia, la delegación de características, la interacción con la configuración y la comunicación remota. Tenga en cuenta que es posible que algunas versiones de IIS no tengan algunas de las funciones o características que se describen en este documento.
¿Por qué tuvo que cambiar? Estas son algunas de las principales razones:
- IIS y ASP.NET trabajar juntos: los usuarios de IIS 6.0 hacen clic con el botón derecho en un sitio web, seleccionan "Todas las propiedades" y obtienen un cuadro de diálogo con una serie de pestañas para diferentes configuraciones. Con IIS 7.0 y versiones posteriores, el Administrador de IIS necesitaba mostrar la configuración de nuevas características, como el almacenamiento en caché de salida, el seguimiento de solicitudes con errores y el filtrado de solicitudes, así como la configuración de ASP.NET y partes pertinentes de .NET Framework. La nueva funcionalidad habría requerido muchas más pestañas nuevas, una opción inaceptable.
-
Administración delegada: mover la configuración de la metabase al sistema de configuración de .NET significa que los usuarios pueden, si se permite, establecer la configuración de IIS en web.config archivos. Por ejemplo, la configuración de una aplicación
http://www.contoso.com/salesse puede escribir en el archivo de configuración raíz applicationHost.config, en el archivo web.config de sitiohttp://www.contoso.com/o directamente en el archivo web.config de la aplicación. El nuevo Administrador de IIS tiene que: 1) permitir que un administrador controle la configuración permitida en web.config archivos, 2) muestre al administrador o usuario donde se escribe la configuración. El administrador de IIS anterior no estaba a la altura de estos desafíos. - Razones de ingeniería: El software tiene una vida útil. El tiempo aporta nuevas tecnologías, nuevos requisitos, nuevas convenciones, y hay un punto en el que la actualización del software existente se vuelve más intensiva y costosa que volver a generar el software. El Administrador de IIS se acercaba al final de su vida útil.
¿Hay algo más que saber? Una vez que decidimos reescribir el Administrador de IIS, aprovechamos la oportunidad de mejorar de varias maneras clave:
- Extensibilidad: Ampliar la versión IIS 6.0 del Administrador de IIS era excesivamente difícil. El nuevo Administrador de IIS facilita mucho la adición de páginas de características, nodos de vista de árbol y elementos de menú; todo ello mediante código administrado y WinForms. Las nuevas extensiones del Administrador de IIS se detectan y descargan automáticamente mediante clientes remotos del Administrador de IIS que se conectan al servidor.
- Administración remota: la administración remota se realiza a través de HTTPS, lo que facilita la administración del firewall. El servicio de administración web (WMSVC) es el componente opcionalmente instalable que permite la administración remota.
- Nueva apariencia: el Administrador de IIS necesitaba un modelo más escalable para exponer la configuración y la vista de lista de características resultante es similar al Panel de control. Una vista de lista se puede ordenar, agrupar y ver de diferentes maneras, lo que facilita la búsqueda de lo que está buscando. La navegación del Administrador de IIS también ha adoptado una apariencia más similar a un navegador, con una barra de direcciones al estilo del Explorador de Windows.
Nota:
Este documento se escribió para Windows Server 2008. Es posible que Windows Vista® no tenga algunas de las funciones o características que se describen en este documento.
Nueva apariencia y sensación
El Administrador de Internet Information Services (IIS) ha tenido navegación de tipo Back/Forward en versiones anteriores y el nuevo Administrador de IIS lo lleva aún más lejos agregando una barra de direcciones que funcione como el Explorador de Windows.
Figura 1: Nuevo administrador de IIS
Página principal
La página principal se familiarizará en cuanto empiece a usar el Administrador de IIS. La lista de características del centro se puede ordenar por nombre o descripción de la característica, agrupada por área o categoría, y se puede ver en diferentes diseños.
Figura 2: Agrupación en el Administrador de IIS
Alcance de funciones
Los nodos servidor, sitio, aplicación, directorio virtual y carpeta de la vista de árbol muestran una página principal con una lista de características. La mayoría de las características aparecen en páginas principales para todos estos nodos, pero hay excepciones.
Estas características aparecen en la página principal del servidorsolo porque son información, datos o configuración de todo el servidor:
- Restricciones de ISAPI y CGI
- Certificados (pero no aparecen en todas las conexiones remotas)
- Servicio de administración (pero no aparece en todas las conexiones remotas)
- Procesos de trabajo
Estas características aparecen en todas partes excepto la página principal del servidor porque son configuración de la aplicación y no son lógicas en el nivel de servidor o porque funcionan mejor de esa manera (SSL):
- Usuarios de membresía
- Roles de pertenencia
- Profile
- SSL
Las características asociadas a la delegación tienen reglas especiales sobre dónde aparecen:
- Delegación de características: siempre aparece solo para el nodo raíz de una conexión.
- Administradores: solo aparece para los nodos servidor, sitio y aplicación
Diseños de página con características destacadas
Hay tres tipos de páginas en IIS
Página de lista
Las páginas de lista contienen listas. La mayoría de las páginas de lista permiten agrupar por valores en una o varias columnas. Las páginas de lista principales, como Sitios y grupos de aplicaciones, permiten filtrar las entradas de lista buscando en una columna de lista las entradas que coinciden con una cadena de búsqueda.
Figura 3: Página de lista del administrador de IIS
Las tareas Agregar, editar o quitar del panel de tareas le permiten manipular el contenido de la lista. Las configuraciones de características que no son específicas de una entrada de lista, por ejemplo, cuando se especifica que los errores personalizados deberían ser reemplazados por errores detallados en solicitudes locales, generalmente se configuran a través de la tarea Editar configuración de características....
Figura 4: Acciones del administrador de IIS
Cuadrícula de propiedades
Las páginas de cuadrícula de propiedades muestran cuadrículas de propiedades relacionadas. En la parte superior de la cuadrícula de propiedades, el selector Mostrar le permite elegir entre ver los nombres descriptivos de las propiedades, los nombres de las propiedades de configuración, o ambos. En la captura de pantalla siguiente se muestran ambos nombres.
Figura 5: Cuadrículas de propiedades en el Administrador de IIS
Dialog
Las páginas de diálogo tienen casillas, cuadros de texto y botones de radio, y generalmente son el tipo de página más conocido. Use Aplicar/Cancelar en el panel de tareas para guardar los cambios.
Vista de contenido
La vista de contenido es una pantalla de solo lectura; no puede crear, copiar, mover ni eliminar archivos o carpetas en esta vista. Para acceder a la vista de contenido, haga clic en "Vista de contenido" en el modificador Vista de características/Vista de contenido en la parte inferior del panel central del Administrador de IIS, o bien haga clic con el botón derecho en un nodo de vista de árbol y seleccione "Cambiar a vista de contenido".
La única manera de establecer la configuración de un archivo es cambiar a Vista de contenido, seleccionar el archivo y hacer clic en "Cambiar a vista de características" en el menú contextual o en el panel de tareas.
Figura 6: Cambiar a Vista de características
Delegación de funcionalidades
Es posible que le interese la delegación de características si es administrador del servidor y no es la persona principal que proporciona contenido en el servidor, o si es desarrollador y desea tener más control sobre la configuración de IIS para la aplicación.
La delegación de características de IIS significa administrar:
- bloqueo de sección de configuración para controlar qué configuración se puede establecer en web.config (por lo general, una sección de configuración de IIS es un módulo IIS)
- el conjunto de usuarios de sitio y aplicación que tienen permiso para usar el Administrador de IIS para ver la configuración y establecer la configuración de características con secciones de configuración desbloqueadas
Lo siguiente es una explicación cursoria de la delegación de características en el Administrador de IIS. Para ver un tutorial detallado, consulte Cómo gestionar la delegación de características.
Bloqueo de configuración
Si una sección de configuración está "bloqueada" de forma predeterminada, solo se puede configurar en applicationHost.config. El Administrador de IIS proporciona un medio para que los administradores del servidor "desbloqueen" las secciones de configuración de IIS. Una vez desbloqueada una sección de configuración, se puede establecer en archivos web.config por usuarios que no son administradores.
Por ejemplo, la característica "Páginas de error personalizadas" del Administrador de IIS interactúa con la configuración en la sección "system.webServer/httpErrors". Si el administrador del servidor usa el Administrador de IIS o appcmd para desbloquear la sección de configuración system.web/httpErrors, la sección httpErrors aparecerá dentro de una etiqueta de ubicación con overrideMode="allow" en applicationHost.config:
<location path="" overrideMode="Allow">
<system.webServer>
<httpErrors/>
</system.webServer>
</location>
OverrideMode="allow" significa que es válido establecer la configuración de httpErrors en un archivo web.config:
<configuration>
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/errors/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</configuration>
Consulte la sección "Conexiones de servidor, sitio y aplicación" a continuación para ver cómo afecta el bloqueo de configuración a las conexiones. Para obtener información detallada sobre los bloqueos de configuración, consulte Cómo usar el bloqueo de configuración.
Administradores de sitios y aplicaciones
Además, los administradores del servidor pueden permitir que los administradores que no sean administradores usen el Administrador de IIS para conectarse a un sitio o una aplicación. Los no administradores que pueden conectarse a sitios o aplicaciones se denominan "Administradores de sitios" o "Administradores de aplicaciones" y pueden:
- Administrar la configuración desbloqueada para su sitio o aplicación (la configuración se escribe en archivos web.config)
- Ver las opciones de configuración bloqueadas sin poder modificarlas
- Agregar otros administradores de sitios o aplicaciones para su sitio o aplicación
Para obtener información sobre cómo crear administradores de sitios y aplicaciones, consulte la documentación en línea Crear sitio y administradores de aplicaciones para delegación.
Conexiones de servidor, sitio y aplicación
Solo los administradores de máquinas pueden usar el Administrador de IIS para conectarse a un servidor web. Las conexiones de servidor pueden escribir en ambos archivos de configuración raíz, applicationHost.config y web.config raíz, y en todos los archivos web.config distribuidos. Si una sección de configuración está bloqueada en applicationHost.config, la característica correspondiente se leerá y escribirá en una conexión de servidor porque los cambios de configuración se escriben en applicationHost.config en una etiqueta de ubicación.
Los administradores de máquinas y los administradores de sitio designados pueden conectarse a sitios web. Las conexiones del sitio solo pueden escribir en archivos web.config en la carpeta raíz del sitio. Si una sección de configuración está bloqueada en applicationHost.config, la característica correspondiente aparecerá de solo lectura en las conexiones de sitio porque las conexiones de sitio no pueden escribir la configuración en applicationHost.config (incluso en una etiqueta de ubicación). Esto afecta tanto a los administradores de máquinas como a los administradores del sitio.
Figura 7: Jerarquía de Configuración en el Administrador de IIS
Los administradores de máquinas, los administradores de aplicaciones designados y los administradores de sitio del sitio primario de la aplicación pueden conectarse a una aplicación. Las conexiones de aplicación solo pueden escribir en archivos web.config bajo la carpeta raíz de la aplicación. Si una sección de configuración está bloqueada en applicationHost.config o en el archivo web.config del sitio, la característica correspondiente aparecerá de solo lectura en las conexiones de aplicación.
Para obtener información sobre cómo conectarse a un servidor, sitio o aplicación, consulte la documentación en línea sobre la administración de conexiones en IIS 7.0.
Configuración
Incluso si nunca cambia el bloqueo de configuración y nunca usa la delegación de características, en algún momento se preguntará cómo el Administrador de IIS decide dónde escribir la configuración. Hay dos reglas que definen este comportamiento:
- ApplicationHost.config frente a Web.configraíz: si la característica aparece en el área ASP.NET del Administrador de IIS, la configuración de nivel de servidor se escribirá en el archivo raíz web.config para .NET Framework v2.0. Si la característica aparece en el área IIS del Administrador de IIS, la configuración del nivel de servidor se escribirá en applicationHost.config. La única excepción a esta regla es Autenticación de formularios, que se encuentra en la característica Autenticación en el área IIS.
- Configuración bloqueada frente a desbloqueada: todas las secciones de configuración de ASP.NET y algunas secciones de configuración de IIS, se desbloquean de forma predeterminada. Para las secciones desbloqueadas, el Administrador de IIS escribirá en el web.config del sitio si se cambia la configuración del sitio o la configuración de una aplicación si se cambia la configuración de una aplicación. La mayoría de las secciones de configuración de IIS están bloqueadas de forma predeterminada. En las secciones bloqueadas, el Administrador de IIS siempre escribirá en applicationHost.config incluso al modificar la configuración de sitios y aplicaciones.
Barra de estado
La barra de estado muestra dónde almacenará la configuración el Administrador de IIS.
Configuración: "<config_file_object_path>" <config_file_name>, <location path="<path>">
<config\_file\_object\_path> es la ruta de acceso al objeto de archivo de configuración, por ejemplo:
- "localhost": configuración de nivel de servidor; applicationHost.config para características de IIS, web.config raíz para las características de ASP.NET.
- "localhost/Sitio web predeterminado": el archivo web.config en la carpeta física del sitio web predeterminado
- "localhost/Sitio web predeterminado/carreras/técnico": el archivo web.config en la carpeta física que se asigna a la dirección URL "/carreras/técnicas" en el sitio web predeterminado
<config\_file\_name> es el nombre del archivo de configuración de destino, por ejemplo:
- "applicationHost.config o Web.configraíz ": applicationHost.config para características de IIS, web.config raíz para características de ASP.NET
- "web.config": un archivo web.config en el espacio de nombres web
<location\_path> es la ruta de acceso de ubicación al objeto que se va a configurar (para obtener más información sobre las rutas de acceso de ubicación, vea Información general de configuración). Esta parte del texto solo aparece si la sección de configuración de la característica está bloqueada en un nivel superior.
Ejemplo: Escritura en ApplicationHost.config frente a Web.config raíz
La compresión es una característica de IIS y aparece en IIS si agrupa o filtra la lista de características de la página principal por Área. Si ha navegado a la página Compresión de nivel de servidor y deshabilita la compresión estática, el Administrador de IIS escribirá esta configuración en %windir%\Windows\system32\inetsrv\applicationHost.config:
<urlCompression doStaticCompression="false" />
La compilación de .NET es la configuración de .NET Framework y aparece en ASP.NET si agrupa o filtra la lista de características de la página principal por área. Si ha navegado a la página compilación de .NET de nivel de servidor y establece el idioma predeterminado en C#, el Administrador de IIS agregará el atributo defaultLanguage a la sección de compilación del archivo raíz web.config, es decir %windir%\Windows\\Microsoft.NET\Framework\v2.0.50727\CONFIG\web.config, :
<compilation defaultLanguage="C#">
La barra de estado en ambos casos mostrará: Configuración: 'localhost', applicationHost.config o root web.config
Ejemplo: Escribir en configuración bloqueada frente a desbloqueada
La sección de configuración "defaultDocument" de IIS se desbloquea de forma predeterminada. Si configura el documento predeterminado para el sitio web predeterminado, el Administrador de IIS escribirá esta configuración en %windir%\inetpub\wwwroot\web.config:
<configuration>
<system.webServer>
<defaultDocument>
<files>
<clear />
<add value="default.aspx" />
</defaultDocument>
</system.webServer>
</configuration>
La barra de estado leerá: Configuración: "Sitio web predeterminado" web.config
La sección de configuración "httpErrors" de IIS se desbloquea de forma predeterminada. Si personaliza la respuesta HTTP 404 para el sitio web predeterminado, el Administrador de IIS escribirá esta configuración en %windir%\Windows\system32\inetsrv\applicationHost.config:
<location path="Default Web Site" overrideMode="Allow">
<system.webServer>
<httpErrors>
<remove statusCode="404" subStatusCode="-1" />
<error statusCode="404" path="/err/404.aspx" responseMode="Redirect" />
</httpErrors>
</system.webServer>
</location>
La barra de estado mostrará: "localhost" applicationHost.config o web.config raíz, <location path="Default Web Site">
La comunicación remota mediante el Administrador de IIS para IIS 6.0 y versiones anteriores de IIS se realizaba a través de MMC y siempre estaba habilitado. A partir de IIS 7.0 y versiones posteriores, la administración remota de IIS Manager debe estar habilitada explícitamente. Toda la administración remota se realiza a través de HTTPS y se controla mediante un componente IIS denominado Servicio de administración web (WMSVC). Si quieres habilitar la administración remota de IIS 7.0 y superiores a través del Administrador de IIS, lee Cómo habilitar la administración remota del Administrador de IIS.
Servicio de administración web (WMSVC)
El servicio de administración web (WMSVC) es un servidor web independiente (núcleo web hospedable (HWC)) hospedado en un servicio NT. Después de instalar e iniciar WMSVC, escucha en el puerto 8172 en todas las direcciones IP sin asignar. Espera recibir solo 4 tipos de solicitudes y cada una de ellas está administrada por su propio controlador:
- Solicitudes de inicio de sesión para login.axd
- Solicitudes para descargar código en el archivo download.axd
- Solicitudes de servicio de administración a service.axd
- Solicitudes de ping a ping.axd
Solicitudes de inicio de sesión
El Administrador de IIS envía una solicitud de autenticación a través de la red a WMSVC para iniciar una conexión. La autenticación es NTLM o básica, en función de lo que el usuario haya seleccionado cuando se les pida que proporcionen credenciales en el cuadro de diálogo de conexión.
Figura 9: Especificación de credenciales
Solicitudes de descarga de código
Si el inicio de sesión se realiza correctamente, WMSVC devuelve una lista de módulos de interfaz de usuario para la conexión. Por ejemplo, cada página del Administrador de IIS, como "Páginas de error personalizadas" corresponde a un módulo. Si hay un módulo que el Administrador de IIS no tiene, solicitará descargar los archivos binarios del módulo (por ejemplo, esto sucedería si un administrador del servidor instaló un nuevo producto de seguridad RSA en su servidor de producción, pero no instaló el producto en su máquina de escritorio que usa para conectarse al servidor).
Solicitudes de servicio de administración
Una vez establecida la conexión, el usuario final interactúa con el Administrador de IIS que provoca solicitudes de servicio de administración. El servicio de gestión solicita servicios directos del módulo en WMSVC para leer y escribir configuraciones, así como para gestionar el estado de ejecución y los proveedores en el servidor.
Solicitudes de ping
Las solicitudes de ping se realizan desde el servicio WMSVC al servidor web (HWC) que hospeda. Las solicitudes de ping son un mecanismo sencillo para asegurarse de que el núcleo web hospedable sigue respondiendo.
Configuración del servicio
WMSVC tiene un conjunto muy pequeño de configuraciones editables almacenadas en el registro. Cada vez que se inicia el servicio, los archivos de configuración web se vuelven a generar en %windir%\ServiceProfiles\LocalService\AppData\Local\Temp\WMSvc<GUID>\. Los administradores no pueden editar los archivos de configuración web.
Figura 10: Cambio de configuración en el Registro
Security
La conexión remota del Administrador de IIS y del Servicio de Administración Web (WMSVC) ha pasado por una serie de revisiones para garantizar que la funcionalidad sea sencilla y segura. Estas son algunas de las medidas de seguridad adoptadas:
- RequiereSSL (HTTPS) para todas las conexiones para proteger los datos pasados entre el cliente remoto del Administrador de IIS y WMSVC.
- Se ejecuta como servicio local con un conjunto de permisos reducido
Configuración de Hostable Web Core (HWC) estrictamente controlada, incluido un conjunto mínimo de módulos necesarios y reglas de filtrado de solicitudes cuidadosamente elaboradas.