Lorsque nous utilisons Nginx pour le proxy, toutes les requêtes réseau sont distribuées via Nginx. Tant qu'il s'agit d'un logiciel, il y aura des failles.
Nginx aura inévitablement quelques failles, et Nginx subit également constamment des itérations de version, nous devons donc empêcher le monde extérieur d'obtenir notre version
Nginx lors d'un accès externe. Réduisez certains risques d’attaque causés par l’exposition des versions. (Mettez à niveau vers la dernière version à temps, la sécurité sera plus élevée.)
Cet article explique comment masquer le numéro de version de notre Nginx pour éviter les attaques externes.
Ce qui suit présente les méthodes de requête dans différents environnements
Nous pouvons accéder à la page Web via le navigateur , appuyez sur F12 pour entrer. En mode inspection, vous pouvez voir toutes les requêtes réseau de la page actuelle via le panneau Réseau Trouvez une interface et cliquez dessus à volonté. Vous pouvez voir les données suivantes via les En-têtes.
sous le panneauEn-têtes dans les détails de la demande contextuelle Vous pouvez voir les données suivantes : Le numéro de version de votre nginx sera affiché après Serveur:Accept-Ranges: bytes
Access-Control-Allow-Credentials: true
Access-Control-Allow-Headers: Content-Type,ADMIN-Authorization,API-Authorization
Access-Control-Allow-Methods: GET, POST, PUT, DELETE, OPTIONS
Access-Control-Max-Age: 3600
Cache-Control: public,max-age=60,s-maxage=60
Content-Encoding: gzip
Content-Length: 3348
Content-Type: application/javascript
Date: Fri, 23 Sep 2022 01:55:37 GMT
Last-Modified: Tue, 08 Mar 2022 07:14:08 GMT
Server: nginx/1.23.0
Vary: Origin
(2) Dans l'environnement Linux
Par rapport à la méthode de requête sous Windows, la requête Linux peut être interrogée directement via la commandePar exemple, vérifiez l'effet de ce site :
[root@iZuf63tu3fn1swasqa62h8Z nginx]# curl -I zinyan.com HTTP/1.1 301 Moved Permanently Server: nginx Date: Fri, 23 Sep 2022 02:09:49 GMT Content-Type: text/html Content-Length: 178 Connection: keep-alive Location: https://zinyan.com/
Si la version de nginx n'est pas masquée, le numéro de version sera ajouté après nginx.
2. Masquer la version de Nginx
La méthode de masquage est relativement simple : vous devez ouvrir le fichier de configuration nginx.conf. (Habituellement, le répertoire du fichier se trouve dansBasculez vers le répertoire où se trouve le fichier nginx.conf et utilisez vim nginx.conf
pour ouvrir le fichier. (Appuyez surI pour entrer dans le mode édition) Ajoutez ensuite au niveau du serveur : server_tokens off;
S'il y a server_tokens à l'origine, changez la valeur en on, sinon ajoutez la totalité.L'effet est le suivant :
http{ ... server{ listen 80 default_server; listen [::]:80 default_server; server_name_; root /usr/share/nginx/html; server_tokens off;#添加这一项就可以了 location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } } }
Après l'avoir ajouté, appuyez sur la touche Esc
pour quitter le mode d'édition, puis entrez:wq pour enregistrer et quitter. (Si vous n'êtes pas familier avec les commandes vim, vous pouvez en apprendre davantage sur https://zinyan.com/?p=23) Enfin, exécutez :
nginx -s reload
Redémarrez nginx. Cela vous permettra de masquer la version.
Par défaut, nginx ne cache pas le numéro de version. Nous devons le configurer activement nous-mêmes.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!