[LUG.ro] Como hacer para no mostrar una password por pantalla en un script de bash
Sebastián D. Criado
lugro@lugro.org.ar
Thu, 22 Apr 2004 17:04:47 -0300
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Tal vez les haya pasado alguna vez que tenían la necesidad de que algún script
en bash necesitara el ingreso de una password.
Este fue el problema que se le presentaba a un amigo que me pregunto como
hacer y como un curioso me puse a investigarlo.
El problema aparece cuando esta password ingresada es vista por la pantalla
usando el método "read".
Es posible a partir del programa stty el ocultar la password cuando se
ingresa, metiéndola en una variable de entorno, para despues usarla.
El programa stty sirve para mostrar o cambiar el seteo de la terminal.
Si se es muy paranoico, podrán setear la variable de entorno a "0"
inmediatamente despues de usarla.
La sintaxis de ejemplo a usar seria la siguiente
#!/bin/bash
#Primero guardamos en una variable el seteo de la terminal
STTY_ORIG=`stty -g`
#Sacamos el Eco de la consola, con lo cual no se ve lo que ingresamos
stty -echo
#Leamos la password y guardemosla en una variable
read SECRET
#Ponermo la terminal en el estado anterior
stty $STTY_ORIG
#Mostrar contenido de la variable
$echo $SECRET
exit(0)
bueno, enjoy
Saludos.-
- --
- --
Sebastián D. Criado - scriado@ciudad.com.ar
L.U.G.R.o - http://www.lugro.org.ar
GNU/Linux Registered User # 146768
- -------------------------------------------------------------------
"Si el Universo fuera un programa estaría hecho en C, y correría sobre
un sistema UNIX"
Anónimo.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (GNU/Linux)
iD8DBQFAiCVf8hmHQ8ZCg0IRAr35AKCSOg/xq/LVPncA3gIiqTKfvj9UnQCfU590
odsegQKycw6PMq1T1iiw6oI=
=AVI6
-----END PGP SIGNATURE-----