Linux云服务器安全加固教程_SSH密钥防护与防暴力破解

18次阅读

linux云服务器安全加固核心是守住ssh这道门:用ed25519密钥替代密码登录,禁用PasswordAuthentication,限制AllowUsers、MaxAuthTries和LoginGraceTime,启用fail2ban,改非标端口,禁root远程登录,定期轮换密钥并配UFW防火墙

Linux云服务器安全加固教程_SSH密钥防护与防暴力破解

Linux云服务器安全加固,核心是守住SSH这道门。用密钥替代密码登录、限制登录尝试、关闭危险配置,能大幅降低被暴力破解和未授权访问的风险。

生成并部署SSH密钥对

本地生成强加密密钥(推荐ed25519),避免使用默认RSA-1024等弱算法。执行:
ssh-keygen -t ed25519 -C “your_email@example.com”
按提示保存私钥(如~/.ssh/id_ed25519),公钥会自动生成(id_ed25519.pub)。将公钥内容追加到服务器的~/.ssh/authorized_keys中,确保权限正确:

  • chmod 700 ~/.ssh
  • chmod 600 ~/.ssh/authorized_keys
  • chown $USER:$USER ~/.ssh ~/.ssh/authorized_keys

禁用密码登录,强制密钥认证

编辑/etc/ssh/sshd_config,确认以下配置项已启用并取消注释:

  • PasswordAuthentication no
  • PubkeyAuthentication yes
  • PermitEmptyPasswords no

修改后重启服务:
sudo systemctl restart sshd
⚠️ 操作前务必确保密钥已验证可用,避免锁死自己。

限制SSH访问行为,防暴力破解

仅开放必要IP、限制登录频率、缩短超时时间,可有效遏制扫描与爆破:

  • AllowUsersAllowGroups限定可登录用户(如AllowUsers deploy@192.168.1.0/24
  • 设置MaxAuthTries 3,三次失败即断开连接
  • 启用LoginGraceTime 60,登录窗口仅60秒
  • 搭配fail2ban自动封禁异常IP(安装后启用sshd jail即可)

其他关键加固建议

SSH只是入口,配合系统级防护更稳妥:

  • 把SSH端口从默认22改为非知名端口(如2222),虽不防高级攻击,但能过滤大量自动化扫描
  • 禁用root远程登录:PermitRootLogin no
  • 定期轮换密钥,尤其在员工离职或设备丢失后立即删除对应公钥
  • 开启UFW防火墙,只放行必需端口:ufw allow OpenSSH && ufw enable
text=ZqhQzanResources