apache 下實現防盜鏈

什麼是盜鏈

盜鏈是指在自己的頁面上展示一些並不在自己服務器上的內容。通常的做法是通過技術手段獲得它人服務器上的資源地址,

繞過別人的資源展示頁面,直接在自己的頁面上向最終用戶提供此內容。

比較常見的是一些小站盜用大站的資源(圖片、音樂、視頻),

對於這些小站來說,通過盜鏈的方法可以減輕自己服務器的負擔,因爲真實的空間和流量均是來自別人的服務器。

對大站造成的影響確實徒徒增加了服務器壓力,用戶、流量還不是自己的。

下面使用兩臺服務器來模擬這種情況

172.16.16.6 www.wawa.com 是正常的網站

172.16.16.6 www.wawawa.com 是盜鏈被阻止後跳轉的網站

172.16.16.16 www.aaa.com  是盜鏈網站


本次實驗需要基於Apache的虛擬主機DNS這裏就不介紹了。

先來看看不做防盜鏈是什麼效果

首先配置172.16.16.6 www.wawa.com 正常主機的圖片網站和阻止跳轉網站

一樣首先修改主配置文件 vim /etc/httpd/conf/httpd.conf 添加虛擬主機 和監聽80端口

image.png image.png

image.png image.png


再來就是配置盜鏈網站172.16.16.16 www.aaa.com

image.png

弄好了服務器的配置就來驗證網站的效果

正常網站

image.png

盜鏈網站 爲了區分於正常網站,網站的文字稍作改變作爲區分

image.png

阻止網站

image.png

可以看到除了我修改的文字不同之外圖片什麼的無需配置直接就可以顯示在盜鏈的網站上,這種情況肯定是要阻止的

下面來配置防盜鏈

使用yum 安裝的肯定是有這個模塊的 不放心的可以檢查一下

[root@localhost 20]# cd /etc/httpd/

[root@localhost httpd]# apachectl -D DUMP_MODULES | grep expires

image.png

修改剛纔的虛擬主機的文件 vim /etc/httpd/conf/httpd.conf 把下面紅字添加在正常服務的</VirtualHost>前

<VirtualHost 172.16.16.6>

DocumentRoot /opt/www/10

ServerName www.wawa.com

<Directory /opt/www/10 >

AllowOverride None

Require all granted

RewriteEngine On

            RewriteCond %{HTTP_REFERER} !^http://172.16.16.6/*

        RewriteCond %{HTTP_REFERER} !^http://wawa.com/.*$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://wawa.com$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://www.wawa.com/.*$ [NC]

        RewriteCond %{HTTP_REFERER} !^http://www.wawa.com$ [NC]

        RewriteRule .*\.(gif|jpg|swf|png)$ http://www.wawawa.com/error.jpg [R,NC]

</Directory>

</VirtualHost>

image.png

下面來訪問盜鏈網站來看看結果

image.png

到此,防盜鏈就算成功了。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章