如何在GoDaddy配置AWS DNS验证,实现域名SSL及EC2跳转?
一步步实现domain.com到EC2的安全访问与重定向
我明白你现在被各种DNS记录和配置步骤搞晕了,咱们一步步拆解,先理清核心概念,再搞定证书验证和重定向配置:
先搞懂你困惑的几个核心概念
- A记录:把域名(比如
domain.com)直接绑定到一个IPv4地址(比如你的EC2公网IP)。优点是直接,缺点是如果EC2的IP变了(比如重启实例换了公网IP),你得手动更新这条记录。 - CNAME记录:把域名(比如
www.domain.com)绑定到另一个域名(比如AWS CloudFront的分发域名、负载均衡的DNS名称),相当于域名的"别名"。注意:根域名(domain.com)大部分服务商不支持CNAME,得用特殊的ALIAS/ANAME记录(GoDaddy支持ALIAS记录)。 - 安全重定向:用户访问
http://domain.com时,自动跳转到https://domain.com,确保所有流量都通过加密的HTTPS传输,这需要SSL证书配合。
第一步:完成AWS ACM证书的DNS验证(你当前在做的步骤)
AWS的免费SSL证书(ACM)需要DNS验证,你需要在GoDaddy添加ACM生成的CNAME记录,步骤如下:
- 登录AWS控制台,进入Certificate Manager(ACM),申请一张包含
domain.com和www.domain.com的证书(确保选择的区域是us-east-1,因为后续如果用CloudFront的话必须用这个区域的证书)。 - 选择DNS验证,AWS会为每个域名生成一组CNAME记录(包含「名称」和「值」),比如:
- 名称:
_abc123.domain.com - 值:
_def456.awsdns-77.com
- 名称:
- 登录GoDaddy域名管理后台,找到你的
domain.com的DNS设置:- 点击「添加记录」,类型选
CNAME。 - 「主机」栏填ACM给你的「名称」(注意:如果GoDaddy自动补全域名后缀,只需要填
_abc123就行,不用加.domain.com)。 - 「指向」栏填ACM给你的「值」。
- TTL选默认的300秒就行。
- 点击「添加记录」,类型选
- 保存记录后,等待AWS验证,一般10分钟到1小时就能完成(ACM控制台会显示验证状态)。
第二步:配置安全重定向到EC2
直接把域名指向EC2的话,没法直接用ACM证书(ACM证书不能下载到EC2实例),所以推荐用AWS的CloudFront或者Application Load Balancer(ALB)来中转,同时实现HTTPS和重定向:
方案一:用CloudFront(适合静态/动态应用,全球加速)
- 登录AWS控制台,进入CloudFront,创建新的分发:
- 「源域名」填你的EC2公网IP,或者EC2实例的公网DNS名称。
- 「源协议策略」选「HTTP和HTTPS」或者「仅HTTPS」(根据你的EC2配置)。
- 「查看协议策略」选「重定向HTTP到HTTPS」,这样自动实现安全重定向。
- 「自定义SSL证书」选择你刚才在ACM申请的证书(必须是us-east-1区域的)。
- 其他设置保持默认,创建分发。
- 回到GoDaddy的DNS设置:
- 对于
www.domain.com:添加CNAME记录,主机填www,指向CloudFront分发的域名(比如d1234567890.cloudfront.net)。 - 对于
domain.com:添加ALIAS记录(GoDaddy里叫「转发」或者「别名」),主机填@,指向CloudFront分发的域名。
- 对于
- 等待DNS生效(一般1-24小时),之后访问
http://domain.com就会自动跳转到https://domain.com,并转发到你的EC2实例。
方案二:用Application Load Balancer(ALB,适合多实例或复杂路由)
- 登录AWS控制台,进入EC2 -> 负载均衡器,创建ALB:
- 选择「应用负载均衡器」,设置监听端口:80(HTTP)和443(HTTPS)。
- 443端口关联你在ACM申请的证书。
- 把你的EC2实例添加到目标组里。
- 设置80端口的监听规则:将所有请求重定向到443端口(HTTPS)。
- 回到GoDaddy的DNS设置:
- 对于
domain.com:添加ALIAS记录,主机填@,指向ALB的DNS名称(比如my-alb-123456789.us-west-2.elb.amazonaws.com)。 - 对于
www.domain.com:添加CNAME记录,主机填www,指向ALB的DNS名称。
- 对于
- 等待DNS生效后,就能实现安全重定向到EC2了。
关键注意事项
- 如果你直接把A记录指向EC2公网IP,需要在EC2上安装SSL证书(比如Let's Encrypt的),但ACM证书不能直接用,所以不推荐这种方式,维护起来麻烦。
- 确保ACM证书覆盖了你需要的所有域名(比如
domain.com和www.domain.com),避免出现证书不匹配的错误。 - DNS记录生效需要时间,如果你配置后立刻访问没效果,多等一会儿或者用
nslookup domain.com检查记录是否生效。
内容的提问来源于stack exchange,提问作者MarAvFe
相关产品推荐
相关产品推荐

