Diversas prestaciones de IBM® HTTP Server V5.3 para z/OS están disponibles en IBM HTTP Server, pero se implementan de forma distinta. Conozca las diferencias clave en la configuración básica de los dos servidores web.
Esta sección y los capítulos se corresponden con la sección y los capítulos de la publicación de número SC34-4826-09 de la guía z/OS HTTP Server Planning, Install, and Using de IBM HTTP Server V5.3 for z/OS.
IBM HTTP Server puede utilizar archivos estáticos o ejecutar archivos de script CGI. Estos archivos pueden estar en directorios predeterminados o en directorios que especifique. Puede utilizar varias directivas para usar estos archivos. Utilice la sección Directory para agrupar las directivas y especificar que se apliquen a un directorio determinado.
Los archivos estáticos están en el directorio raíz_instalación/htdocs de forma predeterminada. Puede especificar un directorio alternativo en la directiva de alias para correlacionar el directorio alternativo con un prefijo de dirección web. Después, puede crear o copia una sección Directory y hacer que apunte al directorio alternativo. Por ejemplo, puede copiar la directiva Directory que especifica el directorio predeterminado raíz_instalación/htdocs y cambiar desde el directorio predeterminado al directorio raíz_instalación/static.
Los scripts CGI se ejecutan desde el directorio raíz_instalación/cgi-bin/ de manera predeterminada. Puede especificar un directorio alternativo en la directiva ScriptAlias para correlacionar el directorio alternativo con un prefijo de dirección web. Después, puede crear o copia una sección Directory y hacer que apunte al directorio alternativo. Por ejemplo, puede copiar la directiva Directory que especifica el directorio predeterminado raíz_instalación/cgi-bin/ y cambiar desde el directorio predeterminado al directorio raíz_instalación/cgi2.
Para obtener más información sobre directivas, consulte la documentación de Apache HTTP Server.
Puesto que la directiva DirectoryIndex se ha establecido en index.html en el archivo predeterminado httpd.conf, IBM HTTP Server utiliza el archivo de índices de directorio de index.html para solicitudes de directorio. Puede establecer la directiva DirectoryIndex en otros archivos para que la utilice IBM HTTP Server. También puede añadir la directiva Options con el argumento Indexes a una nueva sección Directory o a una ya existente de modo que el servidor web devuelva información de dicho directorio. Si incluye un signo + delante del argumento Indexes, la sección Directory hereda los argumentos establecidos en las otras directivas Options. Si no se establece ninguna de las directivas DirectoryIndex ni Options, el servidor web devuelve un error 403.
Para obtener más información sobre directivas, consulte la documentación de Apache HTTP Server.
Puede administrar IBM HTTP Server sólo si actualiza los archivos de configuración de EBCDIC.
El archivo de configuración de IBM HTTP Server predeterminado es raíz_instalación/conf/httpd.conf. Si desea revisar o recuperar los valores predeterminados enviados, los puede encontrar en el archivo raíz_instalación/conf/httpd.conf.default.
El gobierno de los Estados Unidos y los gobiernos de otros países regulan los productos que se utilizan para el cifrado y prohíben su exportación a no ser que su tamaño de claves esté estrictamente limitado. A medida que el gobierno estadounidense actualiza sus leyes de exportación y los gobiernos de fuera de los Estados Unidos actualizan las reglas de importación, las longitudes de claves que se admiten y las especificaciones de cifrado pueden cambiar.
IBM HTTP Server admite el cifrado SSL que se describe en el tema Especificaciones de cifrado SSL.
Puede utilizar el cifrado de hardware para mejorar el rendimiento de las sesiones SSL entre el cliente y el servidor. Por el momento, el mayor beneficio para el rendimiento del servidor web está en el reconocimiento SSL. El reconocimiento utiliza claves y funciones asimétricas. El servidor web utiliza tecnología RSA para implementar la función asimétrica. Al implementar SSL sin cifrado de hardware, las funciones asimétricas son mucho más lentas que las funciones simétricas. Así, cuando implementa el cifrado de hardware con el servidor web, compruebe que establece las claves maestras asimétricas de forma adecuada. Utilice el software Integrated Cryptographic Services Facility (ICSF) para poder beneficiarse de la mejora en el rendimiento. Las claves maestras asimétricas no son las mismas que las claves RSA del servidor web.
Las especificaciones de cifrado DES (Encryption Standard) y las especificaciones de cifrado Triple-DES utilizan las claves simétricas para manejar la transmisión de datos. Es posible que la transmisión de datos no sea más rápida en el hardware. El hecho de que la transmisión de datos sea más rápida en el hardware o software depende del tamaño de la corriente de datos. SSL debería enviar corrientes de datos relativamente pequeñas, por norma 4K bytes o menos. Las corrientes de datos de menor tamaño suelen ser más rápidas en el software. Las corrientes de gama media pueden ser más rápidas en hardware o software. Las corrientes de datos de gran tamaño son más rápidas en el hardware.
Para obtener información sobre cómo implementar el cifrado de hardware, lea los manuales adecuados. Por ejemplo, lea la publicación z/OS Processor Resource/Systems Management Planning Guide en el portal de soporte de IBM. Además, puede leer la publicación z/OS Cryptographic Services ICSF Administrator's Guide y la publicación z/OS Cryptographic Services ICSF System Programmer's Guide, que están disponibles en la biblioteca de Internet de z/OS.
Para habilitar Transport Layer Security (TLS), utilice el ejemplo de host virtual SSL del archivo conf/httpd.conf.default. El ejemplo contiene los elementos obligatorios para habilitar TLS, como una directiva Listen, la directiva SSLEnable y un módulo mod_ibm_ssl.
Puede utilizar la directiva SSLCipherSpec para controlar el orden de los niveles de cifrado. IBM HTTP Server siempre aplica el orden de preferencia. Consulte la directiva SSLCipherSpec en el tema sobre directivas SSL.
No tiene ninguna tarea que hacer en este paso porque IBM HTTP Server carga de manera predeterminada los módulos comunes que limitan el acceso a los recursos.
Utilice las secciones de configuración para incluir directivas de configuración relacionadas con la protección. Lea la información sobre las secciones de configuración en la documentación de Apache HTTP Server.
Para los recursos en el sistema de archivos jerárquico (HFS), utilice las directivas <Directory> y <DirectoryMatch> para incluir directivas de protección. Para otros recursos que no estén en HFS, como los recursos que los plug-in sirven, utilice las directivas <Location> y <LocationMatch>.
Puede comprobar las contraseñas de IBM HTTP Server y compararlas con archivos de contraseñas de usuarios y grupos. No obstante, si desea comprobar las contraseñas de IBM HTTP Server comparándolas con el sistema local, especifique la directiva AuthBasicProvider SAF. También puede cambiar el ID de usuario SAF con el que se sirve una solicitud especificando la directiva SAFRunAs.
Si desea solicitar la autenticación de cliente SSL en un host virtual, especifique la directiva SSLCLientAuth required. Utilice la directiva SSLClientAuthRequire para especificar los valores de atributos, o los grupos de valores de atributos, que deben validarse contra un certificado de cliente para que el servidor permita acceso al recurso protegido.
Utilice los ejemplos siguientes como guía en la creación de las configuraciones de protección:
Alias /my-app /opt/my-app/htdocs
<Directory /opt/my-app/htdocs>
# Permite las solicitudes que coinciden con las directivas allow. A continuación, rechaza las solicitudes que coinciden con las directivas deny.
# Después, rechaza solicitudes que no coinciden con las directivas allow o deny.
Order allow,deny
# Permite el acceso sólo a los usuarios del host local.
Allow from 127.0.0.1
</Directory>
<Directory /opt/my-app/htdocs/members-only>
Order allow,deny
Allow from 127.0.0.1
# Añadir autenticación básica HTTP.
AuthType Basic
AuthBasicProvider file
AuthName "Login with your example.com user ID."
# Utilizar la utilidad htpasswd en el archivo <raíz_instalación>/bin/htpasswd para mantener las contraseñas.
# Almacenar el archivo de ID de usuario y contraseña en un directorio distinto del que está protegiendo.
AuthUserFile /opt/my-app/users.passwd
Require valid-user
</Directory>
<Directory /opt/my-app/htdocs/admin>
...
Require user administrator
</Directory>
<Directory /opt/my-app/htdocs/admin>
...
# archivo de texto con varias líneas group-name: member1 member2...
# Almacenar el archivo de grupo en un directorio distinto del que está protegiendo.
AuthzGroupFile /auth/groups
Require group admins
</Directory>
<Directory /opt/my-app/htdocs/admin>
...
Require group admins
Satisfy any
Order allow,deny
Allow from 127.0.0.1
</Directory>
Puede limitar los archivos a los que puede acceder un usuario si anida la directiva <Files> o la directiva <FilesMatch> dentro de la directiva <Directory> o de la directiva <DirectoryMatch>.
No puede permitir acceso basado en una combinación de un nombre de usuario y una dirección, como bob@192.168.1.1 y steve@192.168.2.2, sin escribir su propio módulo Apache para la autorización.
Un archivo de grupo en IBM HTTP Server es sólo una correlación de un nombre de grupo con una lista de usuarios. No puede tener definiciones anidadas ni incluir especificaciones de direcciones.
IBM HTTP Server no tiene archivos de lista de control de acceso. Puede utilizar archivos .htaccess para limitar el acceso a los recursos. No obstante, intente no utilizar archivos .htaccess si puede actualizar el archivo httpd.conf ya que el uso de archivos .htaccess ralentiza el servidor. Como alternativa, incluya directivas en una directiva <Directory> y coloque todas las directivas en el archivo httpd.conf.