一般使用Nginx的web网站,访问网站时,可以从请求头中看到使用了nginx以及nginx的版本号 。暴露这些信息将给网站带来一定的风险,因此安装nginx时最好把这些信息隐藏 。
文章插图
隐藏nginx 版本号与WEB服务器信息
如果未安装nginx,先去官网下载压缩包并解压到指定目录,然后进入nginx安装目录
1、 修改src/http文件夹下的两个文件,具体见下图
文章插图
(1)修改src/http/ngx_http_header_filter_module.c文件
vim src/http/ngx_http_header_filter_module.c
#大约在49行,修改Server后面服务器信息为自定义服务器信息
static u_char ngx_http_server_string[] = "Server: listen/1.1" CRLF;
文章插图
改成自定义名称:
文章插图
(2)修改src/http/ngx_http_special_response.c文件
vim src/http/ngx_http_special_response.c
#大约在36行,修改为自定义服务器信息
"<hr><center>listen/1.1</center>" CRLF
文章插图
改成自定义名称
文章插图
2、编译配置(如果已经安装过nginx,这一步需要先通过nginx –V查看安装信息,然后把相关配置加入下面配置中)
./configure --prefix=/usr/local/src/nginx
3、编译安装(已经安装过的这步只执行make,不执行make install,不然会把以前的配置覆盖,编译后直接手动复制nginx执行文件到原安装目录)
make && make install
4、修改nginx配置文件,http节点下添加 server_tokens off
vim /usr/local/nginx/conf/nginx.conf
....
http {
server_tokens off;
.....
文章插图
5、启动nginx(正在运行的,需要杀掉进程再重新启动)
/usr/local/src/nginx/sbin/nginx
6、测试
[root@node1 nginx]# sudo curl -I http://127.0.0.1
HTTP/1.1 200 OK
Server: listen/1.1
Date: Fri, 16 Oct 2020 10:49:48 GMT
Content-Type: text/html;charset=ISO-8859-1
Connection: keep-alive
【提升网站安全性-隐藏nginx信息】Vary: Accept-Encoding
浏览器访问如下,看不出网站使用了nginx 。
文章插图
主要:如果只想隐藏版本号,而不想自定义服务器信息,则不需要修改src/http下的ngx_http_header_filter_module.c和ngx_http_special_response.c文件
推荐阅读
- 13个程序员不可不知的VSCode插件,工作效率提升10倍
- 10个很棒的JavaScript库,提升Web开发效率
- 斗罗大陆之至尊武魂 斗罗大陆武魂觉醒官方网站
- 如何分析网站日志?谷歌蜘蛛分析工具
- 使用spring cache让我的接口性能瞬间提升了100倍
- 国外程序员经常浏览的技术网站
- 通过Nginx来实现禁止国外IP访问网站
- 想练习SQL又没有环境?这几个可以在线练习SQL的网站满足你
- 提升气质的瑜伽动作是什么?
- 企业网站建设的目标有哪些?目标有哪些角点科技告诉你!