nginx攔截非法host或直接使用ip訪(fǎng)問(wèn)的請(qǐng)求的實(shí)現(xiàn)
在nginx的訪(fǎng)問(wèn)日志中發(fā)現(xiàn)了一些奇怪的host域名,并非是實(shí)際用到的,經(jīng)過(guò)排查發(fā)現(xiàn),可以在本地的hosts文件中指定ip和域名的映射關(guān)系, 這樣就可以通過(guò)訪(fǎng)問(wèn)一個(gè)任意的域名,來(lái)請(qǐng)求到對(duì)應(yīng)的ip地址上面,因?yàn)閚ginx會(huì)使用默認(rèn)server來(lái)處理未匹配到server_name的請(qǐng)求,可以通過(guò)這種方式來(lái)繞過(guò)waf等,或者訪(fǎng)問(wèn)到nginx中其他的servername下, 會(huì)有一定的風(fēng)險(xiǎn),需要將這種方式攔截掉
比如在hosts文件中指定ip對(duì)應(yīng) www.abc.com
xx.xx.xx.xx www.abc.com
配置
因?yàn)閚ginx默認(rèn)按照ASCII碼的順序來(lái)加載conf配置文件,所以可以通過(guò)創(chuàng)建一個(gè)00開(kāi)頭的conf文件,來(lái)保證是最先加載的,在該文件中指定默認(rèn)的server_name,
來(lái)攔截所有的非法host的請(qǐng)求
可以使用 ls -nl
來(lái)查看nginx conf文件的ASCII順序。
00block.conf 文件的配置
server { listen 80 default_server; server_name __; location / { deny all; } } server { listen 443 ssl default_server; server_name _; ssl_certificate cert/xxx.com.pem; ssl_certificate_key cert/xxx.com.key; ssl_session_timeout 5m; ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE; ssl_prefer_server_ciphers on; location / { deny all; } }
這樣就可以禁止掉直接通過(guò)IP或者本地綁定域名的方式的非法請(qǐng)求。
到此這篇關(guān)于nginx攔截非法host或直接使用ip訪(fǎng)問(wèn)的請(qǐng)求的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)nginx攔截非法host內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
nginx的配置轉(zhuǎn)發(fā)到其他網(wǎng)站詳解
這篇文章主要為大家介紹了nginx的配置轉(zhuǎn)發(fā)到其他網(wǎng)站過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08Nginx rewrite跳轉(zhuǎn)應(yīng)用場(chǎng)景詳解
這篇文章主要介紹了Nginx rewrite跳轉(zhuǎn)應(yīng)用場(chǎng)景詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11Nginx配置ssl支持https全過(guò)程(docker版)
在Docker環(huán)境中配置Nginx使用SSL涉及準(zhǔn)備SSL證書(shū)和密鑰、編寫(xiě)Nginx配置文件以及使用Docker運(yùn)行Nginx,首先,需獲取SSL證書(shū)和密鑰,可以是自簽名或由CA頒發(fā),編寫(xiě)Nginx配置文件時(shí),確保正確引用證書(shū)和密鑰路徑,通過(guò)Docker命令或Docker Compose運(yùn)行Nginx容器2024-10-10nginx實(shí)現(xiàn)一個(gè)域名配置多個(gè)laravel項(xiàng)目的方法示例
這篇文章主要介紹了nginx實(shí)現(xiàn)一個(gè)域名配置多個(gè)laravel項(xiàng)目的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01windows系統(tǒng)下關(guān)閉Nignx的多種方式總結(jié)
這篇文章主要給大家總結(jié)介紹了windows系統(tǒng)下關(guān)閉Nignx的多種方式, 在Windows中啟動(dòng)Nginx是簡(jiǎn)單的,但有許多小伙伴不會(huì)關(guān)閉,這里給大家介紹下,需要的朋友可以參考下2023-08-08Nginx?502?Bad?Gateway錯(cuò)誤解決詳細(xì)指南與實(shí)例
這篇文章主要介紹了Nginx?502?Bad?Gateway錯(cuò)誤解決的相關(guān)資料,502BadGateway錯(cuò)誤是Web開(kāi)發(fā)和運(yùn)維中常見(jiàn)的錯(cuò)誤,表示一個(gè)服務(wù)器在充當(dāng)網(wǎng)關(guān)或代理時(shí),從上游服務(wù)器收到了一個(gè)無(wú)效的響應(yīng),需要的朋友可以參考下2024-11-11