将 AWS 颁发的证书用于单实例 Elastic Beanstalk 应用程序

Posted

技术标签:

【中文标题】将 AWS 颁发的证书用于单实例 Elastic Beanstalk 应用程序【英文标题】:Use AWS issued certificate for single instance Elastic Beanstalk application 【发布时间】:2019-05-08 00:43:40 【问题描述】:

这是一个没有负载平衡器的应用程序 - 单个实例。正如我所做的那样,我找到并理解了有关如何在使用 Tomcat 时完成这项工作的文档。问题的症结在于解释是指应该使用的证书的私钥和公钥。 AWS 颁发的证书私钥和公钥存储在哪里?这是我目前发现的:

我浏览了所有文档,现在必须在 .ebextensions 中创建一些配置文件。那里没有问题。但是,我必须同时提供私钥和公钥。在示例代码中,私钥是 server.key,公钥是 server.crt。 我在 /etc/pki/tls 中找到了 cert.pem,在 /etc/pki/tls/certs 中找到了 ca-bundle.crt 和 ca-bundle.trust.crt。这些是我从 AWS 请求的证书的密钥吗? cert.pem 是私钥吗?我用 Nano 看过所有东西,但不太确定。其他两个文件是怎么回事? 根据文档,应该将私钥加载到 S3。如果 cert.pem 是私钥,我如何在登录后从命令行执行此操作,我应该将其保存为 server.key 吗? 我将不胜感激任何帮助。

【问题讨论】:

【参考方案1】:

SSL 证书包含三个组成部分:证书(您的站点唯一的公共)、链(公共,建立可追溯的信任链,对来自同一证书颁发机构的许多或所有证书通用,以及密钥(私有/秘密) )。

服务器不能使用没有密钥的证书。 Amazon Certificate Manager 不会向您公开密钥 - 仅向您公开证书和链 - 因此,因此,如果不使用负载均衡器或 CloudFront,则无法使用公共 ACM 证书。

当 ACM 证书与负载平衡器或 CloudFront 一起使用时,私钥会通过内部通道从 ACM 提供给平衡器或 CloudFront 前端。

【讨论】:

谢谢。似乎使用 Web 应用程序的方法是负载均衡器。

以上是关于将 AWS 颁发的证书用于单实例 Elastic Beanstalk 应用程序的主要内容,如果未能解决你的问题,请参考以下文章

将 AWS Certificate Manager(ACM 证书)与 Elastic Beanstalk 一起使用

在 AWS Elastic Beanstalk 上安装通配符 SSL 证书

在 AWS EBS 单实例 (Tomcat) 上安装 SSL 证书

cloudflare颁发免费的ssl证书导入到aws

测试 AWS Elastic Beanstalk 扩展

AWS Elastic Beanstalk - 增加实例磁盘容量