Apache网页优化 ---- 设置防盗链+隐藏版本信息

Apache网页优化 ---- 设置防盗链+隐藏版本信息

一:防盗链

  • 防盗链就是防止别人的网站代码里面盗用服务器的图片、文件、视频等相关资源;

  • 如果别人盗用网站的这些静态资源,明细的是会增大服务器的带宽压力;

  • 所以作为网站的维护人员,要杜绝我们服务器的静态资源被其他网站盗用。

二:配置规则变量说明

  • %{HTTP_ REFERER}:浏览 header 中的链接字段,存放一个链接的URL,代表是从哪个链接访问所需的网页
  • !^:不以后面的字符串开头
  • .*$:以任意字符结尾
  • NC:不区分大写
  • R:强制跳转

三:规则匹配

  • RewriteEngine On : 打开网页重写功能
  • RewriteCond : 设置匹配规则
  • RewriteRule : 设置跳转动作
  • 如果相应变量的值匹配所设置的规则,则逐条往下处理;如果不匹配,则往后的规则不再匹配。

四:实验步骤

1、实验环境
  • 一台linux虚拟机(192.168.34.128)

  • 一台Linux虚拟机(192.168.34.141)作为盗链网站

  • 一台win10作为测试客户端

2、实验过程

(1)手工编译apache,挂载共享文件,并解压到/opt/目录下

[root@localhost ~]# mount.cifs //192.168.10.29/share /abc     ‘共享文件’
[root@localhost abc]# tar zxvf apr-1.6.2.tar.gz -C /opt/
[root@localhost abc]# tar zxvf apr-util-1.6.0.tar.gz -C /opt/
[root@localhost abc]# tar zxvf httpd-2.4.2.tar.gz -C /opt/

(2)安装包优化

[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.2/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.2/srclib/apr-util

(3)安装编译工具, 并重新编译Apache,参数中加入 mod_rewrite 模块内容

[root@localhost opt]# yum install  gcc gcc-c++ pcre pcre-devel zlib-devel  -y
[root@localhost opt]#./configure \
--prefix=/usr/local/httpd \
--enable-deflate \              
--enable-so \
--enable-rewrite \
--enable-charset-lite \
--enable-cgi
[root@localhost opt]# make && make install

(4)安装bind域名解析服务,并对配置文件进行修改

[root@localhost httpd-2.4.2]# yum install bind -y
[root@localhost httpd-2.4.2]# vim /etc/named.conf    ‘主配置文件’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-hFzf1isI-1576814748901)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1576806170214.png)]

[root@localhost httpd-2.4.2]# vim /etc/named.rfc1912.zones   ‘区域配置文件’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4c7vEbjS-1576814748903)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1576806310037.png)]

[root@localhost named]# cp -p named.localhost kg.com.zone[root@localhost named]# vim kg.com.zone    ‘区域数据配置文件’

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-i4VG3tt4-1576814748903)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1576806755557.png)]

[root@localhost named]# systemctl start named

(5)给网页站点添加一张图片, 放一张图片到共享文件夹,再把图片复制到网页文件夹中

[root@localhost ~]# cp /abc/dog.jpg /usr/local/httpd/htdocs/
[root@localhost htdocs]# vim index.html
<html><body><h1>It works!</h1>
<img src="dog.jpg"/>      ‘把图片加在网页中’
</body></html>
[root@localhost htdocs]#service httpd start     ‘开启httpd服务’
[root@localhost htdocs]#systemctl stop firewalld.service
[root@localhost htdocs]#setenforce 0

在win10中验证
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r7WSXw2a-1576814748904)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1576813383658.png)]

(6)接下来配置另一台盗链虚拟机,先安装httpd,并进行配置

[root@localhost ~]# yum  install httpd  -y
[root@localhost ~]# vim /etc/httpd/conf/httpd.conf
ServerName www.kg.com:80    ‘修改域名’
Listen 192.168.34.141:80     ‘监听地址’
#Listen 80
[root@localhost ~]# vim /var/www/html/index.html 
<htmL>
<body>
<h1>this is test web</h1>
<img src="http://www.kg.com/game.jpg"/
</body>
</html>
[root@localhost ~]# systemctl start httpd

(7)开启apache的防盗链功能

[root@localhost htdocs]# cd ..
[root@localhost httpd]# ls
bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules
[root@localhost httpd]# cd conf
[root@localhost conf]# ls
extra  httpd.conf  magic  mime.types  original
[root@localhost conf]# vim httpd.conf
‘在240行添加’
    RewriteCond %{HTTP_REFERER} !^http://hello.com/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://hello.com$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.hello.com/.*$ [NC]
    RewriteCond %{HTTP_REFERER} !^http://www.hello.com/$ [NC]
    RewriteRule .*\.(gif|jpg|swf)$ http://www.hello.com/error.png
</Directory>
[root@localhost conf]# cd 
[root@localhost ~]# cd /usr/local/httpd/bin/
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start

五:Apache版本隐藏信息

配置Apache隐藏版本信息:

  • Apache的版本信息,透露出了一定的漏洞信息,在现网中如果不隐藏版本信息,外界知道Apache版本,会根据对应版本的漏洞进行攻击,所以这体现了隐藏版本信息的重要性。

1、 将主配置文件 httpd.conf 以下行注释去掉

[root@localhost ~]# vim /etc/httpd.conf 
Include conf/extra/httpd-default.conf    ‘把#号去掉’

2、 修改 httpd-default.conf 文件两个地方

[root@localhost ~]#cd /usr/local/httpd/conf/extra
[root@localhost ~]#vim httpd-default.conf
   ServerTokens Full  修改为 ServerTokens Prod
   ServerSignature On 修改为 ServerSignature Off
[root@localhost ~]#systemctl restart httpd   

3、在win10中打开抓包工具,直接开启抓包

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1ipYeRJK-1576814748905)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1576814654092.png)]

发布了62 篇原创文章 · 获赞 11 · 访问量 2364

猜你喜欢

转载自blog.csdn.net/XuMin6/article/details/103630403
今日推荐