Nginx盗链和防盗链

目录

一、配置盗链

①准备工作

②配服务端192.168.58.58

③配置盗链端192.168.58.58

Ⅰ配置地址映射

 Ⅱ修改盗链端html

④在whindows里实验

Ⅰ修改windows hosts文件 添加地址映射

 Ⅱwindows浏览器打开盗链端网站,直接可以访问到服务端图片

二、防盗链

①添加防盗链后rewrite的图片 

②添加服务端自身地址映射

③修改Nginx配置文件

④重启Nginx服务,windows浏览器进入盗链段以验证


一、配置盗链

①准备工作

准备两个nginx服务器

一台作为服务器(被盗) 192.168.58.58 放图片

一台作为盗链端 192.168.58.128

②配服务端192.168.58.58

cd /usr/local/nginx/html

把图片放进去

vim index.html

③配置盗链端192.168.58.58

Ⅰ配置地址映射

cd/etc

vim hosts

 Ⅱ修改盗链端html

cd /usr/local/nginx/html

vim index.html

添加

<img src="http://www.fuwu.com/cat.jpg">

 以盗取服务端图片

④在whindows里实验

Ⅰ修改windows hosts文件 添加地址映射

 

 Ⅱwindows浏览器打开盗链端网站,直接可以访问到服务端图片

 完成,盗链端偷到了服务端的图片。

二、防盗链

在nginx配置中文件中添加location模块以防止非直接搜索服务器地址的用户,拿走以jpg|gif|swf结尾的图片,服务端rewrite指定图片(jpg|gif|swf结尾的图片将都被屏蔽)

①添加防盗链后rewrite的图片 

cd /usr/local/nginx/html

添加图片,此图片用以嘲讽盗链者

修改图片后缀为.png

②添加服务端自身地址映射

cd /etc      vim hosts

添加  192.168.58.58      www.fuwu.com

③修改Nginx配置文件

vim /usr/local/nginx/conf/nginx.conf

sever 80块后增加location块

location ~*.(jpg|gif|swf)$ {

       valid_referers *.fuwu.com fuwu.com;      #设置信任网站,授信

       if ( $invalid_referer ) {      #如果存在不信任的网站即源头不为授信网站

      rewrite ^/ http://www.fuwu.com/not.png;      #重写

       return 403;

   }

}

④重启Nginx服务,windows浏览器进入盗链段以验证

systemctl restart nginx

 试验成功

特别提醒Ⅰ浏览器寻找地址时会先找本地缓存,修改Nginx配置文件后进行浏览器验证时,需要先清除浏览器缓存。

Ⅱ 以此方法设好location,则无法直接在服务端指定看html目录的图片

此时在防盗链设置的locationg块信任域名前加入none,则不经过referer寻找图片,则可以选择访问服务端html目录的图片。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值