Nginx的优化——版本隐藏、超时管理、进程管理
admin
2023-02-27 14:01:54
0

配置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 -t

2、重启服务,访问网站使用curl -I命令检测

[root@www conf]# service nginx restart
[root@www conf]# curl -1 http://192.1 68.9.209/
HTTP/1.1200 OK
Server: nginx

3.若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.128
HTTP/1.1 200 OK
Server: nginx/9.9.9                      //伪装成功
Date: Wed, 13 Nov 2019 08:38:17 GMT
Content-Type: text/html
Content-Length: 612
Last-Modified: Wed, 13 Nov 2019 08:04:45 GMT
Connection: keep-alive
ETag: "5dcbb91d-264"
Accept-Ranges: bytes

nginx超时时间管理

为了保证资源的最有效的利用,不被长时间不进行操作的用户所占用,因此就需要进行超时时间的管理。
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 start

nginx进程管理

1、通常默认情况下,nginx的运行进程(worker_processes)仅为1

[root@localhost conf]# ps aux | grep nginx
root      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 nginx

2、为了给有多核处理器的服务器有更高的处理效率,我们需要对进程进行修改(本次实验环境为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 start

3、此时,我们再次查看nginx的进程(会拥有两条工作进程)

[root@localhost conf]# ps aux | grep nginx
root      43353  0.0  0.0  20540   604 ?        Ss   17:36   0:00 nginx: master process /usr/local/nginx/sbin/nginx
nginx     43354  0.0  0.0  23064  1372 ?        S    17:36   0:00 nginx: worker process
nginx     43355  0.0  0.0  23064  1364 ?        S    17:36   0:00 nginx: worker process
root      43367  0.0  0.0 112728   972 pts/1    S+   17:37   0:00 grep --color=auto nginx

今天的内容已上完!!!

相关内容

热门资讯

北京三位女大学生青海自驾游两死... 2024年7月,三位北京女大学生(小静、小田、小露)在青海省海西蒙古族藏族自治州德令哈市附近自驾游时...
德意燃气灶点着火后过几分钟熄火... 回答在:可能原因是熄火保护感应针故障、溢锅造成熄火、清洁炉头上的火盖未摆正,针对这几种问题,分别解决...
德意燃气灶打不着火什么原因 主要原因有,1、很大原因是电池没有电造成的。2、也有可能是由于点火针的位置不正,离内焰火盖距离比较远...
燃气热水器感应针是什么材质 燃气热水器燃烧室上面都有白色的磁棒,这是感应针。是热水器熄火保护最前端的一个部件,当火焰烧到感应针的...
燃气热水器感应针好坏判断 一般来说燃气热水器都有一个电板,当感应针出现故障的时候,都会显示相应的代码,通常感应针故障代码为E1...
热水器感应针位置 1、燃气热水器感应针的作用就是感应火焰是否正常燃烧,不燃烧时测量对地电阻大概在4M左右,当燃气燃烧时...
绿营利用台北鼠患制造恐慌,徐巧... 台北市近期爆发鼠患议题,引来绿营猛攻。中国国民党籍台北市长蒋万安5日召开记者会,宣布将派遣“鼠类侦防...
王世坚因称赞蒋万安被骂,蒋力挺... 据台湾联合新闻网、TVBS新闻网等台媒报道,民进党“立委”王世坚日前称赞台北市长蒋万安“心胸宽大、处...
全美汽油均价较伊朗战事前上涨5... 新华社北京5月7日电 美国汽车协会5日发布数据说,美国普通汽油当天平均零售价为每加仑4.48美元,较...
中国经济数据观丨十组数据看假日... 设计:穆问春文案:底东娜来源:交通运输部、商务部、文化和旅游部、公安部、国家移民管理局等