防止 SSH 爆破:启用密钥登录
前段时间,我发现我的一台服务器被SSH 爆破 10,000 次。这让我意识到使用用户名密码登录方式存在较大的安全隐患。本文将介绍 SSH 爆破攻击的危险,并指导大家如何通过启用密钥登录来保护服务器安全。
什么是 SSH 爆破攻击?
SSH(Secure Shell)是一种常用的远程登录方式,主要用于管理服务器。然而,如果 SSH 使用用户名和密码登录,它很容易成为攻击者的目标。攻击者通常通过“暴力破解”来猜测用户名和密码,试图获取未授权的访问权限。暴力破解会用字典或脚本不断尝试常见的密码组合,一旦成功,攻击者便能完全控制你的服务器。
SSH 爆破攻击的危险性
- 资源消耗:爆破攻击会占用服务器的 CPU 和带宽资源,影响正常的服务器运行。
- 数据泄露:一旦被爆破成功,攻击者可能窃取敏感数据或安装恶意软件。
- 服务中断:攻击者可以通过删除关键文件或修改配置导致服务中断。
- 被滥用为跳板:黑客可能利用你的服务器作为跳板,进一步攻击其他系统或进行网络犯罪。
如何启用 SSH 密钥登录?
为防止暴力破解攻击,推荐使用 SSH 密钥登录。密钥登录比密码登录安全得多,因为它使用加密密钥认证,且不容易被破解。
步骤一:生成 SSH 密钥对
在本地计算机上生成 SSH 密钥对:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"- 你可以选择将密钥保存在默认位置(通常是
~/.ssh/id_rsa),并设置一个密码短语来进一步增强安全性。 - 生成后,会得到一个私钥文件(
id_rsa)和一个公钥文件(id_rsa.pub)。 -C参数后面的内容可以用来标识这个密钥的,以便区分不同的密钥
步骤二:将公钥上传到服务器
将生成的公钥上传到目标服务器(使用 user@hostname 替换为你的用户名和主机名):
ssh-copy-id -i ~/.ssh/id_rsa.pub user@hostname如果无法使用 ssh-copy-id,可以手动上传公钥:
cat ~/.ssh/id_rsa.pub | ssh user@hostname 'mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys'步骤三:禁用密码登录
为了确保安全性,建议禁用 SSH 密码登录。登录到服务器后,编辑 SSH 配置文件:
sudo vim /etc/ssh/sshd_config找到并修改以下选项:
PasswordAuthentication no确保启用了公钥认证机制,允许使用密钥登陆,即确保配置文件中有以下配置,并且没有被注释掉:
PubkeyAuthentication yes保存并退出,然后重启 SSH 服务以应用更改:
sudo systemctl restart ssh其他安全建议
- 更改默认 SSH 端口:将 SSH 端口从默认的
22改为其他端口,可以减少被扫描的概率。 - 使用防火墙:配置防火墙规则,只允许可信任的 IP 地址访问 SSH 服务。
- 启用 Fail2Ban:Fail2Ban 可以在短时间内禁止多次失败登录尝试的 IP,从而防止暴力破解。
结论
SSH 爆破攻击对服务器安全构成严重威胁,但通过启用 SSH 密钥登录,可以有效防止暴力破解。采用上述安全建议后,你的服务器将更加安全稳定。

6 条评论
2025年10月新盘 做第一批吃螃蟹的人coinsrore.com
新车新盘 嘎嘎稳 嘎嘎靠谱coinsrore.com
新车首发,新的一年,只带想赚米的人coinsrore.com
新盘 上车集合 留下 我要发发 立马进裙coinsrore.com
做了几十年的项目 我总结了最好的一个盘(纯干货)coinsrore.com
新车上路,只带前10个人coinsrore.com
新盘首开 新盘首开 征召客户!!!coinsrore.com
新项目准备上线,寻找志同道合 的合作伙伴coinsrore.com
新车即将上线 真正的项目,期待你的参与coinsrore.com
新盘新项目,不再等待,现在就是最佳上车机会!coinsrore.com
新盘新盘 这个月刚上新盘 新车第一个吃螃蟹!coinsrore.com
新项目准备上线,寻找志同道合的合作伙伴
案例丰富且贴合主题,论证逻辑环环相扣。
文章紧扣主题,观点鲜明,展现出深刻的思考维度。
建议增加田野调查素材,提升真实性。
立意高远,以小见大,引发读者对社会/人性的深层共鸣。