Cómo ocultar el número de versión de Apache y otra información confidencial


Cuando se envían solicitudes remotas a su servidor web Apache, de forma predeterminada, cierta información valiosa, como el número de versión del servidor web, los detalles del sistema operativo del servidor, los módulos Apache instalados y más, se envía al cliente en documentos generados por el servidor.

Esta es una gran cantidad de información para que los atacantes aprovechen las vulnerabilidades y obtengan acceso a su servidor web. Para evitar mostrar información del servidor web, mostraremos en este artículo cómo ocultar la información del servidor web Apache utilizando directivas de Apache particulares.

Las dos directivas importantes son:

Lo que permite agregar una línea de pie de página que muestre el nombre del servidor y el número de versión en documentos generados por el servidor, como mensajes de error, listados de directorios ftp mod_proxy, salida mod_info y muchos más.

Tiene tres valores posibles:

  1. Activado: permite agregar una línea de pie de página al final de los documentos generados por el servidor,
  2. Desactivado: desactiva la línea de pie de página y
  3. Correo electrónico: crea una referencia "mailto:"; que envía un correo al ServerAdmin del documento de referencia.

Determina si el campo de encabezado de respuesta del servidor que se envía a los clientes contiene una descripción del tipo de sistema operativo del servidor e información sobre los módulos de Apache habilitados.

Esta directiva tiene los siguientes valores posibles (más información de muestra enviada a los clientes cuando se establece el valor específico):

ServerTokens   Full (or not specified) 
Info sent to clients: Server: Apache/2.4.2 (Unix) PHP/4.2.2 MyMod/1.2 

ServerTokens   Prod[uctOnly] 
Info sent to clients: Server: Apache 

ServerTokens   Major 
Info sent to clients: Server: Apache/2 

ServerTokens   Minor 
Info sent to clients: Server: Apache/2.4 

ServerTokens   Min[imal] 
Info sent to clients: Server: Apache/2.4.2 

ServerTokens   OS 
Info sent to clients: Server: Apache/2.4.2 (Unix) 

Nota: Después de la versión 2.0.44 de Apache, la directiva ServerTokens también controla la información ofrecida por la directiva ServerSignature.

Para ocultar el número de versión del servidor web, los detalles del sistema operativo del servidor, los módulos Apache instalados y más, abra el archivo de configuración del servidor web Apache con su editor favorito:

$ sudo vi /etc/apache2/apache2.conf        #Debian/Ubuntu systems
$ sudo vi /etc/httpd/conf/httpd.conf       #RHEL/CentOS systems 

Y agregue/modifique/agregue las líneas a continuación:

ServerTokens Prod
ServerSignature Off 

Guarde el archivo, salga y reinicie su servidor web Apache así:

$ sudo systemctl restart apache2  #SystemD
$ sudo service apache2 restart     #SysVInit

En este artículo, explicamos cómo ocultar el número de versión del servidor web Apache y mucha más información sobre su servidor web usando ciertas directivas de Apache.

Si está ejecutando PHP en su servidor web Apache, le sugiero que oculte el número de versión de PHP.

Como de costumbre, puede agregar sus pensamientos a esta guía a través de la sección de comentarios a continuación.