Apache服务--防盗链与隐藏版本

一.防盗链概述

  • 防盗链就是防止别人的网站代码里面盗用服务器的图片、文件、视频等相关资源;如果别人盗用网站的这些静态资源,明显的是会增大服务器的带宽压力;作为网站的维护人员,要杜绝服务器的静态资源被其他网站盗用
  •     HTTP标准协议中专门的Referer字段记录,它的作用是可以追溯上一个入站地址是什么,此外,对于资源文件,可以追踪到包含显示它的网页地址是什么。因此,防盗链方法基于这个Referer字段
  •     Apache防盗链需要安装mod_rewrite模块

二.隐藏版本信息概述

  • 一般情况下,Apache的版本信息,透露了一定的漏洞信息,从而给网站带来安全隐患
  • 在生产环境中要配置Apache的隐藏版本信息
  • 可以使用Fiddler抓包工具分析,网站的版本信息

 

  • 安装DNS服务
[root@localhost ~]# yum install bind -y
  • 配置DNS服务,通过脚本完成
[root@localhost ~]# vim dns.sh

//脚本文件,主要通过正则表达式完成

#!/bin/bash
//获取本地IP地址
IP=$(ifconfig | grep inet | awk 'NR==1 {print}' | awk '{print $2}')
//修改主配置文件         
awk '/127.*/' /etc/named.conf | sed -i 's/127.0.0.1/any/' /etc/named.conf   
awk '/allow-query/' /etc/named.conf | sed -i 's/localhost/any/' /etc/named.conf
//修改区域配置文件
sed  -i '19,23w abc.txt' /etc/named.rfc1912.zones 
sed -i '24r abc.txt' /etc/named.rfc1912.zones
sed -i '25 s/localhost/kgc.com/' /etc/named.rfc1912.zones
sed -i '27 s/named.localhost/kgc.com.zone/' /etc/named.rfc1912.zones
//修改区域数据配置文件
cp -p /var/named/named.localhost /var/named/kgc.com.zone
sed -i '10d' /var/named/kgc.com.zone
sed -i "9awww IN A      $IP" /var/named/kgc.com.zone
//启动服务
systemctl start named 
//查看服务开启状态
[root@localhost ~]# chmod +x dns.sh 
[root@localhost ~]# ./dns.sh
[root@localhost ~]# netstat -ntap | grep named
tcp        0      0 192.168.179.167:53      0.0.0.0:*               LISTEN      3310/named          
  • 关闭防火墙
[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]#
  • 验证DNS域名解析功能(windows10,需要将客户的DNS服务器的IP地址改为192.168.179.167)

  •  解压缩包
[root@localhost mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt
[root@localhost mnt]# tar zxvf apr-util-1.6.0.tar.gz -C /opt
[root@localhost mnt]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt/
[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
  •  安装环境包
[root@localhost opt]# yum install pcre pcre-devel zlib-devel gcc gcc-c++ expat-devel -y
  • 配置Apache服务,防盗链需要mod_rewrite模块
[root@localhost httpd-2.4.29]# ./configure \
> --prefix=/usr/local/httpd \
> --enable-deflate \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cgi
  • 编译且安装
[root@localhost httpd-2.4.29]# make && make install
  • 添加apache服务到系统
grep -v "#" /usr/local/httpd/bin/apachectl > /etc/init.d/httpd
vim /etc/init.d/httpd
#!/bin/bash
	# chkconfig:2345 85 15	
        # description:Apache is a World Wide Web server.
chmod +x /etc/init.d/httpd
chkconfig --add httpd
chkconfig --level 35 httpd on
  • 设置主配置文件
[root@localhost httpd-2.4.29]# vim /usr/local/httpd/conf/httpd.conf

ServerName www.kgc.com:80

Listen 192.168.179.167:80
#Listen 80

#开启rewrite模块
LoadModule rewrite_module modules/mod_rewrite.so

#配置mod_rewrite模块的内容

<Directory "/usr/local/httpd/htdocs">
224      RewriteEngine On
225      RewriteCond %{HTTP_REFERER} !^http://kgc.com/.*$ [NC]
226      RewriteCond %{HTTP_REFERER} !^http://kgc.com$ [NC]
227      RewriteCond %{HTTP_REFERER} !^http://www.kgc.com/.*$ [NC]
228      RewriteCond %{HTTP_REFERER} !^http://www.kgc.com$ [NC]
229      RewriteRule .*\.(gif|jpg|swf) http://www.kgc.com/error.png
</Directory>
  • 验证模块
[root@localhost httpd-2.4.29]# cd /usr/local/httpd/bin
[root@localhost bin]# ./apachectl -t
Syntax OK
[root@localhost bin]#
  • 隐藏版本号
//主配置文件中
Include conf/extra/httpd-default.conf   //开启

[root@localhost httpd]# cd conf/extra/
[root@localhost extra]# vim httpd-default.conf 

ServerTokens Prod                      //Full改为Prod

ServerSignature Off                    //默认关闭状态 

  • 加入页面图片
<html>
<body>
<img src="a.jpg"/>
<h1>It works!</h1>
</body>
</html>

[root@localhost htdocs]# ls
a.jpg  index.html
  • 开启服务,验证服务
[root@localhost bin]# ./apachectl start
[root@localhost bin]# ./apachectl -t
Syntax OK
[root@localhost bin]#

 

  •  隐藏版本的验证

  • 安装另外一台盗链主机
[root@localhost opt]# yum install httpd -y
[root@localhost opt]# cd /var/www/html/
[root@localhost html]# ls
[root@localhost html]# vim index.html
[root@localhost html]# ls
index.html
[root@localhost html]#vim index.html

<html>
<body>

<h1>this is test web</h1>

<img src=”http://192.168.179.167/a.jpg”/>

</body>

</html>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值