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:

$ chpasswd

y proporcioné la siguiente entrada:

himanshu:thisismynewpassword789
test:latestpassword123

Nota1: 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] | chpasswd

Por ejemplo:

cat newpass.txt | chpasswd

Ten 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 DES

P5. ¿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 -e

Conclusió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.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.