Pregunta

I necesidad de sincronizar una cuenta de usuario y la contraseña a una fuente externa en un sistema con busybox y openssl instalado. Cuando la fuente externa dice que mi sistema para actualizar las credenciales, ¿cómo cambio la contraseña del usuario en un guión? Voy a tener la contraseña en texto plano.

Esto tiene que ser automatizado, y por lo que puedo decir passwd busybox es interactivo y yo particularmente no quiere escribir un guión de tipo esperar para passwd si eso es posible. Parece que openssl puede generar hashes de contraseñas ( openssl passwd -1 -sal "ABCDEFGH" {password} ), pero voy a tener que modificar el archivo / etc / shadow directamente?

estos los comandos disponibles.

¿Fue útil?

Solución

Puede escribir un pequeño script como el siguiente para actualizar la contraseña. Poner el texto siguiente en un archivo y ejecutarlo. Se va a cambiar su contraseña.

#! / Bin / sh
passwd << EOF



EOF

Otros consejos

Resulta que las versiones actuales de busybox tener chpasswd ( código fuente ). chpasswd toma un nombre de usuario par de colon delimitado: contraseña en la entrada estándar. No sé si puedo actualizar el busybox en mi sistema, pero voy a dejar esta respuesta en caso de que alguien viene a buscar.

A partir de la documentación busybox:

chpasswd
chpasswd [--md5|--encrypted]

Read user:password from stdin and update /etc/passwd

Options:

        -e,--encrypted  Supplied passwords are in encrypted form
        -m,--md5        Use MD5 encryption instead of DES
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top