nginx中常见的安全配置整理,欢迎查阅

CSP指的是内容安全策略,是一种用于增强网站安全的机制。它的主要作用是通过限制网页内容的来源,防止跨站脚本攻击(XSS)和其他安全漏洞。

CSP通过定义一系列的策略规则,对网站加载或执行的资源进行管理和控制。这些策略规则可以包括允许加载的资源类型、来源和方式等。通过限制哪些内容可以被加载和执行,CSP可以有效地减少潜在的安全风险,提高网站的安全性。

CSP的主要作用包括:

  1. 防止跨站脚本攻击(XSS):CSP可以限制网页中嵌入的脚本的来源,从而防止攻击者注入恶意脚本,保护用户的隐私和安全。
  2. 防止数据注入攻击:CSP可以限制用户输入的内容,防止攻击者注入恶意数据,从而防止数据注入攻击。
  3. 提高网站的安全性:通过限制网页内容的来源,CSP可以减少潜在的安全风险,提高网站的安全性。
  4. 增强网站的可信度:使用CSP可以向用户表明网站对其安全性非常重视,增强用户对网站的可信度。

需要注意的是,CSP并不能完全消除安全风险,但它可以作为一种额外的安全层来增强网站的安全性。因此,在使用CSP时,建议根据实际情况进行配置和调整,以获得最佳的安全效果。
使用 add_header Content-Security-Policy ‘frame-ancestors https://*.xxx.cn’;

 server {
        listen       80;
        gzip  on; #开启gzip
        gzip_vary on;
        gzip_min_length 1k; #不压缩临界值,大于1k的才压缩,一般不用改
        gzip_buffers 4 16k;
        gzip_comp_level 9; #压缩级别,数字越大压缩的越好
        gzip_types  text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png image/x-icon; #压缩文件类型,缺啥补啥
        server_name  *.xxx.com *.xxx2.cn; #这个挺重要,不然所有域名都能访问
        server_tokens off; #关闭nginx版本号,防止通过版本号进行漏洞渗透
        # 允许指定的域名通过iframe嵌入
	add_header Content-Security-Policy 'frame-ancestors https://*.xx.cn';
        # 通过referer判断来源,走不同的请求拦截
        if ($http_referer ~ 'bing.com')
        {
            return 302 https://www.xxx.cn/;
        }
       
         location /static/match-config.js{
           #不同的域名请求过来,指定不同的重定向源
            if ($host ~ "xxx.xxxx.com")
            {
                return  301 https://$host/static/min-configs/xx.js?$args;
            }
          }
         location =/other-sign-auth{
            #验证other-sign-auth路由只有referer检验通过才往后走,检验不过直接拦截403
            valid_referers xxx.xxx.org.cn;
            if ($invalid_referer) {
                return 403;
            }
        }
      #   判断空referer并且在有某些参数情况,进行拦截,这种一般防止把路由跟参数直接粘贴出来使用 
        set $ref 1;
        valid_referers none 1.1.1;
        if ($args ~ "authParams" ){
            set $ref "11";
        }
        if ($args ~ "daohang-auth" ){
            set $ref "11";
        }
        if ($http_referer = ''){
            set $ref "${ref}1";
        }
       location / {
            #注意在匹配的路由location中判断
            if ($ref = "111"){
                return 403;
            }
            #一般前端路由入口禁止缓存,不要将所有静态资源都禁止缓存,不然服务器压力带宽会很大,渲染速度也会很慢
            add_header Cache-Control no-cache;
            add_header Pragma no-cache;
            add_header Expires 0;
        }
    
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

耶稣与梦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值