11.25 配置防盗链
11.26 访问控制Directory
11.27 访问控制FilesMatch
意义:防盗链能限制不认识的referer的访问,能够禁止别人的服务器引用或转发我服务器上的内容,这样可以防止别人盗用我服务器上的资源,服务器的资源被盗用会导致网络带宽的使用量上升。
添加配置:
1.vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
2.<Directory /data/test.com>
SetEnvIfNoCase Referer “http://www.etc.com” local_ref //定义白名单可引用的网站
SetEnvIfNoCase Referer “http:// aaa.com” local_ref //定义白名单可引用的网站
SetEnvIfNoCase Referer “^$” local_ref //定义空referer 如果注释掉这行,不能直接输入网址图片去访问网站下的txt、doc、MP3等格式。
<filesmathch “\.(txt|doc|mp3|zip|rar|jpg|gif)”> //在etc.com和aaa.com网站下,这些元素可以引用
Order Allow,Deny \\这里allow放在前面就会执行下面的allow语句
Allow from env=local_ref
</filesmatch>
</Directory>
curl -e “http://aaa.com/123.txt //-e 自定义referer
3./usr/local/apache2.4/bin/apachectl -t
4./usr/local/apache2.4/bin/apachectl -grceful
5.测试(提示200成功)
curl -e "http://aaa.com/123.txt" -x127.0.0.1:80 www.etc.com/123.txt -I
测试 (提示403限制访问)
curl -e "http://abc.com/123.txt" -x127.0.0.1:80 www.etc.com/123.txt -I
总结:在白名单内引用资源是可以的,而不再白名单内引用是会报错403!这就有效防止别人盗用资源和占用你的网络资源!
添加配置:
1. vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
2.<Directory /data/test.com/111>
order deny,allow \\order定义控制顺序,那个在前面就先匹配那个规则,这里先Deny后allow等于先拒绝后允许
Deny from all
Allow from 47.106.22.221
</Directory>
3.mkdir /data/test.com/111 //创建目录
4.vim /data/test.com/111/222.html ///编辑内容随意
5./usr/local/apache2.4/bin/apachectl -t
6./usr/local/apache2.4/bin/apachectl -grceful
7.测试47.106.22.221 Ip是可以访问的
curl -x47.106.22.221:80 www.etc.com/111.222.html
测试127.0.0.1 IP是限制访问的
curl -x127.0.1:80 www.etc.com/111.222.html
<Directory /data/test.com/111>
<FilesMatch “1.php(.*)”>
order deny,allow \\order定义控制顺序,那个在前面就先匹配那个规则,这里先Deny后allow等于先拒绝后允许
Deny from all
Allow from 47.106.22.221
</FilesMatch>
</Directory>
11.26 访问控制Directory
11.27 访问控制FilesMatch
配置防盗链:
referer:简单来讲就是上一次跳转的页面(请求)意义:防盗链能限制不认识的referer的访问,能够禁止别人的服务器引用或转发我服务器上的内容,这样可以防止别人盗用我服务器上的资源,服务器的资源被盗用会导致网络带宽的使用量上升。
添加配置:
1.vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
2.<Directory /data/test.com>
SetEnvIfNoCase Referer “http://www.etc.com” local_ref //定义白名单可引用的网站
SetEnvIfNoCase Referer “http:// aaa.com” local_ref //定义白名单可引用的网站
SetEnvIfNoCase Referer “^$” local_ref //定义空referer 如果注释掉这行,不能直接输入网址图片去访问网站下的txt、doc、MP3等格式。
<filesmathch “\.(txt|doc|mp3|zip|rar|jpg|gif)”> //在etc.com和aaa.com网站下,这些元素可以引用
Order Allow,Deny \\这里allow放在前面就会执行下面的allow语句
Allow from env=local_ref
</filesmatch>
</Directory>
curl -e “http://aaa.com/123.txt //-e 自定义referer
3./usr/local/apache2.4/bin/apachectl -t
4./usr/local/apache2.4/bin/apachectl -grceful
5.测试(提示200成功)
curl -e "http://aaa.com/123.txt" -x127.0.0.1:80 www.etc.com/123.txt -I
测试 (提示403限制访问)
curl -e "http://abc.com/123.txt" -x127.0.0.1:80 www.etc.com/123.txt -I
总结:在白名单内引用资源是可以的,而不再白名单内引用是会报错403!这就有效防止别人盗用资源和占用你的网络资源!
访问控制Directory(限制整个目录)
通过IP来控制访问,一般某些网站只想内网使用,不想对外,就可以使用这个功能添加配置:
1. vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
2.<Directory /data/test.com/111>
order deny,allow \\order定义控制顺序,那个在前面就先匹配那个规则,这里先Deny后allow等于先拒绝后允许
Deny from all
Allow from 47.106.22.221
</Directory>
3.mkdir /data/test.com/111 //创建目录
4.vim /data/test.com/111/222.html ///编辑内容随意
5./usr/local/apache2.4/bin/apachectl -t
6./usr/local/apache2.4/bin/apachectl -grceful
7.测试47.106.22.221 Ip是可以访问的
curl -x47.106.22.221:80 www.etc.com/111.222.html
测试127.0.0.1 IP是限制访问的
curl -x127.0.1:80 www.etc.com/111.222.html
访问控制FilesMatch
也可以限制单个文件:跟上面限制目录一样,只不过是变成限制的单个文件<Directory /data/test.com/111>
<FilesMatch “1.php(.*)”>
order deny,allow \\order定义控制顺序,那个在前面就先匹配那个规则,这里先Deny后allow等于先拒绝后允许
Deny from all
Allow from 47.106.22.221
</FilesMatch>
</Directory>