Linux SSH安全核心是围绕“谁在连、怎么连、连什么”做减法:禁用密码登录强制密钥认证、改默认端口并限制IP、启用Fail2ban防爆破、添加登录Banner或2FA,每项均可5分钟验证生效。

Linux SSH 安全不是堆配置,而是围绕“谁在连、怎么连、连什么”三件事做减法——关掉默认风险,收紧访问路径,留出可审计痕迹。下面这些操作,都是生产环境高频踩坑后验证有效的实战动作,改完就能见效。
禁用密码登录,强制密钥认证
90% 的暴力破解攻击止步于这一步。密码登录是最大软肋,尤其 root + 密码组合等于敞开大门。
- 生成强密钥对(本地执行):ssh-keygen -t ed25519 -C "your_email@example.com"(优先选 ed25519,比 rsa 更快更安全)
- 上传公钥到服务器:ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip
- 编辑 /etc/ssh/sshd_config,确保以下三项为:
PubkeyAuthentication yes
PasswordAuthentication no
PermitRootLogin no
改完别忘重启服务:sudo systemctl restart sshd。建议先开一个保留会话,测试新连接成功后再关闭旧会话。
改默认端口 + 限制登录IP范围
不求隐蔽,只为过滤掉扫描器的无效流量。SSH 默认 22 端口是所有自动化工具的起点。
- 修改端口:在 /etc/ssh/sshd_config 中取消注释并改行:Port 2222(选 1024–65535 间非知名端口,避开常用如 8080、3306)
- 限制来源 IP(推荐用 ufw):sudo ufw allow from 203.0.113.44 to any port 2222,再 sudo ufw enable
- 若用云服务器(如阿里云、AWS),务必同步在安全组里放行新端口+指定IP,否则直接失联
启用 Fail2ban 防爆破,5 分钟上手
它不是防火墙,而是“盯日志+自动拉黑”的轻量级守门员,对反复失败登录的 IP 自动封禁(默认 10 分钟)。
标签: linux word centos go 防火墙 云服务 access 端口 ubuntu 工具 阿里云 ai goog
还木有评论哦,快来抢沙发吧~