centos

CentOS如何防止SFTP被暴力破解

小樊
47
2025-03-29 18:04:18
栏目: 智能运维

要防止 CentOS 上的 SFTP 被暴力破解,可以采取以下措施:

  1. 使用强密码策略: 为用户账户设置复杂且难以猜测的密码。可以使用 passwd 命令来更改用户密码,并使用 chage 命令来设置密码过期策略。

  2. 限制登录尝试次数: 可以通过修改 /etc/pam.d/sshd 文件来实现。在文件中找到以下行:

    auth required pam_sepermit.so
    

    在这行下面添加以下内容:

    auth required pam_tally2.so onerr=fail deny=5 unlock_time=600
    

    这将限制用户在 5 分钟内尝试登录失败 5 次。超过限制后,用户将被锁定 600 秒(10 分钟)。

  3. 启用公钥认证: 公钥认证比密码认证更安全。要启用公钥认证,请确保 /etc/ssh/sshd_config 文件中的以下选项已设置为 “yes”:

    PubkeyAuthentication yes
    

    然后重启 SSH 服务以应用更改:

    sudo systemctl restart sshd
    
  4. 禁用 root 登录: 编辑 /etc/ssh/sshd_config 文件,找到以下行:

    PermitRootLogin yes
    

    将其更改为:

    PermitRootLogin no
    

    这将禁止 root 用户通过 SSH 或 SFTP 登录。然后重启 SSH 服务以应用更改:

    sudo systemctl restart sshd
    
  5. 更改默认 SSH 端口: 编辑 /etc/ssh/sshd_config 文件,找到以下行:

    Port 22
    

    将其更改为其他端口号,例如:

    Port 2222
    

    这将使攻击者更难找到正确的端口。然后重启 SSH 服务以应用更改:

    sudo systemctl restart sshd
    
  6. 使用 Fail2ban: Fail2ban 是一个用于监控日志文件并根据失败登录尝试次数阻止 IP 地址的工具。要安装 Fail2ban,请运行:

    sudo yum install fail2ban
    

    然后启动并启用 Fail2ban 服务:

    sudo systemctl start fail2ban
    sudo systemctl enable fail2ban
    

    可以通过编辑 /etc/fail2ban/jail.local 文件来自定义 Fail2ban 的配置,例如设置阻止时间、阻止 IP 数量等。

通过采取这些措施,可以大大降低 CentOS 上 SFTP 被暴力破解的风险。

0
看了该问题的人还看了