今天我想展示如何在 OpenResty Edge 中为你的 HTTPS 应用上传你自己的 SSL 证书。

嵌入图片

像往常一样,让我们进入 OpenResty Edge 的 Admin Web 控制台。这是我们控制台的样本部署。每个用户都有自己的本地部署。

这一次,我们继续使用 test-edge.com 域名的应用作为例子。

屏幕截图

我们可以看到它已经为 SSL 在 443 端口上进行监听了。

屏幕截图

让我们进入这个应用。

屏幕截图

进入 SSL 页面。

屏幕截图

目前还没有添加 SSL 证书。

屏幕截图

让我们添加一个新的证书。

屏幕截图

我们支持各种添加新 SSL 证书的方式,包括 Let’s Encrypt。

屏幕截图

这里我们只演示手动上传的方式。

屏幕截图

我们可以在这里复制和粘贴 PEM 格式的 SSL 私钥。

屏幕截图

也直接浏览本地文件系统并选择一个本地文件进行上传。

屏幕截图

并同时粘贴对应的 PEM 格式的 SSL 证书。

屏幕截图

同样,也可以直接浏览并上传一个本地证书文件。

屏幕截图

有时,CA 可能会提供一个单独的文件,其中包含中间信任的 CA 证书链。

屏幕截图

但更多的时候,证书链已经包含在这里的服务器证书文件中。

屏幕截图

在这个例子中,我们把它留空,因为我们没有这个单独的文件。

屏幕截图

保存我们的证书和密钥对。

屏幕截图

可以看到新创建的证书和配对密钥的记录了。

屏幕截图

证书来源是手动上传。

屏幕截图

证书是对应这个单一的域名的,test-edge.com

屏幕截图

它将在大约一年后到期。

屏幕截图

我们可以通过将鼠标悬停在上面看到确切的过期时间。

屏幕截图

现有的证书是可以编辑的。

屏幕截图

我们在这里不做任何修改。

屏幕截图

这个证书也是可以删除的。

屏幕截图

现在我们还不想删除它。

屏幕截图

但可以禁用它。

屏幕截图

像往常一样,我们需要发布新的配置来推送我们的新证书。

屏幕截图

点击这个按钮。

屏幕截图

发布!

屏幕截图

完成了!

屏幕截图

现在,新的证书已经被推送到所有的网关集群和服务器上。

屏幕截图

我们的配置变化不需要服务器重载、重启或二进制升级。所以它是非常有效和可扩展的。

嵌入图片

然后,我们可以用一个网关集群服务器来测试我们的新证书。

屏幕截图

在旧金山附近选择一个网关服务器。

屏幕截图

复制它的公共 IP 地址,以 133 结尾。

屏幕截图

在终端上,我们可以向这个网关服务器发送一个 HTTPS 请求。

1
curl -I --resolve 'test-edge.com:443:138.68.231.133' https://test-edge.com/

screenshot 2

成功了!

还可以使用 -v 选项检查更多细节,比如证书信息。

1
curl -I --resolve 'test-edge.com:443:138.68.231.133' https://test-edge.com/ -v 2>&1 | less -n

确实可以看到我们的服务器证书。

截图 4

SSL 证书的上传也可以通过 OpenResty Edge 的 REST API 自动进行。我们将在另一个视频中演示。

截图 6

这就是我今天想讲的内容。

如果你喜欢这个教程,请订阅这个博客网站和我们的 YouTube 频道B 站频道。谢谢!

关于本文和关联视频

本文和相关联的视频都是完全由我们的 OpenResty Demo 系统从一个极简单的剧本文件自动生成的。

关于作者

章亦春是开源项目 OpenResty® 的创始人,同时也是 OpenResty Inc. 公司的创始人和 CEO。他贡献了许多 Nginx 的第三方模块,相当多 Nginx 和 LuaJIT 核心补丁,并且设计了 OpenResty EdgeOpenResty XRay 等产品。

关注我们

如果您喜欢本文,欢迎关注我们 OpenResty Inc. 公司的博客网站 。也欢迎扫码关注我们的微信公众号:

我们的微信公众号

翻译

我们提供了英文版原文和中译版(本文) 。我们也欢迎读者提供其他语言的翻译版本,只要是全文翻译不带省略,我们都将会考虑采用,非常感谢!