linux - instalacion - ¿Cómo cambiar(ocultar) la firma del servidor Nginx?
nginx para centos (5)
Puedo ocultar la versión Nginx usando la opción server_tokens configurada como desactivada. Pero no puede cambiar la firma del servidor Nginx.
Pasos que hice
1.) Cambie el nombre del servidor Nginx en el archivo fuente (src / http / ngx_http_header_filter_module.c) a "My-Server". Después de eso, compilamos el nginx. Pero no funciona cuando carga la url. Lo extraño aquí es que puedo ver mi Firma actualizada cuando uso el comando curl. Pero esto mismo no se actualiza en el navegador.
2.) Así que probé el módulo de terceros (headers-more-nginx-module). Esto tampoco funciona. Obtener el nombre actualizado a través de Curl. Pero no en el navegador.
- Instale
HttpHeadersMoreModule
- http://wiki.nginx.org/HttpHeadersMoreModule -
more_set_headers
utilizando la directivamore_set_headers
. Vuelve a cargar Nginx para que tenga efecto.
Ocultar información de la versión nginx.
server_tokens apagado;
Cambia el nombre del servidor.
more_set_headers "Servidor: Nombre de servidor";
Puedes usar esto en tu configuración de Nginx.
proxy_pass_header Server;
Si estas trabajando en ubuntu entonces
Primero instale
nginx-extras
sudo apt-get install nginx-extras
Vaya a
/etc/nginx/nginx.conf
y debajo dehttp
add:http { more_set_headers "Server: Your_New_Server_Name"; server_tokens off; }
Reinicie nginx
sudo service nginx restart
Si usa ModSecurity v2.0 - v2.9, entonces en el archivo .conf puede usar
SecServerSignature SomeName
ModSecurity v3 SecServerSignature ha quedado en desuso, pero no sé si lo reemplazaron con otra cosa.
Vaya a nginx conf y apague server_tokens.
/etc/nginx/nginx.conf
server_tokens off;