使用 Puppet 配置云应用的全面指南
1. 证书管理
为了提高安全性,建议为每个新的云实例创建一个 UUID 作为 Puppet 证书的通用名称。准备基础镜像时,使用一个简单的 puppet.conf 文件,该文件仅包含 [main] 部分,且没有 certname 选项。以下是一个简单的引导脚本扩展示例:
#!/bin/bash
export PATH=/bin:/usr/bin
if ! grep -q ^certname /etc/puppet/puppet.conf ; then
CERT=`cat /proc/sys/kernel/random/uuid`
echo "certname = $CERT" >>/etc/puppet/puppet.conf
else
CERT=`puppet agent --configprint certname`
fi
DIR=`puppet agent --configprint certdir`
[ -f "${DIR}/${CERT}.pem" ] && exit 0
puppet agent --onetime --no-daemonize --waitforcert 300
这种无描述性的证书名称使得识别可能的恶意 CSR 变得困难。为了恢复一定的安全性,可以将 DNS 名称作为自定义属性添加到 CSR 中。
不建议为每个角色签署一个万能证书并在所有云代理之间共享,因为这不安全,且 Pu
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



