配置防盗链、访问控制Directory、访问控制FilesMatch

简介:

配置防盗链

我的网站遇到最多的是两类盗链,一是图片盗链,二是文件盗链。曾经有一个访问量极大的网站盗链我网站的图片,一天竟然消耗了数G的流量。同时,我站放的不少几十兆的大型软件也常遭到文件盗链,大量消耗我站资源。

1、新增内容

[root@centos7 local]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

<VirtualHost *:80>

    DocumentRoot "/data/wwwroot/111.com"

    ServerName 111.com

    ServerAlias www.111.com www.example.com

 <Directory /data/wwwroot/111.com>

        SetEnvIfNoCase Referer "http://111.com" local_ref

        SetEnvIfNoCase Referer "http://ask.apelearn.com" local_ref

        SetEnvIfNoCase Referer "^$" local_ref

        #定义referer白名单

        <FilesMatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png)">

            Order Allow,Deny

            Allow from env=local_ref

        #定义规则:允许变量local_ref指定的referer访问,拒绝其他所有访问。

        </FilesMatch>

    </Directory>

2、[root@centos7 local]# /usr/local/apache2.4/bin/apachectl graceful

3、-e :表示指定referer,现在http://ask.apelearn.com/已经在白名单,所以是允许的

[root@centos7 local]# curl -e "http://ask.apelearn.com/" -x127.0.0.1:80 111.com/3.png -I

HTTP/1.1 200 OK

Date: Thu, 09 Nov 2017 12:45:00 GMT

Server: Apache/2.4.29 (Unix) PHP/5.6.30

Last-Modified: Thu, 09 Nov 2017 12:45:00 GMT

ETag: W/"a102-55d97420ac440"

Accept-Ranges: bytes

Content-Length: 41218

Cache-Control: max-age=86400

Expires: Fri, 10 Nov 2017 12:45:00 GMT

Content-Type: image/png


4、不在白名单中就403

[root@centos7 local]# curl -e "http://1323.com/" -x127.0.0.1:80 111.com/3.png -I

HTTP/1.1 403 Forbidden

Date: Thu, 09 Nov 2017 12:49:29 GMT

Server: Apache/2.4.29 (Unix) PHP/5.6.30

Content-Type: text/html; charset=iso-8859-1


访问控制Directory

1、[root@centos7 local]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

<VirtualHost *:80>

    DocumentRoot "/data/wwwroot/111.com"

    ServerName 111.com

    ServerAlias www.111.com www.example.com

 <Directory /data/wwwroot/111.com/admin/>

        Order deny,allow

        Deny from all

        Allow from 127.0.0.1

        #只允许IP--127.0.0.1访问“/data/wwwroot/111.com/admin/”目录中的内容

       #先拒绝所有的,在允许allow的,先后顺序

    </Directory>

2、mkdir /data/wwwroot/111.com/admin/ && vi admin.html

3、[root@centos7 local]# /usr/local/apache2.4/bin/apachectl graceful

验证:

[root@centos7 local]# curl -x127.0.0.1:80 111.com/admin/admin.html

this is admin.html


[root@centos7 local]# curl -x192.168.3.74:80 111.com/admin/admin.html -I

HTTP/1.1 403 Forbidden

Date: Thu, 09 Nov 2017 12:53:39 GMT

Server: Apache/2.4.29 (Unix) PHP/5.6.30

Content-Type: text/html; charset=iso-8859-1


访问控制FilesMatch

1、[root@centos7 local]# vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf

<VirtualHost *:80>

    DocumentRoot "/data/wwwroot/111.com"

    ServerName 111.com

    ServerAlias www.111.com www.example.com

    <Directory /data/wwwroot/111.com>

        <FilesMatch admin.html(.*)>

        Order deny,allow

        Deny from all

        Allow from 127.0.0.1

        </FilesMatch>

    </Directory>

2、[root@centos7 local]# /usr/local/apache2.4/bin/apachectl graceful

3、[root@centos7 local]# curl -x127.0.0.1:80 111.com/admin.html

this file admin.html


扩展:

1.  禁止访问某些文件/目录

增加Files选项来控制,比如要不允许访问 .inc 扩展名的文件,保护php类库:

<Files~"\.inc$">

Order Allow,Deny

Deny from all

</Files>

2. 禁止访问某些指定的目录:(可以用  来进行正则匹配)

<Directory~"^/var/www/(.+/)*[0-9]{3}">

Order Allow,Deny

Deny from all

</Directory>

3. 通过文件匹配来进行禁止,比如禁止所有针对图片的访问:

