Недавно я видел следующую конструкцию в соляном столбе в ветке здесь
/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 %}
Затем эта опора была распространена в верхнем файле через глоб *
на все узлы в кластере.
Вопрос:
Поскольку наш необработанный шаблон содержит все закрытые ключи для всего нашего кластера, насколько это безопасно?
Я считаю, что миньоны оценивают свои собственные формулы соли. Если они также оценят свои собственные опоры, то им временно будут предоставлены закрытые ключи для каждого узла в кластере!
Если бы я каким-то образом получил доступ к server2.example.com
, смог бы я откопать нескомпилированный шаблон?
Другой способ задать этот вопрос: где происходит оценка шаблонов компонентов?