我正在学习这教程,并调整与我的项目相关的芹菜背景代码。
在我的例子中,我是在Docker环境中操作的,并且我有一个安全的站点(即https://localhost),它需要安全的ssl通信。
这里中的文档展示了如何提供与证书相关的文件(keyfile、certfile、ca_certs)的示例。
但对我来说,首先不清楚如何创建这些文件。
这里教程展示了如何创建自定义证书颁发机构,以及如何使用它对证书进行签名。
我按照步骤创建了以下3个文件:
请注意,我创建了这3个文件,完全与芹菜、Redis或Docker无关。它们是在码头外我的本地机器上创建的。这些文件没有Redis容器的名称,证书中的公共名称被设置为"foo“
当我在我的webapp中使用这些文件时,从芹菜到Redis没有任何联系。
如果没有ssl,我确实会得到一个连接,所以除了ssl以外的整个环境都是可以的--请参阅这里
是否有创建证书相关文件的特定要求?(例如,证书中的通用名称是否具有容器名称"redis“等).)
是否有一种方法可以在没有应用程序的情况下测试证书的有效性,例如从容器外壳发出命令?
谢谢
发布于 2020-02-18 04:30:46
发布于 2020-02-16 10:12:06
是的,证书逗号应该与主机名相匹配,并且证书的颁发者也应该受到客户端的信任。
在您的情况下,由于使用自定义CA并生成证书,CA的公共证书应该位于客户端的受信任根中。
此外,证书应该颁发给主机名,在您的情况下,它将是本地主机。请注意,如果您使用fqdn或Up浏览器从远程计算机访问站点,则会将警报标记为无效。
此外,要验证证书,可以使用OpenSSL验证选项。
https://stackoverflow.com/questions/60246465
复制相似问题