从网站建立开始,就会有许多个机器人来恶意扫描网站文件,日志也是多的可怕,对于这种行为,我们可以通过以下俩种方法来阻止。

方法一

此种方法比较暴力,就是以彼之道,还施彼身,利用伪静态规则进行跳转下载,比如:扫描根目录下的 /web.rar,那么就会触发规则跳转到大文件下载地址。

打开网站 Nginx 配置文件,将规则加入 server 内,示例:

server {
    ...
    # 专治扫描户
    rewrite \.rar/?$ http://speedtest.tele2.net/100GB.zip permanent;
    rewrite \.tar/?$ http://speedtest.tele2.net/100GB.zip permanent;
    rewrite \.zip/?$ http://speedtest.tele2.net/100GB.zip permanent;
    rewrite \.sql/?$ http://speedtest.tele2.net/100GB.zip permanent;
    rewrite \.gz/?$ http://speedtest.tele2.net/100GB.zip permanent;
    rewrite \.7z/?$ http://speedtest.tele2.net/100GB.zip permanent;
    
    # 或者使用
    rewrite \.(rar|zip|tar|sql|gz|7z)/?$ http://speedtest.tele2.net/100GB.zip permanent;
    ...
}

如果觉得 100GB 响应时间有点长,那么可以替换小文件下载地址:

方法二

此方法最简单粗暴,直接网站 Nginx 配置文件里面添加以下的规则,针对服务器上经常被扫描的文件后缀,直接返回404,资源下载网站请根据情况调整规则,示例:

server{
    ...
    # 禁止访问指定文件
    location ~ \.(zip|rar|sql|tar|gz|7z)$ {
        return 404;
    }
    ...
}

最后说明

第一种方法,以彼之道,还施彼身,既然来了,也不能让人家空手而归吧,而方法二会直接返回404。这两个方法请根据实际情况调整配置规则。

Last modification:December 29, 2022
如果觉得我的文章对你有用,请随意赞赏