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 delle password sui dispositivi, sui server misti e sui dispositivi dedicati come i modem, è stata gestita separatamente.
Questa soluzione ha notevolmente semplificato la distribuzione di nuove password in quanto un semplice aggiornamento doveva essere eseguito dagli utenti per ricevere ultima revisione delle password, oltre a fornire una cronologia tracciabile delle password precedenti per la conservazione dei record.
Come ricordo i file erano crittografati GPG, ma ci sono numerose soluzioni e approcci praticabili per gestire i file stessi.
L'ovvio svantaggio di questo approccio è che, specialmente quando le password sono cambiate, stai decrittografando uno o più file cercando le password richieste. Ovviamente, come per qualsiasi cosa, più spesso usi una password, più è probabile che tu la memorizzi e, a seconda del dispositivo o dei dispositivi in questione, l'accesso potrebbe essere un evento raro 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 la generazione e / o la modifica delle password su server e / o altri dispositivi, sarei lieto di condividerli che uso anche io.
-
Sarei felice di farlo.
Presumo che tu abbia familiarità con la crittografia dei file, PGP o altro. Se questo è errato, non esitare a chiedere e sarò felice 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 avere esperienza. Una nota con Git: è, per progettazione, completamente aperto e, come tale, richiederà passaggi aggiuntivi per limitare l'accesso a file o repository specifici. Ciò può essere ottenuto in modo relativamente semplice sfruttando le acl del file system (solo una possibile soluzione). Detto questo, 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 alternative per la gestione dei contenuti.
I file verranno, da definizione, rappresentano un database di password che mette in correlazione gli identificativi del dispositivo, come il nome host, alle password e, potenzialmente, ai nomi utente. Ad esempio: router-1.internetdomainwebsite.com administrator soopersekretpasswerd
. Idealmente non si archivierà mai il file non crittografato, tuttavia, seguire questa strategia rende il recupero delle password relativamente scomodo. Per questo motivo, consiglio di creare uno script per una funzione di accesso che funzioni 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 utilizzarla una volta sola dal richiedente.
che supporta le modifiche della password possono essere script. 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 di tua 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. È abbastanza semplice Perl con Expect.