nginx升级和去除http响应中的Server头信息

发布时间 2023-06-16 18:40:16作者: 06

这两天接到个需求,就是去除http响应中的Server头信息,说是容易被黑客利用进行有针对的攻击,这个理由很充分,还是要安排上。

 

我们的http是nginx做的反向代理,于是需求就变成了  Nginx去除 HTTP Server头

查找了一番,大部分都是隐藏nginx版本

server_tokens off;

配置类似于:

user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
 
http {
    keepalive_timeout   65;
    types_hash_max_size 2048;
    server_tokens off;
    server {
        ... ...
 
    }
}

但是返回给客户端的信息,还是存在Nginx服务器类型信息(虽然没有透露版本了):

 

 

这个不能解决根本问题,因为黑客可以对nginx进行猜测,如果被猜中版本,还是很容易被攻击,想看看有没有彻底去掉server头的办法,结果还真找到了

后来经过详细了解,这个步骤要重新编译nginx,在编译时加入所需的模块来实现去除server头功能,和升级步骤大差不差,那就干脆顺便升级下nginx吧

这么一综合,需求就变成了nginx升级并去除http响应中的Server头信息

升级中也踩了不少坑,特地记录下,以备日后查看

首先介绍下模块:

组件:headers-more-nginx-module

GitHub: https://github.com/openresty/headers-more-nginx-module