亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

使用Nginx、Nginx Plus抵御DDOS攻擊的方法

2024-08-30 12:29:41
字體:
來源:轉載
供稿:網友

DDOS 是一種通過大流量的請求對目標進行轟炸式訪問,導致提供服務的服務器資源耗盡進而無法繼續提供服務的攻擊手段。

一般情況下,攻擊者通過大量請求與連接使服務器處于飽和狀態,以至于無法接受新的請求或變得很慢。

Nginx,NginxPlus,DDOS

一、應用層DDOS攻擊的特征

應用層(七層/HTTP層)DDOS 攻擊通常由木馬程序發起,其可以通過設計更好的利用目標系統的脆弱點。例如,對于無法處理大量并發請求的系統,僅僅通過建立大量的連接,并周期性的發出少量數據包來保持會話就可以耗盡系統的資源,使其無法接受新的連接請求達到 DDOS 的目的。其他還有采用發送大量連接請求發送大數據包的請求進行攻擊的形式。因為攻擊是由木馬程序發起,攻擊者可以在很短時間內快速建立大量的連接,并發出大量的請求。

以下是一些DDOS的特證,我們可以據此特征來抵抗 DDOS(包括但不限于):

  1. 攻擊經常來源于一些相對固定的 IP 或 IP 段,每個 IP 都有遠大于真實用戶的連接數和請求數。(備注:這并不表明這種請求都是代表著 DDOS 攻擊。在很多使用NAT的網絡架構中,很多的客戶端使用網關的 IP 地址訪問公網資源。但是,即便如此,這樣的請求數和連接數也會遠少于 DDOS 攻擊。)
  2. 因為攻擊是由木馬發出且目的是使服務器超負荷,請求的頻率會遠遠超過正常人的請求。
  3. User-Agent 通常是一個非標準的值
  4. Referer 有時是一個容易聯想到攻擊的值

二、使用Nginx、Nginx Plus抵抗DDOS攻擊

結合上面提到的 DDOS 攻擊的特征,Nginx、Nginx Plus有很多的特性可以用來有效的防御 DDOS 攻擊,可以從調整入口訪問流量和控制反向代理到后端服務器的流量兩個方面來達到抵御 DDOS 攻擊的目的。

1. 限制請求速度

設置 Nginx、Nginx Plus 的連接請求在一個真實用戶請求的合理范圍內。比如,如果你覺得一個正常用戶每兩秒可以請求一次登錄頁面,你就可以設置 Nginx 每兩秒鐘接收一個客戶端 IP 的請求(大約等同于每分鐘30個請求)。

limit_req_zone $binary_remote_addr zone=one:10m rate=30r/m; server { ... location /login.html { limit_req zone=one; ... } } 

`limit_req_zone` 命令設置了一個叫 one 的共享內存區來存儲請求狀態的特定鍵值,在上面的例子中是客戶端 IP($binary_remote_addr)。location 塊中的 `limit_req` 通過引用 one 共享內存區來實現限制訪問 /login.html 的目的。

2. 限制連接數量

設置 Nginx、Nginx Plus 的連接數在一個真實用戶請求的合理范圍內。比如,你可以設置每個客戶端 IP 連接 /store 不可以超過10個。

limit_conn_zone $binary_remote_addr zone=addr:10m; server { ... location /store/ { limit_conn addr 10; ... } } 

`limit_conn_zone` 命令設置了一個叫 addr 的共享內存區來存儲特定鍵值的狀態,在上面的例子中是客戶端 IP( $binary_remote_addr)。location 塊中 `limit_conn` 通過引用 addr 共享內存區來限制到 /store/ 的最大連接數為10。

3. 關閉慢連接

有一些 DDOS 攻擊,比如 Slowlris,是通過建立大量的連接并周期性的發送一些數據包保持會話來達到攻擊目的,這種周期通常會低于正常的請求。這種情況我們可以通過關閉慢連接來抵御攻擊。

`client_body_timeout` 命令用來定義讀取客戶端請求的超時時間,`client_header_timeout` 命令用來定于讀取客戶端請求頭的超時時間。這兩個參數的默認值都是 60s,我們可以通過下面的命令將他們設置為 5s:

server { client_body_timeout 5s; client_header_timeout 5s; ... } 

4. 設置IP黑名單

如果確定攻擊來源于某些 IP 地址,我們可以將其加入黑名單,Nginx 就不會再接受他們的請求。比如,你已經確定攻擊來自于從123.123.123.1到123.123.123.16的一段 IP 地址,你可以這樣設置:

location / { deny 123.123.123.0/28; ... } 

或者你確定攻擊來源于123.123.123.3、123.123.123.5、123.123.123.7幾個IP,可以這樣設置:

location / { deny 123.123.123.3; deny 123.123.123.5; deny 123.123.123.7; ... } 

5. 設置IP白名單

如果你的網站僅允許特定的 IP 或 IP 段訪問,你可以結合使用 allow 和 deny 命令來限制僅允許你指定的 IP 地址訪問你的網站。如下,你可以設置僅允許 192.168.1.0 段的內網用戶訪問:

