lunes, 8 de febrero de 2016

Configurar la cabecera Server en el servidor web Apache 2 (Ubuntu y Windows)

En la anterior entrada hablé sobre las cabeceras que envían los servidores web y, en particular, sobre la cabecera "Server". Pero, ¿dónde se configura esta cabecera en nuestro servidor web, en particular en el caso de Apache?


Esto se determina en la directiva ServerToken en el fichero de configuración (apache2.conf en Ubuntu, httpd.conf en Windows), o bien en algún fichero incluido de manera transitiva en él. 

Esta directiva puede tomar los valores Prod, Major, Minor, Minimal, OS, Full, enviando cada vez más información detallada en ese orden. Si no se especifica, se asume el valor Full. Como se explica en la documentación oficial de Apache (http://httpd.apache.org/docs/2.0/es/mod/core.html#servertokens):



Fig. 1. Valores posibles para la directiva ServerTokens

Vale. Entonces ¿dónde está el fichero de configuración?

EN UBUNTU

Ubicación del fichero de configuración:  /etc/apache2/apache2.conf

Fig. 2. Cuando no está establecida la directiva, se devuelve la información "Full"

Puede verse que la directiva existe, a modo de ejemplo (pero sin ser efectiva), en un fichero de configuración disponible en el subdirectorio conf-available, pero para que esta entrada fuera efectiva tendríamos que incluir una referencia a él en el fichero principal /etc/apache2/apache2.conf, lo que ahora mismo no está ocurriendo. 

Como podemos observar, el servidor ahora mismo está devolviendo la cadena Apache/2.4.12 (Ubuntu)

En nuestro caso, nos limitaremos a incluir una línea con la directiva establecida al valor Prod (esto significa Producción, entorno desde el que se debería enviar la mínima información como medida de precaución).
Modificamos el fichero, reiniciamos el servidor (esto es necesario) y preguntamos ahora por las cabeceras

Fig. 3. Tras la modificación, la cabecera ha cambiado el valor enviado

Como se ve, ahora se está devolviendo el valor Apache a secas.


EN WINDOWS

Lo único que cambia en Windows es el fichero de configuración, que en este caso es apache\conf\httpd.conf o, como ocurre en mi caso, puedo cambiarlo en el fichero extra\httpd-default.conf, que es incluido en el primero mediante una directiva

# Various default settings
Include "conf/extra/httpd-default.conf"


Pues nada, ya sabemos cómo configurar la cabecera Server. Cuidado con lo que enviáis a vuestros clientes.

No hay comentarios:

Publicar un comentario