Introducción
IIS es la abreviatura de Internet Information Server. Es el servidor WEB promovido principalmente por Microsoft. La versión comúnmente utilizada por los usuarios ahora es IIS 6 incluida en Windows 2003 o el anterior IIS 5. IIS está completamente integrado con Windows NT Server, por lo que los usuarios. Capaz de utilizar las funciones de seguridad integradas de Windows NT Server y NTFS (NT File System, sistema de archivos NT) para crear sitios de Internet e Intranet potentes, flexibles y seguros. IIS admite ISAPI, que se puede utilizar para ampliar las funciones del servidor. IIS está diseñado para establecer un conjunto integrado de servicios de servidor para admitir HTTP, FTP y SMTP. Puede proporcionar un servidor de Internet rápido, integrado y escalable.
El nuevo IIS7 añade más diseños de seguridad a Windows Server 2008 y los usuarios ahora pueden utilizar el de Microsoft. NET para ejecutar aplicaciones del lado del servidor. Además, la creación de módulos a través de las nuevas funciones de IIS7 reducirá la cantidad de ejecuciones de código en el sistema y minimizará la posibilidad de ser atacado por scripts de piratas informáticos. Desde una perspectiva de seguridad, esta es un área nueva en la que participa IIS. Tantas características nuevas nos hacen ansiosos por IIS7 en Windows Server 2008. Echemos un vistazo a las cinco características mejoradas más importantes de IIS:
IIS completamente modular
Si está muy familiarizado con el popular software de servidor web Apache, sabrá que su mayor ventaja radica en su personalización. Puede configurarlo para que solo muestre HTML estático o puede cargar dinámicamente diferentes módulos para permitir diferentes tipos de contenido de servicio. . Sin embargo, el IIS utilizado actualmente no puede implementar esta característica muy bien, lo que ha causado dos problemas: primero, debido al impacto en el código de demasiadas características que no son utilizadas por los usuarios, el rendimiento a veces no puede satisfacer a los usuarios; Existen riesgos de seguridad causados por demasiadas interfaces predeterminadas.
El nuevo IIS7 resuelve completamente este problema. IIS7 está dividido desde la capa central en más de 40 módulos con diferentes funciones. Funciones como validación, almacenamiento en caché, procesamiento de páginas estáticas y listados de directorios están todas modularizadas. Esto significa que su servidor web puede instalar los módulos funcionales correspondientes según sus necesidades operativas. Los módulos que pueden tener riesgos de seguridad y que no son necesarios ya no se cargarán en la memoria, la superficie de ataque del programa se reduce y el rendimiento también mejora.
IIS7 configurado mediante archivo de texto
Otra característica importante de IIS7 es que la herramienta de administración utiliza el nuevo sistema de configuración distribuido web.config. IIS7 ya no tiene un único almacenamiento de configuración de metabase, sino que utilizará el mismo modelo de archivo web.config compatible con ASP.NET, lo que permitirá a los usuarios almacenar e implementar configuraciones junto con el contenido de las aplicaciones web sin importar cuántos sitios haya. Se puede configurar directamente a través del archivo web.config, por lo que cuando la empresa necesita conectar una gran cantidad de sitios web, es posible que solo tome poco tiempo, porque el administrador solo necesita copiar el archivo web.config de cualquier sitio que Se ha preparado antes y luego establece la configuración. Se transfiere al servidor remoto junto con la aplicación web. No es necesario escribir scripts de administración para personalizar la configuración.
Al mismo tiempo, la herramienta de administración admite la "administración delegada". Los usuarios pueden delegar algunos archivos web.config identificables a otros empleados de la empresa. Por supuesto, en este caso, lo que se muestra en la herramienta de administración es la configuración del cliente. propio sitio web, en lugar de la configuración de toda la máquina, para que el administrador de IIS no tenga que preocuparse por cada pequeño cambio del sitio. El control de versiones es igualmente simple. Los usuarios solo necesitan mantener diferentes versiones de archivos de texto en la organización. y luego usarlos cuando sea necesario. Simplemente restaurarlos cuando sea necesario.
Los productos de Microsoft siempre se han enorgullecido de sus interfaces fáciles de usar. Sin embargo, como servidor IIS7 diseñado para profesionales de TI, esto no parece obvio. Mirando hacia atrás desde IIS 4 a IIS 6, la consola de administración proporcionada a los usuarios no es muy fácil. Es conveniente operar y, debido a limitaciones técnicas y otras razones, es difícil para los usuarios realizar todo el trabajo de administración a través de una interfaz unificada.
Herramienta de gestión del modo gráfico MMC
[Cortar-Página]En el nuevo IIS 7, este problema se ha mejorado significativamente. Los usuarios ahora pueden usar herramientas de administración para crear y administrar cualquier número de sitios web en máquinas cliente de Windows. Ya no se limita a un solo sitio web. Al mismo tiempo, en comparación con las versiones anteriores de IIS, la interfaz de administración de IIS7 es más amigable y potente. Además, las herramientas de administración de IIS7 están escritas en .NET y Windows Forms. se puede ampliar. Esto significa que los usuarios pueden agregar sus propios módulos de interfaz de usuario a la herramienta de administración para brindar soporte de administración para sus propios módulos de ejecución HTTP y ajustes de configuración.
Mejoras de seguridad de IIS 7
Los problemas de seguridad son siempre la máxima prioridad cuando Microsoft es atacado. De hecho, no es que Microsoft sea indiferente a la seguridad. Es porque Microsoft es un acorazado tan grande que es inevitable que se pierdan todos los secretos. a cada opinión de seguridad con sugerencias. Los problemas de seguridad de IIS se centran principalmente en la gestión eficaz y la gestión de permisos de los programas .NET. IIS 7 ha realizado las mejoras correspondientes en respuesta a los problemas de seguridad encontrados por el servidor IIS.
En la nueva versión, las configuraciones de administración de IIS y ASP.NET están integradas en una única herramienta de administración. Esto permite a los usuarios ver y configurar reglas de autenticación y autorización en un solo lugar, en lugar de tener que pasar por varios cuadros de diálogo diferentes. Esto proporciona a los gerentes una interfaz de usuario más consistente y clara, así como una experiencia de administración unificada en la plataforma web.
En IIS7, las aplicaciones .NET se ejecutan directamente a través del código IIS en lugar de enviarse a la extensión API del servidor de Internet, lo que reduce los posibles riesgos y mejora el rendimiento. Al mismo tiempo, la herramienta de administración tiene soporte integrado para miembros de ASP.NET 3.0 y. El sistema de gestión de roles proporciona soporte para la interfaz de gestión. Esto significa que los usuarios pueden crear y administrar roles y usuarios en la herramienta de administración, así como asignar roles a los usuarios. El siguiente es el diagrama de desglose completo de los componentes de IIS 7.
Diagrama de distribución completo de componentes de IIS 7
Entorno de gestión de Windows PowerShell para IIS 7
Creo que los amigos que prestan atención a la programación de scripts o están familiarizados con Exchange Server 2007 estarán familiarizados con Windows PowerShell. Windows PowerShell es un shell de línea de comandos de Windows especialmente diseñado para administradores de sistemas. En este shell se incluye un mensaje interactivo y un entorno de secuencias de comandos que se pueden usar de forma independiente o en combinación. Para los profesionales de TI que aman la administración de scripts, Windows PowerShell definitivamente hará que les encante. Para servidores IIS, Windows PowerShell también puede proporcionar funciones de administración integrales.
[Cortar-Página]Sin embargo, aunque PowerShell también puede administrar IIS6 ejecutándose en Windows Server 2003, IIS7 se administra específicamente a través de la línea de comandos de PowerShell. Incluye la nueva función APPCMD. APPCMD crea y configura sitios a través de una interfaz de línea de comandos estándar. Los escenarios de aplicación de dichas herramientas de línea de comandos también son muy comunes cuando se utiliza la administración de scripts en el entorno del usuario. gran ventaja.
IS 7.0 se incluye con los clientes de Windows Vista y la versión doméstica del sistema operativo también viene con IIS 7.0 (a diferencia de IIS 5.1, que sólo está disponible en XP Professional). La versión IIS 7.0 del servidor se lanzará con el servidor Windows Server 2008 a finales de este año y agregará un montón de características de implementación adicionales, incluyendo soporte de host más completo, soporte FTP seguro y soporte integrado para implementación de granjas web.
El soporte de la granja web sería especialmente interesante, ya que le permitiría implementar su aplicación web en un recurso compartido de archivos que contiene toda la codificación, configuración, contenido y claves necesarias para ejecutar un servidor. Luego, puede agregar cualquier cantidad de servidores web sin estado y sin configuración a una granja web simplemente apuntándolos a ese recurso compartido de archivos para cargar dinámicamente sus ajustes de configuración (incluidos enlaces, directorios virtuales, ajustes del grupo de aplicaciones, etc.) y el contenido de la aplicación. Esto hace que escalar una aplicación en varias máquinas sea pan comido, eliminando la necesidad de métodos de replicación para la configuración y la implementación de la aplicación (simplemente copie los archivos en un recurso compartido de archivos y todas las máquinas de la granja web cargarán el archivo de cambios inmediatamente).
La versión Beta 3 de Windows Server 2008 admite licencias de lanzamiento, por lo que pronto podrá aprovechar esta característica. Ya estamos ejecutando Windows Server 2008 en un clúster IIS 7.0, ¡así que no estará solo!
Diagrama de administración de Windows PowerShell
Migración IIS7.0
Migrar sitios web en IIS7.0 es más conveniente que IIS6.0 porque la mayor ventaja del servidor web Apache es su administración personalizada. IIS7.0 ahora usa el concepto de Apache, por lo que puede copiar el archivo de configuración del sitio a otro IIS7.0. instalarse en la máquina host Para obtener más información, obtenga información sobre "IIS7 configurado a través de archivos de texto" y "Entorno de administración de Windows PowerShell de IIS 7" más arriba.
[Cortar-Página]Integración de ASP.NET e IIS 7.0
En versiones anteriores de IIS, los desarrolladores necesitaban escribir extensiones/filtros ISAPI para ampliar la funcionalidad del servidor. Además de ser complicado de escribir, ISAPI también es muy limitado en la forma en que se conecta al servidor y permite a los desarrolladores personalizarlo. Por ejemplo, no puede implementar código de reescritura de URL en una extensión ISAPI (nota: ASP.NET se implementa como una extensión ISAPI). Si escribe código de larga duración como filtro ISAPI, el resultado es que bloqueará el subproceso de E/S del servidor web (es por eso que no permitimos que el código administrado se ejecute durante la fase de ejecución del filtro de la solicitud).
Uno de los principales cambios a nivel de arquitectura que realizamos en el motor de procesamiento central de IIS en IIS7 es permitir una escalabilidad extremadamente rica a través de una nueva arquitectura de canalización de solicitudes modular. Ahora puede escribir código en cualquier parte del ciclo de vida de cualquier solicitud HTTP registrando un módulo de extensibilidad HTTP en el servidor web. Estos módulos de extensibilidad se pueden escribir usando código C++ nativo o código administrado .NET (puede usar la interfaz ASP.NET System.Web.IHttpModule existente para lograr esto).
Todas las funciones "integradas" de IIS7 (autenticación, autorización, servicio de archivos estáticos, compatibilidad con listado de directorios, ASP clásico, registro, etc.) ahora se implementan mediante esta API pública de canalización modular. Esto significa que puede eliminar cualquiera de estas funciones "integradas" de IIS7 y reemplazarlas o ampliarlas con su propia implementación.
[Cortar-Página]El propio ASP.NET en IIS 7.0 también ha cambiado de una implementación ISAPI a un módulo directamente conectado al canal IIS7:
Cuadro comparativo de IIS6.0 e IIS7.0
Esto trae muchos beneficios:
1) Ahora puede utilizar la autenticación de formularios ASP.NET, miembros/roles y cualquier otra característica para todas las solicitudes al servidor (por ejemplo, archivos .htm, .php, .jsp).
2) Ahora puede reescribir fácilmente la URL de cualquier solicitud web o modificar la solicitud de todo tipo de formas interesantes.
3) Puede reemplazar o ampliar cualquier característica de IIS existente usando VB o C# (por ejemplo, puede eliminar el módulo de listado de directorios incorporado y conectar su propio módulo).
Esto realmente abre infinitas oportunidades de extensibilidad para los desarrolladores de .NET.
Seis nuevas características de IIS 7.0:
1) El núcleo de red modular permite a los usuarios agregar y eliminar funciones específicas. Si desea utilizar el componente de estadísticas de servicio, sólo se necesitan unos pocos módulos (excluyendo ISAPI).
2) Una canalización HTTP estándar unificada, que corresponde a las aplicaciones de administración local. Los usuarios pueden utilizar un sistema de autenticación basado en formularios para páginas web ASP clásicas.
3) Los usuarios pueden crear sus propios IHttpModule e IHttpHandlers e insertarlos en una canalización unificada.
4) Nuevo sistema de configuración XML distribuido, que aprovecha el sistema de configuración ASP.NET.
5) Mecanismo mejorado de diagnóstico y resolución de problemas, que incluye nuevas funciones de seguimiento y estado de tiempo de ejecución.
6) Nueva interfaz de usuario de administrador extensible y orientada a tareas.
En definitiva, IIS 7 proporcionará a los administradores y entusiastas de la Web herramientas de gestión más ricas y fáciles de usar. En el nuevo IIS7, tanto los aspectos de administración como de seguridad se han rediseñado completamente desde la perspectiva del grupo de usuarios. Con IIS7, los usuarios individuales pueden crear sus propios sitios de manera más rápida y sencilla, mientras que los usuarios empresariales pueden mantener y administrar su propio entorno WEB. de forma más completa y segura. A medida que se acerca Windows Server 2008, creo que habrá más y más presentaciones sobre la administración de IIS7. Esperemos y veamos si la nueva versión nos ha traído cambios sustanciales o es solo una mejora de las funciones del servidor IIS.
[Cortar-Página]En el nuevo IIS 7, este problema se ha mejorado significativamente. Los usuarios ahora pueden usar herramientas de administración para crear y administrar cualquier número de sitios web en máquinas cliente de Windows. Ya no se limita a un solo sitio web. Al mismo tiempo, en comparación con las versiones anteriores de IIS, la interfaz de administración de IIS7 es más amigable y potente. Además, las herramientas de administración de IIS7 están escritas en .NET y Windows Forms. se puede ampliar. Esto significa que los usuarios pueden agregar sus propios módulos de interfaz de usuario a la herramienta de administración para brindar soporte de administración para sus propios módulos de ejecución HTTP y ajustes de configuración.
Mejoras de seguridad de IIS 7
Los problemas de seguridad son siempre la máxima prioridad cuando Microsoft es atacado. De hecho, no es que Microsoft sea indiferente a la seguridad. Es porque Microsoft es un acorazado tan grande que es inevitable que se pierdan todos los secretos. a cada opinión de seguridad con sugerencias. Los problemas de seguridad de IIS se centran principalmente en la gestión eficaz y la gestión de permisos de los programas .NET. IIS 7 ha realizado las mejoras correspondientes en respuesta a los problemas de seguridad encontrados por el servidor IIS.
En la nueva versión, las configuraciones de administración de IIS y ASP.NET están integradas en una única herramienta de administración. Esto permite a los usuarios ver y configurar reglas de autenticación y autorización en un solo lugar, en lugar de tener que pasar por varios cuadros de diálogo diferentes. Esto proporciona a los gerentes una interfaz de usuario más consistente y clara, así como una experiencia de administración unificada en la plataforma web.
En IIS7, las aplicaciones .NET se ejecutan directamente a través del código IIS en lugar de enviarse a la extensión API del servidor de Internet, lo que reduce los posibles riesgos y mejora el rendimiento. Al mismo tiempo, la herramienta de administración tiene soporte integrado para miembros de ASP.NET 3.0 y. El sistema de gestión de roles proporciona soporte para la interfaz de gestión. Esto significa que los usuarios pueden crear y administrar roles y usuarios en la herramienta de administración, así como asignar roles a los usuarios. El siguiente es el diagrama de desglose completo de los componentes de IIS 7.
Diagrama de distribución completo de componentes de IIS 7
Entorno de gestión de Windows PowerShell para IIS 7
Creo que los amigos que prestan atención a la programación de scripts o están familiarizados con Exchange Server 2007 estarán familiarizados con Windows PowerShell. Windows PowerShell es un shell de línea de comandos de Windows especialmente diseñado para administradores de sistemas. En este shell se incluye un mensaje interactivo y un entorno de secuencias de comandos que se pueden usar de forma independiente o en combinación. Para los profesionales de TI que aman la administración de scripts, Windows PowerShell definitivamente hará que les encante. Para servidores IIS, Windows PowerShell también puede proporcionar funciones de administración integrales.