centos

如何限制CentOS SSH登录次数

小樊
67
2025-03-19 11:42:15
栏目: 智能运维

要限制CentOS上的SSH登录次数,您可以使用Fail2Ban工具。Fail2Ban是一个用于防止暴力破解攻击的工具,它可以监控日志文件并禁止多次尝试登录失败的IP地址。以下是如何在CentOS上安装和配置Fail2Ban的步骤:

  1. 安装Fail2Ban:
sudo yum install epel-release
sudo yum install fail2ban
  1. 启动Fail2Ban服务并设置开机启动:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
  1. 配置Fail2Ban:

Fail2Ban的配置文件位于/etc/fail2ban/jail.conf。您可以使用文本编辑器(如vim或nano)编辑此文件:

sudo vi /etc/fail2ban/jail.conf

jail.conf文件中,找到以下部分并进行相应的修改:

例如:

[sshd]
enabled = yes
port = sshd
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
  1. 创建自定义过滤器(可选):

如果您需要自定义过滤器,可以在/etc/fail2ban/filter.d/目录下创建一个新的过滤器文件。例如,创建一个名为my_sshd.conf的文件:

sudo vi /etc/fail2ban/filter.d/my_sshd.conf

my_sshd.conf文件中,定义一个正则表达式以匹配您的SSH登录失败日志。例如:

[Definition]
failregex = ^%(__prefix_line)s(?:error: PAM: )?(?:[a-zA-Z0-9_-]{3,32}: )?authentication failure
ignoreregex =

然后,在jail.conf文件中引用您的新过滤器:

[sshd]
...
filter = my_sshd
...
  1. 重新加载Fail2Ban配置:
sudo fail2ban-client reload

现在,Fail2Ban将根据您的配置限制SSH登录次数。当某个IP地址超过允许的最大尝试次数时,Fail2Ban会将其添加到防火墙的阻止列表中,阻止其进一步尝试登录。

0
看了该问题的人还看了