location / { allow 192.168.1.0/24; deny all; ... } 

deny 命令會拒絕除了 allow 指定的 IP 段之外的所有其他 IP 的訪問請求。

6. 使用緩存進行流量削峰

通過打開 Nginx 的緩存功能并設置特定的緩存參數,可以削減來自攻擊的流量,同時也可以減輕對后端服務器的請求壓力。以下是一些有用的設置:

  1. proxy_cache_use_stale ` 的 updating 參數告訴 Nginx 什么時候該更新所緩存的對象。只需要到后端的一個更新請求,在緩存有效期間客戶端對該對象的請求都無需訪問后端服務器。當通過對一個文件的頻繁請求來實施攻擊時,緩存功能可極大的降低到后端服務器的請求。
  2. proxy_cache_key ` 命令定義的鍵值通常包含一些內嵌的變量(默認的鍵值 $scheme$proxy_host$request_uri 包含了三個變量)。如果鍵值包含 `$query_string` 變量,當攻擊的請求字符串是隨機的時候就會給 Nginx 代理過重的緩存負擔,因此我們建議一般情況下不要包含 `$query_string` 變量。

7. 屏蔽特定的請求

可以設置 Nginx、Nginx Plus 屏蔽一些類型的請求:

  1. 針對特定 URL 的請求
  2. 針對不是常見的 User-Agent 的請求
  3. 針對 Referer 頭中包含可以聯想到攻擊的值的請求
  4. 針對其他請求頭中包含可以聯想到攻擊的值的請求

比如,如果你判定攻擊是針對一個特定的 URL:/foo.php,我們就可以屏蔽到這個頁面的請求:

location /foo.php { deny all; } 

或者你判定攻擊請求的 User-Agent 中包含 foo 或 bar,我們也可以屏蔽這些請求:

location / { if ($http_user_agent ~* foo|bar) { return 403; } ... } 

http_name 變量引用一個請求頭,上述例子中是 User-Agent 頭??梢葬槍ζ渌?http 頭使用類似的方法來識別攻擊。

8. 限制到后端服務器的連接數

一個 Nginx、Nginx Plus 實例可以處理比后端服務器多的多的并發請求。在 Nginx Plus 中,你可以限制到每一個后端服務器的連接數,比如可以設置 Nginx Plus 與 website upstream 中的每個后端服務器建立的連接數不得超過200個:

upstream website { server 192.168.100.1:80 max_conns=200; server 192.168.100.2:80 max_conns=200; queue 10 timeout=30s; } 

`max_conns` 參數可以針對每一個后端服務器設置 Nginx Plus 可以與之建立的最大連接數。`queue` 命令設置了當每個后端服務器都達到最大連接數后的隊列大小,`timeout` 參數指定了請求在隊列中的保留時間。

9. 處理特定類型的攻擊

有一種攻擊是發送包含特別大的值的請求頭,引起服務器端緩沖區溢出。Nginx、Nginx Plus 針對這種攻擊類型的防御,可以參考

[Using NGINX and NGINX Plus to Protect Against CVE-2015-1635] 
http://nginx.com/blog/nginx-protect-cve-2015-1635/?_ga=1.14368116.2137319792.1439284699) 

10. 優化Nginx性能

DDOS 攻擊通常會帶來高的負載壓力,可以通過一些調優參數,提高 Nginx、Nginx Plus 處理性能,硬抗 DDOS 攻擊,詳細參考:

[Tuning NGINX for Performance] 
http://nginx.com/blog/tuning-nginx/?_ga=1.48422373.2137319792.1439284699

三、識別DDOS攻擊

到目前為止,我們都是集中在如何是用 Nginx、Nginx Plus 來減輕 DDOS 攻擊帶來的影響。如何才能讓 Nginx、Nginx Plus 幫助我們識別 DDOS 攻擊呢?`Nginx Plus Status module` 提供了到后端服務器流量的詳細統計,可以用來識別異常的流量。Nginx Plus 提供一個當前服務狀態的儀表盤頁面,同時也可以在自定義系統或其他第三方系統中通過 API 的方式獲取這些統計信息,并根據歷史趨勢分析識別非正常的流量進而發出告警。

四、總結

