十一周一次课11.25 配置防盗链、11.26 访问控制Directory、11.27 访问控制FilesMatch

11.25 配置防盗链

防止有人利用网站文件上传的功能,把一些静态媒体资源放到我们的网站上,然后在他们的网站上设置这些资源的链接到我们的网站上,当他们网站用户访问这些资源时,就会跳转到我们的服务器上,导致我们的服务器带宽流量异常增大。为了防止这种情况发生,我们利用apache服务器访问控制实现防盗链功能。

在httpd-vhosts.conf配置文件下进行设定:

<Directory /data/wwwroot/111.com>
SetEnvIfNoCase Referer "http://www.111.com" local_ref   //指定referer白名单
SetEnvIfNoCase Referer "http://111.com" local_ref   //指定referer白名单
SetEnvIfNoCase Referer "^$" local_ref   //空的referer也能访问
<FilesMatch "\.(txt|doc|mp3|zip|rar|jpg|gif)">   //使用文件匹配访问控制
Order Allow,Deny    //访问控制顺序,先允许后拒绝。
Allow from env=local_ref   //只有符合白名单上的referer才能访问111.com目录。
</FilesMatch>
</Directory>

验证效果。

curl -e “www.111.com” -x127.0.0.1:80  www.111.com/logo.jpg  -I  //-e选项是指定referer进行访问。
11.26 访问控制Directory

11.26 访问控制Directory 公司的内部网站可以设置访问控制,指定来源IP才能够访问

在httpd-vhosts.conf配置文件下进行设定:

<Directory /data/wwwroot/111.com>   // 指定需要访问控制的网站的目录
Order deny,allow   //访问控制的顺序,先所有都拒绝,然后再允许指定的ip。和iptables不同,可以全部规则都执行下去。
Deny from all   // 拒绝所有的来源ip
Allow from 127.0.0.1 //指定允许访问的来源ip(指定网段也可以192.168.0.0/24)
</Directory>

11.27 访问控制FilesMatch

除了对整个网站的目录进行访问控制外,还可以对网站的指定某一个页面进行访问控制,例如只有指定的来源ip才能够访问后台管理的页面。

也是在httpd-vhosts.conf配置文件下进行设定:

<FilesMatch "admin.php(.*)">   //指定需要访问控制的页面
Order deny,allow     //访问控制的顺序,先所有都拒绝,然后再允许指定的ip
Deny from all          // 拒绝所有的来源ip
Allow from 127.0.0.1  //指定允许访问的来源ip(指定网段也可以192.168.0.0/24)
</FilesMatch>

猜你喜欢

转载自my.oschina.net/u/3803405/blog/1822743