Nginx彻底隐藏版本信息
暴露软件的版本信息和软件名,容易遭到黑客攻击,所以要彻底隐藏版本信息。
处理步骤:
1、记录nginx编译参数
nginx -V
2、修改源码包
找到nginx源码包,修改一下文件内容
[root@root ~]# find / -name ngx_http_header_filter_module.c
/data/temp/nginx/nginx-1.22.0/src/http/ngx_http_header_filter_module.c
[root@root ~]#vim /data/temp/nginx/nginx-1.22.0/src/http/ngx_http_header_filter_module.c
[root@root ~]# find / -name nginx.h
/data/temp/nginx/nginx-1.22.0/src/core/nginx.h
[root@root ~]# vi /data/temp/nginx/nginx-1.22.0/src/core/nginx.h
[root@root ~]# find / -name ngx_http_special_response.c
/data/temp/nginx/nginx-1.22.0/src/http/ngx_http_special_response.c
[root@root ~]# vi /data/temp/nginx/nginx-1.22.0/src/http/ngx_http_special_response.c
3、重新编译
修改完成后,重新编译nginx(记得先备份好nginx目录)
# 在nginx源码包目录中
[root@root nginx-1.22.0]# ./configure --prefix=/data/nginx --add-module=/data/nginx/nginx_upstream_check_module-master --add-module=/data/nginx/nginx-sticky-module --with-openssl=/usr/local/ssl --with-http_ssl_module --with-http_stub_status_module --with-http_v2_module --with-http_gzip_static_module --with-http_sub_module --with-stream --with-http_realip_module # 编译参数在步骤1获取
make
[root@root nginx-1.22.0]# find / -name objs
#必须得先停止nginx服务
[root@root objs]# /data/nginx/sbin/nginx -s stop
[root@root objs]# cp /data/temp/nginx/nginx-1.22.0/objs/nginx /data/nginx/sbin/nginx # 覆盖原nginx目录中的启动脚本文件
cp: overwrite ‘/data/nginx/sbin/nginx’? y
4、重启nginx服务
cd /data/nginx
sbin/nginx -s stop
sbin/nginx