Me estoy conectando desde mi teléfono Android a mi NAS, utilizando SSH. La clave privada fue generada en mi PC y luego colocada en la carpeta de la tarjeta sd del teléfono. Así que estoy usando la bandera de la identidad para decirle a ssh dónde encontrar el archivo de la clave, por lo que
ssh -i /storage/sdcard/key -p 1000 admin@192.168.10.10
Cada vez que intento conectarme recibo el mensaje de que "no se puede establecer la autenticidad del host". Entonces se me pregunta si quiero seguir conectándome y tengo que decir manualmente "sí" cada vez.
Para algunos el host no puede ser añadido a known_hosts y por eso se me pide cada vez que confirme manualmente. Traté de encontrar ".ssh" en mi dispositivo pero no lo encuentro.
Failed to add the host to the list of known hosts (/data/.ssh/known_hosts)
¿Puede alguien ayudar?
Gracias.
EDIT: He creado manualmente /data/.ssh/known_hosts pero el problema persiste
0 votos
¿Has comprobado los permisos de ambos, el directorio
/data/.ssh
y el archivo/data/.ssh/known_hosts
para asegurar que tu aplicación SSH pueda acceder al directorio y escribir en el archivo?0 votos
Izzy, muchas gracias. Era un problema de permisos que ahora se ha solucionado ya que lo estoy ejecutando como su.
0 votos
Me alegro de leerlo. Lo he resumido en una respuesta, incluyendo algunos detalles más de lo que tenía en mente. Te invito a "aceptar" la respuesta (haz clic en la marca de verificación junto a ella), ya que evidentemente ha resuelto tu problema :)
0 votos
Hay algo más que la forma en que se formula la pregunta. En realidad, dado que Android utiliza diferentes cuentas para diferentes contextos, el mero hecho de crear
/data/.ssh
no será muy bueno. O bien estableces permisos mínimos y sólo funcionará en un contexto (por ejemplo, adb shell, un emulador de terminal, una aplicación de túnel) o estableces permisos amplios y cualquier aplicación podrá leer y escribir tuknown_hosts
lo que supone un riesgo para la seguridad. Una solución real sería decirle a ssh que use un directorio diferente dependiendo del contexto de llamada. He probado con variables de entornoHOME
yANDROID_DATA
fallar hasta ahora.