没有标准的 SOP,但是却有不怎么样的经验谈。
整个认证的交易就和我们一般 HTTP 的 SSL 申请状况相同,Agent 就像是一般企业客户端,而 Master 就是 SSL 凭证中心。
由 Master 起的 CA 凭证底下皆信任所有签署过的 CSR
整个的 SSL 的交易过程就像是我们向凭证中心交易的过程,只不过 HTTPS 是 trust internet,而 Puppet 是 trust local。
手动签署的部分在前篇就已经提过了,在这边就不再多论述。
在自动签署中是最不安全的签署方式,当使用 Naive Autosigning 的话,所有的 Agent CSR 要求皆会自动同意签署,这并不适合用在正式环境,但相对的用于测试环境是非常方便。
对于正式环境这也不是一个好的管理方式,因为攻击者可以伪装要申请的凭证讯息。
Puppet 官方极力推荐使用 Policy-based autosigning 这种方式进行验证,是目前最安全且弹性的作法,甚至可以把 Policy-based autosigning 当成一个 trigger 去做许多事件。
延伸 Policy-based autosigning 概念的作法,你也可以透过 API 进行签署认证,这个可以应用到更多的地方,但目前小弟还没有实际应用。