本文介绍几种在阿里云K8S中管理TLS证书的方案。
证书申请方案
先看如何申请证书。
cert-manager
cert-manager是一个集成在k8s中的工具,它可以做到自动从Let's encrypt申请证书、自动更新证书、与Ingress无缝结合。
大多数情况下建议与Ingress集成的方式使用它,后面会讲。如果你仅需要签发功能,不需要和Ingress集成,则可参考Setting up Issuers和Issuing Certificates。
优点:
自动签发
自动续期
与K8S集成良好
免费
缺点:
只能签发Server Auth证书,不能签发Client Auth证书
证书仅用做认证,没有商业版证书更高级的功能
阿里云平台购买
优点:
多种类型证书可以供选择,有免费的有收费的
可在平台上管理
申请的证书可用在其他产品上,比如SLB
缺点:
与K8S集成不好,需要手动导入到Secret中才能使用
只能签发Server Auth证书,不能签发Client Auth证书
用CFSSL自签发
你可以使用CFSSL自签发证书,有一篇参考文档。
优点:
可签发Client Auth证书
缺点:
手动管理证书
与K8S集成不好,需要手动导入到Secret中才能使用
自签发的Server Auth证书在浏览器端会报警告