云服务器安全基线检查清单:上手第一周就该做的事

去年一个客户,新服务器上线两周后被入侵。排查发现:SSH端口没改,防火墙没开,不必要的服务端口全部暴露在公网。攻击者通过扫描找到开放端口,利用已知漏洞提权成功。
“我以为买了云服务器就安全了,云厂商不是有安全防护吗?”
云厂商提供的是平台安全(物理环境、虚拟化隔离),实例内的配置安全由你负责。新服务器上线的第一周,是建立安全基线的黄金窗口。下面这份清单,建议在新服务器投入使用前逐项完成。
01 禁用密码登录,启用密钥认证
密码可以被暴力破解。根据华为云基线检查说明,弱口令和密码复杂度不足是基线检查的高频风险项。密钥认证基于非对称加密,私钥不经过网络传输,从根本上杜绝了暴力破解的可能。
操作步骤:
bash
# 本地生成ed25519密钥对ssh-keygen -t ed25519# 上传公钥到服务器ssh-copy-id user@server-ip# 服务器端修改sshd_configPasswordAuthentication no PubkeyAuthentication yes
修改前务必先确认密钥登录已测试成功,否则可能把自己锁在门外。
02 修改SSH默认端口
将SSH端口从22改为高位端口,能过滤掉90%以上的自动化扫描攻击。云厂商文档明确建议:修改敏感端口为其它非高危端口来承载业务。
操作步骤:
text
Port 59222
建议先新增一个高位端口,测试能正常登录后,再注释掉22端口。同时更新防火墙和云平台安全组放行新端口。
03 配置防火墙:默认拒绝,按需放行
安全组是云服务器的第一道守卫,安全组规则越简洁,服务器越安全。基本原则:默认拒绝所有入站流量,只开放业务必须端口。
最少开放原则:
bash
# Ubuntu UFW示例sudo ufw default deny incomingsudo ufw allow 80/tcpsudo ufw allow 443/tcpsudo ufw allow 59222/tcp # 自定义SSH端口sudo ufw enable
同时登录云控制台,在安全组中同步配置。安全组和系统防火墙双层防护,避免其中一层失误导致暴露。
04 关闭非必要服务
操作系统或软件环境默认开启的服务中,有很多可能用不上。服务器暴露的服务越少,攻击面就越小。
排查命令:
bash
# 查看所有监听端口sudo netstat -tlnp# 查看所有启用的服务systemctl list-unit-files --type=service | grep enabled
关闭不用的服务(如FTP、邮件服务等),同时检查对应端口是否仍在监听。
05 配置密码策略与登录限制
密码策略基线检查常见于各类安全标准,包括口令复杂度、老化周期、失败锁定等。
密码老化策略(/etc/login.defs):
text
PASS_MAX_DAYS 90 # 密码最长使用90天 PASS_MIN_DAYS 7 # 最短7天才能改 PASS_WARN_AGE 7 # 提前7天警告
登录失败锁定(/etc/pam.d/system-auth):
text
auth required pam_tally2.so deny=5 unlock_time=180
输入错误5次,锁定180秒。
06 配置日志审计
基线检查要求系统应启用审计日志,记录关键操作。通过auditd监控关键配置文件(如/etc/passwd、/etc/shadow、sshd_config)的修改并留下日志,合规审计时可直接查询。
启用auditd:
bash
# 安装并启动auditdsudo systemctl enable auditdsudo systemctl start auditd# 添加关键文件监控规则sudo auditctl -w /etc/passwd -p wa -k identity_changessudo auditctl -w /etc/shadow -p wa -k identity_changessudo auditctl -w /etc/ssh/sshd_config -p wa -k sshd_changes
07 配置自动安全更新
及时安装安全补丁是基线检查的基础项。生产环境建议先在测试环境验证补丁兼容性。
bash
# Ubuntu启用无人值守更新sudo dpkg-reconfigure -plow unattended-upgrades
08 关键文件权限检查
bash
chmod 644 /etc/passwdchmod 400 /etc/shadowchmod 644 /etc/groupchmod 400 /etc/gshadow
写在最后
那家被入侵的客户后来重新部署了服务器,按这份清单逐项加固。三个月后他告诉我:“以前上线心里没底,现在有一套流程,踏实多了。”
基础安全的投入不会直接创造收入,但它能防止一次损失被放大到整个业务。安全基线是责任共担模型里,你必须做的那一半。
新服务器上线的第一周,花半天时间完成这些检查。之后不需要频繁维护,但每一次新机器上线,这份清单都能帮你省下后续的隐患排查时间。你准备什么时候做第一台服务器的基线检查?