假如某天你負責(zé)的網(wǎng)站服務(wù)器突然流量暴增,先不要感到驚喜。有很大可能是有其他網(wǎng)站將本站的靜態(tài)資源進行了盜鏈,使很多的訪問壓力都轉(zhuǎn)接到自己服務(wù)器上,點擊量還不是自己的。
創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),宜君企業(yè)網(wǎng)站建設(shè),宜君品牌網(wǎng)站建設(shè),網(wǎng)站定制,宜君網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,宜君網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
作為作為網(wǎng)站的維護人員,要杜絕我們服務(wù)器的靜態(tài)資源被其他網(wǎng)站盜用。
IP地址 | 域名 | 實驗用途 |
---|---|---|
192.168.116.148 | www.zhy.com | DNS服務(wù)器、源網(wǎng)站 |
192.168.116.128 | 無域名 | 盜鏈網(wǎng)站 |
1、安裝DNS
[root@localhost ~]# yum install bind -y
[root@localhost ~]# vim /etc/named.conf
options {
listen-on port 53 { any; }; //括號內(nèi)127.0.0.1改為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; }; //括號內(nèi)localhost改為any
#修改后按Esc,輸入:wq保存退出
[root@localhost ~]# vim /etc/named.rfc1912.zones
zone "zhy.com" IN {
type master;
file "zhy.com.zone";
allow-update { none; };
};
#在同格式下添加以上內(nèi)容后按Esc,輸入:wq保存退出
[root@localhost ~]# cd /var/named/
[root@localhost named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@localhost named]# cp -p named.localhost zhy.com.zone
[root@localhost named]# vim zhy.com.zone
$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.116.148
#做以上格式的改動,注意最后的IP地址是填自己linux主機的IP地址,修改后按Esc,輸入:wq保存退出
[root@localhost named]# systemctl start named
[root@localhost named]# systemctl stop firewalld.service
[root@localhost named]# setenforce 0
2、手工編譯安裝Apache,建立源網(wǎng)站
[root@localhost named]# mount.cifs //192.168.10.181/rpm /mnt
//在宿主機中把有壓縮文件的文件夾共享出來
Password for root@//192.168.10.181/rpm: //此處直接回車
[root@localhost named]# cd /mnt
[root@localhost mnt]# ls
anaconda-ks.cfg error.png LAMP-php5.6.txt
apr-1.6.2.tar.gz httpd-2.4.29.tar.bz2 MySQL-5.6.26.tar.gz
apr-util-1.6.0.tar.gz initial-setup-ks.cfg php-5.6.11.tar.bz2
Discuz_X2.5_SC_UTF8.zip LAMP-C7.rar yuan.jpg
[root@localhost mnt]# tar xjf httpd-2.4.29.tar.bz2 -C /opt/
[root@localhost mnt]# tar xzf apr-1.6.2.tar.gz -C /opt/
[root@localhost mnt]# tar xzf apr-util-1.6.0.tar.gz -C /opt/
[root@localhost LAMP]# cd /opt/
[root@localhost opt]# ls
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
[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 gcc gcc-c++ pcre pcre-devel zlib-devel expat-devel -y //安裝環(huán)境包
[root@localhost opt]#cd httpd-2.4.29/
[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
[root@localhost httpd-2.4.29]# vim /usr/local/httpd/conf/httpd.conf
/ServerName,搜索到網(wǎng)址處,把#注釋去掉,內(nèi)容改為如下內(nèi)容
ServerName www.zhy.com:80
/Listen,搜索到監(jiān)聽端口,把IPv6注釋加上,把IPv4監(jiān)聽IP地址改為自己linux的地址
Listen 192.168.116.148:80
#Listen 80
#修改后按Esc,輸入:wq保存退出
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf
//建立軟連接
[root@localhost httpd-2.4.29]# cd /usr/local/httpd/bin/
[root@localhost bin]# ls
ab apu-1-config dbmmanage fcgistarter htdigest httxt2dbm
apachectl apxs envvars htcacheclean htpasswd logresolve
apr-1-config checkgid envvars-std htdbm httpd rotatelogs
[root@localhost bin]# vim /usr/local/httpd/htdocs/index.html
It works!
//需要插入圖片,做以上更改,后按Esc,輸入:wq保存退出
[root@localhost bin]# cp /mnt/yuan.jpg /usr/local/httpd/htdocs/
//復(fù)制圖片到此目錄下
[root@localhost bin]# ./apachectl start
[root@localhost bin]# netstat -atnp | grep "80"
tcp 0 0 192.168.116.148:80 0.0.0.0:* LISTEN 40569/httpd
驗證:
打開一臺Windows虛擬機,將其作為測試端,更改其DNS解析地址。
進入瀏覽器,輸入域名:www.zhy.com
通過右鍵點擊該圖,選擇屬性,就可以看見這張圖的URL:http://www.zhy.com/yuan.jpg
建立盜鏈網(wǎng)站
此時我們打開另一臺Windows虛擬機,將其作為盜鏈網(wǎng)站服務(wù)器。
控制面板—程序—程序和功能—打開和關(guān)閉windows功能—選擇Internet信息服務(wù)
安裝完成后,在C:\inetpub\wwwroot
中,新建網(wǎng)頁文件“index.html”
test web
此時,在瀏覽器中輸入盜鏈網(wǎng)站IP地址:192.168.116.128
,即會出現(xiàn)跟源網(wǎng)站一樣的圖片,視為盜鏈成功。
建立防盜鏈措施
[root@localhost bin]# vim ../conf/httpd.conf
/rewrite,將此行注釋去掉
LoadModule rewrite_module modules/mod_rewrite.so
Require all granted
//在此行下插入以下規(guī)則
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://zhy.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://zhy.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.zhy.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.zhy.com/$ [NC]
RewriteRule .*\.(gif|jpg|swf)$ http://www.zhy.com/error.png
#修改后按Esc,輸入:wq保存退出
拷貝錯誤圖片
[root@localhost bin]# ls ../htdocs/
yuan.jpg index.html
[root@localhost bin]# cp /aaa/LAMP/error.png ../htdocs/
[root@localhost bin]# ls ../htdocs/
error.png yuan.jpg index.html
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start
在測試Windows機上,輸入192.168.116.128
,因為我們已做過防盜鏈措施,現(xiàn)在訪問盜鏈網(wǎng)站將會出現(xiàn)報錯的圖片。
基于上一個防盜鏈的配置不變,開始隱藏版本號的優(yōu)化操作。
1、實驗前的驗證
進入Windows客戶端,使用“fiddler”抓包工具,查看網(wǎng)站頭部。
此時,抓包會顯示版本后綴,有心之人會針對該版本的漏洞對服務(wù)器進行攻撃する,這是非常不安全,因此需要對版本號進行隱藏。
2、開始進行優(yōu)化
[root@localhost ~]# vim /usr/local/httpd/conf/httpd.conf
/default 搜索default,進行如下修改
Include conf/extra/httpd-default.conf //將開頭的#刪除
wq保存退出
開啟后將會在/usr/local/httpd/conf/extra/
中生成httpd-default.conf
配置文件用于優(yōu)化。
[root@localhost bin]# vim /usr/local/httpd/conf/extra/httpd-default.conf
/ServerTokens 搜索ServerTokens,進行如下修改
ServerTokens Prod //將Full改為Prod
wq保存退出
[root@localhost bin]# ./apachectl stop
[root@localhost bin]# ./apachectl start //重啟服務(wù)
3、結(jié)果驗證