0%

nginx版本信息泄露漏洞解决

问题描述

nginx版本信息的泄露有可能会造成攻击者获取更多的信息

nginx在curl的时候是能看到nginx版本信息的,具体的界面显示如下图所示,可以看到其中有个Server:nginx/1.15.8

解决方案

  1. 修改nginx主配置文件:nginx.conf,取消注释或添加配置语句
    1
    2
    3
    4
    5
    http {
    # ...省略一些配置
    server_tokens off;   #默认是注释掉的
      # ...省略一些配置
    }
  2. 编辑php-fpm配置文件,如fastcgi.conf或fcgi.conf(这个配置文件名也可以自定义的,根据具体文件名修改)
    1
    2
    3
    4
    5
    # 找到
    fastcgi_param SERVER_SOFTWARE nginx/$nginx_version;

    # 修改为
    fastcgi_param SERVER_SOFTWARE nginx;
  3. 重新加载nginx配置文件
    1
    2
    # /etc/init.d/nginx reload 或
    # service nginx reload

验证是否生效

1
2
3
4
5
6
7
# curl -v -X 192.168.31.7
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