Linux SSH安全提升聚焦四大关键动作:禁用密码登录启用密钥认证(ed25519优先)、禁止root直连并限制AllowUsers、修改端口配合防火墙精准放行、启用fail2ban及加固协议算法;建议按序实施并逐项验证。

Linux SSH 安全提升不是靠堆配置,而是聚焦几个关键动作:关掉高危入口、换掉弱认证方式、加一层访问控制。下面这些操作在主流发行版(Ubuntu 22.04+/CentOS 8+/RHEL 9+)上均可直接执行,每一步都有明确目的和验证方法。
禁用密码登录,只用密钥认证
这是最有效的单步加固——暴力破解几乎立刻失效。前提是已配好密钥且能稳定登录。
- 本地生成强密钥:
ssh-keygen -t ed25519 -C "admin@prod"(优先选 ed25519,比 RSA 更快更安全) - 上传公钥到服务器:
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip - 登录服务器后,编辑
/etc/ssh/sshd_config,确认以下两行:PubkeyAuthentication yesPasswordAuthentication no - 重启服务:
sudo systemctl restart sshd - ⚠️ 操作前务必新开一个终端,用密钥成功登录一次再关闭旧连接,避免锁死
禁止 root 直接登录 + 限制可登录用户
消除最高权限账户暴露面,同时缩小攻击目标范围。
- 在
/etc/ssh/sshd_config中设置:PermitRootLogin noAllowUsers deploy admin backup(只写你真正需要 SSH 的用户名,多个空格分隔) - 如需按组限制,可用:
AllowGroups ssh-users,然后用sudo usermod -aG ssh-users username加入用户 - 改完立即生效,无需重启,但新连接才受控;已有 root 会话不受影响
改端口 + 配合防火墙精准放行
不为“防高手”,只为过滤掉 99% 的自动化扫描流量——实测日志中无效尝试下降两个数量级。
标签: linux word centos 防火墙 端口 ubuntu mac ai
还木有评论哦,快来抢沙发吧~