聊聊如何使用fail2ban和FirewallD黑名单保护你的系统。

使用fail2ban和FirewallD黑名单保护系统是一种有效的方法。Fail2ban可以监控系统日志,并根据一定规则匹配异常IP后使用FirewallD将其屏蔽,尤其是针对一些爆破/扫描等非常有效 。

什么是fail2ban和FirewallD?

1、fail2ban是一个基于Python编写的日志管理工具,主要用于防止恶意软件攻击,它通过监控系统日志,发现异常行为并将其添加到黑名单中,从而阻止这些行为的发生,Fail2Ban可以根据不同的攻击类型和频率自动调整过滤规则,以提高系统的安全性。

2、FirewallD(Firewall Daemon)是一个用于管理Linux内核防火墙的开源工具,它提供了一个灵活的配置接口,允许用户根据需要创建和管理防火墙区域、规则链和策略,FirewallD可以与iptables等其他防火墙工具集成,以提供更强大的安全防护能力。

聊聊如何使用fail2ban和FirewallD黑名单保护你的系统。

如何安装和配置fail2ban?

1、安装fail2ban:在基于Debian的系统(如Ubuntu)上,可以使用以下命令安装fail2ban:

sudo apt-get update
sudo apt-get install fail2ban

在基于RHEL的系统(如CentOS)上,可以使用以下命令安装fail2ban:

sudo yum install epel-release
sudo yum install fail2ban

2、配置fail2ban:在安装完成后,需要对fail2ban进行一些基本配置,创建一个新的配置文件/etc/fail2ban/jail.conf,并添加以下内容:

[DEFAULT]
指定日志文件的路径
logfile = /var/log/fail2ban/fail2ban.log
指定过滤器的名称和配置文件的路径
filter = %(bantime)s [%(ipaddr)s]:%(port)s -> /etc/fail2ban/filter.d/%(chain)s.conf
[sshd]
enabled = true
port = ssh
filter = sshd:37980 sshd:47890 sshd:37990 sshd:59060 sshd:59050 sshd:37981 sshd:37982 sshd:37983 sshd:37984 sshd:37985 sshd:37986 sshd:37987 sshd:37988 sshd:37989 sshd:37905 sshd:37906 sshd:37907 sshd:37908 sshd:37909 sshd:37910 sshd:37911 sshd:37912 sshd:37913 sshd:37914 sshd:37915 sshd:37916 sshd:37917 sshd:37918 sshd:37919 sshd:50000-52000 sshd:52000-54000 sshd:54000-56000 sshd:56000-58000 sshd:58000-62000 sshd:62000-64000 sshd:64000-66000 sshd:66000-68000 sshd:68000-111000
action = iptables[name=DROP, chain=INPUT, protocol=tcp, port=ssh] & iptables[name=DROP, chain=FORWARD, protocol=tcp, port=ssh] & iptables[name=DROP, chain=OUTPUT, protocol=tcp, port=ssh]
maxretry = 3

这里定义了一个名为sshd的过滤器,用于拦截SSH服务的恶意连接请求,你可以根据需要添加更多的过滤器,例如针对HTTP、FTP等服务的过滤器。

聊聊如何使用fail2ban和FirewallD黑名单保护你的系统。

3、启动fail2ban服务:使用以下命令启动fail2ban服务,并设置其在系统启动时自动运行:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

如何使用FirewallD创建和管理防火墙区域?

1、创建防火墙区域:firewall-cmd --permanent --zone=<zone_name> --add-source=<network><zone_name>是你要创建的防火墙区域的名称,<network>是你要将该区域与的网络地址或子网,要将名为public的区域与192.168.1.0/24网络关联,可以使用以下命令:

sudo firewall-cmd --permanent --zone=public --add-source=192.168.1.0/24

2、将服务添加到防火墙区域:firewall-cmd --permanent --zone=<zone_name> --add-service=<service_name><service_name>是你要将服务添加到的防火墙区域的服务名称,要将SSH服务添加到名为public的区域,可以使用以下命令:

