GNU/Linux >> Linux Esercitazione >  >> Linux

Gestione di una password utente per Linux in marionetta

Gli utenti Linux hanno le loro password memorizzate come hash nel file /etc/shadow. Puppet passa la password fornita nella definizione del tipo di utente nel file /etc/shadow.

Genera la tua password hash usando il comando openssl:

 #openssl passwd -1  
 #Enter your password here 
 Password: 
 Verifying - Password: 
 $1$HTQUGYUGYUGwsxQxCp3F/nGc4DCYM

L'esempio precedente genera questo hash:$1$HTQUGYUGYUGwsxQxCp3F/nGc4DCYM/

Aggiungi questa password hash alla tua classe come mostrato (non dimenticare le virgolette)

user { 'test_user': 
  ensure   => present,
  password => '$1$HTQUGYUGYUGwsxQxCp3F/nGc4DCYM/',
}

Il sha1 La funzione in marionetta non è destinata direttamente alle voci passwd, come hai capito. Direi che impostare l'hash anziché la password è una buona pratica! Non dovresti comunque essere in grado di recuperare una password - puoi generarla una volta, oppure puoi fare in modo che il burattino la generi ogni volta - generare quell'hash una volta dovrebbe essere sufficiente IMHO... Puoi generare una password su Debian/Ubuntu come questo:

pwgen -s -1 | mkpasswd -m sha-512 -s

...su CentOS puoi usare qualche comando grub-crypt invece di mkpasswd...


Il pacchetto stdlib di pupazzolabs implementa un pw_hash simile funzione della risposta accettata.

Assicurati di aggiungere la libreria alla tua configurazione. Se usi il bibliotecario, aggiungi semplicemente il tuo Puppetfile

mod 'puppetlabs-stdlib'

Quindi per creare un utente, semplicemente :

user { 'user':
  ensure => present,
  password => pw_hash('password', 'SHA-512', 'mysalt'),
}

Ho avuto successo (essenza) con il metodo String#crypt di Ruby dall'interno di una funzione Puppet parser.

AFAICS sta usando le funzioni crypt libc (vedi:info crypt ), e accetta gli stessi argomenti $n$[rounds=<m>$]salt , dove n è la funzione di hashing ($ 6 per SHA-512) e m è il numero di round di rafforzamento della chiave (5000 per impostazione predefinita).


Linux
  1. 20 comandi Linux essenziali per ogni utente

  2. Come modificare, rimuovere o disabilitare la password utente in Linux

  3. Titan:un gestore di password da riga di comando per Linux

  4. Buttercup:un moderno gestore di password per Linux

  5. Imposta password per modalità utente singolo su Linux (CentOS/RHEL)

Trova account utente con password vuota in Linux

Crea directory home per utenti esistenti in Linux

Come modificare la password utente in Linux

Come modificare o impostare la password utente in Linux

Comando Linux passwd – Modifica password utente

Esecuzione della reimpostazione della password Linux [Passo dopo passo]