Безопасны ли условные обозначения в шаблонах солевых столбов?
Я недавно видел следующую конструкцию в соляном столбе в резьбе здесь
/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
, смог бы я откопать несжатый шаблон?
Другой способ задать этот вопрос: где происходит оценка шаблона столба?
1 ответ:
Данные столба компилируются на Соляном Мастере, и словарь столба отправляется зашифрованным непосредственно каждому Соляному миньону. Так что нет никаких шансов, что каждый миньон получил полный файл столба.
Как говорится, зерна миньона можно подделать. Единственный Абсолют, который у вас есть, - это удостоверение личности миньона. Идентификатор миньона нельзя подделать, не вызвав отклонение аутентификации миньона.