无法在Android中添加主机到“known_hosts” -- ssh 领域 android 相关 的问题

Cannot add host to “known_hosts” in Android


4
vote

问题

中文

我正在使用ssh从我的Android手机连接到我的NAS。 私钥在我的电脑上生成,然后放在手机的SD卡文件夹中。 所以我正在使用身份标志告诉SSH在哪里找到密钥文件,因此

  ssh -i /storage/sdcard/key -p 1000 admin@192.168.10.10   

每次尝试连接时,我都会收到"无法建立的主机真实性" 的消息。所以我被问到我是否想要继续连接,我每次都要手动地说"是" 。

对于某些主机不能添加到已知_hosts,因此我每次都会被问到手动确认。我试图在我的设备上找到".ssh" ,但我找不到它。

  Failed to add the host to the list of known hosts (/data/.ssh/known_hosts)   

可以有人帮忙吗?

谢谢。

编辑:我手动创建/data/.ssh/known_hosts但问题仍然存在

英文原文

I'm connecting from my Android handset to my NAS, using SSH. The private key was generated on my PC and then placed in the sd card folder of the phone. So I'm using the identity flag to tell ssh where to find the key file, so

ssh -i /storage/sdcard/key -p 1000 admin@192.168.10.10 

Every time I try to connect I get the message that "the authenticity of host can't be established". So I am asked whether I want to continue connecting and I have to manually say "yes" every time.

For some the host cannot be added to known_hosts and so I get asked every time to confirm manually. I tried to find ".ssh" on my device but I can't find it.

Failed to add the host to the list of known hosts (/data/.ssh/known_hosts) 

Can someone please help?

Thanks.

EDIT: I have manually created /data/.ssh/known_hosts but the problem persists

  
       
       

回答列表

2
 
vote

原因可能是权限不足。应用程序不能简单地选择创建以下目录 /data (除了自己的 /data/<package_name> 之外,它已在安装应用程序时已创建)。所以这就是它首先失败的原因。

甚至在使用"root powers" 之后创建 /data/.ssh 目录,并放一个(很可能是空的) known_hosts 文件,问题可能是一样的:由创建它们(root)的用户拥有的哪些资产,并且应用程序可能无法进入目录,更不用说地写入文件。

此可能有两种可能的解决方案。首先选择自己授予app SUPER_USER 权限。如果这对您有很好(而且您信任该应用程序),您的问题已经消失了。当然,这需要应用程序来请求 SUPER_USER 权限,这显然在您的情况下。

更严格的方法将向目录和文件授予目录和文件的正确权限。 chown 它到app的用户,或 chmod 适当。如果拥有该应用程序,只有此应用程序只能在那里访问,这将是最好的解决方案。为此,您首先需要弄清楚用户可以完成的用户。使用 ls -l /data/<package_name> (用app的包名称替换 <package_name> ),然后执行 /data/<package_name>0 。

 

The reason could be insufficient permissions. An app cannot simply chose to create a directory below /data (other than its own, /data/<package_name>, which is already created by the Android system when the app is being installed). So this was why it failed in the first place.

Even after you used your "root powers" to create the /data/.ssh directory, and put a (most likely empty) known_hosts file there, the issue was probably the same: both where owned by the user who created them (root), and the app might not have been able to enter the directory, let alone to write into the file.

There are two possible solutions to this. The first you chose yourself was granting the app SUPER_USER privileges. If this is fine with you (and you trust the app for that), your issue is gone with that. Of course this requires the app to request the SUPER_USER permission, which it obviously does in your case.

A more restrictive approach would have been granting the correct privileges to the directory and the file, by e.g. chown it to the app's user, or chmod appropriately. If owned by that app, only this app would have access there, which would be the best solution. For this, you would first need to figure out the user, which could be done e.g. using ls -l /data/<package_name> (replace <package_name> with the package name of the app), and then do a chown -R <user>:<group> /data/.ssh.

 
 

相关问题

3  RDP客户端可以使用ConnectBot创建的SSH隧道?  ( Rdp client that can use an ssh tunnel created by connectbot ) 
我想用RDP到达我的家用电脑,但由于安全原因,我想在SSH隧道中进行。是否有任何用于Android的RDP客户端可以设置为使用ConnectBot创建的SSH隧道? 谢谢! ...

