我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Nginx隐藏server头信息的实现

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Nginx隐藏server头信息的实现

分析

上一篇文章我们搭建了Nginx,请求响应头如下

[nginx@node01 sbin]$ curl -I 127.0.0.1:8090
HTTP/1.1 200 OK
Server: nginx/1.9.9
Date: Fri, 11 Nov 2022 14:56:38 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Fri, 11 Nov 2022 12:47:59 GMT
Connection: keep-alive
ETag: "636e447f-264"
Accept-Ranges: bytes

可看到这么一行 Server: nginx/1.9.9,暴露了服务为Nginx并且还知道了具体版本号,如果有人想要攻击我们网站,那么他们就会通过这种方式来获取我们网站的一些信息。比如 知道了是Nginx,并且如果恰好发现该版本是有一些漏洞的,那么攻击者就能够很轻松的找到攻击我们的方案,所以隐藏一些信息是很有必要的。

Nginx它考虑到了这方面的问题。给我们提供了一个配置 server_tokens。将该配置放到http快中就可以隐藏版本号了。

隐藏版本号

修改 nginx.conf,添加server_tokens,配置如下

worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    server_tokens off;
    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       8090;
        server_name  localhost;
            
        location / {
            root   html;
            index  index.html index.htm;
        }
    }

}

重启nginx

版本号已隐藏

[nginx@node01 sbin]$ ./nginx -s reload

[nginx@node01 sbin]$ curl -I 127.0.0.1:8090
HTTP/1.1 200 OK
Server: nginx
Date: Fri, 11 Nov 2022 15:08:55 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Fri, 11 Nov 2022 12:47:59 GMT
Connection: keep-alive
ETag: "636e447f-264"
Accept-Ranges: bytes

php-fpm服务器隐藏版本号

如果搭建的是 php-fpm 服务器的话,还得修改 fastcgi.conf

在该配置中有这么一行

fastcgi_param  SERVER_SOFTWARE    nginx/$nginx_version;
修改后
fastcgi_param  SERVER_SOFTWARE    nginx;

隐藏Server

经过上面的修改,版本号就已经隐藏了,如果连Server信息都不想让别人知道,那就只能修改源码了

修改C文件 class="lazy" data-src/http/ngx_http_header_filter_module.c

大概在50行左右,将nginx修改为 其它名字

//static char ngx_http_server_string[] = "Server: nginx" CRLF;
//static char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;
static char ngx_http_server_string[] = "Server: juan" CRLF;
static char ngx_http_server_full_string[] = "Server: " NGINX_VER CRLF;

重新编译前记得停掉Nginx 备份自己的nginx.conf

Nginx源码安装教程 https://www.jb51.net/article/142431.htm

编译完后替换之前备份的文件,启动Nginx

[nginx@node01 sbin]$ curl -I 127.0.0.1:8090
HTTP/1.1 200 OK
Server: juan
Date: Fri, 11 Nov 2022 15:34:27 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Fri, 11 Nov 2022 15:30:46 GMT
Connection: keep-alive
ETag: "636e6aa6-264"
Accept-Ranges: bytes

这时Server已经变成自己定义的名字了,nginx的加固就介绍到这。

到此这篇关于Nginx隐藏server头信息的实现的文章就介绍到这了,更多相关Nginx隐藏server头信息内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Nginx隐藏server头信息的实现

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Nginx隐藏server头信息的实现

本文主要介绍了Nginx隐藏server头信息的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-01-16

Nginx漏洞整改实现限制IP访问&隐藏nginx版本信息

本文介绍了通过修改nginx配置文件,限制IP访问和隐藏nginx版本信息的两种方法。限制IP访问可以通过添加allow和deny指令或使用GeoIP模块实现。隐藏nginx版本信息可以通过添加server_tokensoff指令或使用ngx_http_headers_module或ngx_headers_more模块实现。本文提供了详细的代码示例和注意事项,帮助您实施这些安全措施。
Nginx漏洞整改实现限制IP访问&隐藏nginx版本信息
2024-04-02

通过Nginx定义Header头信息的实现步骤

本文主要介绍了通过Nginx定义Header头信息的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-05-15

PHP怎么获取指定网址的header头信息及隐藏关闭的方法

这篇文章给大家分享的是有关PHP怎么获取指定网址的header头信息及隐藏关闭的方法的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、PHP如何获取指定URL的header信息超级简单,就一行命令即可:
2023-06-14

Android中Xposed框架篇---修改系统位置信息实现自身隐藏功能实例

一、前言本文主要来介绍一个实际案例就是如何通过这个框架来修改系统的地理位置信息来实现隐藏功能,在如今社交工具的发展特别是微信,他有一个实时位置共享功能,那么对于那些不是单身狗的同学来说可能会有些蛋疼,哪天媳妇要查岗发送位置,结果你不在她期望
2022-06-06

Python实现自动添加脚本头信息的示例代码

前言 每个人写脚本时的格式都会有所不同,有的会注明脚本本身的一些信息,有的则开门见山,这在小团队里其实没什么,基本别人做什么你也都知道,但如果放到大的团队就比较麻烦了,因为随着人数的增多,脚本成指数增长,如果每个人风格不统一,到最后就会造成
2022-06-04

微信小程序实现密码显示与隐藏的睁眼闭眼功能

这篇文章主要介绍了微信小程序实现密码显示与隐藏的睁眼闭眼功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
2023-02-25

微信小程序如何实现密码显示与隐藏的睁眼闭眼功能

这篇“微信小程序如何实现密码显示与隐藏的睁眼闭眼功能”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“微信小程序如何实现密码显示
2023-07-05

编程热搜

目录