微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Nginx网页与安全优化

目录

引言:

一.隐藏版本号

第一种方法:修改配置文件

 第二种方法:修改源码文件,重新编译安装

​ 二.修改用户和组

三.网页缓存 

四.日志分隔 

 五.连接超时

六.更改进程数

 七、网页压缩

八.防盗链

九、fpm参数优化

总结:


引言:

Nginx中使用中认是不太安全的,例如会显示版本号,这样在一定程度上会被他人恶意针对版本漏洞进行攻击,因此必须将其进行优化。

一.隐藏版本号

第一种方法修改配置文件

首先使用 curl -I先查看是否能查看到版本号

 隐藏配置:

vim /usr/local/Nginx/conf/Nginx.conf

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.29.11

 

测试:

 第二种方法修改源码文件,重新编译安装

vim /opt/Nginx-1.12.0/src/core/Nginx.h
#define Nginx_VERSION "1.1.1" 					#修改版本号
#define Nginx_VER "apache" Nginx_VERSION 			#修改服务器类型

cd /opt/Nginx-1.12.0/
./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.29.11

 vim /opt/Nginx-1.12.0/src/core/Nginx.h

 

 

 vim /usr/local/Nginx/conf/Nginx.conf

 二.修改用户和组

vim /usr/local/Nginx/conf/Nginx.conf
user Nginx Nginx; 			#取消注释,修改用户Nginx ,组为 Nginx

systemctl restart Nginx

ps aux | grep Nginx

 

 

三.网页缓存 

vim /usr/local/Nginx/conf/Nginx.conf
http {
......
	server {
	...... 
		location ~ \.(gif|jpg|jepg|png)$ { 	#加入新的 location,以图片作为缓存对象
			root html;
			expires 1d;				#指定缓存时间,1天
		}
......
	}
}

 

四.日志分隔 

vim /root/fenge.sh
#!/bin/bash

day=$(date -d "-1 day" "+%Y%m%d")   #显示前一天的时间
#day=$(date -d "-1 day" "+%F")    
logs_path="/var/log/Nginx"
pid_path=`cat /usr/local/Nginx/logs/Nginx.pid`

[ -d $logs_path ] || mkdir -p $logs_path        #创建日志文件目录

#移动并重命名日志文件
mv /usr/local/Nginx/logs/access.log ${logs_path}/qiaodaer.com-access.log-{$day}

#重建日志文件
kill -USR1 $pid_path
#删除30天前的日志文件                   
find $logs_path -mtime +30 -exec rm -rf {} \;
#find $logs_path -mtime +30 | xargs rm -rf

 

 五.连接超时

 

vim /usr/local/Nginx/conf/Nginx.conf
http {
...... 
    keepalive_timeout 65 180;
    client_header_timeout 80;
    client_body_timeout 80;
...... 
}

六.更改进程数

cat /proc/cpuinfo | grep -c "physical id"	#查看cpu核数
ps aux | grep Nginx							#查看Nginx主进程中包含几个子进程

vim /usr/local/Nginx/conf/Nginx.conf
worker_processes  2;				#修改为核数相同或者2倍
worker_cpu_affinity 01 10;			#设置每个进程由不同cpu处理,进程数配2 4 6 8分别为0001 0010 0100 1000 

systemctl restart Nginx

 

 七、网页压缩

vim /usr/local/Nginx/conf/Nginx.conf
http {
...... 
gzip on;       #取消注释,开启gzip压缩功能
   gzip_min_length 1k;        #最小压缩文件大小
   gzip_buffers 4 64k;        #压缩缓冲区,大小为4个64k缓冲区
   gzip_http_version 1.1;     #压缩版本(认1.1,前端如果是squid2.5请使用1.0)
   gzip_comp_level 6;         #压缩比率
   gzip_vary on;     #支持前端缓存服务器存储压缩页面
   gzip_types text/plain text/javascript application/x-javascript text/css text/xml application/xml application/xml+RSS image/jpg image/jpeg image/png image/gif application/x-httpd-PHP application/javascript application/json;  #压缩类型,表示哪些网页文档启用压缩功能
...... 
}

八.防盗链

vim /usr/local/Nginx/conf/Nginx.conf
http {
......
	server {
	......
		location ~* \.(jpg|gif|swf)$ {
			valid_referers none  blocked *.qiaodaer.com;
			if ( $invalid_referer ) {
				rewrite ^/ http://www.qiaodaer.com/error.png;
				#return 403;
            }
        }
	......
	}
}

九、fpm参数优化

cd /usr/local/PHP/etc/
cp PHP-fpm.conf.default PHP-fpm.conf
vim PHP-fpm.conf
pid = run/PHP-fpm.pid

vim /usr/local/PHP/etc/PHP-fpm.d/www.conf
#96行
pm = dynamic		#fpm进程启动方式,动态的
#107行
pm.max_children=20  #fpm进程启动的最大进程数
#112行
pm.start_servers = 5  #动态方式下启动时认开启的进程数,在最小和最大之间
#117行
pm.min_spare_servers = 2  #动态方式下最小空闲进程数
#122行
pm.max_spare_servers = 8  #动态方式下最大空闲进程数

#启动PHP-fpm,不可用于重启
/usr/local/PHP/sbin/PHP-fpm  -c /usr/local/PHP/lib/PHP.ini
#执行第一个命令后,就可以使用下面这条命令查看pid号重启PHP-fpm
kill -USR2 `cat /usr/local/PHP/var/run/PHP-fpm.pid`
netstat -anpt | grep 9000

总结:

Nginx优化有:隐藏版本号,修改用户和组,网页缓存,日志分隔,连接超时,网页压缩,防盗链,FPM参数优化。很多优化现在已经称为了基础配置,由此可见Nginx的优化有多重要。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