Heim >Backend-Entwicklung >PHP-Tutorial >So verbergen Sie die Nginx-Versionsnummer
Kürzlich habe ich einen neuen Befehl „curl“ gelernt, der einen Parameter -I hat, der überprüfen kann, welchen Server die Website verwendet, wie zum Beispiel:
zhangxiaoliudeMacBook-Pro-2:~ zhangxiaoliu$ curl -I http: //nginx.org/
HTTP/1.1 200 OK
Server: nginx/1.9.8
Datum: Fr, 18. Dezember 2015 06:30:33 GMT
Inhalt -Typ: text/html; charset=utf-8
Inhaltslänge: 8347
Letzte Änderung: Mi, 09. Dezember 2015 15:07:16 GMT
Verbindung: keep-alive
Keep -Alive: timeout=15
ETag: "566843a4-209b"
Accept-Ranges: Bytes
Sie können sehen, dass die derzeit verwendete offizielle Version von Nginx 1.9.8 ist und jede Version von nginx Es kann einige Schwachstellen geben, daher ist es aus Sicherheitsgründen relativ sicherer, die Versionsnummer zu verbergen!
Schritt 1: Ändern Sie die Nginx-Konfigurationsdatei
vim /usr/local/nginx/conf/nginx.conf (Der Pfad der Konfigurationsdatei wird durch das Verzeichnis bestimmt, in dem Nginx installiert ist. Jede Konfigurationsdatei ist anders, Da einige Anfänger sie einfach kopieren und dann ausführen, werden die Konsequenzen schwerwiegend sein. Führen Sie den Befehl nicht aus, den Sie nicht verstehen. ) (oder vorher) tcp_nodelay on; server_tokens off;
Schritt 2: Ändern Sie die PHP-FPM-Konfigurationsdatei
Der Name der PHP-FPM-Konfigurationsdatei ist fastcgi.conf oder fcgi .conf, vim /usr/local/ nginx/conf/fastcgi.conf (im selben Verzeichnis wie nginx.conf), verwenden Sie den vim-Befehl „:/SERVER_SOFTWARE“, um zu finden: fastcgi_param SERVER_SOFTWARE nginx/$ nginx_version; Entfernen Sie „/$nginx_version“.
Schritt 3: Starten Sie den Nginx-Dienst neu
Dienst-Nginx-Neuladen (Neuladen des Dienstes ohne Unterbrechung neu starten oder /etc/init.d/nginx reload, /etc/init.d/ verwenden). sind alles Dienststartskripte, Shellskripte), Manche Leute sagen vielleicht, dass die Verwendung von nginxd oder nginx nicht vom Dienststartskript in /etc/init.d/ abhängt, sondern vom Namen des Dienststartskripts in /etc/init.d/
Das Obige stellt vor, wie man die Nginx-Versionsnummer verbirgt, einschließlich der Schwachstellenaspekte. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.