日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 Linux教程 正文

Nginx 常用的安全屏蔽規則

更新時間: 2021-04-13 Linux教程

Nginx 是一個高性能的 HTTP 和反向代理服務,目前很大一部分網站均使用了 Nginx 作為 WEB 服務器,Nginx 雖然非常強大,但默認情況下并不能阻擋惡意訪問,整理了一份常用的 Nginx 的屏蔽規則,希望對各位站長有所幫助。

在開始之前,請備份你的 Nginx 配置,修改完畢后需要重載一次 Nginx 的,否則不會生效。


如無特殊注明,下面命令均添加到 server 段內:

一、防止文件被下載

比如將網站數據庫導出到站點根目錄進行備份,很有可能也會被別人下載,從而導致數據丟失的風險。以下規則可以防止一些常規的文件被下載,可根據實際情況增減。

location ~ \.(zip|rar|sql|bak|gz|7z)$ {  
return 444;
}


二、屏蔽非常見蜘蛛(爬蟲)

如果經常分析網站日志你會發現,一些奇怪的 UA 總是頻繁的來訪問網站,而這些 UA 對網站收錄毫無意義,反而增加服務器壓力,可以直接將其屏蔽。

if ($http_user_agent ~* (SemrushBot|python|MJ12bot|AhrefsBot|AhrefsBot|hubspot|opensiteexplorer|leiki|webmeup)) { 
return 444;
}

禁止某個目錄執行腳本

比如網站上傳目錄,通常存放的都是靜態文件,如果因程序驗證不嚴謹被上傳木馬程序,導致網站被黑。以下規則請根據自身情況改為您自己的目錄,需要禁止的腳本后綴也可以自行添加。

#uploads|templets|data 這些目錄禁止執行 <a  title="更多關于 PHP 的文章" target="_blank">PHP</a>    
location ~* ^/(uploads|templets|data)/.*.(php|php5)$ {
return 444;
}

四、屏蔽某個 IP 或 IP 段

如果網站被惡意灌水或 CC 攻擊,可從網站日志中分析特征 IP,將其 IP 或 IP 段進行屏蔽。

#屏蔽 192.168.5.23 這個 IP
deny 192.168.5.23;
#屏蔽 192.168.5.* 這個段
denu 192.168.5.0/24;

上面規則報道查看 444 狀態碼而不是 403,
因為 444 狀態碼在 nginx 的中有特殊含義,nginx 的 444 狀態是直接由服務器中斷連接,不會向客戶端再返回任何消息。
比返回 403 更加暴力

欄目分類
最近更新