服务器云服务器安全加固:云服务器安全加固全流程
云服务器安全加固是很多新手容易忽略但又至关重要的事。
默认的SSH端口22、root直接登录、未配置防火墙等隐患,被扫描到后几分钟内就可能被恶意登录。
本文面向零基础用户,按步骤演示从登录开始完成6个关键的安全操作。
准备条件:一台云服务器和SSH客户端
你需要一台Linux云服务器(CentOS或Ubuntu均可),和一个SSH客户端工具。
确保能用root或sudo权限登录。
第一步:修改SSH端口并禁用root登录
默认SSH端口22是暴力破解的主要目标,必须立即修改。
- 编辑SSH配置文件:
sudo vim /etc/ssh/sshd_config
- 找到
#Port 22,改为自定义端口,例如Port 23456(避免使用常见端口)。 - 找到
PermitRootLogin yes,改为PermitRootLogin no,禁止root直接登录。 - 保存退出,重启SSH服务:
sudo systemctl restart sshd
- 验证前千万别退出当前连接!先另开终端测试新端口能否连接:
ssh -p 23456 你的用户名@服务器IP。如果成功,再关闭原会话。如果失败,检查防火墙是否放行了新端口(见下一步)。
第二步:配置防火墙(以UFW为例)
UFW是Ubuntu上最简单的防火墙工具。
CentOS用户可使用firewalld或iptables。
这里以UFW为例。
- 安装UFW(如未安装):
sudo apt update && sudo apt install ufw -y
- 设置默认策略:拒绝所有入站,允许所有出站。
sudo ufw default deny incoming
sudo ufw default allow outgoing
- 放行新SSH端口(重要!否则会被锁在外面):
sudo ufw allow 23456/tcp
- 如果还需要放行Web服务(80/443)或其他,同样添加。
- 启用防火墙:
sudo ufw enable
- 查看状态确认:
sudo ufw status verbose
避坑:如果你在修改SSH端口前就启用了防火墙,需要先放行新端口再重启SSH。
否则一旦重启SSH,旧连接断开,新端口被防火墙阻挡,你就彻底连不上了。务必先放行新端口,再重启SSH服务。
第三步:安装Fail2ban防御暴力破解
Fail2ban会扫描日志并封禁多次尝试失败的IP。
- 安装:
sudo apt install fail2ban -y
- 创建自定义配置文件:
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- 编辑
jail.local,找到[sshd]部分,确保enabled = true,并设置port为你的新SSH端口(例如port=23456)。 - 重启服务:
sudo systemctl restart fail2ban
- 查看运行状态和封禁列表:
sudo fail2ban-client status sshd
第四步:保持系统更新与安全补丁
软件漏洞是安全大敌。
设置自动更新:
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades
按提示选择“是”启用自动安全更新。
其他非安全更新建议每月手动检查。
验证安全加固效果
执行以下检查清单:
- SSH端口已改且正常连接:尝试用新端口登录。
- root登录已禁用:用root用户尝试登录,应被拒绝。
- 防火墙规则:用
sudo ufw status检查只有必要端口开放。 - Fail2ban状态:
sudo fail2ban-client status sshd应显示活跃。 - 系统更新:
sudo apt list --upgradable应无安全更新待处理。
如果你正在进行云服务器安全加固,建议先按本文步骤完整执行,再根据自己业务需求微调。
遇到异常时优先检查防火墙是否阻挡了所需端口,以及SSH配置是否正确。