千家信息网

Apache网页与安全优化——防盗链和隐藏版本(理论实践相结合!)

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,Apache防盗链防盗链就是防止别人的网站代码里面盗用服务器的图片,文件,视频等相关资源如果别人盗用网站的这些静态资源,明显的是会增大服务器的带宽压力所有作为网站的维护人员,是要杜绝我们服务器的静态资
千家信息网最后更新 2026年11月02日Apache网页与安全优化——防盗链和隐藏版本(理论实践相结合!)

Apache防盗链

  • 防盗链就是防止别人的网站代码里面盗用服务器的图片,文件,视频等相关资源
  • 如果别人盗用网站的这些静态资源,明显的是会增大服务器的带宽压力
  • 所有作为网站的维护人员,是要杜绝我们服务器的静态资源被其他网站盗用

配置规则变量说明

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

规则匹配说明

RewriteEngineOn:打开网页重写功能RewriteCond:设置匹配规则RewriteRule:设置跳转动作

规则匹配

如果相应变量的值匹配所设置的规则,则逐条往下处理;如果不匹配,则往后的规则不再匹配

配置操作演示

修改配置文件启用防盗链功能并设置规则:
RewriteEngineOnRewriteCond %{HTTP_REFERER} !^http://test.com/.*$[NC]RewriteCond %{HTTP_REFERER} !^http://test.com$[NC]RewriteCond %{HTTP_REFERER} !^http://www.test.com/.*$[NC]RewriteCond %{HTTP_REFERER} !^http://www.test.com/$[NC]RewriteRule .*\.(gif|jpg|swf)$ http://www.test.com/error.html [R,NC]

环境

一台Linux服务器(192.168.13.128)一台win10测试机一台win7盗链机(192.168.13.135)

1,yum安装DNS服务,并配置配置文件

[root@localhost ~]# yum install bind -y   ##安装bind服务器[root@localhost ~]# vim /etc/named.conf     ##配置主配置文件信息options {                listen-on port 53 { any; };     ##监听所有                listen-on-v6 port 53 { ::1; };                directory       "/var/named";                dump-file       "/var/named/data/cache_dump.db";                statistics-file "/var/named/data/named_stats.txt";                memstatistics-file "/var/named/data/named_mem_stats.txt";                recursing-file  "/var/named/data/named.recursing";                secroots-file   "/var/named/data/named.secroots";                allow-query     { any; };       ##允许所有[root@localhost ~]# vim /etc/named.rfc1912.zones    ##配置区域配置文件zone "kgc.com" IN {                type master;                file "kgc.com.zone";                allow-update { none; };};[root@localhost ~]# cd /var/named[root@localhost named]# cp -p named.localhost kgc.com.zone    ##复制模板为kgc.com.zone[root@localhost named]# vim kgc.com.zone        ##修改区域数据配置文件信息$TTL 1D@       IN SOA  @ rname.invalid. (                                                                0       ; serial                                                                1D      ; refresh                                                                1H      ; retry                                                                1W      ; expire                                                                3H )    ; minimum                NS      @                A       127.0.0.1www IN  A       192.168.13.128       ##解析地址为本机地址[root@localhost named]# systemctl start named   ##启动DNS解析服务[root@localhost named]# systemctl stop firewalld.service ##关闭防火墙[root@localhost named]# setenforce 0

2,远程共享挂载到Linux上

1)在Windows上将LAMP所需压缩软件包共享出来(此处如有问题请看之前的博客相关文章)

2)在Linux上使用远程共享获取文件并挂载到/mnt目录下
root@localhost ~]# smbclient -L //192.168.100.3/                                Sharename       Type      Comment                                ---------       ----      -------                                LAMP-C7         Disk      [root@localhost ~]# mount.cifs //192.168.100.3/LAMP-C7 /mnt  ##远程挂载软件包到/mnt目录

3,手工编译安装Apache

1)将源码包解压到/opt目录下
[root@localhost mnt]# cd /mnt   ##切换到/mnt目录下[root@localhost mnt]# tar zxvf apr-1.6.2.tar.gz -C /opt/    ##解压源码包到/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 mnt]# cd /opt                        //进入/opt目录      [root@localhost opt]# ls                             //查看解压的文件apr-1.6.2  apr-util-1.6.0  httpd-2.4.29  rh
2)将apr组件包移动到http中并安装编译工具
[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 -y install \gcc \                                       //c语言gcc-c++ \                        //c++语言make \                              //编译工具pcre-devel \                     //pcre语言工具expat-devel \                   //识别标签性语言工具perl \pcre \zlib-devel                       //数据压缩用的函式库
3)配置安装目录及各种模块
[root@localhost opt]# cd /opt/httpd-2.4.29/[root@localhost httpd-2.4.29]#./configure \                      //配置--prefix=/usr/local/httpd \   --enable-deflate \  //配置压缩模块--enable-so \      //apache核心模块开启--enable-rewrite \    //开启重写功能,防盗链--enable-charset-lite \  //支持字符集,简体中文--enable-cgi   //通用网关接口       ... 
4)编译和安装
[root@localhost httpd-2.4.29]# make              //生成可执行的二进制文件...[root@localhost httpd-2.4.29]# make install  //复制二进制文件到系统,配置应用环境...
5)配置http主配置文件
[root@localhost httpd-2.4.29]#  cd /usr/local/httpd/[root@localhost httpd]# lsbin    cgi-bin  error   icons    lib   man     modulesbuild  conf     htdocs  include  logs  manual[root@localhost httpd]# cd conf/             ##切换到http主配置文件中[root@localhost conf]# vim /etc/httpd.conf  ##配置主配置文件Listen 192.168.13.128:80  ##设置监听地址#Listen 80ServerName www.kgc.com:80  ##设置域名[root@localhost conf]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf   ##方便管理创建软连接

