web-dev-qa-db-fra.com

Comment changer (masquer) la signature du serveur Nginx?

Je peux masquer la version Nginx en utilisant l'option server_tokens définie sur off. Mais pas en mesure de modifier la signature du serveur Nginx.

Étapes que j'ai faites,

1.) Modifiez le nom du serveur Nginx dans le fichier source (src/http/ngx_http_header_filter_module.c) en "My-Server". Après cela, compilé le nginx. Mais ça ne marche pas quand je charge l'url. Étrange ici, c'est que je peux voir ma signature mise à jour lorsque j'utilise la commande curl. Mais ce même n'est pas mis à jour dans le navigateur.

2.) J'ai donc essayé un module tiers (headers-more-nginx-module). Cela aussi ne fonctionne pas. Obtenir le nom mis à jour via Curl. Mais pas dans le navigateur.

18
KMG

Si vous travaillez à Ubuntu,

  1. Installez d'abord nginx-extras

    Sudo apt-get install nginx-extras
    
  2. Aller à /etc/nginx/nginx.conf et sous http ajoutez:

    http {
        more_set_headers "Server: Your_New_Server_Name";
        server_tokens off; 
    }
    
  3. Redémarrez nginx

    Sudo service nginx restart
    
28
prakash09
  1. Installez HttpHeadersMoreModule - http://wiki.nginx.org/HttpHeadersMoreModule
  2. Modifiez-le en utilisant le more_set_headers directive.
  3. Rechargez Nginx pour prendre effet.

    Masquer les informations de version de nginx.

    server_tokens off;

    Modifiez le nom du serveur.

    more_set_headers "Serveur: MyServerName";

10
Tan Hong Tat

Accédez à nginx conf et désactivez server_tokens.

/etc/nginx/nginx.conf

server_tokens off;
7
naren

Vous pouvez l'utiliser dans votre configuration Nginx.

proxy_pass_header Server;
1
Println

Si vous utilisez ModSecurity v2.0 - v2.9, vous pouvez utiliser dans le fichier .conf

SecServerSignature SomeName

ModSecurity v3 SecServerSignature est obsolète, mais je ne sais pas s'ils l'ont remplacé par autre chose.

0
Jeff