本页由 AI 工具参考代码编写,尚未经过人工审核,内容仅供参考。如果无法解决问题或需要协助部署,可邮箱联系:kuohu233@qq.com
配置 ESA 全站加速与安全防护
概述
阿里云 ESA(Edge Security Acceleration,边缘安全加速)是企业级全站加速与安全防护产品,集成了 CDN 加速、WAF(Web 应用防火墙)、DDoS 防护、SSL 证书管理等功能。相比 Cloudflare 免费版,ESA 提供更低的中国大陆访问延迟和更丰富的安全规则。
与 Cloudflare 的区别
💡 如果你的用户都在中国大陆,强烈推荐使用 ESA。如果用户主要在海外,Cloudflare 免费版也是不错的选择。
你需要准备
- 阿里云账号(已实名认证)
- 一个已备案的域名(中国大陆服务器要求备案)
- 已部署后端函数计算和前端管理端
步骤
1. 开通 ESA 服务
- 登录 阿里云 ESA 控制台
- 首次使用按提示开通服务
- 选择合适的套餐(按量付费或包年包月)
2. 添加站点
- 点击「添加站点」
- 输入你的域名,如
your-domain.com - 选择加速区域(建议选择「中国大陆」或「全球」)
- 完成添加
3. 修改 DNS 服务器(如需 ESA 托管 DNS)
如果使用 ESA 托管 DNS,需要将域名的 DNS 服务器修改为 ESA 提供的地址:
- ESA 会提供两组 DNS 服务器地址
- 到你的域名注册商处,修改 DNS 服务器为 ESA 提供的地址
- 等待 DNS 生效(通常几分钟到几小时)
💡 也可以不修改 DNS 服务器,仅使用 ESA 的加速和安全功能。此时需要在现有 DNS 服务商(如 Cloudflare)处将记录指向 ESA。
4. 配置 DNS 记录
在 ESA 控制台的「DNS 记录」中添加以下记录:
5. 配置 SSL 证书
ESA 会自动为你的域名申请免费的 SSL 证书:
- 进入「SSL/TLS」设置
- 选择加密模式:
- 严格:要求源站也有有效证书(推荐生产环境)
- 灵活:ESA 到客户端加密,ESA 到源站 HTTP(仅开发测试推荐)
- 确认证书状态为「已生效」
💡 ESA 默认使用阿里云免费证书,也支持上传自有证书。
6. 配置 WAF 规则
WAF(Web 应用防火墙)可以防御 SQL 注入、XSS、CSRF 等常见 Web 攻击:
-
进入「安全防护」→「WAF」
-
开启「基础防护规则」
-
选择防护级别:
- 严格:拦截所有可疑请求(安全性最高,可能有误拦截)
- 中等:拦截高风险请求(推荐)
- 宽松:仅拦截明确攻击(安全性较低)
-
添加自定义规则(可选):
💡 WAF 规则配置需要根据实际业务调整。建议先用「中等」级别运行一周,根据误拦截情况微调。
7. 配置速率限制
速率限制可以防止单个 IP 过度调用导致资源耗尽:
- 进入「安全防护」→「速率限制」
- 创建规则:
- 对于不同的接口路径,可以设置不同的限制:
- 课表查询:高频接口,可设置较高阈值
- 配置修改:低频接口,可设置较低阈值
8. 配置 DDoS 防护
ESA 默认提供 DDoS 防护能力,无需额外配置。ESA 的 DDoS 防护包括:
- 网络层 DDoS 防护:自动清洗 TCP/UDP 洪水攻击
- 应用层 DDoS 防护:结合 WAF 和速率限制,防御 HTTP 洪水攻击
- CC 攻击防护:智能识别恶意爬虫和 CC 攻击
💡 ESA 的 DDoS 防护能力与套餐等级相关。如果业务对外暴露且重要性高,建议选择较高等级的套餐。
9. 配置缓存规则(可选)
ESA 可以对静态资源进行缓存加速:
- 进入「加速」→「缓存配置」
- 添加缓存规则:
10. 验证
完成配置后,验证 ESA 是否生效:
- 在浏览器访问
https://api.your-domain.com/ - 检查响应头中是否包含 ESA 相关的头信息(如
Server: AliyunESA) - 测试 WAF 防护:尝试在 URL 中传入简单的 SQL 注入测试字符串,观察是否被拦截
成本参考
ESA 费用取决于套餐等级和流量:
💡 如果成本敏感,可以考虑先用 Cloudflare 免费版替代 ESA。但请注意 Cloudflare 在中国大陆的访问速度可能较慢。