La gestione delle password è diventata un argomento caldo negli ultimi dieci anni. Una rapida ricerca su Google svela varie opzioni per selezionare lo strumento che salvaguarderà le stringhe che sbloccano le tue informazioni personali. Alcune di queste applicazioni vengono eseguite semplicemente sul tuo computer e memorizzano le tue password offline in un formato crittografato.
Altre sono più ricche di funzionalità, offrendo sincronizzazione online con più dispositivi, condivisione delle password, autenticazione a due fattori (2FA) e altro ancora . Con alcuni di questi servizi, la semplicità della gestione delle password è andata persa nell'oceano di funzionalità offerte. Non solo, ma grazie alla comodità dei depositi online offerti da molti di questi servizi, stai perdendo un po' di controllo sui tuoi dati poiché le tue credenziali sono sincronizzate con server al di fuori del tuo controllo.
È disponibile un'alternativa che fornisce semplicità e ti dà il pieno controllo delle tue credenziali. Può fornire molte delle stesse funzionalità che otterrai da un servizio a pagamento, pur mantenendo la sua semplicità. È open source ed è scritto dallo stesso autore che ha creato Wireguard, che ha ricevuto elogi da Linus Torvalds prima che fosse inserito rapidamente nel kernel Linux. Questa alternativa è chiamata pass
noto anche come archivio password.
[ Potrebbe interessarti anche: Gestire gli utenti Linux con il comando passwd ]
La gestione delle password dovrebbe essere semplice e seguire la filosofia Unix. Con pass
, ogni password risiede all'interno di un file crittografato gpg il cui nome file è il titolo del sito Web o della risorsa che richiede la password. Questi file crittografati possono essere organizzati in gerarchie di cartelle significative, copiati da un computer all'altro e, in generale, manipolati utilizzando le utilità di gestione dei file della riga di comando standard. --Pass:il gestore di password Unix standard
Perché usare l'archivio password?
- È open source
- È semplice da usare
- È ben documentato
- È basato sulla CLI, ma sono disponibili estensioni della GUI
- È crittografato con GnuPG a un livello a tua scelta
- È interamente sotto il tuo controllo. Le password non si sincronizzano con server di terze parti
- Il tuo archivio password può rimanere solo sul tuo sistema, oppure puoi sincronizzarlo con un repository Git privato a tua scelta (fortemente consigliato)
Installazione
1. Installa pass
:
$ sudo dnf install pass
2. Se non disponi già di una coppia di chiavi GPG, dovrai crearne una:
$ gpg2 --full-generate-key
Selezionare l'opzione 1 (RSA e RSA) per il tipo di chiave.
Please select what kind of key you want:
(1) RSA and RSA (default)
(2) DSA and Elgamal
(3) DSA (sign only)
(4) RSA (sign only)
Your selection? 1
Seleziona la dimensione della chiave desiderata. In questo esempio, scegli 4096:
RSA keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048) 4096
Requested keysize is 4096 bits
Please specify how long the key should be valid.
0 = key does not expire
<n> = key expires in n days
<n>w = key expires in n weeks
<n>m = key expires in n months
<n>y = key expires in n years
Ora scegli per quanto tempo vuoi che la chiave sia valida, in questo esempio scegli due anni:
Key is valid for? (0) 2y
Key expires at Sat 18 Mar 2023 15:03:38 CET
Is this correct? (y/N) y
Inserisci il tuo nome completo, indirizzo e-mail e poi conferma con 'O ' quando richiesto.
GnuPG needs to construct a user ID to identify your key.
Real name: John Doe
Email address: [email protected]
Comment:
You selected this USER-ID:
"John Doe <[email protected]>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit? O
Uno degli ultimi passaggi del processo di creazione di GPG è impostare la password. Assicurati di utilizzare una password complessa contenente maiuscole, minuscole e simboli. Questa sarà la tua password principale per sbloccare il tuo pass
archivio dati.
3. Ora che la tua chiave GPG è stata creata, dovrai elencare le tue chiavi e prendere nota dell'ID chiave segreta (sec):
$ gpg2 --list-secret-keys --keyid-format LONG
sec 4096R/AAAA2222CCCC4444 2021-03-18 [expires: 2023-03-18] uid John Doe <[email protected]>
4. Con il tuo ID chiave GPG puoi ora avviare il tuo pass
archivio dati:
$ pass init 'AAAA2222CCCC4444'
mkdir: created directory ‘/home/myhome/.password-store’ Password store initialized for AAAA2222CCCC4444.
5. È ora possibile generare e recuperare password dall'archivio password crittografato RSA4096. Per generare una nuova password (-c
copia negli appunti dopo la creazione e 21 specifica una password con una lunghezza di 21 caratteri):
$ pass generate -c Internet/github.com 21
Recupera una password dal negozio:
$ pass show Internet/github.com
<enter GPG password at prompt>
Passaggi aggiuntivi
Un'installazione stock di pass
ti fornisce un datastore locale sicuro per le tue credenziali. Ci sono, tuttavia, un paio di altre funzioni che ritengo importanti per migliorare l'usabilità.
Sincronizza con un repository Git
Ai fini della ridondanza e della condivisione delle credenziali su più dispositivi, consiglio vivamente di sincronizzare il tuo pass
archiviare con un repository Git. La buona notizia è che pass
ha già la funzionalità Git integrata; tutto ciò che devi fare è creare un repository remoto e inizializzarlo nel tuo pass store. Armato del tuo repository Git remoto, puoi procedere e inizializzarlo per pass
. Nell'esempio seguente, utilizzo Github, ma ricorda che puoi utilizzare qualsiasi provider di hosting per il controllo della versione o configurarne uno tuo.
1. Dopo aver impostato un repository privato sul tuo server Git remoto, dovrai inizializzarlo localmente con pass repo git e aggiungi l'origine remota:
$ pass git init
Initialized empty Git repository in /home/myhome/.password-store/.git/ [master (root-commit) 998c8fd] Added current contents of password store. 1 file changed, 1 insertion(+)
create mode 100644 .gpg-id
$ pass git remote add origin [email protected]:johndoe/pass-store.git
2. Se la tua autenticazione al repository è configurata correttamente, puoi inviare il tuo pass store al repository remoto con il pass git push
integrato comando:
$ pass git push -u --all
Enumerating objects: 14, done.
Counting objects: 100% (14/14), done.
Delta compression using up to 12 threads
Compressing objects: 100% (12/12), done.
Writing objects: 100% (12/12), 2.68 KiB | 913.00 KiB/s, done.
Total 12 (delta 6), reused 0 (delta 0), pack-reused 0
To [email protected]:johndoe/pass-store.git
212af8c..d1c11c5 master -> master
Compila automaticamente i moduli di accesso web
Sono disponibili estensioni per tutti i principali browser che consentono di compilare automaticamente i moduli di accesso con le credenziali memorizzate. Sarà necessario installare il client nativo browserpass e l'estensione del browser. Consulta le istruzioni per l'installazione del client nativo. Una volta sia il client nativo che browserpass
sono installate, puoi usare la scorciatoia Ctrl-Shift-L per popolare automaticamente i moduli di accesso con le credenziali del tuo pass store.
Configurazione di Chrome
1. Installa l'estensione browserpass per Chrome/Chromium.
2. Quindi, compilare e installare il client nativo browser-pass. Probabilmente dovrai farlo manualmente.
3. Clona il browserpass-native
repository nel tuo sistema.
4. Se Golang è già installato, salta questo passaggio. Altrimenti, installa Golang:
$ sudo dnf install golang
5. cd
dove hai clonato il repository ed eseguito il seguente make
comandi:
$ make
$ make configure
$ sudo make install
6. Vai al browserpass
directory del programma e compilare l'estensione per il browser specifico. Per Chromium, esegui:
$ cd /usr/lib/browserpass/
$ make hosts-chromium-user
Esistono esempi su come compilarlo per il tuo browser specifico.
7. Ora puoi utilizzare il browserpass estensione per compilare i moduli dal tuo archivio password.
App mobili
C'è un'app per Android chiamata Android-Password-Store e un'altra per iOS chiamata passforios, entrambe open source e disponibili nei rispettivi app store. Entrambe le app supportano la compilazione automatica dei moduli ed entrambe hanno funzionalità Git integrate, quindi è facile eseguire il push e il pull dal tuo repository di pass remoti.
[ Ottieni questo ebook gratuito:Gestione dei cluster Kubernetes per i manichini. ]
Concludi
In questo articolo ti ho presentato pass
, uno strumento di gestione delle password open source che utilizza il collaudato software di crittografia GNU Privacy Guard (GPG) per proteggere le tue credenziali. Il principale pass
il software consente una semplice gestione delle password, con la possibilità di estendere le funzionalità attraverso altre estensioni open source. pass
i data-store sono semplicemente una raccolta di file crittografati GPG, quindi le tue credenziali possono essere facilmente sincronizzate tra dispositivi utilizzando uno strumento già comune tra gli amministratori di sistema; Idiota. Ciò ti consente di decidere dove vengono archiviate le tue credenziali, sia che si tratti di un repository Git privato su un provider di hosting per il controllo della versione o anche del tuo server privato virtuale.
Con pass
prendi il pieno controllo della gestione della tua password, senza sacrificare la funzionalità e pur mantenendo la semplicità.