【Nginx-利用Referer防盗链】解决网站被可疑链接调取接口

【Nginx-利用Referer防盗链】解决网站被可疑链接调取接口

这两天网站访问速度变慢,查看nginx日志会有很多的大量请求带有可疑的referer,这些referer经过访问后都是短信平台,然后进行调用了我们网站的验证码接口
查看nginx日志
在这里插入图片描述
Nginx-利用Referer防盗链
语法:

1、ngx_http_referer_module模块:
用来阻止Referer首部无有效值的请求访问,可防止盗链
2、valid_referers none|blocked|server_names|string ...;
定义referer首部的合法可用值,不能匹配的将是非法值
none:请求报文首部没有referer首部
blocked:请求报文有referer首部,但无有效值
server_names:referer首部中包含本主机名
arbitrary_string:任意字符串,但可使用*作通配符
regular expression:被指定的正则表达式模式匹配到的字符串,要使用~开头,例如: ~.*.baidu.com


示例:

server {
    listen       80;
    server_name  XX.XX.XX.XX;
  
    location / {
     XXX
      XXXX
      XXX
       valid_referers none blocked server_names *.XXX.com;  #写入允许的referers
       if ($invalid_referer) {
         #盗链时返回403
         return 403;
       }

    }
vim test.conf 
server {
   
      listen 443 ssl;
      listen 80 ;
      server_name www.magedu.org;
      root /data/ssl;
      ssl_certificate /etc/nginx/conf.d/ssl/magedu.org.crt;
      ssl_certificate_key /etc/nginx/conf.d/ssl/magedu.org.key;
      ssl_session_cache shared:sslcache:20m;
      ssl_session_timeout 10m;
      valid_referers none block server_names *.magedu.org  ~\.google\. ~\.baidu\.;
      if ($invalid_referer) {
   
           return 403 "Forbidden Access";
          
}

开启之后进行检查并重启nginx

nginx -t
nginx -s reload

查看nginx日志可疑的网站已经被拦截状态403
在这里插入图片描述
友情提示: 在写入允许的valid_referers的时候记得把可信的网址写进去,避免有的用户通过百度、搜狗、360以及其他正规平台进行搜索后进行点击无法访问
举例:

valid_referers  none blocked server_names *.sogou.com  *.so.com *.baidu.com;
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/101809.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 重定向与转发的区别以及实现_重定向与转发

    重定向与转发的区别以及实现_重定向与转发一、转发和重定向的区别request.getRequestDispatcher()是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;服务器内部转发,整个过程处于同一个请求当中。response.sendRedirect()则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。不在同一个请求。重定向,实际上客户端会向服务器端发送两个请求。所以转发中数据的存取可以用request作用域:request.setAtt…

    2025年7月11日
    4
  • 教你玩转CSDN博客[通俗易懂]

    教你玩转CSDN博客[通俗易懂]我在CSDN博客可以做什么呢?CSDN博客是一个专业IT技术发表的平台。在这里,你可以阅读技术大佬的博文,为他们点赞,评论,收藏;在这里,你也可以发布自己的博文,你可以发布技术分享、面试技巧、程序人生,也可以发布认真或有趣的交流与分享。我该怎么发布文章?点击创作中心即可撰写博文,但是文章内容不得违反法律法规及政策规定哦!原创的文章是自己学习并整理出的结果,所以,如果是翻译或转载的文章,征求原作者同意转载后,发布时点击转载按钮,并在文章显要位置注明原作出处哦。博主在其他平台撰写过10篇以上的

    2022年5月12日
    46
  • 常见的反爬虫和应对方法「建议收藏」

    常见的反爬虫和应对方法「建议收藏」常见的反爬虫和应对方法

    2022年4月20日
    35
  • mediumtext_MySQL中tinytext、text、mediumtext和longtext等各个类型详解【图】

    mediumtext_MySQL中tinytext、text、mediumtext和longtext等各个类型详解【图】MySQL中tinytext、text、mediumtext和longtext等各个类型详解【图】07-29栏目:技术TAG:mediumtextmediumtext一、字符串类型www.jhua.org类型www.jhua.org范围https://www.jhua.org说明www.jhua.orgChar(N)[binary]N=1~255个字节jhua.orgbinary:分…

    2022年5月2日
    42
  • ftp上传文件,本地安装了,服务器上也需要在也安装一个ftp

    ftp上传文件,本地安装了,服务器上也需要在也安装一个ftp

    2021年9月23日
    48
  • Oracle之删除数据之后如何恢复的方法总结

    Oracle之删除数据之后如何恢复的方法总结导读:1、delete误删除的解决方法;2、drop误删除的解决方法;3、闪回整个数据库;4、总结以下以oracle数据库为例,介绍关于表中数据删除的解决办法。(不考虑全库备份和利用归档日志

    2022年7月1日
    23

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号