对外开放清单是什么
公网服务器的端口开放可以收敛成一张最小清单:80 与 443 面向公众,22 与 3389 只对管理来源开放,数据库与中间件端口一律只在内网可达。清单的价值在于把「想开什么开什么」变成「按清单开」,并让每一次例外都有记录和期限。
端口暴露原则
| 端口 | 服务 | 暴露原则 |
|---|---|---|
| 80/443 | Web/HTTPS | 可对公网开放 |
| 22 | SSH | 仅堡垒机或办公网段 |
| 3389 | RDP | 仅 VPN 或堡垒机 |
| 3306/5432 | MySQL/PostgreSQL | 仅应用安全组 |
| 6379 | Redis | 仅应用安全组并启用认证 |
| 9200/5601 | ES/Kibana | 仅内网并启用认证 |
| 27017 | MongoDB | 仅应用安全组并启用认证 |
基本信息
| 核心原则 | 入方向默认拒绝,只按清单放行必需端口 |
|---|---|
| 来源写法 | 优先写安全组 ID,其次办公网段,最后才考虑 0.0.0.0/0 |
| 例外管理 | 临时开放的端口必须有责任人与到期时间 |
| 审计口径 | 定期导出全部 0.0.0.0/0 放行记录逐条复核 |
| 常见误区 | 以为改了端口就安全,实际只是减少扫描噪音 |
典型使用场景
- 新服务器上线:按清单一次性配好,不留「后面再收」的尾巴
- 安全自查:导出所有对公网开放的端口,确认每一条都有业务理由
- 临时调试:开放端口时同时约定关闭时间,到期未说明的一律回收
- 渗透测试前:先自查暴露面,避免被测出低级问题
- 多云统一:三个云账号用同一份端口清单,避免某一家被遗忘
公网暴露面审计
公网暴露面审计
aliyun ecs DescribeSecurityGroups --RegionId cn-hangzhou --PageSize 50
# 先拿到全部安全组 ID,再逐个拉规则
aliyun ecs DescribeSecurityGroupAttribute --RegionId cn-hangzhou \
--SecurityGroupId sg-xxxx
# 关注 SourceCidrIp=0.0.0.0/0 的入方向项,逐条确认业务必要性
# 数据库与中间件端口若出现在公网放行列表里,优先处理定期导出所有安全组中来源为 0.0.0.0/0 的放行记录做审计,这是最有效的暴露面自查方式:多数事故不是被打穿,而是本来就没关的门。
只开必要端口并不等于安全:仍需配合密钥认证、数据库强密码与最小权限账号。端口收敛是第一道门,不是唯一一道。