<FilesMatch \.?i:gif|jpe?g|png)$>

Order Allow,Deny

Deny from all

<FilesMatch>

  

4. 针对URL相对路径的禁止访问

<Location /dir/>

Order Allow,Deny

Deny from all

</Location>












本文转自方向对了,就不怕路远了!51CTO博客,原文链接:http://blog.51cto.com/jacksoner/1980632 ,如需转载请自行联系原作者





相关实践学习
云安全基础课 - 访问控制概述
课程大纲 课程目标和内容介绍视频时长 访问控制概述视频时长 身份标识和认证技术视频时长 授权机制视频时长 访问控制的常见攻击视频时长
相关文章
|
8月前
|
安全 Apache PHP
Apache配置----访问控制,禁止解析php
Apache配置----访问控制,禁止解析php
96 0
|
安全 网络虚拟化 数据安全/隐私保护
华为ensp模拟器 配置ACL访问控制列表
华为ensp模拟器,模拟配置acl访问规则,配置acl访问规则的详细解释和操作。
华为ensp模拟器 配置ACL访问控制列表
|
网络协议 安全
CAPWAP:无线接入点的控制和配置访问控制器 DHCP 选项
本文件受 BCP 78 和 IETF 信托关于 IETF 文件的法律规定的约束,该法律规定自本文件发布之日起生效 (http://trustee.ietf.org/license-info)。请仔细阅读这些文件,因为它们描述了您对本文件的权利和限制。
180 0
CAPWAP:无线接入点的控制和配置访问控制器 DHCP 选项
EMQ
|
JSON 网络性能优化 API
支持 ACL 访问控制、引入 HOCON 全新配置文件格式
11月,超轻量MQTT Broker NanoMQ 0.14版本发布,推出了ACL鉴权服务,并引入了HOCON格式的配置文件。
EMQ
187 0
支持 ACL 访问控制、引入 HOCON 全新配置文件格式
|
数据安全/隐私保护 网络架构
网络工程之标准访问控制列表配置
这次我们来讲述大学网络工程之思科路由器标准访问控制列表配置
99 4
网络工程之标准访问控制列表配置
|
Linux 网络安全 数据安全/隐私保护
CentOS Stream 9通过配置sshd_config中AllowUsers实现SSH访问控制
CentOS Stream 9通过配置sshd_config中AllowUsers实现SSH访问控制
1111 0
CentOS Stream 9通过配置sshd_config中AllowUsers实现SSH访问控制
|
负载均衡 数据安全/隐私保护 开发者
配置访问控制|学习笔记
快速学习配置访问控制
316 1
配置访问控制|学习笔记
|
网络协议 数据安全/隐私保护
ACL访问控制列表 基础、创建ACL访问控制列表的两种方式、配置ACL访问控制列表规则、修改ACL规则的默认步长。子网掩码、反掩码、通配符掩码的区别和作用。
ACL访问控制列表、创建ACL访问控制列表的两种方式、配置ACL访问控制列表规则、修改ACL规则的默认步长。子网掩码、反掩码、通配符掩码的区别和作用。ACL匹配机制详解。ACL的分类与标识,各种ACL的作用区别
ACL访问控制列表 基础、创建ACL访问控制列表的两种方式、配置ACL访问控制列表规则、修改ACL规则的默认步长。子网掩码、反掩码、通配符掩码的区别和作用。
|
网络协议 安全 网络虚拟化
华为数通HCIA小型拓扑综合实验,运用OSPF动态路由协议、ACL访问控制列表,交换机生成树协议,修改交换机根桥、交换机划分vlan、链路聚合等相关数通技术、NAT地址转换以及NAT网络地址转换的配置
华为数通HCIA小型拓扑综合实验,运用OSPF动态路由协议、ACL访问控制列表,交换机生成树协议,修改交换机根桥、交换机划分vlan、链路聚合等相关数通技术、NAT地址转换以及NAT网络地址转换的配置、ACL访问控制列表的配置方法。访问控制列表的书写技巧、ACL访问控制列表的匹配原则。...
华为数通HCIA小型拓扑综合实验,运用OSPF动态路由协议、ACL访问控制列表,交换机生成树协议,修改交换机根桥、交换机划分vlan、链路聚合等相关数通技术、NAT地址转换以及NAT网络地址转换的配置
|
安全 网络安全 数据安全/隐私保护
IIS安全:配置web服务器权限更好地实现访问控制
IIS安全:配置web服务器权限更好地实现访问控制
320 1