亚洲视频二区_亚洲欧洲日本天天堂在线观看_日韩一区二区在线观看_中文字幕不卡一区

公告:魔扣目錄網(wǎng)為廣大站長(zhǎng)提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.430618.com 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

分布式拒絕服務(wù)攻擊(DDoS)指的是通過(guò)多臺(tái)機(jī)器向一個(gè)服務(wù)或者網(wǎng)站發(fā)送大量看似合法的數(shù)據(jù)包使其網(wǎng)絡(luò)阻塞、資源耗盡從而不能為正常用戶提供正常服務(wù)的攻擊手段。隨著互聯(lián)網(wǎng)帶寬的增加和相關(guān)工具的不斷發(fā)布,這種攻擊的實(shí)施難度越來(lái)越低,有大量IDC托管機(jī)房、商業(yè)站點(diǎn)、游戲服務(wù)商一直飽受DDoS攻擊的困擾,那么如何緩解甚至解決DDoS呢?最近https://www.Nginx.com/blog/author/rick/在Nginx的官方博客上發(fā)表了一篇文章,介紹了https://www.nginx.com/blog/mitigating-ddos-attacks-with-nginx-and-nginx-plus/。

Rick Nelson首先介紹了DDoS攻擊的一些特點(diǎn),例如攻擊的流量通常來(lái)源于一些固定的IP地址,每一個(gè)IP地址會(huì)創(chuàng)建比真實(shí)用戶多得多的連接和請(qǐng)求;同時(shí)由于流量全部是由機(jī)器產(chǎn)生的,其速率要比人類用戶高的多。此外,進(jìn)行攻擊的機(jī)器其User-Agent頭也不是標(biāo)準(zhǔn)的值,Referer頭有時(shí)也會(huì)被設(shè)置成能夠與攻擊關(guān)聯(lián)起來(lái)的值。針對(duì)這些特點(diǎn),Rick Nelson認(rèn)為Nginx和Nginx Plus有很多能夠通過(guò)調(diào)節(jié)或控制流量來(lái)應(yīng)對(duì)或者減輕DDoS攻擊的特性。

限制請(qǐng)求率將Nginx和Nginx Plus可接受的入站請(qǐng)求率限制為某個(gè)適合真實(shí)用戶的值。例如,通過(guò)下面的配置讓一個(gè)真正的用戶每?jī)擅腌姴拍茉L問(wèn)一次登錄頁(yè)面:

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

在該配置中, limit_req_zone指令配置了一個(gè)名為 one的共享內(nèi)存 zone用來(lái)存儲(chǔ)$binary_remote_addr的請(qǐng)求狀態(tài),location塊中/login.html的 limit_req指令引用了共享內(nèi)存zone。

限制連接的數(shù)量將某個(gè)客戶端IP地址所能打開的連接數(shù)限制為真實(shí)用戶的合理值。例如,限制每一個(gè)IP對(duì)網(wǎng)站/store部分打開的連接數(shù)不超過(guò)10個(gè):

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

該配置中, limit_conn_zone指令配置了一個(gè)名為 addr的共享內(nèi)存 zone用來(lái)存儲(chǔ) $binary_remote_addr的請(qǐng)求,location塊中/store/的 limit_conn指令引用了共享內(nèi)存zone,并將最大連接數(shù)設(shè)置為10.

關(guān)閉慢連接關(guān)閉那些一直保持打開同時(shí)寫數(shù)據(jù)又特別頻繁的連接,因?yàn)樗鼈儠?huì)降低服務(wù)器接受新連接的能力。Slowloris就是這種類型的攻擊。對(duì)此,可以通過(guò) client_body_timeout和client_header_timeout指令控制請(qǐng)求體或者請(qǐng)求頭的超時(shí)時(shí)間,例如,通過(guò)下面的配置將等待時(shí)間控制在5s之內(nèi):

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

設(shè)置IP黑名單如果能識(shí)別攻擊者所使用的客戶端IP地址,那么通過(guò) deny指令將其屏蔽,讓Nginx和Nginx Plus拒絕來(lái)自這些地址的連接或請(qǐng)求。例如,通過(guò)下面的指令拒絕來(lái)自123.123.123.3、123.123.123.5和123.123.123.7的請(qǐng)求:

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

設(shè)置IP白名單如果允許訪問(wèn)的IP地址比較固定,那么通過(guò) allow和 deny指令讓網(wǎng)站或者應(yīng)用程序只接受來(lái)自于某個(gè)IP地址或者某個(gè)IP地址段的請(qǐng)求。例如,通過(guò)下面的指令將訪問(wèn)限制為本地網(wǎng)絡(luò)的一個(gè)IP段:

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

通過(guò)緩存削減流量峰值通過(guò)啟用緩存并設(shè)置某些緩存參數(shù)讓Nginx和Nginx Plus吸收攻擊所產(chǎn)生的大部分流量峰值。例如,通過(guò) proxy_cache_use_stale指令的 updating參數(shù)告訴Nginx何時(shí)需要更新過(guò)期的緩存對(duì)象,避免因重復(fù)發(fā)送更新請(qǐng)求對(duì)后端服務(wù)器產(chǎn)生壓力。另外, proxy_cache_key指令定義的鍵通常會(huì)包含嵌入的變量,例如默認(rèn)的鍵 $scheme$proxy_host$request_uri包含了三個(gè)變量,如果它包含 $query_string變量,那么攻擊者可以通過(guò)發(fā)送隨機(jī)的 query_string值來(lái)耗盡緩存,因此,如果沒有特別原因,不要在該鍵中使用 $query_string變量。

阻塞請(qǐng)求配置Nginx和Nginx Plus阻塞以下類型的請(qǐng)求:

  • 以某個(gè)特定URL為目標(biāo)的請(qǐng)求
  • User-Agent頭中的值不在正常客戶端范圍之內(nèi)的請(qǐng)求
  • Referer頭中的值能夠與攻擊關(guān)聯(lián)起來(lái)的請(qǐng)求
  • 其他頭中存在能夠與攻擊關(guān)聯(lián)在一起的值的請(qǐng)求

例如,通過(guò)下面的配置阻塞以/foo.php為目標(biāo)的攻擊:

location /foo.php {
 deny all;
}

或者通過(guò)下面的配置阻塞已識(shí)別出的User-Agent頭的值是foo或者bar的DDoS攻擊:

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

限制對(duì)后端服務(wù)器的連接數(shù)通常Nginx和Nginx Plus實(shí)例能夠處理比后端服務(wù)器多得多的連接數(shù),因此可以通過(guò)Nginx Plus限制到每一個(gè)后端服務(wù)器的連接數(shù)。例如,通過(guò)下面的配置限制Nginx Plus和每一臺(tái)后端服務(wù)器之間建立的連接數(shù)不多于200個(gè):

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

另外,Rick Nelson還提到了如何http://nginx.com/blog/nginx-protect-cve-2015-1635/?_ga=1.144784956.967276342.1451228467和http://nginx.com/blog/tuning-nginx/?_ga=1.87178896.967276342.1451228467,以及http://nginx.org/en/docs/http/ngx_http_status_module.html?_ga=1.187642144.967276342.1451228467發(fā)現(xiàn)異常的流量模式,定位DDoS攻擊。

分享到:
標(biāo)簽:Nginx DDoS
用戶無(wú)頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過(guò)答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫(kù),初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績(jī)?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績(jī)?cè)u(píng)定