sudo firewall-cmd --permanent --zone=public --add-service=ssh

3、重载防火墙配置:firewall-cmd --reload,这将使新的防火墙区域和服务的配置立即生效。

聊聊如何使用fail2ban和FirewallD黑名单保护你的系统。

相关问题与解答

Q1:如何在fail2ban中自定义过滤器?

A1:在/etc/fail2ban/filter.d/<chain>.conf文件中定义过滤器规则,要创建一个只允许来自特定IP地址的SSH连接的过滤器,可以在文件中添加以下内容:

[sshd]
allowed_ips = <ip_addresses>

然后重启fail2ban服务以应用更改,更多关于过滤器的详细信息和示例,请参阅fail2ban官方文档。

本文来自投稿,不代表重蔚自留地立场,如若转载,请注明出处https://www.cwhello.com/473280.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
硬件大师硬件大师订阅用户
上一篇 2024年7月19日 13:09
下一篇 2024年7月19日 13:19

相关推荐

  • nginx停止和启动命令。

    一、Nginx停止命令 要停止Nginx服务,可以使用以下命令: sudo service nginx stop 或者 sudo systemctl stop nginx 二、Nginx启动命令 要启动Nginx服务,可以使用以下命令: sudo service nginx start sudo system…

    2024年6月20日
    00
  • 经验分享如何判断香港云主机是不是安全的。

    判断香港云主机的安全性需要从多个方面进行评估。可以考察供应商的安全措施,如是否引入了云防护服务以提升网站的防护能力。通过直接访问域名来判断,如果域名解析正常但无法访问,可能是服务器配置问题。还应查看…

    2024年7月15日
    00
  • 说说linuxredis卸载。

    在Linux系统中,卸载Redis数据库相对简单,以下是详细的步骤: 你需要停止正在运行的Redis服务,你可以使用以下命令来实现这个目标: bash Copy code sudo service redis-server stop 你可以删除Redis的安装包,这…

    2024年6月19日
    02
  • 小编分享韩国服务器使用中遇到的异常问题及解决方法。

    韩国服务器异常问题包括连接失败、速度慢等,解决方法有检查网络设置、更换DNS服务器等。 在当今的信息化时代,服务器作为企业信息化建设的重要基础设施,其稳定性和安全性对企业的正常运营至关重要,在实际使用过…

    2024年7月10日
    01
  • 聊聊怎么将Ubuntu升级到Linux Kernel 4.2。

    您可以通过以下步骤将Ubuntu升级到Linux Kernel 4.2:,1. 首先检查您的操作系统类型,32位(i386)的或64位 (amd64)的。,2. 然后使用下面的方式依次下载并安装软件包:, – linux-headers-4.2.0-xxx_all.deb,…

    2024年7月16日
    03
  • 小编教你linux中sudo命令的用法。

    sudo是Linux系统中的一个命令,它允许普通用户以root用户的权限执行命令。使用sudo命令时,需要输入当前用户的密码,然后才能以root用户的权限执行命令。sudo命令的语法格式为:sudo [选项] [-u 用户名|#用户 ID] …

    2024年7月5日
    01
  • 小编教你ubuntu切换root用户命令。

    在Ubuntu系统中,切换到root用户是一种常见的需求,尤其是在需要进行一些需要管理员权限的操作时,下面我们将详细介绍如何在Ubuntu中切换到root用户。 我们需要知道的是,root用户是Linux系统中的最高权限用户,拥…

    2024年6月18日
    04
  • linux系统如何架设共享文件服务器。

    在Linux系统中,架设共享文件服务器是一项常见的任务,共享文件服务器可以让用户在网络上的其他计算机上访问和共享文件,以下是如何在Linux系统中架设共享文件服务器的详细步骤: 1、安装Samba Samba是一个开源的软…

    2024年7月5日
    01

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息