SSH安全加固指南:防止服务器被入侵的20个最佳实践

当你拥有自己的VPS后,第一件事是什么?很多人忙着装软件、搭网站,却忽略了最基本的安全措施——SSH加固。每年有大量服务器因为弱密码、默认配置等原因被黑客入侵,成为挖矿肉鸡或DDoS攻击源。这篇教程教你从零配置SSH安全策略。

 

![SSH安全](https://picsum.photos/800/400?random=3)

 

一、SSH是什么?为什么重要?

SSH(Secure Shell)是一种加密网络协议,用于安全地访问远程服务器。当你通过SSH连接VPS时,所有的命令传输、文件操作都是加密的,无法被中间人窃听。但SSH默认配置存在诸多安全隐患:默认端口22,容易被扫描;允许密码登录,容易被暴力破解;允许root登录,风险极高;无登录次数限制,容易被暴力枚举。

 

二、更换SSH默认端口

第一步就是放弃22端口。端口扫描器通常只扫描常见端口,把SSH换到高位端口(如22222)能减少90%以上的扫描流量。编辑SSH配置文件:sudo nano /etc/ssh/sshd_config,找到 Port 22,改为 Port 22222,然后重启SSH服务。注意:改之前确保新端口已开放防火墙。

 

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

密码登录是暴力破解的主要入口。更安全的方案是使用SSH密钥对。在本地生成密钥对:ssh-keygen -t ed25519 -C "your_email@example.com",然后一键上传公钥到服务器:ssh-copy-id -p 22222 -i ~/.ssh/id_ed25519.pub user@your_server_ip。Ed25519是目前最推荐的密钥算法,相比RSA更安全、密钥更短、签名更快。生成后,在服务器端禁用密码登录。

 

四、配置Fail2ban防止暴力破解

即使禁用了密码登录,Fail2ban依然是好帮手——它可以自动封禁短时间内多次连接失败的IP。安装Fail2ban:sudo apt update && sudo apt install fail2ban -y,然后启动并设置开机自启。Fail2ban默认配置已经很严格,可根据需要调整参数。

 

五、限制root登录

root是Linux系统的最高权限,一旦被破解整个服务器就归黑客所有了。更好的做法是禁用root登录,之后用普通用户登录,需要时用sudo提权。

 

六、SSH安全检查清单

部署完成后,对照检查以下项目:SSH版本应大于OpenSSH 8.0;端口应显示非22端口;密码登录应被禁用;Root登录应被禁用;Fail2ban应有sshd规则。

 

总结

SSH安全加固不需要花哨的工具,关键在于养成良好的安全习惯。以上20个最佳实践,能帮你把服务器被入侵的风险降到最低。建议每隔几个月回顾一次配置,确保没有新的漏洞出现。安全无小事,防患于未然。

阅读约 3,800
寒小逸科技 | VPS·AI·硬件评测