step-ca ha 模式说明

step-ca是一个很不错的开源ca 管理工具,但是如果实际使用就存在ca 的问题 ,实际上官方也说明了ha 的玩法,但是因为
step-ca 在架构设计上并不是完全分布式的,所以还是有一些问题的

主要的问题

  • 多实例数据共享(比如ca,acme 信息),就需要一个db了,推荐pg 或者mysql
  • init 开启--remote-management (对于新部署,已经运行的需要调整下),之后会创建admin 账户
  • ca.json 配置信息同步,官方文档是可以同构ansible 等一些工具解决,因为有些调整之后服务需要reload 下(基于nas 也是一种选择)
  • acme server 并发链接限制,可以参考官方一个issue 解决
  • lb 工具,可以选择haproxy 以及nginx 的stream,但是会有一些限制(比如日志记录问题),同时应该使用4层处理(当然我们部署的step-ca 配置同时也是需要配置dns 或者vip的,具体是在init 中)

参考部署图

 

 

一个参考生成的mysql 表信息图

下图是实际开启了mysql 生成的表信息,同时通过acme 的一些信息都会记录到数据库中

 

 

说明

以上是关于step-ca ha 一个简单说明,可以参考

参考资料

https://smallstep.com/docs/step-ca/provisioners/#jwk
https://smallstep.com/docs/step-ca/certificate-authority-server-production/#high-availability
https://smallstep.com/docs/step-ca/certificate-authority-server-production

posted on 2023-01-24 22:28  荣锋亮  阅读(95)  评论(0编辑  收藏  举报

导航