云服务器安全配置20项检查清单:从购买到加固,防止被攻击

文章最后更新时间:2026-04-13 15:18:35

云服务器是企业网站和应用的基础设施,一旦被攻破,数据泄露、网页被篡改、甚至被用于黑产,都会给企业带来巨大损失。本文整理了云服务器安全的20项检查清单,从购买到日常运维,帮企业把服务器安全风险降到最低。

一、购买阶段的安全选择

检查1:选择靠谱的云服务商

  • 国内首选:阿里云、腾讯云、华为云(市场份额大,技术成熟)
  • 不要选择小服务商(跑路风险高,安全保障差)
  • 优先选择支持安全防护产品的服务商(如云WAF、抗DDoS服务)

检查2:选择安全的操作系统

  • Linux发行版推荐:Ubuntu LTS、CentOS Stream、Debian(社区活跃,漏洞修复快)
  • 避免使用停止维护的旧版本(如CentOS 7将于2024年停止维护)
  • 生产环境尽量使用LTS(长期支持)版本

检查3:选择合适的实例规格

  • 有攻击风险的业务选择带”安全加固”或”主机安全”功能的实例
  • 重要业务选择独立IP,避免共享IP被牵连
  • 开启云服务商的安全组(防火墙)功能

二、账号与权限安全

检查4:禁用root远程登录

root是Linux的最高权限账号,禁用root远程登录可以防止暴力破解。

# 编辑SSH配置文件
sudo vim /etc/ssh/sshd_config

# 修改以下配置
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes

# 重启SSH服务
sudo systemctl restart sshd

检查5:使用SSH密钥登录,禁止密码登录

# 在本地生成SSH密钥对
ssh-keygen -t ed25519 -C "your_email@example.com"

# 将公钥复制到服务器
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your_server_ip

生成密钥对后,禁用密码登录,彻底杜绝暴力破解。

检查6:创建普通用户,禁止直接用root操作

# 创建新用户
sudo adduser deploy

# 赋予sudo权限(仅在需要时使用)
sudo usermod -aG sudo deploy

检查7:最小化sudo权限

只给需要sudo的用户分配必要的权限,不要给ALL权限。

# 编辑sudoers文件(使用visudo)
sudo visudo

# 建议配置示例
deploy ALL=(ALL) /usr/bin/systemctl restart nginx
deploy ALL=(ALL) /usr/bin/systemctl reload nginx

检查8:设置强密码策略

# 安装密码复杂度工具
sudo apt install libpam-pwquality

# 编辑密码策略
sudo vim /etc/security/pwquality.conf
# minlen = 14(最小14位)
# dcredit = -1(至少1位数字)
# ucredit = -1(至少1位大写)
# lcredit = -1(至少1位小写)
# ocredit = -1(至少1位特殊字符)

三、网络安全配置

检查9:配置云安全组(防火墙)

  • 只开放必要的端口:SSH(22)、HTTP(80)、HTTPS(443)
  • SSH端口改为非标准端口(如22022)
  • 禁止所有来源的3389(RDP)、Telnet等高危端口入站
  • 数据库端口(MySQL 3306、Redis 6379)禁止公网访问

检查10:安装配置防火墙(UFW)

# Ubuntu/Debian
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22022/tcp  # 自定义SSH端口
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

检查11:安装Fail2ban防止暴力破解

# 安装
sudo apt install fail2ban

# 启用并启动
sudo systemctl enable fail2ban
sudo systemctl start fail2ban

Fail2ban会自动封禁短时间内多次登录失败的IP。

检查12:关闭不必要的服务

# 查看正在运行的服务
sudo systemctl list-units --type=service --state=running

# 停止并禁用不需要的服务
sudo systemctl stop [service_name]
sudo systemctl disable [service_name]

四、应用安全配置

检查13:保持系统软件更新

# Ubuntu/Debian
sudo apt update && sudo apt upgrade -y

# 设置自动安全更新
sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades

