时间:2023-06-02 16:16:41 来源: 人气:
Nginx默认是显示版本号的,如:, [root@bkjz ~]# curl -I www.45it.com, 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, 这样就给人家看到你的服务器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@bkjz ~]# curl -I www.45it.com, 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里的服务器信息显示工具也不能显示出nginx版本号(其实这个工具也是利用curl 命令侦查的)如图:, OK,完毕。,