Nginx默認是顯示版本號的,如:
[root@hadooptest ~]# curl -I www.nginx.orgHTTP/1.1 200 OKServer: nginx/0.8.44Date: Tue, 13 Jul 2010 14:05:11 GMTContent-Type: text/htmlContent-Length: 8284Last-Modified: Tue, 13 Jul 2010 12:00:13 GMTConnection: keep-aliveKeep-Alive: timeout=15Accept-Ranges: bytes
這樣就給人家看到你的服務器nginx版本是0.8.44,前些時間暴出了一些Nginx版本漏洞,就是說有些版本有漏洞,而有些版本沒有。這樣暴露出來的版本號就容易變成攻擊者可利用的信息。所以,從安全的角度來說,隱藏版本號會相對安全些!
那nginx版本號可以隱藏不?其實可以的,看下面我的步驟:
1、進入nginx配置文件的目錄(此目錄根據安裝時決定),用vim編輯打開
vim nginx.conf
在http {—}里加上server_tokens off; 如:
代碼如下:http {
……省略
sendfile on;
tcp_nopush on;
keepalive_timeout 60;
tcp_nodelay on;
server_tokens off;
…….省略
}
2、編輯php-fpm配置文件,如fastcgi.conf或fcgi.conf(這個配置文件名也可以自定義的,根據具體文件名修改):
找到:
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
改為:
fastcgi_param SERVER_SOFTWARE nginx;
3、重新加載nginx配置:
# /etc/init.d/nginx reload
這樣就完全對外隱藏了nginx版本號了,就是出現404、501等頁面也不會顯示nginx版本。
修改后內容是:
[root@hadooptest ~]# curl -I www.nginx.orgHTTP/1.1 200 OKServer: nginxDate: Tue, 13 Jul 2010 14:05:11 GMTContent-Type: text/htmlContent-Length: 8284Last-Modified: Tue, 13 Jul 2010 12:00:13 GMTConnection: keep-aliveKeep-Alive: timeout=15Accept-Ranges: bytes
新聞熱點
疑難解答