伤心客 发表于 2024-7-11 16:38:04

nginx 安全设置

1、媒介

   前后端分离后,nginx 作为跨域转发工具在日常应用中越来越广泛,它的安全性不能不能忽略。
2、nginx 安装干系阐明

2.1 直接下载安装包

   在nginx官网下载编译好的安装包,链接地址为nginx: download。如果是linux体系,直接使用wget  https://nginx.org/download/nginx-1.26.0.tar.gz进行下载解压安装即可。
2.2 下载nginx 源码

     在github 提供nginx 源码,地址为https://github.com/nginx/nginx,将源码拉取到本地后要编译,执行如下命令即可。以centos 体系为例 ,需要支持ssl,执行命令如下:
1、yum install openssl*
   2、# ./configure --prefix=/usr/local/nginx-1.26.0 \   --with-http_ssl_module --with-http_spdy_module \   --with-http_stub_status_module --with-pcre   –with-http_stub_status_module:支持 nginx 状态查询   –with-http_ssl_module:支持 https   –with-http_spdy_module:支持 google 的 spdy,    –with-pcre:为了支持 rewrite 重写功能,必须订定 pcre   3、 make      4、make  install   

3、nginx 安全设置

3.1 使用并设置https

   在nginx 设置文件新增如下截图设置

   https://img-blog.csdnimg.cn/direct/4a08900dd1b344c2af410ba3cbce0164.png    特别留意,要使用高版本的   TLS   协议(如   TLS1.2、TLS1.3),替换低版本协议,由于低版本的加密算法强度不足。   3.2 校验http host 头

    有的时候服务端使用请求头中host 字段获取站点或者ip, 但服务端没有host header 值进行处理,可能造成恶意代码的传入,以是一样平常要你校验host头部  。nginx 设置如下:
https://img-blog.csdnimg.cn/direct/858034415aa34993bb3930755287c815.png
3.3 关闭不安全的http 方法

        服务端开启了如   OPTIONS、HEAD   等不安全的   HTTP   方法,存在被非法使用、未   授权访问的风险。以是要关闭此类接口。nginx 设置如下:    https://img-blog.csdnimg.cn/direct/66588208f0d94bf98357f5016d87c452.png   3.4 跨域设置最小权限计谋

https://img-blog.csdnimg.cn/direct/1781cf2022854ae1a0681d2e3f5314de.png
3.5 校验referer

    未校验referer值,可能导致跨站点伪造。可以防盗链,实在nginx的secure_link也可以防止盗链,需要在nginx 中新增如下截图
https://img-blog.csdnimg.cn/direct/655b1421140f4c279b78ece063cd31b0.png3.6 定义网络白名单

cat /home/whitelist.conf

#白名单IP

allow 10.1.1.10;

allow 10.1.1.11

然后在nginx 配置文件中引用此文件,如下
location /{
    include /home/whitelist.conf;
    #默认位置路径为/etc/nginx/ 下,
    #如直接写include whitelist.conf,则只需要在/etc/nginx目录下创建whitelist.conf
    deny all;
} 黑名单和上面方法类似。
3.7  文件MD5 值校验

文件的MD5校验是验证文件在下载过程中,文件是否正确,当客户端下载此文件时候计算此文件的MD5和和相应头部MD5比较。file-md5此模块并不是nginx 官方的,需要下载编译安装。下载地址https://github.com/cfsego/file-md5/archive/master.zip -O file-md5-master.zip。安装后需要在nginx中设置如下
add_header Content-MD5 $file_md5;

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: nginx 安全设置