nginx版本號隱藏(附405 not allowed解決辦法)
背景
項目安全測試發(fā)現(xiàn)405頁面暴露了nginx版本,其相關(guān)版本號泄露時攻擊者會利用相應(yīng)軟件版本的當(dāng)前漏洞,進行有效的相應(yīng)攻擊。所以需要我們做好版本號的隱藏。
解決辦法
1.nginx版本隱藏
只需要我們在nginx.conf文件的server中添加server_tokens off,例如
server { listen 80; server_tokens off; location / { ... } }
2. 405 not allowed解決辦法
雖然server_tokens off;已經(jīng)將版本號隱藏,但是405頁面依舊暴露了版本號,這已然是有問題的。
網(wǎng)上通用的方法講的不夠詳細,下面的方法親測有效。我這邊采用的是405時與200等效處理,避免405頁面的展示,或者你也可以轉(zhuǎn)發(fā)到其他靜態(tài)頁面也是ok的。
例如
server { listen 80; server_tokens off; location / { proxy_intercept_errors on; #必須配置這行命令,否則不會生效 error_page 405 =200 @405; } location @405 { proxy_pass http://+轉(zhuǎn)發(fā)的后端ip+端口號+$request_uri; #例如proxy_pass http://127.0.0.1:3000$request_uri; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }
效果
或者轉(zhuǎn)發(fā)到302也是ok的,效果如下
到此這篇關(guān)于nginx版本號隱藏(附405 not allowed解決辦法)的文章就介紹到這了,更多相關(guān)nginx版本號隱藏內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
OpenResty是什么,OpenResty和Nginx的區(qū)別?
Nginx作為一款輕量級、高性能的Web服務(wù)器,傳統(tǒng)局限性也很明顯:靜態(tài)配置、邏輯擴展依賴C模塊開發(fā),使得它在需要動態(tài)業(yè)務(wù)邏輯的場景中顯得捉襟見肘,<BR>而OpenResty的出現(xiàn),打破了這一僵局,它通過將Lua腳本深度集成到Nginx中,將“靜態(tài)代理服務(wù)器”升級為“動態(tài)應(yīng)用平臺”2025-04-04Nginx geoip模塊實現(xiàn)地區(qū)性負載均衡
相信做過awstats的都用過開源的geoip.dat ip數(shù)據(jù)庫,剛好nginx wiki上有g(shù)eoip 模塊,這樣就可以實現(xiàn)地區(qū)性的負載均衡,但是maxmind 的ip數(shù)據(jù)庫對中國的支持不算太好,不過現(xiàn)在也不錯了~2010-12-12Nginx 502 Bad Gateway錯誤常見的4種原因和解決方法
這篇文章主要介紹了Nginx 502 Bad Gateway錯誤常見的4種原因和解決方法,本文適用FastCGI環(huán)境,其中多數(shù)原因通過配置相關(guān)參數(shù)即可解決,需要的朋友可以參考下2015-05-05Nginx 出現(xiàn) 403 Forbidden 最終解決方法
這篇文章給大家介紹了Nginx 出現(xiàn) 403 Forbidden 最終解決方法,下面分步驟給大家介紹的非常詳細,感興趣的的朋友一起看看吧2017-08-08