14  如何使用终端命令返回主屏幕?  ( How to return to the home screen with a terminal command ) 
是否有终端命令转到主屏幕? 我需要通过ssh 来做这个,所以我不能只推动"home" 按钮,我需要发送命令行行动.. ...

3  使用VPS作为代理  ( Using a vps as a proxy ) 
我正在尝试使用我的VPS Running Cent OS作为来自我的Galaxy S3运行Cyanogen Mod 9. 我可以使用connectbot连接到我的vps。在该计划中,我将港口转发至: 类型:本地 源端口:8080 目的地:localhost:80 我正在使用Firefox浏览器,具有代理移动0....

1  免费安装GCC?  ( Installing gcc for free ) 
我有一个rooted android设备,我想用作玩具服务器。我需要安装gcc,所以我可以ssh和编译其他软件。 如何安装gcc和我需要编译命令行二进制文件的任何libs /标头,而不购买c4droid等商业解决方案? ...

14  我怎么能看到我的adbkey的指纹?  ( How can i see the fingerprint of my adbkey ) 
您应该知道Android 4.2.2(或之前)介绍了adb访问的RSA键检查。 - 如果要允许访问,设备立即询问。 要避免每次询问,计算机都会呈现一个RSA密钥,可以永久接受。 手机上的对话框显示RSA密钥指纹。 - 在Linux中,公共/密钥对在这里: ~/.android/adbkey(.pub) 。 如何显示该...

1  如何在Cyanogenmod 7上修复PWD(打印工作目录)?  ( How do i fix pwd print working directory on cyanogenmod 7 ) 
我想使用winscp通过无线将数据传输到我的手机。我已经在手机上启用了DaveBear。 Winscp连接,但在尝试 pwd 之后崩溃。使用Putty登录,我可以看到 pwd 返回一个空白行: /data/dropbear # pwd /data/dropbear # which pwd /system/xbi...

3  从Android连接到没有密码的SSH服务器  ( Connect from android to ssh server without password ) 
我想用我的Android手机在Ubuntu PC上运行脚本,只需点按,无密码或其他内容。 我到目前为止的事情:我设法通过ssh连接到pc,但我无法配置公钥身份验证(我正在使用cm9,因为它很重要)。我可以在手机上创建一个RSA键(并在服务器上存储它),但它就像它连接时不使用它,所以我尝试使用"SSH -I" 标志,但...

1  在Android中是否有任何SSH操作系统支持?  ( Is there any ssh os support in android ) 
我正在阅读文章 jolla和ssh推送旗鱼作为"欧洲替代" 移动OS 。 我在手机中使用了SSH的第三方应用程序,但希望有支持操作系统。 如何在Android中获取OS支持的SSH? ...

1  通过网络安全ADB连接  ( Secure adb connection over network ) 
我正在使用Geniatech ATV Android Set顶级框,用于当前项目的Android 4.2.2。我可能会把这些设备放在像购物中心这样的公共场所。这些框通过电缆或无线连接到本地网络。 我有一个VPN连接到SSH远程进入框(使用Debian套件),并在框中启用USB调试,以便我使用adb访问权限,我用于C...

6  从远程计算机运行Android应用程序  ( Run android application from remote computer ) 
我在stackoverflow上问了这个问题,但我认为应该问它... 我需要通过ssh从远程计算机(在同一网络中)运行我的android应用程序(不使用adb)。我该怎么做? 谢谢, 贝利曼 ...

45  有没有一些SSH服务器用于Android?  ( Is there some ssh server for android ) 
锁定。这个问题及其答案是锁定,因为问题是off-top,但具有历史意义。它目前没有接受新的答案或互动。 是有android的ssh服务器(例如openssh for ubuntu),这将允...

