Contexte:
Je réserve enfin un peu de temps pour rejoindre le 21e siècle et regarder Puppet.
Dans l'état actuel des choses, nous contrôlons la version de toutes les configurations de serveur dans un référentiel qui est conservé en interne au bureau. Lorsqu'une mise à jour doit être effectuée, les modifications sont réintégrées dans les référentiels et transférées manuellement vers la machine en question. Cela signifie généralement SFTP sur la machine distante, puis déplacer les fichiers en place, avec les autorisations appropriées, à partir d'un shell.
J'espère donc que Puppet sera une extension simple mais incroyable de ce que nous avons déjà.
Maintenant, je considère que le processus que nous devons actuellement être raisonnablement sûr. En supposant que notre réseau interne sera toujours relativement plus sécurisé que les réseaux publics de nos centres de données.
Le processus est toujours à sens unique. Les changements passent d'un environnement sécurisé à un environnement non sécurisé et jamais l'inverse.
Le magasin principal est dans l'endroit le plus sûr possible. Le risque de compromis, soit en volant des configurations, soit en envoyant des modifications malveillantes, est considérablement réduit.
Question:
D'après ce que je comprends du modèle de serveur / client Puppet, les clients interrogent et tirent les mises à jour directement depuis le serveur. Le trafic est encapsulé SSL et ne peut donc pas être intercepté ou usurpé. Mais cela diffère de ce que nous faisons actuellement parce que le ou les serveurs Puppet devraient être hébergés dans un endroit public. Soit de manière centralisée, soit un pour chaque site de centre de données que nous entretenons.
Je me demande donc:
Suis-je inutilement paranoïaque à propos du passage de push à pull?
Suis-je inutilement paranoïaque à propos du stockage centralisé de toutes ces informations sur un réseau public?
Comment les autres maintiennent-ils plusieurs réseaux - un serveur séparé pour chaque site?
Mise à jour 30/07/09:
Je suppose que l'une de mes autres grandes préoccupations est de placer donc doit faire confiance à une seule machine. Le ou les marionnettistes seraient protégés par un pare-feu, sécurisés, etc. Mais même ainsi, toute machine publique avec des services d'écoute a une surface d'attaque d'une certaine taille.
Vraisemblablement, si le maître a la permission de mettre à jour n'importe quel fichier sur l'un des clients fantoche, alors son compromis entraînerait finalement le compromis de tous ses clients. Les "rois du royaume" pour ainsi dire.
Cette hypothèse est-elle correcte?
Existe-t-il un moyen de l'atténuer?