在阿里云 ECS 上使用 Debian 系统时,安全配置需要结合 操作系统层面 和 云平台层面 进行双重防护。以下是关键的安全配置建议,按优先级排序:
一、云平台层面(阿里云控制台)
1. 安全组规则最小化
- 仅开放必要端口(如 SSH:22、HTTP:80、HTTPS:443)。
- 禁止
0.0.0.0/0对所有端口的访问,尤其是对数据库(MySQL:3306、Redis:6379等)。 - 使用自定义源 IP 限制 SSH 访问(如仅允许公司 IP 或跳板机 IP)。
2. 启用云盾安骑士(基础版免费)
- 提供主机入侵检测、漏洞扫描、基线检查等功能。
- 开启“高危端口暴露告警”、“暴力破解防护”等模块。
3. 快照与备份策略
- 定期创建系统盘和数据盘快照,防止误操作或勒索软件攻击。
- 启用自动快照策略(建议在低峰期执行)。
4. RAM 权限最小化
- 不使用阿里云主账号管理 ECS。
- 为运维人员创建 RAM 用户,分配最小必要权限(如
AliyunECSReadOnlyAccess+AliyunECSFullAccess按需)。
5. 关闭不必要的元数据服务暴露(可选高级)
- 如果不需要实例内获取元数据,可禁用 IMDS(Instance Metadata Service),防止 SSRF 攻击。
二、操作系统层面(Debian)
1. 更新系统与软件包
sudo apt update && sudo apt upgrade -y
sudo apt install unattended-upgrades -y
# 启用自动安全更新
sudo dpkg-reconfigure unattended-upgrades
2. 强化 SSH 配置
编辑 /etc/ssh/sshd_config:
PermitRootLogin no # 禁止 root 直接登录
PasswordAuthentication no # 禁用密码登录,改用密钥
PubkeyAuthentication yes # 启用公钥认证
AllowUsers your_username # 仅允许特定用户登录
X11Forwarding no # 禁用 X11 转发
Protocol 2 # 确保使用 SSHv2
重启 SSH 服务:
sudo systemctl restart sshd
✅ 务必提前配置好 SSH 密钥并测试登录,避免锁死自己!
3. 配置防火墙(UFW 或 iptables)
推荐使用 UFW(简单直观):
sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow ssh from <your_ip>/32 # 仅允许你的 IP 访问 SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable
sudo ufw status verbose
4. 禁用无用服务
systemctl list-unit-files --type=service --state=enabled
# 关闭不需要的服务,如:
sudo systemctl disable bluetooth.service
sudo systemctl disable cups.service
sudo systemctl disable avahi-daemon.service
5. 配置 fail2ban 防暴力破解
sudo apt install fail2ban -y
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# 编辑 jail.local 启用 sshd 防护
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
6. 文件系统权限加固
- 设置关键文件权限:
sudo chmod 600 /etc/shadow sudo chmod 644 /etc/passwd sudo chown root:root /etc/ssh/sshd_config sudo chmod 600 /etc/ssh/sshd_config - 启用审计日志(可选):
sudo apt install auditd -y sudo systemctl enable auditd
7. 内核参数优化(sysctl)
编辑 /etc/sysctl.conf 添加:
net.ipv4.tcp_syncookies = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.all.send_redirects = 0
net.ipv4.conf.all.accept_source_route = 0
kernel.randomize_va_space = 2
生效:
sudo sysctl -p
8. 禁用 core dumps(防止敏感信息泄露)
编辑 /etc/security/limits.conf:
* soft core 0
* hard core 0
9. 定期清理日志与监控
- 配置 logrotate 防止日志爆盘。
- 安装并配置
fail2ban、auditd或第三方 SIEM 工具集中收集日志。
三、应用层安全建议
- 运行 Web 服务时使用非 root 用户(如
www-data)。 - 所有依赖组件保持最新(Node.js、Python、Java 等)。
- 使用 WAF(如阿里云 Web 应用防火墙)防护常见 Web 攻击(SQLi、XSS 等)。
- 数据库不要绑定到
0.0.0.0,仅限本地或内网访问。
四、推荐工具清单
| 类别 | 工具/服务 |
|---|---|
| 云平台 | 阿里云安骑士、安全组、RAM |
| 主机加固 | UFW、fail2ban、auditd |
| 漏洞扫描 | OpenVAS、Nessus、云盾漏洞扫描 |
| 日志监控 | ELK Stack、Graylog、云日志服务 |
| 备份 | 快照、rsync、borgbackup |
五、验证安全配置
- 使用
lynis audit system进行主机安全审计:sudo apt install lynis -y sudo lynis audit system - 使用
nmap从外部扫描开放端口,确认无意外暴露:nmap -sV <your_ecs_ip>
✅ 总结原则:最小权限、纵深防御、持续监控、及时更新。
将云平台安全能力与 Debian 系统加固结合,才能构建真正安全的 ECS 环境。
云服务器