博客
关于我
011.Nginx防盗链
阅读量:439 次
发布时间:2019-03-06

本文共 2046 字,大约阅读时间需要 6 分钟。

防盗链与防盗链配置指南

盗链概述

盗链是一种常见的网络安全问题,指的是在自己的界面展示非本服务器上的内容,通过技术手段获取其他服务器的资源。这种方式绕过了他人资源展示页面,在自己页面向用户提供此内容,从而减轻自身服务器的负担。真实的空间和流量来自于其他服务器。

为了防止被盗链,Web服务器通常需要配置防盗链。其核心思路是区分正常用户请求和非正常用户请求。


防盗链配置

防盗链的关键配置参数

valid_referers none | blocked | server_names | string ...;

  • 默认值:无
  • 可配置段:server, location

防盗链的实际应用

通过配置valid_referers,可以指定允许的来源域名或IP地址。非允许来源的请求将被拒绝。以下是一个典型配置示例:

server {    listen 80;    charset utf-8;    server_name good.linuxds.com;    location / {        root /usr/share/nginx/good;        index index.html;        access_log /var/log/nginx/good.access.log main;        error_log /var/log/nginx/good.error.log warn;        valid_referers none blocked good.linuxds.com;        if ($invalid_referer) {            return 403;        }    }}

防盗链的环境准备

在实际应用中,需要确保以下几点:

  • 主机名解析:确保好.linuxds.com等域名能够正确解析到对应的IP地址。
  • IP配置:检查防火墙设置,确保防火墙不阻止相关端口。
  • 文件路径:确保配置文件和相关文件路径正确无误。

  • 防盗链配置示例

    示例1:全域名白名单配置

    server {    listen 80;    charset utf-8;    server_name good.linuxds.com;    location / {        root /usr/share/nginx/good;        index index.html;        access_log /var/log/nginx/good.access.log main;        error_log /var/log/nginx/good.error.log warn;        valid_referers none blocked good.linuxds.com;        if ($invalid_referer) {            return 403;        }    }}

    示例2:针对特定文件类型的白名单配置

    server {    listen 80;    charset utf-8;    server_name good.linuxds.com;    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|flv|mp4|ico)$ {        valid_referers none blocked *.linuxds.com linuxds.com;        access_log /var/log/nginx/good.access.log main;        error_log /var/log/nginx/good.error.log warn;        if ($invalid_referer) {            rewrite ^/ https://ss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1767274412,1868768041&fm=26&gp=0.jpg;        }    }}

    防盗链的实际效果

    通过上述配置,可以有效防止非法盗链行为。例如:

    • 访问http://good.linuxds.com/images/baidu.png时,请求头中的Referer字段会被检查。
    • 如果Referer不在白名单中,将返回403错误,阻止非法访问。

    同时,针对特定文件类型的防盗链配置,可以进一步限制非法请求的范围,提高服务器安全性。


    防盗链的注意事项

  • 动态域名解析:确保域名解析能够动态更新,避免解析失败导致的访问问题。
  • 日志监控:定期检查日志文件,及时发现异常访问行为。
  • 定期更新:根据业务需求定期更新防盗链白名单,确保其持续有效性。
  • 通过以上配置和优化,可以有效防止服务器被盗链,保障网站正常运行。

    转载地址:http://lrwyz.baihongyu.com/

    你可能感兴趣的文章
    openfeign远程调用不起作用解决_使用Spring Boot的spring.factories进行注入---SpringCloud Alibaba_若依微服务框架改造---工作笔记007
    查看>>
    openfire开发(四)消息拦截器
    查看>>
    openfire源码解读之将cache和session对象移入redis以提升性能
    查看>>
    Openfire身份认证绕过漏洞复现+利用(CVE-2023-32315)
    查看>>
    OpenForest 开源项目安装与使用指南
    查看>>
    opengl 深度详解,多重采样时,如何在OpenGL纹理中解析深度值?
    查看>>
    OpenGL 的内置矩阵种种
    查看>>
    OpenGL中shader读取实现
    查看>>
    OpenGL中旋转平移缩放等变换的顺序对模型的影响
    查看>>
    Opengl中的gluProject函数认识
    查看>>
    OpenGl介绍
    查看>>
    OpenGL和图形卡
    查看>>
    openGL学习步骤
    查看>>
    OpenGL的基本概念介绍
    查看>>
    OpenGL着色器、纹理开发案例
    查看>>
    OpenGL程序无法启动此应用程序,因为计算机中丢失glut32.dll(转))
    查看>>
    opengl绘制几何体的函数
    查看>>
    openGL缓存概念和缓存清除(01)
    查看>>
    OpenJDK11 下的HSDB工具使用入门
    查看>>
    openjdk踩坑
    查看>>