阿里雲下如何巧加web防火牆?

Linux雲端計算資料自學發表於2019-03-04

640?


伺服器大家都不陌生,隨著科技的發展企業對於伺服器的選擇也是多種多樣。雲服務對我們帶來了便利,架構即服務,軟體即服務等。但是雲服務的背後我們對服務的控制能力有時候缺有了限制。公司用的是阿里雲的負載均衡器-SLB,SLB與後端nginx流量為內網,這個時候面對這洪水攻擊和爬蟲的時候我們單從WEB伺服器的iptables層很難做到隔離IP。下面我們巧用nginx來實現IP隔離。


場景原理:

場景: 前端SLB--->nginx---->proxy

640?wx_fmt=png


1、配置SLB(阿里雲負載均衡)


首先需要配置SLB(阿里雲負載均衡)讓slb記錄使用者真實IP功能

SLB是阿里雲的一款負載均衡服務產品,和LVS一樣,我們可以理解為LVS服務,(但是我們沒有對lvs伺服器的管理許可權)

640?wx_fmt=png

    此處勾選即可

2、tomcat開啟X-Forwarded-For日誌功能


開啟tomcat的X-Forwarded-For,在tomcat/conf/server.xml中,修改AccessLogValve日誌紀錄功能為如下內容:

 <valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

               prefix="localhost_access_log." suffix=".txt"

               pattern="%{X-Forwarded-For}i %h %l %u %t %r %s %b"></valve>


提示:修改完重啟生效!!

被攻擊的日誌檢查客戶真實IP:

640?wx_fmt=png


3、Nginx配置隔離


在Server標籤下新增如下幾行

 set $allow true;

if ($http_x_forwarded_for ~ "106.121.*.*|106.121.71.120|106.121.77.28|106.121.74.130|218.109.235.254"){

        set $allow false;

}

if ($allow = false){

        return 404;

    }

#提示:IP新增在上面!


小結:

因為無法禁止使用者進行訪問,我們設定404可以讓IP無法進行訪問資料庫。不然資料庫會被查詢語句進行刷爆。

原文來自:  https://www.abcdocker.com/abcdocker/2510

640?wx_fmt=other

PS:記得查收小編送你的免費大禮包呦~

福利 | 一萬多套PPT模板等你免費來拿!無條件領取!

免費送 | 1000多套簡歷模板免費拿,附贈簡歷製作教程!

免費領 | 《Shell指令碼 100例》電子書免費拿,運維必備乾貨~

640?640

▼▼點選【閱讀原文】,5天運維乾貨課,提前搶走

相關文章