amazon-web-services - 为 AWS Route 53 中的域托管区域获取 SSL 证书

标签 amazon-web-services ssl dns

问题的标题很啰嗦,但我正在尝试配置我在 AWS 上为我的域购买的 Go Daddy SSL 证书。我从 AWS 购买了域 myapp.com(不是真实名称),然后我将 myapp.myapp.com 配置为 Route 53 中的记录集以指向一个EC2 实例,它反过来运行实际的 Tomcat 服务器,我希望用户会访问它。换句话说,这是用于访问应用程序/网站的站点,我已确认它有效并且可以访问。

我从 Go Daddy 为 myapp.myapp.com 购买了 SSL 证书。我按照说明将根证书、中间证书和颁发的证书(总共 3 个)导入到我的 Java keystore 中。然后,我将我的 Tomcat server.xml 配置为使用这个 keystore 。如果这很重要,我不确定我是否正确地或以正确的顺序这样做了。无论如何,当我尝试点击地址时

https://myapp.myapp.com:8443/

我在 Chrome 上收到以下错误:

Your connection is not private
NET::ERR_CERT_AUTHORITY_INVALID

任何人都可以阐明我在这里可能做错了什么吗? GoDaddy 的客户支持虽然免费,但不提供这种级别的技术支持。我可以选择 AWS,但他们倾向于收取企业费率。

理想的答案至少应包括以下步骤:

  1. 如何将 Go Daddy 证书导入我的 Java keystone
  2. 如何正确配置 Tomcat server.xml 以使用 keystore
  3. 一路上进行健全性检查,其他有类似问题的人也可以使用

这是 Go Daddy 返回给我的三个证书:

c4c170b79c58acc3.crt  (root?)
gd_bundle-g2-g1.crt   (intermediate?)
gdig2.crt.pem         (primary/issued?)

我不确定这些证书中哪些是根证书、中间证书和颁发的证书,但是 this SO question会像我上面那样给它们贴上标签。

最佳答案

要为 spring boot 应用执行此操作,请执行以下操作:

sudo openssl pkcs12 -export -out cs.pkcs12 -inkey /path/to/domain.key -in /path/to/domain.cer -certfile /path/to/domain.ca-bundle -name server -passout somestorepass

sudo keytool -v -importkeystore -srckeystore cs.pkcs12 -srcstoretype PKCS12  -destkeystore keystore.jks -deststoretype JKS  -srcstorepass somestorepass -deststorepass somestorepass

application.properties

server.ssl.enabled=true
server.ssl.key-alias=server
server.ssl.key-password=somestorepass
server.ssl.key-store-type=JKS

如果你有 tomcat,前两个命令保持不变,你只需要将 tomcat 配置为使用正确的 alias 和正确的 keystore 密码。

看看 Connector配置tomcat配置别名、keystore密码、keystore等

编辑: 建议您在完成后删除中间文件(不是 JKS)。

关于amazon-web-services - 为 AWS Route 53 中的域托管区域获取 SSL 证书,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50159647/

相关文章:

linux - 通过 AWS 上的 EC2 启动 Ubuntu VM 并安装 icecast2

linux - AWS 中的备份和停用实例存储

amazon-web-services - DynamoDB 中相同分区键的数据分布

laravel - Firefox 强制开发域使用 SSL 和 Chrome

python - 如何使用存储在python字符串变量中的证书打开ssl套接字

dns - 在脱节的命名空间中使用 Kerberos 进行身份验证

amazon-web-services - 向 EMR 提交 spark 作业时找不到文件异常

PERL Get_Server_Certificate 证书验证失败错误

windows - 内部网站的url结构

dns - 我可以在不同的托管区域中有一个 route53 子域吗?