Aquí en HowtoForge, ya hemos discutido el comando passwd, que le permite cambiar la contraseña de su cuenta en un sistema Linux. Pero, ¿qué sucede si desea cambiar las contraseñas de varios usuarios de una sola vez? Bueno, existe un comando - chpasswd - que te permite hacer esto.
En este tutorial, discutiremos los conceptos básicos de esta herramienta utilizando algunos ejemplos fáciles de entender. Pero antes de hacerlo, vale la pena mencionar que todos los ejemplos aquí se probaron en una máquina con Ubuntu 18.04 LTS.
Comando Linux chpasswd
El comando chpasswd en Linux le permite actualizar contraseñas en modo por lotes. La siguiente es su sintaxis:
chpasswd [options]
Y esto es lo que dice la página de manual de la herramienta al respecto:
The chpasswd command reads a list of user name and password pairs from
standard input and uses this information to update a group of existing
users. Each line is of the format:
user_name:password
By default the passwords must be supplied in clear-text, and are
encrypted by chpasswd. Also the password age will be updated, if
present.
Los siguientes son algunos ejemplos de preguntas y respuestas que le darán una buena idea de cómo funciona chpasswd.
P1. ¿Cómo usar el comando chpasswd?
El uso básico, como se explica en la sección de introducción anterior, es bastante sencillo. Simplemente ejecute el comando chpasswd (con privilegios de raíz) sin ninguna opción e ingrese la nueva contraseña en formato 'nombre de usuario:contraseña'.
Por ejemplo, ejecuté el comando:
$ chpasswd
y proporcione la siguiente entrada:
himanshu:thisismynewpassword789
test:latestpassword123
Nota 1 :Como chpasswd espera que ingrese la entrada en stdin, no olvide presionar Ctrl+D una vez que haya terminado de ingresar los nombres de usuario y las nuevas contraseñas.
Nota 2 :Las contraseñas utilizadas en el ejemplo aquí son solo para fines de demostración, no las use de ninguna manera.
P2. ¿Cómo hacer que chpasswd lea información del archivo?
A veces, es posible que desee que la herramienta lea la información de entrada de un archivo (en lugar de la entrada estándar). Esto se puede hacer de la siguiente manera:
cat [FILENAME] | chpasswd
Por ejemplo:
cat newpass.txt | chpasswd
Tenga en cuenta que el formato de entrada sigue siendo el mismo:'nombre de usuario:contraseña', solo que ahora está escrito en un archivo.
P3. ¿Cómo maneja chpasswd el cifrado?
Así es como la página de manual de la herramienta explica esto:
By default, passwords are encrypted by PAM, but (even if not
recommended) you can select a different encryption method with the -e,
-m, or -c options.
Except when PAM is used to encrypt the passwords,chpasswd first updates
all the passwords in memory, and then commits all the changes to disk
if no errors occurred for any user.
When PAM is used to encrypt the passwords (and update the passwords in
the system database) then if a password cannot be updated chpasswd
continues updating the passwords of the next users, and will return an
error code on exit.
This command is intended to be used in a large system environment where
many accounts are created at a single time.
P4. ¿Cómo habilitar un método de encriptación diferente?
Esto se puede hacer usando la opción de línea de comando -c. De forma predeterminada, como ya sabrá, PAM se usa como método de cifrado, pero si usa -c, puede especificar cualquiera de los siguientes:DES, MD5, NONE y SHA256 o SHA512 (siempre que su libc admita el método que elegir).
Por ejemplo:
chpasswd -c DES
P5. ¿Cómo decirle a chpasswd sobre la entrada encriptada?
Si lo desea, también puede proporcionar contraseñas cifradas en la entrada. Pero para eso, necesitas usar la opción -e para que chpasswd lo sepa.
chpasswd -e
Conclusión
El comando chpasswd generalmente lo usan los administradores del sistema o las personas encargadas de la administración de usuarios en una PC con Linux o una red, aunque no hay nada de malo en aprender sobre él, incluso si es un usuario normal. Aquí, hemos discutido varias de las principales opciones de línea de comandos de esta herramienta. Para obtener más información, diríjase a su página de manual.