【问题标题】:Are conditionals in salt stack pillar templates secure?盐堆支柱模板中的条件是否安全?
【发布时间】:2014-04-10 22:38:30
【问题描述】:

我最近在一个线程here的盐柱中看到了以下构造

/srv/pillar/ssh.sls

ssh_certs:
{% if grains['fqdn'] == 'server1.example.com' %}
    dsa: |
        -----BEGIN DSA PRIVATE KEY-----
        {# key text goes here with consistant indentation... #}
        -----END DSA PRIVATE KEY-----
    ecdsa: |
        -----BEGIN ECDSA PRIVATE KEY-----
        {# key text goes here with consistant indentation... #}
        -----END ECDSA PRIVATE KEY-----
    rsa: |
        -----BEGIN RSA PRIVATE KEY-----
        {# key text goes here with consistant indentation... #}
        -----END RSA PRIVATE KEY-----
{% elif grains['fqdn'] == 'server2.example.com' %}
    # same as above but with different key texts of course....
{% endif %}

该支柱随后通过* glob 在顶层文件中分发到集群中的所有节点。

问题:

由于我们未评估的模板包含整个集群的所有私钥,这有多安全?

我相信奴才会评估自己的盐配方。如果他们也评估自己的支柱,那么他们将暂时获得集群中每个节点的私钥!

如果我以某种方式获得了server2.example.com 的访问权限,我是否能够挖掘出未编译的模板?

问这个问题的另一种方法是:支柱模板评估在哪里进行?

【问题讨论】:

    标签: salt-stack


    【解决方案1】:

    Pillar 数据在 Salt Master 上编译,Pillar 字典直接加密发送到每个 Salt Minion。因此,每个仆从都没有机会获得该支柱文件的全部内容。

    话虽如此,小黄人的谷物可以被篡改。您拥有的唯一绝对值是奴才的 id。不能篡改 Minion ID,否则会导致 Minion 的身份验证被拒绝。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-07-27
    • 1970-01-01
    • 2011-04-06
    相关资源
    最近更新 更多