本文實(shí)例講述了Nginx服務(wù)器實(shí)現(xiàn)通過(guò)ip和user_gent限制訪問(wèn)的方法。分享給大家供大家參考,具體如下:
DDOS攻擊是大規(guī)模訪問(wèn)站點(diǎn)經(jīng)常會(huì)遇到的問(wèn)題,它是指有人通過(guò)程序惡意刷站點(diǎn)的某些頁(yè)面,導(dǎo)致站點(diǎn)響應(yīng)緩慢或者直接拒絕服務(wù)。
這種情況可以通過(guò)分析nginx的access日志發(fā)現(xiàn),存在大量相同ip或者user_agent的請(qǐng)求,我們可以根據(jù)請(qǐng)求的相似性,對(duì)于這些訪問(wèn)的請(qǐng)求,直接在nginx層面上過(guò)濾掉。
通過(guò)ip限制訪問(wèn)
Nginx中訪問(wèn)控制模塊相關(guān)文檔
http://nginx.org/en/docs/http/ngx_http_access_module.html
訪問(wèn)控制可以通過(guò)deny指令來(lái)拒絕訪問(wèn),allow指令允許訪問(wèn)。
當(dāng)有多個(gè)deny和allow規(guī)則時(shí),匹配到對(duì)應(yīng)的規(guī)則就跳出。
拒絕固定ip
deny 192.168.1.12;
拒絕ip網(wǎng)段
deny 192.168.1.0/24;
只允許內(nèi)網(wǎng)訪問(wèn)
allow 192.168.1.0/24; deny all;
通過(guò)user_agent限制訪問(wèn)
Nginx沒(méi)有專門針對(duì)user_agent的限制指令,user_agent在nginx中可以通過(guò)$http_user_agent變量訪問(wèn)到,使用if指令對(duì)user_agent進(jìn)行正則匹配,對(duì)于匹配到的規(guī)則,拒絕訪問(wèn)即可。
nginx中對(duì)if指令介紹的比較詳細(xì)的在rewrite模塊中
http://nginx.org/en/docs/http/ngx_http_rewrite_module.html
通過(guò)user_agent限制Jmeter測(cè)試工具的訪問(wèn)
if ($http_user_agent ~ "^Apache.*Java"){ return 403; }
希望本文所述對(duì)大家nginx服務(wù)器維護(hù)有所幫助。
標(biāo)簽:香港 濰坊 攀枝花 東營(yíng) 西寧 西藏 淮北 怒江
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Nginx服務(wù)器實(shí)現(xiàn)通過(guò)ip和user_gent限制訪問(wèn)的方法分析》,本文關(guān)鍵詞 Nginx,服務(wù)器,實(shí)現(xiàn),通過(guò),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。