检查14:配置自动安全更新

# CentOS/RHEL
sudo yum install yum-cron
sudo systemctl enable yum-cron
sudo systemctl start yum-cron

检查15:Web服务器安全配置(Nginx示例)

# 隐藏Nginx版本号
server_tokens off;

# 禁用目录浏览
autoindex off;

# 启用HTTPS,禁用HTTP
return 301 https://$server_name$request_uri;

# 启用HSTS
add_header Strict-Transport-Security "max-age=31536000" always;

检查16:禁用PHP危险函数

# 编辑php.ini
disable_functions = exec,passthru,shell_exec,system,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source

检查17:安装Web应用防火墙(WAF)

  • 云服务商WAF:阿里云WAF、腾讯云WAF(云端防护,无需服务器安装)
  • 开源WAF:ModSecurity(可绑定Nginx/Apache)
  • 软件防护:云锁、安全狗

五、数据安全

检查18:定期备份

  • 数据库每日全量备份
  • 文件目录每周备份
  • 备份文件存放在与服务器独立的存储位置(同城灾备或异地备份)
  • 定期测试备份恢复流程

检查19:数据库安全配置

# MySQL安全配置
# 只允许本地连接
bind-address = 127.0.0.1

# 禁用LOCAL INFILE(防止读取本地文件)
local-infile = 0

# 设置强密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '强密码';

# 创建应用专用账号,限制权限
CREATE USER 'app'@'localhost' IDENTIFIED BY '密码';
GRANT SELECT, INSERT, UPDATE, DELETE ON app_db.* TO 'app'@'localhost';

检查20:使用密钥管理系统
敏感配置(数据库密码、API密钥)不要写在代码或配置文件中,使用密钥管理服务。

  • 阿里云KMS、腾讯云SSM
  • 或使用HashiCorp Vault

六、安全监控与日志

日志审计:

# 开启SSH登录日志
sudo vim /etc/ssh/sshd_config
LogLevel VERBOSE

# 查看最近登录记录
lastlog
last

安全监控工具推荐:

  • 云监控:阿里云云监控、腾讯云监控(免费,集成基础安全告警)
  • 主机安全:阿里云安骑士、腾讯云主机安全(检测木马、漏洞)
  • 异常登录告警:Fail2ban + 自定义脚本实现微信/短信告警

七、服务器被入侵后的应急响应

Step 1:立即隔离
将服务器断网或放入隔离安全组,防止继续被利用或横向渗透。

Step 2:排查入侵痕迹

# 查看异常登录
last
lastlog
w

# 查看异常进程
ps aux --sort=-%cpu | head
ps aux --sort=-%mem | head

# 查看异常网络连接
ss -tunapl
netstat -tunapl

Step 3:重置所有密码
系统密码、应用密码、数据库密码、SSH密钥全部重置。

Step 4:修复漏洞并恢复
找出入侵路径(通常通过漏洞或弱密码),修复后从备份恢复服务。

八、常见问题

Q:云服务器需要买防火墙吗?
A:基础防火墙(安全组)免费使用,够用。重要业务建议买云WAF,防护Web攻击。

Q:SSH端口改了还安全吗?
A:改端口只是”遮眼法”,不是真正的安全措施,但能减少大量自动化扫描攻击。

Q:服务器被DDoS攻击了怎么办?
A:云服务商都有DDoS防护服务,购买相应套餐可抵御大流量攻击。

Q:多久做一次安全检查?
A:建议每月一次基础检查(登录日志、端口扫描、漏洞扫描),重要业务每周一次。

总结

云服务器安全不是买一个”安全产品”就能解决的,而是需要在购买、配置、日常运维的每个环节都注意安全。20项检查清单核心:禁用root密码登录、用密钥认证、最小化端口暴露、保持更新、开启日志监控、定期备份。做好这几点,可以防范90%以上的常见攻击。

瀚煜云提供云服务器安全加固与运维服务,帮企业筑牢数字安全防线。

© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容