Nginx默認(rèn)是顯示版本號(hào)的,如:
[root@bkjz ~]# curl -I
HTTP/1.1 200 OK
Server: nginx/0.8.44
Date: Tue, 13 Jul 2010 14:05:11 GMT
Content-Type: text/html
Content-Length: 8284
Last-Modified: Tue, 13 Jul 2010 12:00:13 GMT
Connection: keep-alive
Keep-Alive: timeout=15
Accept-Ranges: bytes
這樣就給人家看到你的服務(wù)器nginx版本是0.8.44,前些時(shí)間暴出了一些Nginx版本漏洞,就是說(shuō)有些版本有漏洞,而有些版本沒(méi)有。這樣暴露出來(lái)的版本號(hào)就容易變成攻擊者可利用的信息。所以,從安全的角度來(lái)說(shuō),隱藏版本號(hào)會(huì)相對(duì)安全些!
那nginx版本號(hào)可以隱藏不?其實(shí)可以的,看下面我的步驟:
1、進(jìn)入nginx配置文件的目錄(此目錄根據(jù)安裝時(shí)決定),用vim編輯打開(kāi)
# 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(這個(gè)配置文件名也可以自定義的,根據(jù)具體文件名修改):
找到:
fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;
改為:
fastcgi_param SERVER_SOFTWARE nginx;
3、重新加載nginx配置:
# /etc/init.d/nginx reload
這樣就完全對(duì)外隱藏了nginx版本號(hào)了,就是出現(xiàn)404、501等頁(yè)面也不會(huì)顯示nginx版本。
下面測(cè)試一下:
[root@bkjz ~]# curl -I
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 13 Jul 2010 14:26:56 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding
……
Firefox里的服務(wù)器信息顯示工具也不能顯示出nginx版本號(hào)(其實(shí)這個(gè)工具也是利用curl 命令偵查的)如圖:
OK,完畢。