Almacenar la contraseña en un archivo de opciones protegido
Si puede confiar en [*] la seguridad de la computadora remota, puede almacenar la contraseña en un archivo de opciones debidamente protegido, como se sugiere en el capítulo Pautas para el usuario final para la seguridad de la contraseña del manual, sin la necesidad de comunicarse ssh
o escribir hora.
Específicamente, puede agregar una línea en la sección [cliente] del archivo .my.cnf
en su directorio de inicio:
[client]
password=your_pass
Por supuesto, tiene que evitar que ese archivo sea accesible para nadie más que para usted, configurando el modo de acceso a archivos a 400 o 600 con, por ejemplo,
chmod 600 ~/.my.cnf
Entonces puedes usar algo como
ssh user@server 'mysql -u user110971 --defaults-file=/home/user110971/mysql-opts'
¿Dónde user110971
está el nombre de usuario de su cuenta?
Obligar a ssh a asignar un pseudo tty ( ssh -t
)
Este problema ocurre cada vez que envía un comando ssh
y necesita insertar la entrada porque, por defecto, ssh
no asignará un pseudo-tty.
Puede forzar la asignación de tty con la opción -t
(incluso más de una si es necesario):
-t
Forzar asignación de pseudo-tty. Esto se puede usar para ejecutar programas arbitrarios basados en pantalla en una máquina remota, lo que puede ser muy útil, por ejemplo, al implementar servicios de menú. Múltiples -t
opciones fuerzan la asignación de tty, incluso si ssh no tiene tty local.
Como puede leer en esta publicación de Debian (Jul_11_2008) sobre sudo
, es un viejo problema que le encanta volver a aparecer:
ssh user@server "sudo ls"
password: password
Y se te muestra la contraseña
La solución es forzar a ssh a asignar un pseudo-tty, con el indicador -t:
ssh -t user@server sudo ls
Nota:
[*] Si puedes confiar en dejar la contraseña en un archivo accesible solo para ti y rootear en elcliente en funcionamiento .
Si es posible reiniciar la computadora remota cambiando el sistema operativo o eliminar el HDD, la computadora no puede considerarse completamente segura ... pero en ese caso la base de datos en sí misma no será segura.