SSH安全核心是减少攻击面、增加验证门槛、及时发现异常;需限制IP、用fail2ban封禁、强密码或加密密钥管理,并加强日志监控与告警。

Linux SSH 安全不是“开个密码就完事”,核心是减少攻击面 + 增加验证门槛 + 及时发现异常。很多新手一上来就改端口、关密码登录,结果自己连不上,反而误以为“更安全”了——其实只是把门锁死了,钥匙却扔在门口。
别迷信“改端口=安全”
把 SSH 默认端口 22 改成 2222 或 3389,确实能过滤掉大量自动化扫描,但它不防针对性攻击,也不防暴力破解。只要端口开放且可访问,nmap 一下就能扫出来。更关键的是:改端口后若没同步更新防火墙规则、跳板机配置或运维文档,容易导致自己失联。
- ✅ 正确做法:配合 ufw / firewalld 限制源 IP(比如只允许公司出口 IP 或跳板机)
- ✅ 真正有效的是:用 fail2ban 监控 auth.log,10 分钟内 5 次失败就封 IP 1 小时
- ❌ 错误操作:只改端口 + 关闭 SELinux/防火墙,等于换把塑料锁还拆了门框
密码登录不是原罪,弱密码才是
很多人一听“SSH 密码不安全”就立刻禁用 PasswordAuthentication,结果密钥配错、备份密钥丢失,服务器直接变砖。其实只要做到三点,密码登录一样可靠:
- ✅ 强制使用 12 位以上、含大小写字母+数字+符号的密码(可用
openssl rand -base64 12生成) - ✅ 设置
MaxAuthTries 3和LoginGraceTime 60,缩短爆破窗口 - ✅ 结合 PAM 模块(如
pam_pwquality)强制密码复杂度,拒绝弱口令登录
密钥登录≠高枕无忧,管理比生成更重要
生成一个 id_rsa 并放到 ~/.ssh/authorized_keys 里,只是第一步。真正风险藏在后续管理中:
标签: linux word git github 防火墙 端口 ssl ai 日志监控
还木有评论哦,快来抢沙发吧~