Nginx / 网站服务

彻底清除Nginx标识和版本号

温馨提示:本文最后更新于2021-03-02 18:35:53,某些文章具有时效性,若有错误或已失效,请在下方留言或提交工单提交工单
浅时光 · 2月27日 · 2020年 本文1541个字,预计阅读4分钟 43703次已读

前言

为了安全,线上环境通常我们会将Nginx版本号进行隐藏,不让其显示出来;虽然Nginx中可以使用参数server_tokens off可以隐藏版本号,但是还是会显示当前使用的是Nginx服务进行提供访问的,为了完全解决除了不显示版本号之外,还不显示当前服务标识信息,那么就需要从源码上进行处理了,下面本文将详细介绍如何操作。

一、下载源码

[[email protected] ~]# cd /opt/soft/
[[email protected] soft]# wget http://nginx.org/download/nginx-1.16.1.tar.gz
  • 解压至当前目录
[[email protected] soft]# tar -zxvf nginx-1.16.1.tar.gz

二、改源文件

  • 我们将源码文件修改后,再进行编译安装
[[email protected] soft]# cd nginx-1.16.1/
[[email protected] nginx-1.16.1]# cd src/core/
[[email protected] core]# vim nginx.h
彻底清除Nginx标识和版本号-浅时光博客
[[email protected] core]# cd ..
[[email protected] src]# cd http/
[[email protected] http]# vim ngx_http_header_filter_module.c
彻底清除Nginx标识和版本号-浅时光博客
[[email protected] http]# vim ngx_http_special_response.c
彻底清除Nginx标识和版本号-浅时光博客
  • 修改好后可以将整个解压后的包拷贝一份出来,之后在新环境部署则可以使用该修改好的包进行编译安装

三、编译安装

[[email protected] ~]# yum -y install gcc gcc-c++ make
[[email protected] ~]# cd /opt/soft/nginx-1.16.1/
[[email protected] nginx-1.16.1]# ./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.conf --error-log-path=/usr/local/nginx/logs/error.log --http-log-path=/usr/local/nginx/logs/access.log --pid-path=/usr/local/nginx/nginx.pid --lock-path=/usr/local/nginx/nginx.lock --user=appadmin --group=appadmin --with-http_ssl_module --with-http_v2_module --with-http_dav_module --with-http_stub_status_module --with-threads --with-file-aio
彻底清除Nginx标识和版本号-浅时光博客
[[email protected] nginx-1.16.1]# make && make install

四、启动服务

[[email protected] ~]# cd /usr/local/nginx/sbin/
[[email protected] sbin]# ./nginx
[[email protected] sbin]# ps -C nginx --header
   PID TTY          TIME CMD
 10349 ?        00:00:00 nginx
 10350 ?        00:00:00 nginx

[[email protected] sbin]# ss -tnlp|grep 80

五、查看效果

  • 首先防火墙关闭或者放通80端口
[[email protected] ~]# firewall-cmd --permanent --zone=public --add-port=80/tcp
success
[[email protected] ~]# firewall-cmd --reload
success
  • 通过curl命令访问
[[email protected] ~]# curl -I 127.0.0.1
彻底清除Nginx标识和版本号-浅时光博客
  • 通过web界面访问
彻底清除Nginx标识和版本号-浅时光博客



本文作者:浅时光
原文链接:https://www.dqzboy.com/1201.html
版权声明:知识共享署名-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)协议进行许可
转载时请以超链接形式标明文章原始出处和作者信息

0 条回应

必须 注册 为本站用户, 登录 后才可以发表评论!

    本站已稳定运行: | 耗时 0.404 秒 | 查询 12 次 | 内存 38.04 MB