Linux SSH 远程连接安全加固实战

在IDC机房运维工作中,SSH是我们日常管理服务器最常用的工具。但正因为它的普及性,SSH服务也成为了黑客攻击的重点目标。每天都有无数的暴力破解在扫描互联网上的22端口,今天就来分享几个实用的SSH安全加固技巧。

一、修改默认端口

这是最基础也是最有效的防护手段。绝大多数暴力破解脚本都是默认扫描22端口,改个端口就能过滤掉90%以上的扫描。

vim /etc/ssh/sshd_config
# Port 22 改为 Port 22222(建议用10000以上的端口)
systemctl restart sshd

二、禁用root登录

root是Linux系统的最高权限账户,也是黑客最想破解的目标。禁用root直接登录,先用普通用户登录再su切换,多一层保障。

PermitRootLogin no

三、使用密钥登录,禁用密码

密码再复杂也有被暴力破解的可能,密钥登录是目前最安全的方式。配置完密钥后,一定要把密码登录关掉。

PubkeyAuthentication yes
PasswordAuthentication no

四、设置登录白名单

如果你的运维团队IP比较固定,用AllowUsers限制只有指定用户能登录,这是最强的访问控制。

AllowUsers user1@192.168.1.0/24 user2@10.0.0.5

五、安装fail2ban防暴力破解

fail2ban会监控登录日志,发现多次失败尝试就自动封IP,是对抗暴力破解的利器。

yum install fail2ban -y
systemctl enable fail2ban && systemctl start fail2ban

六、其他安全建议

  1. 定期更新ssh版本,及时打安全补丁
  2. 配置空闲超时自动断开,防止遗忘的会话被利用
  3. 记录所有ssh登录日志,有异常能追溯
  4. 禁止空密码账户登录

安全这件事没有一劳永逸的方案,但做好基础防护就能挡住绝大多数攻击。IDC机房的服务器直接暴露在公网,每多一层防护,就多一份安心。运维工作的本质就是防患于未然,把安全做到细节里。