博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux学习总结(三十六)lamp之配置防盗链
阅读量:5904 次
发布时间:2019-06-19

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

一配置防盗链

  • referer,中文释义为来源,也就是在说网站从哪里访问过来,在访问日志里,它指的是不同网站之间的跳转链接信息。也就是跳转源的网址。
    虽然直接在浏览器输入某个站点,跟从其他网站打开该网站,我们感受到的效果没有差别,但是服务器端会记录一个跳转信息,他就是一个referer,如果没有经过跳转,则是一个空的referer。这样我们统计该referer信息,就能统计出某个网站对于我们网站的流量贡献。
  • 防盗链机制就是通过referer的控制,拒绝跳转访问我们自己认为的稀缺资源。比如,淘宝网商之间,既有互相打广告的合作,又有对市场份额的竞争。这时我们可以把我们网站的主页,挂在其他店铺,但是我又不允许其他店铺直接链接我辛苦拍来的产品照片,(这个链接很容易获取)就可以针对该图片做一个防盗链。
    通过限制referer来实现防盗链的功能
    配置虚拟主机为下面的样子。为了节省空间,看起来有清晰,删掉了之前的配置。
    DocumentRoot "/data/wwwroot/www.123.com"ServerName www.123.comServerAlias 123.com
    SetEnvIfNoCase Referer "http://www.123.com" local_ref SetEnvIfNoCase Referer "http://123.com" local_ref SetEnvIfNoCase Referer "^$" local_ref
    Order Allow,Deny Allow from env=local_ref

    curl -e "" 自定义referer,注意该referer的格式

    针对php文件和图片我们分别作带referer和不带referer的测试:
    curl -x127.0.0.1:80 123.com/admin.php -I
    curl -x127.0.0.1:80 -e "http://www.baidu.com" 123.com/admin.php -I
    Linux学习总结(三十六)lamp之配置防盗链
    curl -x127.0.0.1:80 123.com/images/1.jpg -I
    curl -x127.0.0.1:80 -e "http://www.baidu.com" 123.com/images/1.jpg -I
    Linux学习总结(三十六)lamp之配置防盗链

二 限制ip访问

对于一些比较重要的网站,除了我们前面提到的使用用户认证限制访问之外,还可以通过限制访问ip实现访问控制。比如涉及后台的访问,我们可以只开放内网ip或这极少数ip。我们可以指定限制访问的目录或者是某类文件。

访问控制Directory
核心配置文件内容

Order deny,allow Deny from all Allow from 127.0.0.1

-t graceful 后,我们分别用127.0.0.1和本机ens33 ip 192.168.226.130进行测试

curl -x127.0.0.1:80 123.com/admin/admin.php -I
Linux学习总结(三十六)lamp之配置防盗链
curl -x192.168.226.130:80 123.com/admin/admin.php -I
Linux学习总结(三十六)lamp之配置防盗链
curl -x192.168.226.130:80 123.com/admin.php -I
Linux学习总结(三十六)lamp之配置防盗链
访问控制FilesMatch
核心配置文件内容

Order deny,allow Deny from all Allow from 127.0.0.1

-t graceful 后继续测试

curl -x127.0.0.1:80 123.com/admin.php -I
Linux学习总结(三十六)lamp之配置防盗链
curl -x192.168.226.130:80 123.com/admin.php -I
Linux学习总结(三十六)lamp之配置防盗链
curl -x192.168.226.130:80 123.com/345.php -I
Linux学习总结(三十六)lamp之配置防盗链
filematch 匹配amin.php 字段,包含该字段则只允许127.0.0.1这个ip访问。
最后总结:
我们发现防盗链和后面的访问控制 order 这一行有区别。 防盗链中是这样的,Order Allow,Deny 意思先执行允许,再执行拒绝。先允许所有的访问,再拒绝filematch匹配的文件的带refer访问。 访问控制中是这样的,Order deny,allow 意思是针对目录或者文件,先拒绝所有ip访问,再放行指定ip。

转载于:https://blog.51cto.com/12606610/2104592

你可能感兴趣的文章
IOS OBjective-C 内存概念 (4、循环引用和总结)
查看>>
mongodb 3.2 修改oplogsize
查看>>
Ubuntu 12.04 休眠功能
查看>>
vCPU allocation to a VM on XenServer
查看>>
python aes加密和 解密
查看>>
ORACLE安装之ASM安装
查看>>
我的友情链接
查看>>
Kubernetes 如何打赢容器之战?
查看>>
javascript事件
查看>>
解决stackoverflow无法登陆问题
查看>>
android相机区域拍照,快速集成
查看>>
单用户模式只读现象
查看>>
Linux中screen命令详解
查看>>
邮件服务
查看>>
shell中断,继续与退出
查看>>
Python实战(4)apache log分析访问IP流量汇总
查看>>
LINUX下编译安装PROTOBUF
查看>>
转 ubuntu解压命令全览
查看>>
Android开发的前景分析——之你为何看好Android?
查看>>
linux学习笔记
查看>>