nginx安装升级修复HTTP头信息泄露Nginx版本信息漏洞(并保持https配置)

文章目录

  • [1. 准备工作](#1. 准备工作)
  • [2. 修改web服务器所使用的nginx的名称和版本信息](#2. 修改web服务器所使用的nginx的名称和版本信息)
    • [2.1 修改以下三个文件:](#2.1 修改以下三个文件:)
      • [(1) ·src/core目录下的nginx.h文件](#(1) ·src/core目录下的nginx.h文件)
      • [(2) ·src/http目录下的ngx_http_header_filter_module.c文件](#(2) ·src/http目录下的ngx_http_header_filter_module.c文件)
      • [(3) ·src/http目录下的ngx_http_special_response.c文件](#(3) ·src/http目录下的ngx_http_special_response.c文件)
  • [2.2 重新编译nginx](#2.2 重新编译nginx)
  • [2.3 nginx启停命令](#2.3 nginx启停命令)
  • 2.4浏览器控制台抓包可以看到:

1. 准备工作

(1)下载最新稳定版nginx包

官网下载地址:https://nginx.org/en/download.html![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/bb4dbd80e1f2471aac035b7882492a60.png)

(2)将nginx包拷贝到服务器并解压(# 解压到当前目录下tar -zxvf 资源包)
(3)备份服务器nginx.conf文件、ssl证书文件

2. 修改web服务器所使用的nginx的名称和版本信息

2.1 修改以下三个文件:

(1) ·src/core目录下的nginx.h文件

xml 复制代码
 #define NGINX_VERSION   "" 
 #define NGINX_VER   "CSDN" NGINX_VERSION

(2) ·src/http目录下的ngx_http_header_filter_module.c文件

xml 复制代码
 static u_char ngx_http_server_string[] = "Server: CSDN" CRLF;

(3) ·src/http目录下的ngx_http_special_response.c文件

xml 复制代码
 static u_char ngx_http_error_tail[] =
 "<hr><center>CSDN</center>" CRLF
 "</body>" CRLF
 "</html>" CRLF

2.2 重新编译nginx

(1)进入安装包目录:/home/nginx1.16.1

(2)./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module

(3)make && make install

2.3 nginx启停命令

xml 复制代码
 cd /usr/local/nginx/sbin/
./nginx   #启动
./nginx -s stop  #停止
./nginx -s quit  #退出
./nginx -s reload  #重启  修改配置后重新加载生效
./nginx -s reopen :重新打开日志文件

2.4浏览器控制台抓包可以看到:

xml 复制代码
HTTP/1.1 200
Server: CSDN
Date: Wed, 03 Jul 2024 09:40:49 GMT
Content-Type: application/json
Transfer-Encoding: chunked
Connection: keep-alive
相关推荐
MediaTea12 分钟前
Python 第三方库:Requests(HTTP 客户端)
开发语言·网络·python·网络协议·http
Mr_Xuhhh12 分钟前
HTTPS 协议原理
网络·网络协议·测试工具·http·https
i_am_a_div_日积月累_13 分钟前
http与https协议区别;vue3本地连接https地址接口报500
网络协议·http·https
Mr_Xuhhh21 分钟前
传输层协议 TCP(1)
运维·服务器·网络·c++·网络协议·tcp/ip·https
GalaxyPokemon1 小时前
HTTP和HTTPS的区别
网络协议·http·https
有谁看见我的剑了?10 小时前
为 Promethus 配置https访问
网络协议·http·https
zhangjin122214 小时前
kettle插件-kettle http post plus插件失灵了?继续迭代优化轻松调用公卫高安全系数接口
http·医疗·医院信息科·kettle公卫https接口·kettle证书·kettle国产插件
蜡笔小柯南14 小时前
解决:nginx: [emerg] the “ssl“ parameter requires ngx_http_ssl_module
nginx·http·ssl
枷锁—sha19 小时前
【BUUCTF系列】[极客大挑战 2019]Http 1
网络·网络协议·http
求知若渴,虚心若愚。19 小时前
高可用实战之Nginx + Apache篇
运维·nginx·apache