Nginx常用屏蔽规则,让网站更安全

nginx-block-rules.jpg

 

引言

Ng­inx (en­gine x) 是一个高性能的 HTTP 和反向代理服务,目前很大一部分网站均使用了 Ng­inx 作为 WEB 服务器,Ng­inx 虽然非常强大,但默认情况下并不能阻挡恶意访问,这里有一份常用的 Ng­inx 屏蔽规则,希望对你有所帮助。

在开始之前,希望您已经熟悉 Ng­inx 常用命令(如停止、重启等操作)及排查 ng­inx 错误日志,以免出现问题不知所措。如无特殊注明,以下的命令均添加到 server 段内,修改 nginx 配置之前务必做好备份,修改完毕后需要重载一次 nginx,否则不会生效。

防止文件被下载

比如将网站数据库导出到站点根目录进行备份,很有可能也会被别人下载,从而导致数据丢失的风险。以下规则可以防止一些常规的文件被下载,可根据实际情况增减。

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 这些目录禁止执行PHP
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.* 这个段
deny 192.168.5.0/24;

其它说明

再次强调,修改 nginx 配置之前务必做好备份,修改完毕后需要重载一次 nginx,否则不会生效。

上面大部分规则返回 444 状态码而不是 403,因为 444 状态码在 ng­inx 中有特殊含义。ng­inx 的 444 状态是直接由服务器中断连接,不会向客户端再返回任何消息,比返回 403 更加暴力。若有不足还请补充和指正。

关于Nginx常用屏蔽规则,让网站更安全的相关内容;如有侵权,请联系老文删除。

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
老文的头像老文
上一篇 2021年8月25日 上午12:30
下一篇 2021年8月25日 上午12:52

相关推荐

  • zblog博客无法上传附件/上传图片失败怎么办?

    zblog论坛里面经常有网友在问“zblog无法上传附件怎么办?”或者“zblog无法上传图片怎么办?”。老文笔记尝试为大家归类几种原因。 1、上传的图片或者附件太大了超出了限制。 解决办法:后台–网站设置–全局设置–允许上传文件的大小(单位MB)。将允许上传文件的大小设置大一些。 2、主机权限不足或者有限制。 解决办法:…

    2022年11月10日
    354
  • 服务器系统怎么安装

    我们在使用操作系统的时候,有的小伙伴们想要为自己的电脑安装服务器操作系统,但是不知道具体应该怎么做。那么对于这个问题小编觉得我们可以先在电脑上安装一个虚拟机,然后去相关网站下载自己需要的服务器操作系统,然后在虚拟机中进行操作即可。具体步骤就来看下小编是怎么做的吧~ 服务器系统怎么安装 1、创建一个虚拟机安装环境,安装镜像选择下载下来的Windows Serv…

    2023年1月17日 建站知识
    145
  • 加快WordPress网站的图片加载速度的方法

    图像对于吸引和保持读者的兴趣非常重要。但是,它们也是网络上加载速度最慢的元素之一。加载缓慢可能会导致访问者放弃您的网站,因此解决图片加载慢的问题尤为重要! 如果您想要一个更轻、更快的网站,那么图像优化是一个不错的起点。通过优化,您可以继续以美观、高质量的视觉效果吸引观众的注意力,而不会显着增加页面加载时间。 1.选择正确的文件格式在开始优化图像之前,重要的是…

    2021年8月12日
    418
  • 如何提升WordPress网站打开前后台的速度

    给大家介绍如何提升WordPress打开前后台的速度,希望对需要的朋友有所帮助!装好WordPress之后,准备想访问自己的网站,或是登入后台的时候,却发现,这个速度不敢恭维,即使是本地话的程序,也是慢慢的。操作起来也要挺久。那下面我们来解决一下这个问题,提升WordPress的打开速度。 造成这个主要是谷歌被屏蔽的问题,其被屏蔽的主要原因,大家都懂的。 现…

    2022年2月12日 建站知识
    672
  • WordPress在前台显示登录用户的注册时间

    在使用WordPress建站的时候,有的用户希望能在前台显示用户注册时间,但是WordPress是没有这个选项的,那么该如何实现这个功能呢? 非常简单,虽然这个功能并不常见,也没多大的作用。这个功能基本上是用在有用户中心站点。 首先将下面代码复制到主题的functions.php文章中。 //WordPress在前台显示登录用户的注册时间 function …

    2021年11月2日
    474