详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程

一、隐藏服务器缺省banner的目的

    通过隐藏服务器缺省banner,可以避免黑客获取真实的服务器类型和版本信息,间接地增加攻击难度。

 

二、查看服务器的缺省banner(标记)的命令

    1、Linux:        curl  -I 服务器ip:port   , 就是获取http响应头 。       

      详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第1张图片

     通过命令返回的信息,我们可以看到这是Tomcat的缺省banner:Apache-Coyote/1.1。

   

   2、Windows:我们可以利用浏览器查看响应头

           步骤:①打开浏览器 ——> ② 按F12,打开开发者工具 ——> ③输入请求地址 

                      ——> 查看开发者工具网络(Network),即可看到响应头

详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第2张图片

    上面截图我是用的是谷歌浏览器,其他浏览器大同小异。

 

二、修改Tomcat服务器缺省banner 

        (1)我们可以编辑Tomcat(安装目录)/conf/server.xml 文件 ,找到我们应用程序端口对应的元素,新增 server="自定义" 属性,覆盖掉原来的server属性。

详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第3张图片

 (2)我们修改后重启Tomcat之后,验证一下我们的修改成果吧:

详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第4张图片

 

三、修改Nginx服务器的缺省banner

    1、没有修改之前我们看到Nginx服务器显示server属性为nginx。

     详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第5张图片

  2、由于Nignx没有提供相关配置项改变缺省banner,所以我们需要改变源码,然后重编译和重新安装一下,具体操作:

        (1)   找到/opt/nginx/nginx-1.14.1/src/http/ngx_http_header_filter_module.c文件(我的nginx的安装目录为/opt/nginx/nginx-1.14.1),修改以下变量的声明:   

             static u_char ngx_http_server_string[] = "Server: nginx" CRLF;
             static u_char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;
             static u_char ngx_http_server_build_string[] = "Server: " NGINX_VER_BUILD CRLF;      

             修改为:

            static u_char ngx_http_server_string[] = "Server: unkowna" CRLF;
            static u_char ngx_http_server_full_string[] = "Server: unkowna " CRLF;
            static u_char ngx_http_server_build_string[] = "Server: unkowna" CRLF;

        (2)执行编译命令:      

$ ./configure --prefix=/usr/local/nginx          
$ make
$ make install

     --prefix=/usr/local/nginx   (--prefix是nginx的安装到哪个目录)    

        (3)启动nginx,我们测试一下效果:

详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程_第6张图片

 

 

 

 

你可能感兴趣的:(详细记录一次Tomcat服务器和Nginx服务器的缺省banner的修改全过程)