1. 程式人生 > >CentOS7.4——Apache優化應用四(防盜鏈)

CentOS7.4——Apache優化應用四(防盜鏈)

Apache優化應用之防盜鏈

Apache優化應用四(防盜鏈)
目錄
第一部分 準備工作
第二部分 安裝Apache服務
第三部分 配置盜鏈
第四部分 配置基於域名的防盜鏈

第一部分 準備工作
一:服務器兩臺:Linux系統—CentOS 7.4;
IP地址:192.168.80.10(合法服務器)
192.168.80.40(非法盜鏈服務器)
註意:兩臺服務器都要安裝Apahce服務
技術分享圖片
客戶端:以WIN7為例,測試驗證結果,與服務器在同一網段;
IP地址:192.168.80.2

二:準備壓縮包
技術分享圖片
//apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以後的版本所需要的插件,必須安裝

三:將防火墻與selinux關閉

技術分享圖片

第二部分 安裝Apache服務
一:安裝編譯工具與插件
[root@localhost ~]# yum -y install \

gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

二:解壓:
[root@localhost ~]# tar xf apr-1.6.2.tar.gz
[root@localhost ~]# tar xf apr-util-1.6.0.tar.gz
[root@localhost ~]# tar xf httpd-2.4.29.tar.bz2
[root@localhost ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr

[root@localhost ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

三:配置(自定義個性化配置)
[root@localhost ~]# cd httpd-2.4.29 //必須進入安裝目錄下
[root@localhost httpd-2.4.29]# ./configure \

--prefix=/usr/local/httpd \ //指定將httpd程序安裝到/usr/local/httpd目錄下
--enable-so \ //啟用動態加載模塊功能
--enable-rewrite \ //啟用網頁地址重寫功能,用於網站優化及目錄遷移

--enable-charset-lite \ //啟用字符集支持,以便支持使用各種字符集編碼的網頁
--enable-cgi //啟用CGI腳本程序支持,便於擴展網站的應用訪問能力

四:編譯及安裝
[root@localhost httpd-2.4.29]# make && make install

//將httpd服務添加到系統服務
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@localhost httpd-2.4.29]# vi /etc/init.d/httpd
添加以下兩行(註意,“#”不能省略):
技術分享圖片
保存退出

[root@localhost httpd-2.4.29]# chkconfig --add httpd //將httpd加入到SERVICE管理器
[root@localhost httpd-2.4.29]# systemctl daemon-reload //重載系統系統管理器

五:編輯httpd主配置文件
[root@localhost httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf
修改以下內容:
ServerName localhost
保存退出
//優化執行路徑(執行程序文件的原路徑不在PATH環境變量中,做個軟鏈接使其可以執行)
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

//檢查語法錯誤
[root@localhost httpd-2.4.29]# httpd –t
或者:[root@localhost httpd-2.4.29]# apachectl –t
技術分享圖片
//查看程序版本
技術分享圖片

六:啟動服務
[root@localhost httpd-2.4.29]# systemctl start httpd
[root@localhost httpd-2.4.29]# systemctl enable httpd //將httpd設為開機啟動
[root@localhost httpd-2.4.29]# netstat -anpt | grep 80 //查看httpd服務運行狀態
技術分享圖片

七:驗證
用WIN7客戶端訪問服務器
瀏覽器訪問:http://192.168.80.10
技術分享圖片
瀏覽器訪問:http://192.168.80.40
技術分享圖片
驗證成功
(註意,網頁默認顯示內容為:/usr/local/httpd/htdocs/index.html)
技術分享圖片

第三部分 配置盜鏈
一:在合法服務器上配置網頁文件
[root@localhost ~]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# vi index.html
<html>
<title>I AM OK!</title>
<body>
<h1> Test Page! </h1>
<img src="12.jpg">
</body>
</html>
技術分享圖片
保存退出
[root@localhost htdocs]# service httpd restart //重啟服務

二:驗證
Win7下訪問:192.168.80.10
技術分享圖片

三:在非法盜鏈服務器上配置網頁文件
[root@localhost ~]# cd /usr/local/httpd/htdocs/
[root@localhost htdocs]# vi index.html
<html>
<title>I AM Hei</title>
<body>
<h1> Hei..Hei! </h1>
<img src="http://192.168.80.10/12.jpg">
</body>
</html>
技術分享圖片
保存退出
[root@localhost htdocs]# service httpd restart //重啟服務

四:驗證
Win7下訪問192.168.80.40
技術分享圖片
//驗證盜鏈成功

第四部分 配置基於域名的防盜鏈
第一步:配置合法服務器
一:搭建DNS
[root@localhost htdocs]# yum install -y bind bind-utils
[root@localhost htdocs]# vi /etc/named.conf //編輯dns主配置文件
技術分享圖片
[root@localhost htdocs]# vi /etc/named.rfc1912.zones //編輯dns區域配置文件
技術分享圖片
[root@localhost htdocs]# cd /var/named/ //編輯dns區域數據文件
[root@localhost named]# cp -p named.localhost aa.com.zone
[root@localhost named]# vi aa.com.zone
技術分享圖片
[root@localhost named]# service named restart //重啟dns服務
[root@localhost named]# netstat -anpt | grep named //查看dns運行狀態
技術分享圖片
[root@localhost named]# nslookup www.aa.com //解析www.aa.com
技術分享圖片
[root@localhost named]# vi /etc/resolv.conf //配置服務器dns
servername 192.168.80.10
保存退出
[root@localhost named]# systemctl restart named

二:Win7下配置DNS
技術分享圖片
測試DNS
技術分享圖片
//dns搭建成功

三:創建虛擬目錄
[root@localhost ~]# vi /etc/httpd.conf //編輯http主配置文件
添加以下內容:
Alias /doc/ "/opt/doc/"
<Directory "/opt/doc">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted
</Directory>
技術分享圖片
保存退出
[root@localhost ~]# apachectl –t //檢查語法錯誤
[root@localhost ~]# service httpd restart //重啟服務

將error.jpg(防盜鏈文件)放到/opt/doc/目錄下
技術分享圖片

四:配置防盜鏈
[root@localhost ~]# apachectl -D DUMP_MODULES | grep rewrite //檢查模塊
[root@localhost ~]# vi /etc/httpd.conf
添加以下內容:
LoadModule rewrite_module modules/mod_rewrite.so //添加防盜鏈模塊
技術分享圖片
保存退出
[root@localhost ~]# apachectl -t //檢查語法錯誤
[root@localhost htdocs]# vi /etc/httpd.conf
//針對目錄做防盜鏈處理,在htdocs目錄屬性最後位置新增
<Directory "/usr/local/httpd/htdocs">該位置最後
添加以下內容:
RewriteEngine On //白名單,只允許自己網站內容
RewriteCond %{HTTP_REFERER} !^http://192.168.80.10/
RewriteCond %{HTTP_REFERER} !^http://aa.com/.
$ [NC]
RewriteCond %{HTTP_REFERER} !^http://aa.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.aa.com/.$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.aa.com$ [NC]
RewriteRule .
.(gif|jpg|swf|png)$ http://www.aa.com/doc/error.jpg [R,NC] //需要 重定向到一個盜鏈主機可以訪問的位置,否則看不出效果來。
技術分享圖片
[root@localhost htdocs]# apachectl –t
[root@localhost htdocs]# service httpd restart

第二步:配置非法盜鏈服務器
一:配置DNS服務
[root@localhost ~]# yum install -y bind bind-utils
[root@localhost ~]# vi /etc/named.conf
技術分享圖片
[root@localhost ~]# vi /etc/named.rfc1912.zones
技術分享圖片
[root@localhost ~]# cd /var/named/
[root@localhost named]# cp -p named.localhost bb.com.zone
[root@localhost named]# vi bb.com.zone
技術分享圖片
[root@localhost named]# vi /etc/resolv.conf
servername 192.168.80.40
保存退出
[root@localhost named]# systemctl restart named //重啟dns服務

二:驗證
瀏覽器訪問非法盜鏈服務器:www.bb.com
技術分享圖片
//驗證成功

CentOS7.4——Apache優化應用四(防盜鏈)