Ssl 如何生成证书签名请求(CSR)以在GKE中设置TLS

Ssl 如何生成证书签名请求(CSR)以在GKE中设置TLS,ssl,https,kubernetes,google-kubernetes-engine,Ssl,Https,Kubernetes,Google Kubernetes Engine,我在GKE中运行一个服务,并且有一个设置LTS的入口。 我已经尝试使用我的自签名证书,我可以通过https协议访问我的站点。看起来不错。 请注意,我有一个静态IP入口和一个域名为它已经 但现在我要创建一个真正的证书,并尝试创建一个CSR并将其发送给CA,但在阅读了这些帖子后,我感到非常困惑: 我有一些问题: 吊舱的DNS、吊舱的Ip和服务的Ip是什么 我必须为pod和服务创建DNS吗 我可以从本地PC生成*.csr文件吗 如果我遵循此链接中的步骤,是否可以创建服务器证书身份验证 我只想制

我在GKE中运行一个服务,并且有一个设置LTS的入口。 我已经尝试使用我的自签名证书,我可以通过https协议访问我的站点。看起来不错。 请注意,我有一个静态IP入口和一个域名为它已经

但现在我要创建一个真正的证书,并尝试创建一个CSR并将其发送给CA,但在阅读了这些帖子后,我感到非常困惑:

我有一些问题:

  • 吊舱的DNS、吊舱的Ip和服务的Ip是什么
  • 我必须为pod和服务创建DNS吗
  • 我可以从本地PC生成*.csr文件吗
  • 如果我遵循此链接中的步骤,是否可以创建服务器证书身份验证
我只想制作*.crt和*.key文件,以便在我的服务上设置https。(我读过一些关于让我们加密的博客文章,但我不想使用它)


感谢您的阅读。

让我们先看一下您的每个问题:

吊舱的DNS、吊舱的Ip和服务的Ip是什么

在集群中,每个pod都有自己的内部IP地址和DNS记录。服务也是如此。您可以阅读Kubernetes内的DNS,还可以阅读有关IP地址的更多信息

我必须为pod和服务创建DNS吗

在集群中使用时,它会自动为您处理。如果你想公开一个pod/服务并通过DNS记录从外部访问它,你必须在某个地方创建它,就像你为任何其他服务器/服务/任何东西创建它一样

我可以从本地PC生成*.csr文件吗

如果我遵循以下步骤,是否可以创建服务器证书身份验证


当涉及到GKE和Ingress时,可以用两种不同的方式处理证书。您只需向项目中添加一个证书,并告诉入口控制器使用它即可。您可以找到关于如何执行此操作的精彩描述,这是在控制台中创建证书的页面。本页还向您展示了如何通过使用机密来实现此目的,不过我个人更喜欢使用作为我项目一部分的证书来增加可见性。

您可以尝试使用cert manager,这将帮助您为您的服务提供SSL证书。是否可以回答“我可以从本地PC生成*.csr文件”的问题?顺便说一句,如果人们发现GKE入口和SSL配置“毫不费力”,就不会有那么多开发人员询问如何做到这一点嘿!哎呀,我不是故意装出居高临下的样子,对不起!请给我一秒钟时间回答你的问题。据我所知,没有办法向Kubernetes的CA提交CSR,你必须通过其他方法创建一个证书,并使用我在帖子中描述的方法来使用该证书。此外,我更改了原始帖子的措辞,以免听起来有屈尊俯就的味道,谢谢你指出这一点!最后一件事:由集群CA生成的证书在公开时不会被pod使用,它们将使用您在pod的YAML中配置的任何证书。这意味着让集群的CA签署一个证书以供公开的服务使用是不必要的:只需在别处生成一个证书并告诉pod/服务/任何人使用该证书即可。所以简单地回答你的问题:你可以在你的电脑上创建CSR,但你不能将CSR提交给GKE的主人。将该CSR提交给实际的CA,并使用生成的证书公开内容。