溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合?。?/h1>
發(fā)布時(shí)間:2020-06-13 09:13:59 來(lái)源:網(wǎng)絡(luò) 閱讀:3942 作者:一拳超人007 欄目:系統(tǒng)運(yùn)維

Apache防盜鏈

  • 防盜鏈就是防止別人的網(wǎng)站代碼里面盜用服務(wù)器的圖片,文件,視頻等相關(guān)資源
  • 如果別人盜用網(wǎng)站的這些靜態(tài)資源,明顯的是會(huì)增大服務(wù)器的帶寬壓力
  • 所有作為網(wǎng)站的維護(hù)人員,是要杜絕我們服務(wù)器的靜態(tài)資源被其他網(wǎng)站盜用

配置規(guī)則變量說(shuō)明

*   %{HTTP_REFERER}:瀏覽header中的鏈接字段,存放一個(gè)鏈接的URL,
代表是從哪個(gè)鏈接訪問(wèn)所需的網(wǎng)頁(yè)
*   !^:不以后面的字符串開(kāi)頭
*   .*$:以任意字符結(jié)尾
*   NC:不區(qū)分大寫(xiě)
*   R:強(qiáng)制跳轉(zhuǎn)

規(guī)則匹配說(shuō)明

RewriteEngineOn:打開(kāi)網(wǎng)頁(yè)重寫(xiě)功能
RewriteCond:設(shè)置匹配規(guī)則
RewriteRule:設(shè)置跳轉(zhuǎn)動(dòng)作

規(guī)則匹配

如果相應(yīng)變量的值匹配所設(shè)置的規(guī)則,則逐條往下處理;如果不匹配,則往后的規(guī)則不再匹配

配置操作演示

修改配置文件啟用防盜鏈功能并設(shè)置規(guī)則:
RewriteEngineOn
RewriteCond %{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]

環(huán)境

一臺(tái)Linux服務(wù)器(192.168.13.128)
一臺(tái)win10測(cè)試機(jī)
一臺(tái)win7盜鏈機(jī)(192.168.13.135)

1,yum安裝DNS服務(wù),并配置配置文件

[root@localhost ~]# yum install bind -y   ##安裝bind服務(wù)器
[root@localhost ~]# vim /etc/named.conf     ##配置主配置文件信息
options {
                listen-on port 53 { any; };     ##監(jiān)聽(tīng)所有
                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    ##配置區(qū)域配置文件
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    ##復(fù)制模板為kgc.com.zone
[root@localhost named]# vim kgc.com.zone        ##修改區(qū)域數(shù)據(jù)配置文件信息
$TTL 1D
@       IN SOA  @ rname.invalid. (
                                                                0       ; serial
                                                                1D      ; refresh
                                                                1H      ; retry
                                                                1W      ; expire
                                                                3H )    ; minimum
                NS      @
                A       127.0.0.1
www IN  A       192.168.13.128       ##解析地址為本機(jī)地址
[root@localhost named]# systemctl start named   ##啟動(dòng)DNS解析服務(wù)
[root@localhost named]# systemctl stop firewalld.service ##關(guān)閉防火墻
[root@localhost named]# setenforce 0

2,遠(yuǎn)程共享掛載到Linux上

1)在Windows上將LAMP所需壓縮軟件包共享出來(lái)(此處如有問(wèn)題請(qǐng)看之前的博客相關(guān)文章)

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合!)

2)在Linux上使用遠(yuǎn)程共享獲取文件并掛載到/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  
##遠(yuǎn)程掛載軟件包到/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                        //進(jìn)入/opt目錄      
[root@localhost opt]# ls                             //查看解壓的文件
apr-1.6.2  apr-util-1.6.0  httpd-2.4.29  rh
2)將apr組件包移動(dòng)到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語(yǔ)言
gcc-c++ \                        //c++語(yǔ)言
make \                              //編譯工具
pcre-devel \                     //pcre語(yǔ)言工具
expat-devel \                   //識(shí)別標(biāo)簽性語(yǔ)言工具
perl \
pcre \
zlib-devel                       //數(shù)據(jù)壓縮用的函式庫(kù)
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核心模塊開(kāi)啟
--enable-rewrite \    //開(kāi)啟重寫(xiě)功能,防盜鏈
--enable-charset-lite \  //支持字符集,簡(jiǎn)體中文
--enable-cgi   //通用網(wǎng)關(guān)接口       
... 
4)編譯和安裝
[root@localhost httpd-2.4.29]# make              //生成可執(zhí)行的二進(jìn)制文件
...
[root@localhost httpd-2.4.29]# make install  //復(fù)制二進(jìn)制文件到系統(tǒng),配置應(yīng)用環(huán)境
...
5)配置http主配置文件
[root@localhost httpd-2.4.29]#  cd /usr/local/httpd/
[root@localhost httpd]# ls
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@localhost httpd]# cd conf/             ##切換到http主配置文件中
[root@localhost conf]# vim /etc/httpd.conf  ##配置主配置文件

