2018-3-6 10周5次课 配置防盗链访问控制DirectoryFilesMatch
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018-3-6 10周5次课 配置防盗链访问控制DirectoryFilesMatch相关的知识,希望对你有一定的参考价值。
11.25 配置防盗链
·通过限制referer来实现防盗链的功能
带宽会异常升高,有可能是被倒链
配置如下内容:
Order Allow,Deny ##顺序,先把白名单允许,把其他deny掉
Allow from env=local_ref
(注意:“Allow,Deny”中间只有一个逗号,也只能有一个逗号,有空格都会出错;单词的大小写不限。上面设定的含义是先设定“先检查允许设定,没有允许的全部禁止”,而第二句允许变量 local_ref 的 referer。
<Directory /data/wwwroot/111.com> 定义防盗链的目录
SetEnvIfNoCase Referer 白名单
<filesmatch> 匹配规则
<FilesMatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png)"> 针对这些文件做防盗链
[[email protected] ~]# /usr/local/apache2.4/bin/apachectl -t Syntax OK [[email protected] ~]# /usr/local/apache2.4/bin/apachectl graceful
无法访问111.com/gakki.jpg,这个是空referer
如何让referer不为空,在论坛中创建新帖,附上链接
打开超链接,结果依然是无法访问。
因为,之前配置文件中白名单没有给到该论坛的地址,因此无法通过
把该位置改为该论坛的地址
[[email protected] ~]# /usr/local/apache2.4/bin/apachectl graceful
重新加载配置之后,
直接依然查看不了,但是通过论坛中地超链接就可以查看
直接访问图片地址是空referer,而通过链接访问图片,那么referer是该链接所在论坛地址
·模拟referer
curl -e (referer必须http开头)
[[email protected] ~]# curl -e "http://111.com/123.txt" -x127.0.0.1:80 111.com/gakki.jpg -I
扩展:
Referer:https://baike.baidu.com/item/HTTP_REFERER/5358396?fr=aladdin
https://www.cnblogs.com/bonelee/p/7875163.html
11.26 访问控制Directory
·用户认证可以在一定程度起到安全作用,有时想要让安全更加严格一些
为了防止访问冲突产生,把访问控制放到上方,那么上方为访问控制,下方位防盗链
Order deny,allow 顺序,先deny,后allow
Deny from all 控制语句
Allow from 127.0.0.1 控制语句 控制对象:来源ip
先deny,后allow,那么只有127.0.0.1不受限制;先allow,后deny,那么就是deny
创建admin目录,目录下有index.php,内容是121212
[[email protected] ~]# mkdir /data/wwwroot/111.com/admin/ [[email protected] ~]# cd !$ cd /data/wwwroot/111.com/admin/ [[email protected] admin]# vim index.php [[email protected] admin]# cat !$ cat index.php 121212 [[email protected] admin]# curl -x127.0.0.1:80 111.com/admin/index.php -I HTTP/1.1 200 OK Date: Sun, 04 Mar 2018 13:15:30 GMT Server: Apache/2.4.29 (Unix) PHP/7.1.6 X-Powered-By: PHP/7.1.6 Content-Type: text/html; charset=UTF-8 [[email protected] admin]# curl -x127.0.0.1:80 111.com/admin/index.php 121212
(curl -x是访问目标ip,而配置中也是同一个ip,这是本机和本机通讯)
[[email protected] admin]# curl -x192.168.65.128:80 111.com/admin/index.php -I HTTP/1.1 403 Forbidden Date: Sun, 04 Mar 2018 13:18:19 GMT Server: Apache/2.4.29 (Unix) PHP/7.1.6 Content-Type: text/html; charset=iso-8859-1
(如果把Allow from 后改为192.168.65.128,那么该ip将会被允许访问)
11.27 访问控制FilesMatch
·访问控制出了目录之外也可以去匹配文件名
编辑配置文件:
(这是对一个访问链接做控制,那么控制目录就不太合适)
ip没有通过,403,禁止访问
更换ip,404,允许访问
以上是关于2018-3-6 10周5次课 配置防盗链访问控制DirectoryFilesMatch的主要内容,如果未能解决你的问题,请参考以下文章
2018-3-1512周4次课 Nginx防盗链访问控制配置PHP解析代理