售前咨询400-838-0503

云服务器如何配置SSH防暴力破解?

技术文档 2025-04-16 13:23

云服务器SSH防暴力破解终极配置指南

在当今数字化时代,云服务器安全是每个运维人员必须重视的问题。SSH作为远程管理服务器的标准协议,常常成为黑客暴力破解的目标。本文将详细介绍7种有效的SSH防护策略,帮助您构建坚不可摧的服务器防线。

一、修改默认SSH端口

攻击者通常会扫描22端口寻找攻击目标,修改默认端口是最简单有效的防护措施:

  1. 编辑SSH配置文件:sudo vim /etc/ssh/sshd_config
  2. 找到#Port 22,取消注释并修改为其他端口(如23456)
  3. 保存后重启SSH服务:sudo systemctl restart sshd
  4. 确保防火墙开放新端口

建议选择1024-65535之间的高位端口,避免与常见服务冲突。

二、禁用root直接登录

禁止root账户直接SSH登录可以大幅提升安全性:

# /etc/ssh/sshd_config
PermitRootLogin no
UsePAM yes

配置完成后,建议:

  • 创建具有sudo权限的普通用户
  • 使用su -或sudo -i切换root

三、配置Fail2Ban自动封禁

Fail2Ban可自动检测并封禁恶意IP:

  1. 安装:sudo apt install fail2ban (Ubuntu)
  2. 创建本地配置文件:sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
  3. 修改[sshd]部分配置:
[sshd]
enabled = true
port = 23456 # 修改为您设置的SSH端口
filter = sshd
logpath = /var/log/auth.log
maxretry = 3
bantime = 86400

重启服务生效:sudo systemctl restart fail2ban

四、启用密钥认证

相比密码认证,SSH密钥更安全:

生成密钥对

ssh-keygen -t rsa -b 4096
# 将公钥上传到服务器
ssh-copy-id -p 23456 user@server_ip

配置SSH

# /etc/ssh/sshd_config
PubkeyAuthentication yes
PasswordAuthentication no
ChallengeResponseAuthentication no

五、配置防火墙策略

使用UFW或iptables限制访问:

UFW示例

sudo ufw allow 23456/tcp
sudo ufw enable
sudo ufw status verbose

进阶防护

仅允许特定IP访问SSH:

sudo ufw allow from 192.168.1.100 to any port 23456

六、其他增强措施

措施 配置方法 安全效果
限制用户登录 AllowUsers user1 user2 ★★★★☆
设置登录时间窗口 AllowGroups ssh-users ★★★☆☆
启用2FA认证 使用Google Authenticator ★★★★★
日志监控 配置logwatch或Splunk ★★★★☆

七、定期安全检查

建议每月执行以下检查:

  • 查看失败登录记录:sudo grep "Failed password" /var/log/auth.log
  • 检查当前登录用户:w或who
  • 更新系统和安全补丁:sudo apt update && sudo apt upgrade

通过以上多层防护措施,您的云服务器SSH安全性将得到极大提升,有效抵御99%的暴力破解攻击。

如本公告涉及你的产品,或有不清楚之处,可提交工单确认。

提交工单