¿Cómo encontrar un usuario con contraseña vacía en Linux?

13

¿Cómo encontrar un usuario con contraseña vacía en Linux?

met78
fuente

Respuestas:

15

Esta es una versión más corta y más precisa de la respuesta de AndreKR:

sudo getent shadow | grep '^[^:]*:.\?:' | cut -d: -f1

Solo tiene una llamada cuty encontrará entradas de cualquiera de los siguientes formularios:

foo:!: ...
bar:*: ...
baz:: ...

Si solo quieres estar verdaderamente vacío:

sudo getent shadow | grep '^[^:]*::' | cut -d: -f1

Si tiene GNU grep, puede eliminar por cutcompleto:

sudo getent shadow | grep -Po '^[^:]*(?=:.?:)'

o

sudo getent shadow | grep -Po '^[^:]*(?=::)'
Pausado hasta nuevo aviso.
fuente
8
getent shadow | cut -d: -f1-2 | grep ':$' | cut -d: -f1
AndreKR
fuente
2

Su entrada /etc/shadow/no tendrá hash de contraseña. Sin embargo, deberá iniciar sesión como root para poder verlos.

sysadmin1138
fuente
2

La contraseña cifrada es el segundo campo en / etc / shadow.

Si el segundo campo está vacío, la contraseña está vacía:

awk -F":" '($2 == "") {print $1}' /etc/shadow

!y *es una contraseña no válida (el usuario no puede iniciar sesión):

awk -F":" '($2 == "!" || $2 == "*") {print $1}' /etc/shadow
ooshro
fuente
0

¿Tiene el usuario " usuario " una contraseña vacía?

getent shadow | grep 'user:\$' | cut -d':' -f 2 | grep '\w' -c -m 1  

devuelve 1 en caso de error: la contraseña no está vacía
devuelve 0 en caso de éxito: se establece una contraseña

Espero que esto sea exacto

LittleEaster
fuente