SSL/TLS证书申请及使用方法
利用 Amazon Certificate Manager(ACM)服务,快速申请免费的公有证书
前言
SSL/TLS 证书广泛用于保护网络通信的安全,包括加密通信双方的消息内容,以及确认网站的合法身份等。以前,您可能需要支付高昂的费用来购买SSL证书,或者使用一些有效期很短的免费证书,此外,还不得不花精力来维护证书的续订、轮换等。现在,您可以利用 Amazon Certificate Manager(ACM)服务,来快速申请免费的公有证书,并在 云上资源 (如 Elastic Load Balancer、Amazon CloudFront 和 API Gateway)上部署该证书,证书续订操作也可以放心交给 ACM 帮您自动处理。
本教程会首先介绍ACM公有证书的申请方法,然后分别以Amazon Application Load Balancer(ALB),Amazon CloudFront, Amazon API Gateway 为例,指导如何配置ACM公有证书。
关于本教程 | |
预计部署时间 | 10分钟 |
费用 | 免费 |
主题 | 免费SSL/TLS证书 |
受众 | 所有人 |
级别 | 初级 |
相关产品 | Amazon Certificate Manager |
相关行业 | 通用 |
上次更新时间 | 2021年10月 |
准备工作
您需要确定自己将会使用ALB,CloudFront,Amazon API Gateway中的至少其中一项服务,且您需要拥有一个域名或者有配置域名解析记录的权限,否则,您需要申请一个域名。以下操作以Amazon Route 53(Amazon的域名服务) 为例。
-
第一步 - 确认区域
对于ALB或者Amazon API Gateway服务,您需要选择在与之相同的区域来申请ACM证书;如果您使用的是海外区域Amazon CloudFront,则需要将证书配置在弗吉尼亚北部区域(us-east-1)。您可以在页面右上角确认当前所处区域。
-
第二步 - 申请证书
2.1 打开ACM服务控制台
在 Service 下拉框中,选择 “Security, Identity, & Compliance” > “Certificate Manager”
2.2 在证书管理页面,点击请求证书
选择请求公有证书,
2.3 添加域名
您可以添加通配符域名,比如*.example.com, 这样对于同一个顶级的多个二级域名,可以使用同一个ACM公有证书,而不需要多次申请。
2.4 选择验证方式
如果您的域名托管在Route 53,则建议您使用DNS验证,并在验证页面,点击在Route 53中创建记录。否则,您可以按照页面提示,任意验证方式。
一直点击下一步,直到“步骤5:验证”页面,
2.5 配置成功后,过一会后即可查看状态为已颁发。
-
选项一 - 在ALB上启用HTTPS并配置ACM公有证书
- 找到ALB,并选择添加侦听器。
- 选择HTTPS协议,端口默认443并添加转发。
- 选择默认安全策略。
- 选择刚才创建的SSL证书,并保存。
5. 接下来您就可以使用HTTPS协议访问域名,测试是否配置成功。
-
选项二 - 在Amazon CloudFront上启用HTTPS并配置ACM公有证书
海外区域的配置方法如下:
在CloudFront上配置ACM公有证书需要在弗吉尼亚北部区域(us-east-1)预置ACM公有证书。
- 创建DNS记录,域名指向CloudFront域名。
- 编辑CloudFront分配。
- 在备用域名部分输入域名,并选择刚才之前创建的自定义SSL证书。
中国区域的配置方法:
如果您使用的是中国区域,则需要先申请第三方证书,然后上传到Amazon Identity & Access Management(IAM)服务中,以下步骤展示上传证书的方法。
首先,进入CloudFront的编辑页面,然后选择 Custom SSL Certificate,点击Upload a Certificate to IAM 。
然后在证书下拉框中选择上传完成的证书即可。
-
选项三 - 在Amazon API Gateway上启用HTTPS并配置ACM公有证书
您需要使用HTTP API 或者REST API的自定义域名,本文以HTTP API为例。这里,我们假定您已经部署好API Gateway并且可以正常访问,如 test API。
a) 选择自定义域名,点击创建,
b) 填入域名,创建区域性域名以及选择刚才创建的ACM证书,然后点击创建域名
c) 创建完成后,点击 API映射,点击 配置API映射,
d) 点击 添加新映射,API选择之前部署的API Gateway,选择阶段、路径,然后点击保存,
映射配置完成,
e) 观察域名详细信息,记录下API Gateway 域名,
f) 添加DNS记录,将自定义域名解析到刚才记录的API Gateway域名,
至此,您就可以在域名解析生效后,使用自定义域名访问API Gateway了。
-
小结
本教程介绍了ACM证书的申请方法,并展示了将证书绑定到Amazon Application Load Balancer(ALB),Amazon CloudFront, Amazon API Gateway 的方法。借助ACM公有证书,您可以免于手动维护证书的更新等操作,有效降低运维复杂度,并提高网站的安全性。
参考文档
API Gateway自定义域名:https://docs.aws.amazon.com/zh_cn/apigateway/latest/developerguide/how-to-custom-domains.html#custom-domain-names-certificates
Amazon Certificate Manager:https://docs.aws.amazon.com/acm/latest/userguide/acm-overview.html
创建 ALB:https://docs.aws.amazon.com/elasticloadbalancing/latest/application/create-application-load-balancer.html#configure-security-settings
CloudFront介绍:https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Introduction.html
ACM介绍:https://docs.amazonaws.cn/en_us/aws/latest/userguide/acm.html