4,编辑网页

1)切换到你的共享挂载点,将图片复制到站点中
[root@localhost conf]# cd /mnt   ##切换到挂载点[root@localhost mnt]# cp kali.jpg /usr/local/httpd/htdocs/    ##将图片复制到站点中[root@localhost mnt]# cd /usr/local/httpd/htdocs/[root@localhost htdocs]# ls     ##查看图片复制成功index.html  kali.jpg
2)编辑站点的首页内容,并启动
[root@localhost ~]# cd /usr/local/httpd/[root@localhost httpd]# cd htdocs/      ##切换到站点[root@localhost htdocs]# lsindex.html  kali.jpg  [root@localhost htdocs]# vim index.html     ##编辑网页内容,将图片加入到网页中

It works!

##将图片放到网页中[root@localhost htdocs]# cd /usr/local/httpd/bin/[root@localhost bin]# ./apachectl start ##开启

5,用win10测试机测试网页,并查看图片的属性情况


6,用win7盗链机器访问网页

1)修改DNS解析服务器地址

2)访问网站

3)查看网页图片的属性信息

7,在win7盗链机器上安装web网站服务并使用kgc.com的网页图片

1)在win7上搭建网站服务

2)打开web管理器

3) 编辑首页的html文件,修改文本为index.html

4) 将编辑好的首页内容放到站点中

8,利用win10测试机访问盗链网站的信息(关闭防火墙)

9,开启防盗链配置模块

[root@localhost bin]# vim ../conf/httpd.conf   ##编辑http配置文件LoadModule rewrite_module modules/mod_rewrite.so  ##开启防盗链模块##找到htdocs并添加权限内容249     RewriteEngine On250     RewriteCond %{HTTP_REFERER} !^http://kgc.com/.*$ [NC]251     RewriteCond %{HTTP_REFERER} !^http://kgc.com$ [NC]252     RewriteCond %{HTTP_REFERER} !^http://www.kgc.com/.*$ [NC]253     RewriteCond %{HTTP_REFERER} !^http://www.kgc.com/$ [NC]254     RewriteRule .*\.(gif|jpg|swf)$ http://www.kgc.com/error.png   ##防盗链图片[root@localhost bin]# cp /mnt/error.png /usr/local/httpd/htdocs/   ##将error图片放到站点中[root@localhost bin]# ./apachectl stop   ##关闭[root@localhost bin]# ./apachectl start   ##开启

10,测试盗链模块开启之后盗链网站win7网页的内容

配置Apache隐藏版本信息

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

1,正常访问网页时用抓包软件查看

2,配置http主配置文件

[root@localhost bin]# vim /etc/http.conf   ##配置主配置文件Include conf/extra/httpd-default.conf    ##开启子配置文件[root@localhost bin]# cd ../[root@localhost httpd]# cd conf/[root@localhost conf]# lsextra  httpd.conf  magic  mime.types  original[root@localhost conf]# cd extra/     ##切换到extra目录下[root@localhost extra]# vim httpd-default.conf   ##配置子配置文件ServerTokens Prod   ##将full全部修改为prodServerSignature Off    ##签名关闭

3,关闭服务并重新开启服务查看抓包信息

[root@localhost conf]# cd ../[root@localhost httpd]# cd bin/[root@localhost bin]# ./apachectl stop    ##关闭[root@localhost bin]# ./apachectl start    ##开启

谢谢阅读!!!

配置 文件 网页 服务 图片 网站 信息 防盗 目录 规则 服务器 模块 切换 内容 工具 测试 地址 语言 编译 版本 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技园 湖南永感互联网科技有限公司 高科技互联网 金融科技创新监管互联网金融 金融科技 互联网金融 猪兼强互联网科技 互联网科技公司电话 互联网科技素材视频竖屏 深圳市运趣互联网科技有限公司 济南华为互联网科技产业总部基地 互联网校园科技培训 佛山市翊博互联网络科技有限公司 阿里互联网科技企业 上海钢联属于互联网科技股吗 广州富喜互联网络科技 广州梦谷互联网科技有限公司领导 科技和互联网行业的特点 承德科技产业互联网平台 互联网科技创业计划的风险分析 互联网科技创新方面的资料 互联网 科技 互联网教育科技公司vipkid 内蒙古九一互联网科技 佛山市翊博互联网络科技有限公司 互联网科技如何创业 深圳无忧互联网科技 江苏互联网智能科技产品出厂价 互联网金融金融科技 互联网科技大佬云集 现代科技的标志之一的互联网
0