GNU/Linux >> Tutoriales Linux >  >> Linux

Administrar una contraseña de usuario para Linux en marionetas

Los usuarios de Linux tienen sus contraseñas almacenadas como hash en el archivo /etc/shadow. Puppet pasa la contraseña proporcionada en la definición de tipo de usuario en el archivo /etc/shadow.

Genere su contraseña hash usando el comando openssl:

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

El ejemplo anterior genera este hash:$1$HTQUGYUGYUGwsxQxCp3F/nGc4DCYM/

Agregue esta contraseña hash a su clase como se muestra (no olvide las comillas)

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

El sha1 La función en marioneta no está destinada directamente a las entradas de contraseña, como descubrió. ¡Diría que configurar el hash en lugar de la contraseña es una buena práctica! De todos modos, no se supone que pueda recuperar una contraseña; puede generarla una vez, o puede hacer que la marioneta la genere cada vez; en mi humilde opinión, generar ese hash una vez debería ser suficiente ... Puede generar una contraseña en Debian/Ubuntu así:

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

...en CentOS puede usar algún comando grub-crypt en lugar de mkpasswd...


El paquete stdlib de puppetlabs implementa un pw_hash similar función de la respuesta aceptada.

Asegúrese de agregar la biblioteca a su configuración. Si usa bibliotecario, solo agregue su Puppetfile

mod 'puppetlabs-stdlib'

Luego, para crear un usuario, simplemente:

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

Tuve éxito (esencial) con el método String#crypt de Ruby desde dentro de una función de analizador Puppet.

AFAICS está usando las funciones crypt libc (ver:info crypt ), y toma los mismos argumentos $n$[rounds=<m>$]salt , donde n es la función hash ($6 para SHA-512) y m es el número de rondas de fortalecimiento clave (5000 por defecto).


Linux
  1. 20 comandos esenciales de Linux para cada usuario

  2. Cómo cambiar, eliminar o deshabilitar la contraseña de usuario en Linux

  3. Titan:un administrador de contraseñas de línea de comandos para Linux

  4. Buttercup:un administrador de contraseñas moderno para Linux

  5. Contraseña de pánico en Linux

Encuentra cuentas de usuario con contraseña vacía en Linux

Crear directorio de inicio para usuarios existentes en Linux

Cómo cambiar la contraseña de usuario en Linux

Cómo cambiar o establecer la contraseña de usuario en Linux

Comando passwd de Linux – Cambiar contraseña de usuario

Realización de restablecimientos de contraseña de Linux [paso a paso]