[LAMP]防盗链与访问控制

本文涉及的产品
访问控制,不限时长
简介:

一、防盗链

    有时候,网站的流量会异常庞大。经过观察,会发现一些静态的图片等元素被盗用了。使用防盗链,可以防止元素被外链。通过限制referer能实现防盗链的功能。

1)配置虚拟主机

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
[root@juispan ~] # vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
     DocumentRoot  "/data/www/123.com"
     ServerName 123.com
     ErrorLog  "logs/123.com-error_log"
     CustomLog  "logs/123.com-access_log"  common
     <Directory  /data/www/123 .com>
         SetEnvIfNoCase Referer  "http://www.123.com"  local_ref
         SetEnvIfNoCase Referer  "http://123.com"  local_ref
         SetEnvIfNoCase Referer  "^$"  local_ref
         <filesmatch  "\.(txt|doc|mp3|zip|rar|jpg|gif)" >
             Order Allow,Deny
             Allow from  env =local_ref
         < /filesmatch >
     < /Directory >
< /VirtualHost >

2)检查重新加载

1
2
3
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl graceful


3)测试效果

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@juispan 123.com] # curl -x127.0.0.1:80 123.com/123.gif -I 
HTTP /1 .1 200 OK
Date: Fri, 21 Jul 2017 12:26:31 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
Last-Modified: Fri, 21 Jul 2017 12:26:31 GMT
ETag: W/ "8c5-555b2e6023fc0"
Accept-Ranges: bytes
Content-Length: 2245
Content-Type: image /gif
 
[root@juispan 123.com] # curl -e "http://baidu.com" -x127.0.0.1:80 123.com/123.gif -I 
HTTP /1 .1 403 Forbidden
Date: Fri, 21 Jul 2017 12:26:11 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
Content-Type: text /html ; charset=iso-8859-1


二、访问控制

1、Directory

1)配置虚拟主机

1
2
3
4
5
6
7
8
9
10
11
12
[root@juispan ~] # vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
     DocumentRoot  "/data/www/123.com"
     ServerName 123.com
     ErrorLog  "logs/123.com-error_log"
     CustomLog  "logs/123.com-access_log"  common
     <Directory  /data/www/123 .com>
         Order deny,allow
         Deny from all
         Allow from 127.0.0.1
     < /Directory >
< /VirtualHost >

2)检查重新加载

1
2
3
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl graceful

3)测试效果

1
2
3
4
5
6
7
8
9
10
11
12
[root@juispan 123.com] # curl -x127.0.0.1:80 123.com -I 
HTTP /1 .1 200 OK
Date: Fri, 21 Jul 2017 12:33:02 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
X-Powered-By: PHP /7 .1.6
Content-Type: text /html ; charset=UTF-8
 
[root@juispan 123.com] # curl -x192.168.137.100:80 123.com -I 
HTTP /1 .1 403 Forbidden
Date: Fri, 21 Jul 2017 12:33:14 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
Content-Type: text /html ; charset=iso-8859-1


2、FilesMatch

1)配置虚拟主机

1
2
3
4
5
6
7
8
9
10
11
12
13
14
[root@juispan ~] # vi /usr/local/apache2.4/conf/extra/httpd-vhosts.conf
<VirtualHost *:80>
     DocumentRoot  "/data/www/123.com"
     ServerName 123.com
     ErrorLog  "logs/123.com-error_log"
     CustomLog  "logs/123.com-access_log"  common
     <Directory  /data/www/123 .com>
         <FilesMatch   "index.php(.*)" >
             Order deny,allow
             Deny from all
             Allow from 127.0.0.1
         < /FilesMatch >    
     < /Directory >
< /VirtualHost >

2)检查重新加载

1
2
3
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl -t
Syntax OK
[root@juispan ~] # /usr/local/apache2.4/bin/apachectl graceful

3)测试效果

1
2
3
4
5
6
7
8
9
10
11
12
[root@juispan 123.com] # curl -x127.0.0.1:80 123.com/index.php -I
HTTP /1 .1 200 OK
Date: Fri, 21 Jul 2017 12:39:13 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
X-Powered-By: PHP /7 .1.6
Content-Type: text /html ; charset=UTF-8
 
[root@juispan 123.com] # curl -x192.168.137.100:80 123.com/index.php -I
HTTP /1 .1 403 Forbidden
Date: Fri, 21 Jul 2017 12:39:26 GMT
Server: Apache /2 .4.27 (Unix) PHP /7 .1.6
Content-Type: text /html ; charset=iso-8859-1


















本文转自Grodd51CTO博客,原文链接:http://blog.51cto.com/juispan/1953129 ,如需转载请自行联系原作者
相关实践学习
消息队列+Serverless+Tablestore:实现高弹性的电商订单系统
基于消息队列以及函数计算,快速部署一个高弹性的商品订单系统,能够应对抢购场景下的高并发情况。
云安全基础课 - 访问控制概述
课程大纲 课程目标和内容介绍视频时长 访问控制概述视频时长 身份标识和认证技术视频时长 授权机制视频时长 访问控制的常见攻击视频时长
相关文章
|
应用服务中间件 PHP nginx
|
数据安全/隐私保护
|
2月前
|
安全 网络安全 数据安全/隐私保护
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限
访问控制列表(ACL)是网络安全中的一种重要机制,用于定义和管理对网络资源的访问权限。它通过设置一系列规则,控制谁可以访问特定资源、在什么条件下访问以及可以执行哪些操作。ACL 可以应用于路由器、防火墙等设备,分为标准、扩展、基于时间和基于用户等多种类型,广泛用于企业网络和互联网中,以增强安全性和精细管理。
297 7

热门文章

最新文章