14  命令从手机安装应用程序?  ( Command to install app from phone ) 
我想把我的手机搞,下载APK,远程安装。在手机上有一个命令,可以让我这样做吗? EG: wget localhost/file.apk android_install file.apk 需要自动安装,因为我只是意外擦拭我的SD卡和所有内容。 :( ...

0  ssh到ubuntu桌面  ( Ssh to ubuntu desktop ) 
我已经使用动态DNS服务(NoIP)在Home上的Ubuntu桌面上设置了SSH服务器。我有一个Wi-Fi Android平板电脑运行Android版本4.4.2。在我的平板电脑上,我可以连接到其他SSH服务器,例如我的大学服务器。但是,我不能直接从我的平板电脑连接到我的桌面;每次尝试超时。但我能够连接到我的大学的服...

2  来自Android的SSHFS到NAS  ( Sshfs from android to nas ) 
我正在尝试通过 abcdefghijklmnabcdefghijklmnobcdefghijklmn0 安装到我的NAS上的文件夹上安装任何文件夹。目标将是例如 /sdcard/My Documents/My Recordings 文件夹设置,因此它几乎无限制了。我安装了通过 adb shell 连接。在 /data...

5  我如何从我的电脑中探索我的Android  ( How can i explore my android from my computer ) 
我想探索内部内存的内容。 我有一个带有终端仿真器的扎根手机,允许我浏览它。 问题是它非常难以使用(小屏幕,没有物理键盘),我无法将文件从内存从内存传输到我的计算机以检查它(也许内存 - &gt; SD,然后是SD-&gt;计算机但不是最简单的)。 有没有办法拥有一个SSH守护程序(我正在连接,但它只是一个客户)在手机...

12  从其他控制台访问Termux用户环境  ( Accessing termux user environment from other consoles ) 
我最近开始使用惊人的 termux 终端应用程序和Linux环境。它提供了丰富的全功能终端实用程序。能够从其他控制台访问这些实用程序,尤其是在通过 ssh 或 adb shell 连接时访问这些实用程序。我设法通过设置 PATH 和 LD_LIBRARY_PATH 环境变量来进行一些功能,以与Termux shell...

5  CM7:如何在同一网络上启用无密码SSH登录?  ( Cm7 how to enable passwordless ssh login on same network ) 
我正在运行cyanogenmod 7,我想在我的网络上启用密码ssh登录我的主机计算机,但只有在手机上通过同一网络访问服务器时才。我应该/哪里应该把我的.ssh / known_hosts文件置于启用这个? ...

6  如何在Android上安装Dropbear Ssh?  ( How do i install dropbear ssh on android ) 
我想在我的64位Android 5.1设备上安装dropbear ssh,但似乎所有安装教程和how-toS都消失了或包含损坏文件/下载链接。 可以有人请解释完成这一点的正确方法吗? 更多详细信息: 这个问题来自这个另一个:尝试在现代(2015年9月至少)有(几乎)失败的Android设备上安装一些SSH服务器,...

2  像root一样运行ConnectBot? [复制]  ( Run connectbot as root ) 
这个问题已经在这里有一个答案: 如何为不请求的应用程序提供root访问权限它? (1答) ...

2  ConnectBot是否支持SSH隧道/使用Pubkey进行身份验证/?  ( Does connectbot supports ssh tunnel authenticating with pubkey ) 
我可以将CONNICBOT连接到SSH服务器到不使用密码的SSH隧道,因为它才使用"SSH PUBKEY登录" ? 谢谢。 ...

5  通过sshdroid(或adb shell)运行tasker任务  ( Running a tasker task via sshdroid or adb shell ) 
我正在尝试通过sshdroid从adb shell手动运行任务任务。我是 在Putty中运行以下内容(Windows SSH客户端): am broadcast -a net.dinglisch.android.tasker.action_task -es task_name 沉默 我得到: 广播:意图{ac...

1  在密钥安全SSH连接上转发端口  ( Forward port over key secured ssh connection ) 
我在桌面上运行个人Web服务。在我的笔记本电脑上,我使用 ssh -L 打开它的连接,如下所示: ssh -L <port>:<remote host>:<port> 对于Mac和Linux而言,它可以很好。如何在Android上做同样的事情? ...

2  可以将Android手机SSH超过3G?  ( Possible to ssh into android phone over 3g ) 
如果手机远程连接但在3G时,可以在Android手机上运行SSH外壳吗?我有我的手机远程并通过3g发送数据,但我可能想在它上改变一些东西。我已经考虑过 1)手机从HTTP请求接收文本并将其riunning作为康纳德 2)在手机上运行SSH壳牌 别的吗? 感谢 ...

16  是否有可能使用Android设备作为SSH的远程计算机作为X11服务器?  ( Is it possible to use an android device as x11 server for a remote machine over ) 
当我的台式电脑已启动时,我可以用我的笔记本连接到它,即使通过互联网(我设置了我的路由器将ssh转发到我的台式计算机)。我的桌面计算机运行GNU / Linux(Ubuntu Distro),所以我可以用x终端使用它。我的笔记本也经营Ubuntu。我只需要 ssh -X desktop.ip.addr ,然后我可以在桌...

