温馨提示×

linux ssh服务器怎样限制登录尝试次数

小樊
218
2024-12-10 07:23:39
栏目: 云计算

在Linux中,你可以使用iptablesfail2ban来限制SSH服务器的登录尝试次数

  1. 首先,确保你已经安装了iptablesfail2ban。如果没有安装,可以使用以下命令进行安装:

    对于基于Debian的系统(如Ubuntu):

    sudo apt-get update
    sudo apt-get install iptables fail2ban
    

    对于基于RHEL的系统(如CentOS):

    sudo yum update
    sudo yum install iptables fail2ban
    
  2. 配置/etc/fail2ban/jail.local文件以限制SSH登录尝试次数。你可以使用以下配置作为示例:

    [DEFAULT]
    maxretry = 3
    bantime = 600
    
    [sshd]
    enabled = true
    port = ssh
    filter = sshd
    

logpath = /var/log/auth.log maxretry = 3 bantime = 600


这个配置表示,如果一个IP地址在10分钟内连续3次尝试SSH登录失败,那么该IP将被封禁10分钟(600秒)。

3. 启动并启用`fail2ban`服务以应用更改:

对于基于Debian的系统:

sudo systemctl start fail2ban sudo systemctl enable fail2ban


对于基于RHEL的系统:

sudo systemctl start fail2ban sudo systemctl enable fail2ban


4. 使用`iptables`配置防火墙规则以阻止被封禁的IP地址。你可以使用以下命令自动创建这些规则:

sudo iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT sudo iptables -A INPUT -p tcp --dport ssh -j ACCEPT sudo iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited sudo iptables -A INPUT -f /var/lib/fail2ban/iptables.rules


现在,你已经成功配置了SSH服务器以限制登录尝试次数。当有人连续多次尝试登录失败时,他们的IP地址将被封禁一段时间,从而提高服务器的安全性。

0