四大开源工具:DevOps 自动化 PKI

从历史上看,DevOps和安全性一直是截然相反的做法。DevOps 想要快速行动并打破局面,但安全策略往往会减慢速度。然而,这种思想流派已经发展,因为两种做法都可以互相学习。

组织已采用“左移”方法将安全性更早地集成到应用程序开发中,而安全团队正在学习接受DevSecOps 的自动化、灵活性和可扩展性

例如,考虑公钥基础设施 (PKI),这是一种通常用于验证身份、设备和软件的安全技术。

在DevOps中有许多PKI有价值的用例,例如验证服务和基础设施(而不是硬编码的秘密)以及验证软件和第三方应用程序。

同样,DevOps 也有一个有价值的用例来自动化手动和基于票据的证书管理;特别是因为这会给 DevOps 带来不可接受的瓶颈。

在这个例子中,PKI 和 DevOps 就像一枚硬币的两个面:

  • 适用于 DevOps 的 PKI —— 利用 DevOps 为业务应用程序和服务有效部署基于 PKI 的凭据;

  • DevOps for PKI —— 使用 DevOps 自动化 PKI 的部署和配置。

无论哪种情况,这些过程都使用了许多类似的技术和工具。最重要的是,其中许多都可以通过开源社区获得。

点击此处即可免费领取DevOps资料~

No.1 EJBCA     开源 PKI

EJBCA是一个开源证书颁发机构,提供从注册和注册到证书验证和撤销的完整生命周期证书管理解决方案。该项目的源代码可根据GNU宽通用公共许可证 (LGPL) 的条款获得。

EJBCA用于安装高度可扩展的私有证书颁发机构。相比之下,公共证书颁发机构是单一且昂贵的,这使得它们不适合敏捷DevOps。

No.2 Ansible     开源 IT 自动化

Ansible是一个IT自动化工具,可以安装和配置软件(在本示例中为 EJBCA)。通过创建剧本、角色和任务,该过程很容易重复。Ansible易于使用,因为它是基于YAML的,这是一种易于理解的语言,这使得它非常适合已实现基础架构即代码 (IaC) 的 DevSecOps 环境。Ansible 还具有高度可扩展性,因为它是模块化和无代理的,这使其轻量且快速。

此外,Ansible playbook 可以使用来自 EJBCA 的密钥和证书来保护其他软件的部署,从而可以利用 Ansible 作为通用自动化工具、用于 DevOps 的 PKI 和用于 PKI 的 DevOps。

DevOps是一种最佳实践,它强调协作和沟通,通过实施DevOps来实现公司业务利益的最大化,也就是我们要用最少的成本+最快的速度+最高的品质,来满足用户的各种需求。

No.3 HashiCorp Vault     开源机密管理

HashiCorp Vault 是一个秘密管理解决方案,可用于保护、存储和控制对令牌、密码、证书和加密密钥的访问。它的用例包括秘密管理、数据加密和基于身份的访问。

随着组织转向更加动态的云和混合基础架构,机密管理已成为不可或缺的一部分,以确保密钥不会暴露在应用程序和 API 中,并且证书可以安全地颁发给正确的机器。

No.4 Jenkins     开源持续集成

Jenkins 是一个用于构建、测试、交付和部署软件的自动化服务器。作为持续集成和持续交付管道 (CI/CD) 的一部分,Jenkins 可用于自动部署证书和密钥。

从本质上讲,在作为 DevOps 标志的 CI/CD 管道中,Jenkins 可以简化 Ansible 中定义的剧本。 

  • 适用于 DevOps 的 PKI 和适用于 PKI 的 DevOps

面向 DevOps 的 PKI 的最终目标是为业务应用程序提供 PKI 凭证,而无需硬编码机密,这降低了安全团队所担心的风险。

DevOps for PKI 的目标是自动部署一个完全配置的 PKI 解决方案,这对 DevOps 团队来说是少了一个障碍。组织可以利用一系列开源Ansible 剧本来自动化 EJBCA 的安装,这使得该过程易于复制。

DevOps 的本质是大规模拥抱自动化和灵活性

这意味着 PKI 证书配置需要集成并自动化到 DevOps 中。如果做得正确,安全性和 DevOps 不需要截然相反 —— 组织可以实现两全其美: 安全性和效率

注:图片来源网络,侵删~

译文来自:How to Automate PKI for DevOps With Open Source Tools - DevOps.com


版权声明:本文为Guanghuan_XG原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。