26  自动连接到Wi-Fi节点,但通过加密路由所有内容  ( Automatically connect to wi fi nodes but route everything through encryption ) 
与我关于VPNS 的问题,有没有办法让我的手机自动连接到未加密的接入点,但通过家庭网络路由所有流量? 这将是一种类似的间歇性,但是自由,数据计划的替代方案,只需同步我的电子邮件并且在看到开放接入点时会自动同步,但没有应用程序发送密码 cookie 在清除a htth://en.wikipedia.org/wiki/r...

6  Android键盘并重新映射Ctrl键  ( Android keyboard and remapping the ctrl key ) 
我有一个三星Galaxy 10.1运行Android版本4.1.2。我正在使用SSH来远程连接到我的主机,运行Ubuntu 12.04 LTS。一旦我连接,我就在Emacs 24.3中完成了所有工作。我还有一个蓝牙键盘。 我的问题是重新映射 caps lock 键,用作 ctrl 键。我通过更改终端选项中的设置与我的...

7  SSH隧道与Android  ( Ssh tunnel with android ) 
没有生根,我如何将隧道隧道运行sshd? 我需要SSH隧道到VNC主页,但我不相信VNC,所以我想用SSH使用它来使它安全! 谢谢你的任何帮助! ...

6  在Android上的SSH和Vim / LaTex / C ++最舒适的方法是什么?  ( What is the most comfortable way to ssh and vim latex c on android ) 
如果我应该得到机器人x,我就是辩论。我想用它来工作,意思是乳胶和C ++中的代码。我使用vim。 我知道它可以使用connectbot。但是可能并不意味着我可以在咖啡店替代笔记本电脑。是否有人使用蓝牙键盘与Android设备,如此幸福( http://www.fourhourworkweek.com/blog/201...

1  通过连接机器人的互联网  ( Ssh internet through connect bot ) 
是否有可能从Internet应用程序转发到Connect Bot转发端口中的所有流量? ...

3  连接到Linux上的X11  ( Connecting to x11 on linux ) 
我曾经在ipad上与ssh与ssh连接到iPad上的学校服务器http://ituees.apple.com/us/app/ish-ssh-vnc-console/id287765826?mt=8"rel = "Nofoloush Noreferrer" > ISSH ,可以用作X11服务器,并通过SSH和X11远程...

相关问题

3  RDP客户端可以使用ConnectBot创建的SSH隧道? 
14  如何使用终端命令返回主屏幕? 
3  使用VPS作为代理 
1  免费安装GCC? 
14  我怎么能看到我的adbkey的指纹? 
1  如何在Cyanogenmod 7上修复PWD(打印工作目录)? 
3  从Android连接到没有密码的SSH服务器 
1  在Android中是否有任何SSH操作系统支持? 
1  通过网络安全ADB连接 
6  从远程计算机运行Android应用程序 
45  有没有一些SSH服务器用于Android? 
14  命令从手机安装应用程序? 
0  ssh到ubuntu桌面 
2  来自Android的SSHFS到NAS 
5  我如何从我的电脑中探索我的Android 
12  从其他控制台访问Termux用户环境 
5  CM7:如何在同一网络上启用无密码SSH登录? 
6  如何在Android上安装Dropbear Ssh? 
2  像root一样运行ConnectBot? [复制] 
2  ConnectBot是否支持SSH隧道/使用Pubkey进行身份验证/? 
5  通过sshdroid(或adb shell)运行tasker任务 
1  在密钥安全SSH连接上转发端口 
2  可以将Android手机SSH超过3G? 
16  是否有可能使用Android设备作为SSH的远程计算机作为X11服务器? 
26  自动连接到Wi-Fi节点,但通过加密路由所有内容 
6  Android键盘并重新映射Ctrl键 
7  SSH隧道与Android 
6  在Android上的SSH和Vim / LaTex / C ++最舒适的方法是什么? 
1  通过连接机器人的互联网 
3  连接到Linux上的X11 



© 2021 it.wenda123.org All Rights Reserved. 问答之家 版权所有


Licensed under cc by-sa 3.0 with attribution required.