Gestione delle credenziali del server per Linux e Windows


12

Siamo un negozio relativamente piccolo (per quanto riguarda il numero di amministratori di sistema) con un mix di server RHEL, Solaris, Windows 2003 e Windows 2008; circa 200 server in tutto.

Per i nostri account amministratore ( rootin Linux e admnistratorin Windows), abbiamo uno schema di password che dipende dalla posizione del data center e da un paio di altre proprietà documentate del server.

Su Linux, la nostra pratica attuale è di creare un account senza privilegi comune dove abbiamo potuto sua root. Su sistemi basati su Windows, creiamo un account aggiuntivo con privilegi di amministratore. Entrambi questi account condividono la stessa password.

Ciò si è rivelato molto inefficiente. Quando qualcuno lascia il nostro negozio, dobbiamo:

  1. Modifica lo schema della password per gli account amministratore
  2. Genera una nuova password amministratore per ciascun server
  3. Trova una nuova password dell'account non amministratore
  4. Tocca tutti i server e modifica le password

Volevo sapere se qualcuno in un ambiente simile può suggerire un modo più sano di gestire queste credenziali. Alcune informazioni rilevanti:

  • Sebbene la maggior parte dei nostri server faccia parte del nostro dominio AD, non tutti lo sono.
  • Gestiamo tutti i nostri server Linux con Puppet (l'autenticazione con chiave era un'opzione a cui pensavo, ma affronterà solo la preoccupazione n. 3 dall'alto).
  • Effettuiamo il provisioning dei server Linux con Cobbler.
  • Circa il 10% del nostro hardware è dedicato a VMWare. In questi casi, utilizziamo i modelli VMWare per le build dei server.

Eventuali idee o suggerimenti saranno molto apprezzati. Questo è un problema che persiste da tempo e finalmente voglio risolverlo.

Risposte:


10

Alcuni suggerimenti che vorrei avere sono:

  • I server connessi a Windows AD possono impostare le password dell'amministratore locale tramite i criteri di gruppo utilizzando Preferenze criteri di gruppo (GPP) o uno script di avvio del computer. Vedi http://social.technet.microsoft.com/Forums/en-US/winserverGP/thread/b1e94909-bb0b-4e10-83a0-cd7812dfe073/

  • Limitare la creazione di account locali su server Windows se non richiesto. Usa gli account AD quando possibile.

  • Utilizzare LDAP per computer Linux per autenticare gli account amministratore su AD. Questo semplifica in qualche modo la gestione dell'account. E quando un amministratore è uscito, disabilitalo in un unico posto e non ha accesso, quindi puoi ripulire il lato Linux a tuo piacimento.

  • Usa il file / etc / sudoers per un account amministratore specifico su Linux, quindi gli amministratori non hanno bisogno della password di root. Questo può essere utile nella tua istanza perché in tal caso raramente avranno bisogno della password di root in modo che possa essere bloccato. aggiornato

  • Conservare le password dell'amministratore locale e di root in una password sicura non di conoscenza generale. Alcuni casseforti di password dispongono di delega e registrazione, pertanto potrebbe non essere necessario reimpostare una password se la persona non ha mai avuto accesso ad essa.

  • Automatizza il processo di reimpostazione della password per gli account root e admin. Sia Linux che Windows possono essere programmati per fare questo, in modo da farti risparmiare un po 'di tempo e non renderti così un peso.

Spero possa aiutare.


Il mio problema con LDAP è l'unico punto di errore. Preferirei gestire gli account tramite Puppet. E apprezzo i tuoi suggerimenti. Grazie @ Bernie!
Belmin Fernandez,

1
@Beaming Se si utilizza Active Directory è possibile avere più di un controller di dominio (nessun singolo punto di errore) e quindi puntare al nome di dominio DNS, ad esempio domain.com, per ottenere tutti i controller di dominio per una query LDAP. Oppure puoi impostare un record A DNS in modo che punti a controller di dominio specifici se vuoi solo due o tre per rispondere a LDAP come ldap.domain.com. Non ho usato Puppet ma la chiave per una facile amministrazione degli utenti è non avere un'unica fonte dove possibile. È probabile che Puppet possa connettersi comunque a un server LDAP back-end se lo preferisci in questo modo.
Bernie White,

Concordato che AD è il modo di andare qui. Con più di 2 controller di dominio, la probabilità che AD si riduca completamente è ridotta, ma anche, in caso affermativo, probabilmente hai problemi molto più grandi. Mantenere gli account root locali sui server Linux da utilizzare come ultima risorsa se tutto il resto fallisce.
EEAA,

2
@ Bernie - riguardo al tuo terzo punto. Quando si usa sudo, nessuno deve mai conoscere la password di root. Specificando "NOPASSWD" su una voce sudo, l'utente non deve inserire la propria password. Questo non ha nulla a che fare con la password di root.
EEAA,

@ErikA +1 Molto vero. Rimosso il riferimento a NOPASSWD poiché non aiuta a rispondere alla domanda /
Bernie White,

2

Puoi provare a vedere se FreeIPA funziona per te.

È possibile gestire l'accesso degli utenti agli host da una posizione centrale. Come suggerito da altri, puoi vedere se sudo funziona per te per l'accesso a livello di root. Freeipa supporta i sudoer in LDAP, quindi non è necessario mantenerlo su ciascun server o via burattino ecc.

Freeipa supporta client Linux, Solaris e Windows. Potresti perdere alcune funzionalità AD e non sono sicuro di quali altre limitazioni avrà un client Windows.

Ha funzionalità di replica, quindi puoi evitare uno SPOF. Il back-end è LDAP, quindi è possibile riutilizzare molti strumenti che le persone usano per LDAP, come gli script di backup.

Supporta il controllo degli accessi basato su host, quindi puoi dire "l'utente X può accedere solo ai server Y".

Offre anche la sincronizzazione AD . Non sono una persona Windows, quindi non ho idea di cosa significhi.


1

Non utilizzare l'account amministratore standard. Sul lato Windows, crea un account utente e un account Admin per ogni utente che necessita dell'accesso Admin. È possibile utilizzare qualsiasi strumento per la sincronizzazione con UNIX.

Se qualcuno lascia, devi solo eliminare i loro account utente e amministratore.

Per proteggere l'account amministratore standard, assegnagli una password davvero lunga e complessa, quindi assicurati che ogni persona ne abbia solo la metà. Se devono utilizzare l'intero account, devono cercare qualcuno che ha l'altra metà.

È il più sicuro possibile.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.