VPS/云主机等
优惠信息分享~

宝塔面板安装Fail2ban防爆破插件 - 实现简单防CC/防站点被扫描

宝塔面板最新版7.0.2集成了一个神器Fail2ban防爆破1.1,大鸟在前面的教程来也说过,fail2ban对于简单的防cc效果还是不错的。

宝塔面板虽然阉割了5.9的nginx防火墙,但是这次更新主动添加了一个Fail2ban防爆破1.1也算是对用户的一种诚意了吧。这篇文章我们就来说说如何安装启用这个插件,实现对网站的保护。之前的文章:

[mark_c]宝塔面板6.X安装fail2ban+ Firewalld防止CC攻击[/mark_c]

宝塔双11活动

6个月Linux专业版只需28元,立即一起来组队

安装

这个教程是基于宝塔面板来讲,我们在软件商店→宝塔插件中可以找到Fail2ban防爆破插件,如图:

我们点击安装好即可。

配置插件

配置插件分为2部,一个是简单防cc和防止恶意扫描,我们先谈谈如何简单防cc。

1、防cc

Fail2ban可以防止恶意主机爆破服务、站点简单防cc等,我们点开插件开始配置。先创建一个服务。如图:

这里大鸟用了默认配置,如果你觉得不合适,可以修改了禁止时间可以改大点或者小点……。设置好我们保存即可。

2、测试效果

现在开始来测试效果,大鸟的这个配置是300秒内刷新了30次就会被封禁600秒,测试如图:

图上已经被封禁了ip,所以打不开网站,等了5分钟,我们看图:

5分钟之后网站被解封,在看看fail2ban的日志,如图:

日志还是很简单,你在这里可以删除被ban的ip。如果误封,可以在这里删除掉ip,解除封禁就可以打开网站了。

3、端口服务保护

这可以对于扫描爆破22端口比较好用,所以还是提示要修改默认的22端口,如何设置看图

这里可以保护sshd、mysql端口等等,大鸟设置了sshd,如图:

这里就可以设置一个陷阱,保护自己的22端口。

4、ip白名单

默认还可以设置ip白名单,可以单个设置也可以成段设置ip,如图:

5、站点防扫描

这个功能是和简单防cc在一起的,因为查看网站日志的时候,总会有一些恶意扫描程序扫描我们的网站路径,因为这个功能用的不太多,大鸟这里就简单说下。如图:

6、总结

Fail2ban防爆破这个插件比较好用,而且,从测试来看应对简单的cc效果还是不错的,起码你的网站不会被人刷新就搞死。

防止ssh端口爆破也很不错,这下你就不用怕被暴力扫描破解了,原本fai2ban要使用的的话还是有点难度的,现在我们直接在后台点击安装就可以搞定。

宝塔出这个插件的难道是应对一些潜在的竞争对手的么,比如说小皮面板?

赞(0)
未经允许不得转载:大鸟笔记 » 宝塔面板安装Fail2ban防爆破插件 - 实现简单防CC/防站点被扫描

评论 10

  1. #1

    还是那句老话说的好,攻击就是一个伤敌一千自损八百的事,谁钱多谁赢。

    猫叔6年前 (2019-11-04)回复
    • 软件防御么,服务器的配置还得上去,不然也是扯。

      大鸟6年前 (2019-11-04)回复
  2. #2

    很实用的文章,收藏了

    武汉空调维修6年前 (2019-11-08)回复
  3. #3

    大鸟前辈,Fail2ban防爆破我宝塔安装好后无法启动.! 这个是什么原因您遇到过吗? 7.0.3 最新版的!

    墨轩6年前 (2019-11-13)回复
    • 卸载重装,或者加我微信截图给我看看。

      大鸟6年前 (2019-11-13)回复
  4. #4

    和上面一位朋友一样,无法启动,看来不是一个人的问题啊,请大鸟排查一下。感谢!
    我是安装好了后一切正常,重启服务器后,就无法再启动,卸载重装后又正常,重启后又无法启动……

    谢谢你的帮助6年前 (2019-12-26)回复
  5. #5

    为什么安装完之后无法打开这个程序的,而且创建的时候还会显示:

    抱歉,出错了:
    Traceback (most recent call last):
    File "class/panelPlugin.py", line 1675, in a
    return eval(execStr)
    File "", line 1, in
    File "plugin/fail2ban/fail2ban_main.py", line 429, in set_anti
    return self.set_cc_anti(values)
    File "plugin/fail2ban/fail2ban_main.py", line 370, in set_cc_anti
    self._check_conf_exist(conf, values["mode"])
    File "plugin/fail2ban/fail2ban_main.py", line 178, in _check_conf_exist
    if '[{}]'.format(mode) in jail_conf:
    TypeError: argument of type 'NoneType' is not iterable

    请问为什么会这样呢?

    kopp6年前 (2020-01-08)回复
    • 卸载重装呢?或者修复下面板。

      大鸟6年前 (2020-01-08)回复
      • 重装很多次,还是这样。
        修复面板后也是。
        这是有什么错误配置吗?

        kopp6年前 (2020-01-09)回复
  6. #6

    fail2ban.sqlite的logs表里没ssh的,不知道为什么,jail.local都配置好了的

    grimmster3年前 (2022-12-02)回复