Recibimos comentarios de nuestro informe más reciente diciendo que deberíamos desactivar los tokens del servidor. Esto es para evitar que las personas puedan ver qué versión de PHP estamos usando y limitar su capacidad para apuntar a la versión específica de PHP.
He agregado lo siguiente a nginx.conf, debajo del bloque http:
server_tokens off;
Pero, ¿qué herramientas puedo usar para verificar que este cambio haya tenido efecto?
server_token
no tiene nada que ver con la versión PHP. Por lo general, se envía en un encabezado separadoX-Powered-By
. Supongo que necesitas php.net/manual/en/ini.core.php#ini.expose-phpRespuestas:
Del manual sabes lo que hace la configuración:
Entonces sus opciones son:
nginx/1.2.3
.Una simple comprobación para ver los encabezados de respuesta HTTP es conectarse manualmente, es decir, con:
telnet www.example.com 80
donde las líneas del cliente son lo que ingresa:fuente
Después de buscar un poco más en Google, he encontrado que el comando curl puede verificar los encabezados del servidor que muestra las versiones de tokens y php del servidor:
Gracias a Alexey por señalar el cambio necesario en PHP.
fuente
Además, si sirve proyectos PHP, es posible que deba cambiar
/etc/nginx/{fastcgi,fastcgi_params).conf
fuente
Eche un vistazo a InSpec, una herramienta que le permite "convertir sus requisitos de cumplimiento, seguridad y otras políticas en pruebas automatizadas".
https://www.inspec.io
Puede hacer todas las pruebas de configuración que necesita para su servidor Nginx. Aquí hay una forma de probar la existencia del archivo conf y el valor de
server_tokens
:Si se configura correctamente, InSpec devuelve:
Si no:
fuente