建站之初没啥访问量,有了一定规模后,每时每刻都有机器人来恶意扫描网站备份文件或者压缩包,对于这种恶意扫描的就得需要以其人之道还治其人之身,我们可以通过以下两种方法来禁止网站被恶意扫描

解决办法
以其人之道还治其人之身的办法
此方法以其人之道还治其人之身,利用Nginx的伪静态规则来劫持跳转,例如扫描根目录下的 /wwwroot.rar 压缩包,就会触发规则跳转到指定的大文件下载地址,让他慢慢下,使其磁盘带宽撑爆。
打开网站的 Nginx 配置文件,将以下规则加入Server 配置段内,然后重新加载服务让其生效
server {
...
rewrite \.rar/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.tar/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.tgz/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.zip/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.sql/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.gz/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
rewrite \.7z/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
...
}或者使用以下规则
rewrite \.(rar|zip|tar|sql|gz|tgz|7z)/?$ https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso permanent;
说明
https://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Everything-2207-02.iso //这个地址可以自定义
以上 Nginx 规则就是当有用户或恶意扫描访问网站上的 rar|zip|tar|sql|gz|tgz|7z 等资源时,直接请求下载阿里云镜像源文件
Nginx配置444状态码
444状态码即是,444 No Response,服务器不向客户端返回任何信息,并关闭连接(有助于阻止恶意软件),此方法简单粗暴
打开网站的 Nginx 配置文件,将以下规则加入Server 配置段内,然后重新加载服务让其生效
server{
...
# 禁止访问指定文件
location ~ \.(rar|zip|tar|sql|gz|tgz|7z)$ {
return 444;
}
...
}以上 Nginx 规则就是当有用户或恶意扫描访问网站上的 rar|zip|tar|sql|gz|tgz|7z 等资源时,Nginx直接返回 444 错误码。
总结
设置办法有很多种,看个人喜欢

