Comandos Linux · 3 min read · Dec 23, 2025
Tutorial del comando chpasswd de Linux para principiantes (5 ejemplos)

Aquí en HowtoForge, ya hemos discutido el comando passwd, que te permite cambiar la contraseña de tu cuenta en un sistema Linux. Pero, ¿qué pasa si quieres cambiar las contraseñas de múltiples usuarios de una 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 hacer eso, vale la pena mencionar que todos los ejemplos aquí han sido probados en una máquina Ubuntu 18.04 LTS.
Comando chpasswd de Linux
El comando chpasswd en Linux te permite actualizar contraseñas en modo por lotes. A continuación se muestra su sintaxis:
chpasswd [options]Y esto es lo que dice la página del manual de la herramienta sobre ella:
El comando chpasswd lee una lista de pares de nombre de usuario y contraseña de
la entrada estándar y utiliza esta información para actualizar un grupo de
usuarios existentes. Cada línea tiene el formato:
user_name:password
Por defecto, las contraseñas deben ser proporcionadas en texto claro, y son
encriptadas por chpasswd. También se actualizará la antigüedad de la contraseña,
si está presente.A continuación se presentan algunos ejemplos en formato de preguntas y respuestas que deberían darte una buena idea de cómo funciona chpasswd.
P1. ¿Cómo usar el comando chpasswd?
El uso básico, como se explicó en la sección de introducción anterior, es bastante sencillo. Simplemente ejecuta el comando chpasswd (con privilegios de root) sin ninguna opción, y escribe la nueva contraseña en formato ‘nombredeusuario:contraseña’.
Por ejemplo, ejecuté el comando:
$ chpasswdy proporcioné la siguiente entrada:
himanshu:thisismynewpassword789test:latestpassword123Nota1: Como chpasswd espera que ingreses la entrada en stdin, no olvides presionar Ctrl+D una vez que hayas terminado de ingresar nombres de usuario y nuevas contraseñas.
Nota2: Las contraseñas utilizadas en el ejemplo aquí son solo para fines de demostración, no las uses de ninguna manera.
P2. ¿Cómo hacer que chpasswd lea información de un archivo?
A veces, puede que desees que la herramienta lea información de entrada desde un archivo (en lugar de stdin). Esto se puede hacer de la siguiente manera:
cat [NOMBRE_DE_ARCHIVO] | chpasswdPor ejemplo:
cat newpass.txt | chpasswdTen en cuenta que el formato de entrada sigue siendo el mismo: ‘nombredeusuario:contraseña’, solo que ahora está escrito en un archivo.
P3. ¿Cómo maneja chpasswd la encriptación?
Así es como la página del manual de la herramienta explica esto:
Por defecto, las contraseñas son encriptadas por PAM, pero (incluso si no
se recomienda) puedes seleccionar un método de encriptación diferente con las opciones -e,
-m, o -c.
Excepto cuando se utiliza PAM para encriptar las contraseñas, chpasswd primero actualiza
todas las contraseñas en memoria, y luego comete todos los cambios en disco
si no ocurrieron errores para ningún usuario.
Cuando se utiliza PAM para encriptar las contraseñas (y actualizar las contraseñas en
la base de datos del sistema), entonces si una contraseña no puede ser actualizada, chpasswd
continúa actualizando las contraseñas de los siguientes usuarios, y devolverá un
código de error al salir.
Este comando está destinado a ser utilizado en un entorno de sistema grande donde
muchas cuentas se crean a la vez.P4. ¿Cómo habilitar un método de encriptación diferente?
Esto se puede hacer utilizando la opción de línea de comandos -c. Por defecto, como ya sabrás, PAM se utiliza como el método de encriptación, pero usando -c, puedes especificar cualquiera de los siguientes: DES, MD5, NONE, y SHA256 o SHA512 (siempre que tu libc soporte el método que elijas).
Por ejemplo:
chpasswd -c DESP5. ¿Cómo informar a chpasswd sobre la entrada encriptada?
Si lo deseas, también puedes proporcionar contraseñas encriptadas en la entrada. Pero para eso, necesitas usar la opción -e para que chpasswd lo sepa.
chpasswd -eConclusión
El comando chpasswd es utilizado generalmente por administradores de sistemas o personas encargadas de la gestión de usuarios en una PC Linux o en una red, aunque no hay ningún daño en aprender sobre él incluso si eres un usuario normal. Aquí, hemos discutido varias opciones importantes de línea de comandos de esta herramienta. Para aprender más, dirígete a su página de manual.
Recibe nuevas publicaciones en tu bandeja de entrada.
No spam. Cancela la suscripción en cualquier momento.