温馨提示×

怎样提升CentOS SSH的安全性

小樊
43
2025-07-06 11:14:17
栏目: 智能运维

要提升CentOS SSH的安全性,可以采取以下措施:

  1. 更改默认SSH端口

    • 编辑SSH配置文件 /etc/ssh/sshd_config
    • 找到 #Port 22 这一行,取消注释并修改为一个非标准端口,例如 Port 2222
    • 保存文件并重启SSH服务:systemctl restart sshd
  2. 禁用root登录

    • /etc/ssh/sshd_config 文件中找到 PermitRootLogin 这一行。
    • 将其设置为 no,即 PermitRootLogin no
    • 这样可以防止root用户直接通过SSH登录,增加一层安全保护。
  3. 使用公钥认证

    • 在客户端生成SSH密钥对(如果还没有的话),使用命令 ssh-keygen
    • 将公钥复制到服务器的 ~/.ssh/authorized_keys 文件中。
    • 在服务器端编辑 /etc/ssh/sshd_config 文件,确保 PubkeyAuthentication yes
    • 禁用密码认证(可选但推荐):PasswordAuthentication no
    • 重启SSH服务。
  4. 限制SSH访问

    • 使用防火墙规则限制可以访问SSH的IP地址。
    • 例如,使用 firewall-cmd 命令添加规则:
      firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="2222" accept' firewall-cmd --reload 
  5. 使用Fail2Ban

    • Fail2Ban是一个入侵防御软件框架,可以用来防止暴力破解攻击。
    • 安装Fail2Ban:yum install fail2ban
    • 配置Fail2Ban以监控SSH登录尝试,并在检测到多次失败尝试后封禁IP地址。
  6. 更新SSH版本

    • 确保SSH服务器和客户端都是最新版本,以修复已知的安全漏洞。
    • 使用 yum update openssh-server 更新SSH服务器。
  7. 使用SELinux

    • SELinux(Security-Enhanced Linux)提供了强制访问控制(MAC)机制,可以进一步增强系统安全性。
    • 确保SELinux处于启用状态,并根据需要进行配置。
  8. 日志审计

    • 定期检查SSH日志文件 /var/log/secure,以监控和审计登录尝试和其他安全相关事件。

通过实施这些措施,可以显著提高CentOS SSH服务器的安全性。请根据实际情况选择适合的措施,并确保在进行任何更改之前备份相关配置文件。

0