Anche se ho visto molte implementazioni di soluzioni a questo problema, credo che il più completo, se non forse il più conveniente, fosse un repository Git limitato ai super utenti che contenevano solo file di testo crittografati di password per ambiente. La gestione della rotazione della password sui dispositivi, server misti e dispositivi dedicati come i modem, è stata gestita separatamente.
Questa soluzione semplificava notevolmente la distribuzione di nuove password come un semplice aggiornamento che doveva essere eseguito dagli utenti per ricevere l'ultima revisione delle password, oltre a fornire una cronologia tracciabile delle password precedenti per la conservazione dei record.
Come ricordo i file erano crittografati con GPG, ma ci sono numerose soluzioni e approcci fattibili per gestire i file stessi.
L'ovvio svantaggio di questo approccio è che, specialmente quando le password sono cambiate, stai decifrando uno o più file alla ricerca delle password richieste. Naturalmente, come con qualsiasi altra cosa, più frequentemente usi una password più è probabile che tu la memorizzi e, a seconda del / i dispositivo / i in questione, l'accesso potrebbe essere un evento poco frequente che non è molto ostacolato dal dover passare attraverso un processo un po 'più lungo per ottenere la password appropriata.
Se sei interessato anche a strategie e / o script per generare e / o modificare password su server e / o altri dispositivi, sarei lieto di condividere anche quelle che uso.
-
Sarei felice.
Supporrò che tu abbia familiarità con la crittografia dei file, PGP o altro. Se questo è errato, non esitare a chiedere e saremo lieti di fornire alcuni esempi.
La configurazione di un repository Git è relativamente semplice e mostrerà somiglianze con la maggior parte delle soluzioni di gestione dei contenuti con cui potresti essere esperto. Una nota con Git: è, per impostazione, completamente aperta e, come tale, richiederà ulteriori passaggi per limitare l'accesso a file o archivi specifici. Questo può essere ottenuto relativamente semplicemente sfruttando il file system acl (solo una possibile soluzione). Detto questo, ti consiglierei sicuramente di utilizzare una soluzione con la quale sei a tuo agio e familiare, soprattutto se nella tua organizzazione sono già in uso soluzioni di gestione dei contenuti alternative.
Il file (s), per definizione, rappresenterà un database delle password che collega gli identificativi del dispositivo, come ad esempio il nome host, alle password e, potenzialmente, ai nomi degli utenti. Ad esempio: router-1.internetdomainwebsite.com administrator soopersekretpasswerd
. Idealmente non archiverai mai il file in chiaro, tuttavia, seguendo questa strategia, le password di recupero sono relativamente scomode. Per questo motivo raccomando di eseguire lo scripting di un accessorio per lavorare all'interno del tuo framework di crittografia, magari prendendo un identificatore come termine di ricerca e scrivendo solo la password richiesta in un file per l'utilizzo una tantum da parte del richiedente.
Qualsiasi dispositivo che supporta le modifiche della password può essere scriptato. Poiché la maggior parte dei dispositivi supporta la modifica delle password da una CLI, consiglierei di dare un'occhiata al linguaggio Expect e / o alle sue librerie per Perl, Python o alla lingua scelta. Personalmente utilizzo uno script che accetta il nome utente desiderato, accetta la password corrente, accetta e verifica la password desiderata, quindi modifica e verifica la modifica su tutti gli host passati o forniti quando richiesto. Il suo Perl piuttosto semplice con Expect.