AWS提供了一项新服务AWS Certificate Manager。我从描述中得到的一件事是,如果我们正在使用此服务,则不必再为证书付费。
他们正在为Elastic Load Balancer(ELB)和CloudFront提供证书,但是我在任何地方都找不到EC2。
有什么方法可以在EC2中使用证书?
AWS提供了一项新服务AWS Certificate Manager。我从描述中得到的一件事是,如果我们正在使用此服务,则不必再为证书付费。
他们正在为Elastic Load Balancer(ELB)和CloudFront提供证书,但是我在任何地方都找不到EC2。
有什么方法可以在EC2中使用证书?
Answers:
问:我可以在Amazon EC2实例或自己的服务器上使用证书吗?
否。目前,ACM提供的证书只能与特定的AWS服务一起使用。
问:我可以与哪些AWS服务一起使用ACM提供的证书?
您可以将ACM与以下AWS服务一起使用:
•弹性负载平衡
•Amazon CloudFront
•AWS Elastic Beanstalk
•Amazon API网关
您无法在无法直接访问底层资源的资源(例如EC2或AWS外部的服务器)上安装由Amazon Certificate Manager(ACM)创建的证书,因为没有向您提供对私钥的访问权限。这些证书只能部署在由AWS基础架构管理的资源(ELB和CloudFront)上,因为AWS基础架构仅保留其生成的证书的私钥副本,并通过可审核的内部访问控制将其保持在严格的安全性之下。
为了将这些证书用于来自EC2的内容,您必须让EC2机器在CloudFront或ELB后面侦听(或两者都可以级联),因为您不能直接在EC2机器上安装这些证书。
*.amazonaws.com
主机名的Let's Encrypt证书,因为足够明智地,Let's Encrypt策略不允许这样做……但是对于您控制的指向EC2实例IP,ELB或CloudFront的域,您绝对可以像其他任何地方一样使用Let's Encrypt。
如果您仅将AWS ACM证书用于内部目的,则可以使用AWS ACM私有CA颁发证书(我认为您也可以将其用于公共/外部流量目的,如果您的根CA是公共信任的CA)。
https://docs.aws.amazon.com/acm-pca/latest/userguide/PcaGetStarted.html
在Application / EC2 / Container启动期间,设置一个步骤以将您的ACM私有CA颁发的Cert / Private密钥导出到您的目的地,并开始引用它来服务流量。
https://docs.aws.amazon.com/cli/latest/reference/acm/export-certificate.html
一件好事是,您可以控制谁可以使用IAM Role调用导出证书功能,因此并非所有人都可以下载证书的私钥。
这样做的一个缺点是,私有CA是昂贵的AWS服务(每月400美元)。 https://aws.amazon.com/certificate-manager/pricing/
One downside with this is, private CA is expensive AWS service($400/month).
在顶部写粗体,例如,如果我第二次没有阅读此答案,我会错过它
添加到上面的评论中,您不能为此使用AWS Certificate Manager,但是您可以在运行IIS的Windows服务器上将Let's Encrypt证书添加到ec2,这很简单:
将弹性IP与您的ec2实例相关联。
确保您已注册域名。您不能使用实例随附的ec2----------.us-east-1.compute.amazonaws.com类型名称。
通过域提供商的DNS设置,可以将域指向弹性IP。
连接到您的ec2实例,并将您的域名添加到站点绑定中。
在资产下查找,并使用最新版本(例如,win-acme.v2.0.10.444.zip)。这是您唯一需要的资产文件夹。
解压缩文件夹,以管理员身份打开终端,然后CD进入解压缩的文件夹。
运行wacs.exe并按照提示进行操作。
确保分配给实例的安全组允许通过您在IIS中选择的HTTPS端口进行通信(至少是您自己的IP);默认情况下是端口443。
当我弄清楚这一点时,我发现下面的链接很有帮助。如果您需要更多帮助,以下是使用早期版本的视频,但这是相同的想法。
https://www.youtube.com/watch?v=fq5OUOjumuM
此外,本文可能会有所帮助:
https://weblog.west-wind.com/posts/2016/feb/22/using-lets-encrypt-with-iis-on-windows