Sfondo:
Finalmente mi sto riservando del tempo per unirmi al 21 ° secolo e guardare Puppet.
Allo stato attuale controlliamo tutte le configurazioni del server in un repository che si tiene internamente in ufficio. Quando è necessario effettuare un aggiornamento, le modifiche vengono ricontrollate nei repository e trasferite manualmente alla macchina in questione. Questo di solito significa SFTP sul computer remoto e quindi spostare i file in posizione, con le relative autorizzazioni, da una shell.
Quindi spero che Puppet sarà un'estensione semplice ma sorprendente di ciò che già abbiamo.
Ora considero il processo che attualmente dobbiamo essere ragionevolmente sicuri. Partendo dal presupposto che la nostra rete interna sarà sempre relativamente più sicura delle reti pubbliche nei nostri data center.
Il processo è sempre a senso unico. I cambiamenti attraversano da un ambiente sicuro a insicuro e mai il contrario.
Il negozio principale si trova nel posto più sicuro possibile. Il rischio di compromesso, rubando configurazioni o inviando modifiche dannose, è notevolmente ridotto.
Domanda:
Da quello che ho capito del modello server / client Puppet è che i client eseguono il polling e tirano giù gli aggiornamenti direttamente dal server. Il traffico è protetto da SSL, quindi non può essere intercettato o falsificato. Ma differisce da quello che facciamo attualmente perché i server Puppet dovrebbero essere ospitati in un luogo pubblico. A livello centrale o uno per ogni sito di data center che gestiamo.
Quindi mi chiedo:
Sono inutilmente paranoico sul passaggio da push a pull?
Sono inutilmente paranoico sulla memorizzazione centralizzata di tutte queste informazioni su una rete pubblica?
In che modo altri gestiscono più reti - server separato per ciascun sito?
Aggiornamento 30/07/09:
Immagino che un'altra delle mie maggiori preoccupazioni sia quella di porre la fiducia in una singola macchina. I burattinai sarebbero protetti da firewall, protetti e così via. Ma anche così qualsiasi macchina pubblica con servizi di ascolto ha una superficie di attacco di una certa dimensione.
Presumibilmente se il master dispone dell'autorizzazione per aggiornare qualsiasi file su uno qualsiasi dei client fantoccio, il suo compromesso alla fine comporterebbe il compromesso di tutti i suoi client. I "re del regno" per così dire.
Questa ipotesi è corretta?
Esiste un modo per mitigarlo?