2.2.5. Cómo proteger el servidor HTTP de Apache

El servidor HTTP Apache es uno de los servicios más estables y seguros que se distribuye con Red Hat Enterprise Linux. Un gran número de opciones y técnicas están disponibles para proteger al servidor HTTP Apache — muy numerosas para profundizar aquí. La sección a continuación explica brevemente las buenas prácticas cuando se ejecuta el servidor HTTP Apache.
Siempre verifique si los scripts que se ejecutan en el sistema funcionan como se espera antes de colocarlos en producción. También asegúrese de que el usuario de root escriba permisos a cualquier directorio que contenga scripts o CGI. Para hacerlo, ejecute los siguientes comandos como usuario de root:
  1. chown root <directory_name>
  2. chmod 755 <directory_name>
Los administradores de sistemas deben tener cuidado al usar las siguientes opciones de configuración (configuradas en /etc/httpd/conf/httpd.conf):
FollowSymLinks
Esta directiva se habilita de forma predeterderminada, por lo tanto sea cauteloso al crear enlaces simbólicos en la raíz del documento del servidor de Web. Por ejemplo, es una mala idea proporcionar el enlace simbólico a /.\n
Indexes
Esta directiva está habilitada de forma predeterminada, pero puede no ser deseable. Para evitar que los visitantes naveguen los archivos en el servidor, retire esta directiva.
UserDir
La directiva UserDir se inhabilita de forma predeterminada porque puede confirmar la presencia de la cuenta de un usuario en el sistema. Para habilitar el directorio de usuario en el servidor, use las siguientes directivas:
UserDir enabled
UserDir disabled root
Estas directivas activan la navegación del directorio de usuario para todos los directorios de usuarios diferentes a /root/. Para añadir usuarios a la lista de cuentas inhabilitadas, añada una lista delimitada por espacios en la línea UserDir disabled.

Importante

No retire la directiva IncludesNoExec directive. Por defecto, el módulo Server-Side Includes (SSI) no puede ejecutar comandos. Se recomienda no cambiar esta configuración a menos que sea absolutamente necesario, ya que podría permitir que un agresor ejecute comandos en el sistema.