Listen 192.168.13.128:80  ##設(shè)置監(jiān)聽(tīng)地址
#Listen 80

ServerName www.kgc.com:80  ##設(shè)置域名
[root@localhost conf]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf   ##方便管理創(chuàng)建軟連接

4,編輯網(wǎng)頁(yè)

1)切換到你的共享掛載點(diǎn),將圖片復(fù)制到站點(diǎn)中
[root@localhost conf]# cd /mnt   ##切換到掛載點(diǎn)
[root@localhost mnt]# cp kali.jpg /usr/local/httpd/htdocs/    ##將圖片復(fù)制到站點(diǎn)中
[root@localhost mnt]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# ls     ##查看圖片復(fù)制成功
index.html  kali.jpg
2)編輯站點(diǎn)的首頁(yè)內(nèi)容,并啟動(dòng)
[root@localhost ~]# cd /usr/local/httpd/
[root@localhost httpd]# cd htdocs/      ##切換到站點(diǎn)
[root@localhost htdocs]# ls
index.html  kali.jpg  
[root@localhost htdocs]# vim index.html     ##編輯網(wǎng)頁(yè)內(nèi)容,將圖片加入到網(wǎng)頁(yè)中

<html><body><h2>It works!</h2>
<img src="kali.jpg"/>         ##將圖片放到網(wǎng)頁(yè)中
</body></html>
[root@localhost htdocs]# cd /usr/local/httpd/bin/
[root@localhost bin]# ./apachectl start    ##開(kāi)啟

5,用win10測(cè)試機(jī)測(cè)試網(wǎng)頁(yè),并查看圖片的屬性情況

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合?。?><br/><img src=

7,在win7盜鏈機(jī)器上安裝web網(wǎng)站服務(wù)并使用kgc.com的網(wǎng)頁(yè)圖片

1)在win7上搭建網(wǎng)站服務(wù)

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合!)

2)打開(kāi)web管理器

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合?。?></p>
<h5>3) 編輯首頁(yè)的html文件,修改文本為index.html</h5>
<p><img src=

配置Apache隱藏版本信息

  • Apache的版本信息,透露了一定的漏洞信息,從而給網(wǎng)站帶來(lái)安全隱患
  • 生產(chǎn)環(huán)境中要配置apache隱藏版本信息
  • 可使用Fiddler工具分析

1,正常訪問(wèn)網(wǎng)頁(yè)時(shí)用抓包軟件查看

Apache網(wǎng)頁(yè)與安全優(yōu)化——防盜鏈和隱藏版本(理論實(shí)踐相結(jié)合?。?></p>
<h3>2,配置http主配置文件</h3>
<pre><code>[root@localhost bin]# vim /etc/http.conf   ##配置主配置文件
Include conf/extra/httpd-default.conf    ##開(kāi)啟子配置文件
[root@localhost bin]# cd ../
[root@localhost httpd]# cd conf/
[root@localhost conf]# ls
extra  httpd.conf  magic  mime.types  original
[root@localhost conf]# cd extra/     ##切換到extra目錄下
[root@localhost extra]# vim httpd-default.conf   ##配置子配置文件
ServerTokens Prod   ##將full全部修改為prod

ServerSignature Off    ##簽名關(guān)閉</code></pre>
<h3>3,關(guān)閉服務(wù)并重新開(kāi)啟服務(wù)查看抓包信息</h3>
<pre><code>[root@localhost conf]# cd ../
[root@localhost httpd]# cd bin/
[root@localhost bin]# ./apachectl stop    ##關(guān)閉
[root@localhost bin]# ./apachectl start    ##開(kāi)啟</code></pre>
<p><img src=向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI