Nginx的优化——版本隐藏、超时管理、进程管理
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,配置Nginx隐藏版本号在生产环境中,需要隐藏Nginx的版本号,以减少安全隐患查看方法1、使用fiddler I具在Windows客户端查看Nginx版本号,在CentOS系统中使用"curl -I
千家信息网最后更新 2025年12月03日Nginx的优化——版本隐藏、超时管理、进程管理
配置Nginx隐藏版本号
在生产环境中,需要隐藏Nginx的版本号,以减少安全隐患
查看方法
1、使用fiddler I具在Windows客户端查看Nginx版本号,
在CentOS系统中使用"curl -I 网址"命令查看
Nginx隐藏版本号的方法
1、修改配置文件法
2、修改源码法
实验
一、修改配置文件法
1.Nginx的配置文件中的server_ tokens 选项的值设置为off
[root@www conf]# vim nginx.conf.....server_ tokens off;.....[root@www conf]# nginx -t2、重启服务,访问网站使用curl -I命令检测
[root@www conf]# service nginx restart[root@www conf]# curl -1 http://192.1 68.9.209/HTTP/1.1200 OKServer: nginx3.若php配置文件中配置了fastcgi param SERVER SOFTWARE选项。则编辑php-fpm配置文件,将fastcgi param SERVER SOFTWARE对应的值修改为
fastcgi_ param SERVER_ SOFTWARE nginx ;二、修改源码法
除了将版本号进行隐藏,我们还可以给意图不轨者一个错误的版本号,修改nginx.hwen件 (缺点:需要将nginx重新进行编译安装)
[root@localhost nginx]# cd /opt/nginx-1.12.2/src/core/修改该目录下源码文件nginx.h[root@localhost core]# vim nginx.h #define NGINX_VERSION "9.9.9" 修改伪装版本号将nginx进行重新编译安装
[root@localhost core]# cd /opt/nginx-1.12.2/[root@localhost nginx-1.12.2]# ./configure \--prefix=/usr/local/nginx \--user=nginx \--group=nginx[root@localhost nginx-1.12.2]# make && make install //重新进行编译安装[root@localhost nginx-1.12.2]# cd /usr/local/nginx/conf/[root@localhost conf]# service nginx stop //重启服务[root@localhost conf]# service nginx start 检查是否伪装成功(确保主配置文件中server_tokens on;)
[root@localhost conf]# curl -I http://192.168.142.128HTTP/1.1 200 OKServer: nginx/9.9.9 //伪装成功Date: Wed, 13 Nov 2019 08:38:17 GMTContent-Type: text/htmlContent-Length: 612Last-Modified: Wed, 13 Nov 2019 08:04:45 GMTConnection: keep-aliveETag: "5dcbb91d-264"Accept-Ranges: bytesnginx超时时间管理
为了保证资源的最有效的利用,不被长时间不进行操作的用户所占用,因此就需要进行超时时间的管理。
1、修改主配置文件
[root@localhost conf]# pwd/usr/local/nginx/conf[root@localhost conf]# vim nginx.conf找到'keepalive_timeout',修改并在下面添加 keepalive_timeout 65 180; #前后分别为服务器端超时时间,客户端超时时间。 client_header_timeout 80; #等待客户端发送请求头的超时时间 client_body_timeout 70; #客户端发请求体超时时间[root@localhost conf]# service nginx stop [root@localhost conf]# service nginx startnginx进程管理
1、通常默认情况下,nginx的运行进程(worker_processes)仅为1
[root@localhost conf]# ps aux | grep nginxroot 43055 0.0 0.0 20540 608 ? Ss 17:13 0:00 nginx: master process /usr/local/nginx/sbin/nginx //主进程不可改变nginx 43056 0.0 0.0 23064 1380 ? S 17:13 0:00 nginx: worker process //工作进程可以根据具体情况手动进行更改root 43189 0.0 0.0 112728 968 pts/1 S+ 17:25 0:00 grep --color=auto nginx2、为了给有多核处理器的服务器有更高的处理效率,我们需要对进程进行修改(本次实验环境为2核服务器)
[root@localhost conf]# pwd/usr/local/nginx/conf[root@localhost conf]# vim nginx.conf搜索'worker_processes',并添加 worker_processes 2; #修改为与cpu数量相同 worker_cpu_affinity 01 10; #设置每个进程由不同cpu处理[root@localhost conf]# service nginx stop #重启服务[root@localhost conf]# service nginx start3、此时,我们再次查看nginx的进程(会拥有两条工作进程)
[root@localhost conf]# ps aux | grep nginxroot 43353 0.0 0.0 20540 604 ? Ss 17:36 0:00 nginx: master process /usr/local/nginx/sbin/nginxnginx 43354 0.0 0.0 23064 1372 ? S 17:36 0:00 nginx: worker processnginx 43355 0.0 0.0 23064 1364 ? S 17:36 0:00 nginx: worker processroot 43367 0.0 0.0 112728 972 pts/1 S+ 17:37 0:00 grep --color=auto nginx今天的内容已上完!!!
配置
进程
文件
版本
时间
服务
客户
客户端
管理
服务器
源码
处理
编译
成功
命令
情况
方法
环境
实验
工作
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
使用服务器的好处
中国年会网络安全
奶块哪个服务器最富
民航 杰普逊 数据库
c 连接数据库之后跳转页面
解决服务器读写瓶颈
金蝶kis 无效的服务器
愚人网络技术有限公司
电商直播软件开发怎么收费
搭建硬件 软件开发环境
网络安全比例原则是什么意思
互联网科技公司简介范文
爱微知著网络技术 成都
基础地理数据库读书报告
网络安全手抄报内容简单清楚
数据库取证的技术
从文件中读取数据插入数据库
极差制直销软件开发公司电话
人大金仓数据库实例存储路径
山西大学刘全明网络安全培训
电脑网络服务器要多少钱一台
什么是正确的网络安全观
apec交流与数据库系统网址
联通公司软件开发部门
青岛学软件开发的技校
打造一个智能服务器
饭圈网络安全画
网络安全宣传周怎么防范勒索
如何将pdms数据库
计算机网络技术实训14