安全升级~nginx服务的优化
Posted 可乐卷儿
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了安全升级~nginx服务的优化相关的知识,希望对你有一定的参考价值。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
在生产环境中,需要隐藏nginx的版本号,以避免泄漏Nginx的版本,使攻击者不能针对特定版本进行攻击。
一、查看方法
1、CentOS中使用命令curl
curl -I http://192.168.35.40 查看的是头部信息
2、浏览器查看
可以直接在浏览器(谷歌)——>F12——>network——>右击页面,选择重新加载——>选择Name内的请求——>选择headlers——>查看版本
在隐藏前,可以使用Fidler工具抓取数据包,查看Nginx版本,也可以在 -I ip地址查看头部信息隐藏Nginx版本号
二、隐藏Nginx版本号
1、修改 Nginx源码文件,指定不显示版本号
vim /usr/local/nginx/conf/nginx.conf
http {
include mime.types;
default_type application/octet-stream;
server_tokens off; ##添加, 关闭版本号
systemctl restart nginx
curl -I http://192.168.35.40 #查看版本号
2、修改Nginx的主配置文件
src:基本所有的配置看到src就是放源码的位置
vim /opt/nginx-1.15.9/src/core/nginx.h
#define nginx_version 1015009
#define NGINX_VERSION "1.1.1" #将原始的1.15.9修改为1.1.1
#define NGINX_VER "apache/" NGINX_VERSION #将原始的Nginx修改为apache
cd /opt/nginx-1.15.9
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module ##重新编译安装
make && make install
vim /usr/local/nginx/conf/nginx.conf中的版本号重新打开
http {
include mime.types;
default_type application/octet-stream;
server_tokens on; ##打开
systemctl restart nginx
curl -I http://192.168.35.40
三、修改用户和组
若没有安装前创建用户,则在此服务中默认使用的是nobody
vim /usr/local/nginx/conf/nginx.conf
user nginx nginx; ##将前面的#注释掉,然后修改用户与组为nginx
worker_processes 1;
:需要chown给与属组属主.
systemctl restart nginx
ps aux | grep nginx #查看用户与组是否修改成功
四、设置缓存时间
vim /usr/local/nginx/conf/nginx.conf
location / {
root html;
index index.html index.htm;
}
location ~ \\.(gif|jpg|jepg|bmp|ico) $ { ##加入新的location,添加图片识别
root html;
expires 1d; ##设置缓存时间为1天
}
systemctl restart nginx
上传本宫.jpg图片、修改站点文件
cd /usr/local/nginx/html
vim index.html
14 <h1>Welcome to nginx!</h1>
15 <img src="本宫.jpg"/> ##14行下面插入一行识别图片
页面查看缓存
网页测试
以上是关于安全升级~nginx服务的优化的主要内容,如果未能解决你的问题,请参考以下文章
浅谈Nginx服务器的安装,升级配置LNMP平台搭建nginx+fastcginginx高级技术-地址重写及优化