Contraseña perdida para un usuario en un servidor Linux: ¿cómo restablecerla?


17

En un servidor, un usuario 16040 ha perdido su contraseña. Tengo contraseña para root pero no tengo contraseña para el usuario 16040. ¿Cómo puedo restablecer su contraseña?

Con passwd 16040, Unix me pregunta la contraseña actual que no tengo. ¿Existe un comando para restablecer la contraseña de un usuario sin la contraseña actual?

passwd 16040
Changing password for 16040.
Current password for 16040@friesbie.com:

Respuestas:


24

Si se ejecuta passwd 16040como root, no se le pedirá la contraseña actual.

Después de cambiar la contraseña, debe considerar la emisión chage -d 0 16040. Esto establece la última fecha de cambio de contraseña en el pasado; suponiendo que las contraseñas estén expiradas en su sistema, esto obligará al usuario a cambiar su contraseña después de iniciar sesión. Esto les da la oportunidad de elegir una contraseña que solo ellos conocen.


3

Debe emitir passwd 16040como root ( sudo passwd 16040si su usuario está en el archivo sudoers) para cambiar su contraseña. No le pedirá el actual.

O, si tiene acceso físico al cuadro, puede agregarlo init=/bin/bashcomo parámetro del kernel para obtener acceso raíz y luego emitir passwd 16040.


3
Tener un aviso en los comandos en línea es bastante desconcertante y puede malinterpretarse fácilmente como parte del comando. Utilice solo las indicaciones en las comillas de bloque. Además, # >es bastante poco común y aquí >simplemente invita a ser malinterpretado como parte del comando: la práctica común es usar un simple #para rootshells y $no root.
Andreas Wiese el

Tienes razón, he editado mi respuesta en aras de la claridad. Gracias.
peperunas

1

Si no puede iniciar sesión directamente como root, puede intentar

  • sudo /usr/bin/passwd 16040.
  • sudo -i y después /usr/bin/passwd 16040

Supongo que passwdestá en / usr / bin (puede verificar con el comando which passwd)


sudo bashpara iniciar un rootshell es (aunque común) muy, muy mala sudopráctica. Es sudo -so sudo -i(non-login o login-shell, resp.). Esto incluso hace honor a su conjunto de shell predeterminado /etc/passwdsin tener que preocuparse por usted mismo. Además, bashsin una ruta completa es una mala idea en sí misma, ya que este sería uno de los primeros binarios falsos que un usuario malintencionado pondría en algún lugar $PATH.
Andreas Wiese

Estoy de acuerdo con la especificación de ruta completa y el uso de sudo -i, por lo que modifiqué la respuesta ... pero si habla de seguridad y la posibilidad de un troio oculto en el $PATHtal vez, es mejor evitar el uso, sudo -sya que agrega al menos el $USER/bindirectorio y todos los alias que puedas imaginar ... :-)
Hastur

Buen punto, de hecho, pero depende de la sudoconfiguración: la configuración predeterminada incluida sudono mantiene la $HOMEvariable establecida, por lo que terminaría teniendo sus propios archivos rc, no $SUDO_USERlos de.
Andreas Wiese
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.