我正在尝试将SSL应用于我的Kubernetes群集(生产&登台环境),但目前只在登台上。我成功安装了证书管理器,由于我有5个子域,我想使用通配符,所以我想用dns01配置它。问题是,我们使用GoDaddy进行DNS管理,但目前尚不支持(我想)通过cert-manager。有一个问题(https://github.com/jetstack/cert-manager/issues/1083)以及支持此的PR,但我想知道是否有一个变通办法,这是使用godaddy与cert-manager,因为没有太多的活动在这个问题上?我想使用ACME,这样我就可以对证书使用Let's encrypt。
我对kubernetes还是个新手,所以如果我错过了什么,请告诉我。
除了ACME之外,是否可以使用let's encrypt来加密其他类型的发行者?是否有其他方法可以使用GoDaddy DNS和let's encrypt with kubernetes?
现在我没有任何入口,但只有2个面向外部的服务。一个前端和一个API网关作为负载均衡器服务。
先谢了!
3条答案
按热度按时间l5tcr1uw1#
是的,你可以使用k8s的证书管理器,让我们加密也将是很好的管理证书。
ACME有不同的API URL来注册域名。从那里你也可以得到通配符 * SSl的域名。
简单地说,安装证书管理器并使用nginx的入口控制器,你将完成它。你必须添加TLS证书,在入口对象上定义它。
你可以参考这个教程来设置cert-manager和nginx入口控制器。
https://docs.cert-manager.io/en/venafi/tutorials/quick-start/index.html
pxiryf3j2#
如果您希望通过cert-manager将公共信任CA连接到Kubernetes(如GlobalSign、DigiCert、Entrust),您可以使用Venafi Cloud作为证书管理器的颁发者,以自动更新Kubernetes的证书。Venafi Cloud连接到第三方CA,并与证书管理器集成。Venafi Cloud还具有内置证书颁发机构,用于面向内部的基础设施(如容器)的私人信任证书。
以下是与设置此内容相关的链接:
z2acfund3#
公认的解决方案确实有效--不同的发行人是一种方法。但是如果您想使用ACME发行人,则需要解决难题。这可以通过HTTP01求解器或DNS01求解器来完成。如果您选择使用DNS 01求解器,则需要:
1.将您的DNS主机从GoDaddy转移到支持的提供商之一。
1.或者你可以尝试使用这个GoDaddy Webhook provider,你可能已经知道了。虽然我不能保证该项目处于工作状态。