Nginx 和 Nginx Plus 可以作為抵御 DDOS 攻擊的一個有力手段,而且 Nginx Plus 中提供了一些附加的特性來更好的抵御 DDOS 攻擊并且當攻擊發生時及時的識別到。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久成人av网站| 日韩欧美在线免费观看| 国产91av在线| 亚洲最新视频在线| 亚洲嫩模很污视频| www欧美xxxx| 久久在线免费视频| 国产精品综合久久久| 国产精品影院在线观看| 日韩成人在线网站| 911国产网站尤物在线观看| 97在线视频免费播放| 日韩精品中文字幕久久臀| 91探花福利精品国产自产在线| 91网站免费观看| 亚洲护士老师的毛茸茸最新章节| 亚洲精品国产美女| 欧美激情在线有限公司| 国产婷婷成人久久av免费高清| 国产剧情日韩欧美| 欧美性视频精品| 亚洲一区二区中文字幕| 中文字幕欧美视频在线| 自拍偷拍免费精品| 亚洲精品99999| 欧美在线激情视频| 亚洲欧美精品在线| 精品国产网站地址| 亚洲一区美女视频在线观看免费| 久久精品在线播放| 久久精品国产一区二区三区| 亚洲国产日韩欧美综合久久| 尤物九九久久国产精品的分类| 亚洲va欧美va国产综合剧情| 正在播放欧美视频| 91精品久久久久久综合乱菊| 九九热精品视频在线播放| 久久久精品国产| 草民午夜欧美限制a级福利片| 国产欧美日韩精品丝袜高跟鞋| 亚洲色图狂野欧美| 亚洲天堂av在线播放| 国产最新精品视频| 亚洲精品suv精品一区二区| 亚洲福利视频免费观看| 亚洲精选在线观看| 亚洲加勒比久久88色综合| 欧美国产日本高清在线| 日本高清视频一区| 91亚洲永久免费精品| 国产精品免费一区二区三区都可以| 亚洲午夜国产成人av电影男同| 亚洲精品福利视频| 国产欧美日韩最新| 久久网福利资源网站| 黄色一区二区在线观看| 精品中文字幕在线2019| 国产精品99导航| 亚洲欧洲在线观看| 欧美乱妇40p| 国内精品小视频在线观看| 亚洲精品国精品久久99热| 在线看国产精品| 亚洲欧美国产高清va在线播| 亚洲欧洲日产国码av系列天堂| 在线观看国产欧美| 亚洲最大的成人网| 国产精品久久久久久久久粉嫩av| 91性高湖久久久久久久久_久久99| 美日韩精品视频免费看| 国产成人精品久久二区二区91| 日本一区二三区好的精华液| 精品在线小视频| 国产精品嫩草视频| 日韩视频一区在线| 成人免费淫片aa视频免费| 国产精品黄页免费高清在线观看| 亚洲国产女人aaa毛片在线| 日韩欧美999| 国产最新精品视频| 欧美老女人性生活| 亚洲电影免费观看高清完整版在线观看| 一区二区三区四区在线观看视频| 亚洲精品美女网站| 岛国av一区二区在线在线观看| 国产精品影片在线观看| 成人免费午夜电影| 亚洲天堂2020| 日韩av在线免费看| 亚洲精品国产精品国产自| 国产一区二区日韩| 国产午夜精品美女视频明星a级| 国产精品成人观看视频国产奇米| 国产91精品久| 黑人狂躁日本妞一区二区三区| 97国产suv精品一区二区62| 日韩欧美在线观看视频| 午夜美女久久久久爽久久| 欧美日韩激情视频8区| 日韩少妇与小伙激情| 亚洲精品美女免费| 亚洲xxxx3d| 中文字幕日韩av综合精品| 亚洲欧美成人精品| 欧美日韩中文字幕在线视频| 国产精品入口尤物| 最新中文字幕亚洲| 亚洲精品国产精品国自产观看浪潮| 孩xxxx性bbbb欧美| 国产精品99免视看9| 亚洲女人天堂成人av在线| 亚洲最大福利视频网| 欧美老女人bb| 欧美激情一区二区三区高清视频| 欧美亚洲国产视频小说| 91精品视频在线免费观看| 国产精品一区=区| 九九热最新视频//这里只有精品| 亚洲精品一区二区在线| 日韩网站免费观看| 国产视频精品免费播放| 国产999精品| 欧亚精品中文字幕| 欧美视频中文在线看| 欧美色欧美亚洲高清在线视频| 久久影视三级福利片| 欧美亚洲一级片| 欧美专区中文字幕| 成人免费网站在线| 97在线视频免费播放| 精品国产成人在线| 91免费视频网站| 亚洲欧美一区二区三区四区| 国产日韩欧美中文| 精品一区二区三区四区在线| 精品一区二区三区四区在线| 8050国产精品久久久久久| 91精品久久久久久久久中文字幕| 国产日韩在线看片| 久久久久国色av免费观看性色| 韩剧1988在线观看免费完整版| 国产亚洲欧美另类中文| 国产亚洲精品美女| 国产精品爽黄69| 欧美理论电影网| 欧美性生活大片免费观看网址| 国产热re99久久6国产精品| 在线观看日韩av| 日本视频久久久| 亚洲男子天堂网| 久久青草精品视频免费观看| 国内精品久久久久久| 欧美富婆性猛交| 亚洲国产高潮在线观看| 91福利视频在线观看| 91久久精品日日躁夜夜躁国产| 97视频色精品| 亚洲欧洲午夜一线一品| 精品久久久久久久久久久久| 亚洲第一区在线| 久久久久久久激情视频| 精品国产福利在线| 中文字幕精品—区二区| 久久免费视频在线|