![我可以在 CDN 和源站上使用相同的 SSL 证书吗?](https://linux22.com/image/680828/%E6%88%91%E5%8F%AF%E4%BB%A5%E5%9C%A8%20CDN%20%E5%92%8C%E6%BA%90%E7%AB%99%E4%B8%8A%E4%BD%BF%E7%94%A8%E7%9B%B8%E5%90%8C%E7%9A%84%20SSL%20%E8%AF%81%E4%B9%A6%E5%90%97%EF%BC%9F.png)
这是一个非常简单的问题,我有一个由 DigiCert 颁发的证书,已经在我的原点安装了它,并且我想将它用于 CDN。
我开始在我的原点前面配置 Akamai CDN,但他们说他们会为我购买一个证书以便安装在他们的节点上,我想知道为什么他们不使用与我相同的证书。
我在 CloudFlare 上找到了一个上传我自己的证书的选项,但是我还没有测试它,所以我不确定它是否可以在那里工作。
是否有人使用过这两种 CDN,或者能从技术上解释一下为什么这真的不可能吗?
答案1
我使用另一个 CDN (CloudFront),并且我在 CDN 和源上都拥有相同的证书。我假设 Akamai 还将 HOST 标头转发到源,因此只要这与您的证书匹配,您就没问题。
我假设您需要进行如下设置:
- 确保指向您的 CDN 的 DNS 记录与您在 Akamai 中配置的证书匹配。
- Akamai 会将请求转发到您的原点,同时保留 HOST 标头。
- 您的源将使用已配置的 SSL 证书验证 HOST 标头。
答案2
大多数使用 CDN 的网站都使用子域名(例如 cdn.yourwebsite.com)来交付静态资产。这意味着,为了通过 SSL 交付 CDN 资产,您需要“cdn”子域名的证书。
如果您已经在源站安装了 SSL 证书,则它可能对 yourwebsite.com 和 www.yourwebsite.com 有效,但不对 cdn.yourwebsite.com 有效。
因此您有以下几种选择:
- 为 cdn.yourwebsite.com 购买 SSL 证书
- 购买对 *.yourwebsite.com 有效的通配符证书
- 使用支持 Lets Encrypt 的 CDN 并为您的“cdn”子域提供免费的 SSL 证书。
我建议你看一下cdn比较了解有关流行 CDN 提供商之间存在的差异的更多信息。
答案3
Akamai 有一个奇怪的证书配置系统 (CPS),它可能非常混乱。他们不允许您上传证书给他们。但是,您可以反向操作,在 Akamai CPS 中创建 CSR(作为第三方证书),将其带到您的 CA,在 Akamai 中完成,然后将该证书导入您的原点。
注意:完成 CSR 时,您必须确保顺序正确,否则该请求将无效,您必须获取另一个证书。