美文网首页iOS学习笔记
使用OpenSSH连接越狱设备(填坑记)

使用OpenSSH连接越狱设备(填坑记)

作者: 退役程序员Franco | 来源:发表于2018-07-05 23:37 被阅读1次

解决REMOTE HOST IDENTIFICATION HAS CHANGED!

场景如下

 $ssh -p 2222 root@localhost
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
SHA256:uOKypDzp0fdgHbfhzKN9Ci3uiOG54Pmoi4CKOINarfM.
Please contact your system administrator.
Add correct host key in /Users/CHF/.ssh/known_hosts to get rid of this message.
Offending RSA key in /Users/CHF/.ssh/known_hosts:2
RSA host key for [localhost]:2222 has changed and you have requested strict checking.
Host key verification failed.

这里有一个关键词man-in-the-middle attack,先来看看wiki的解释:

中间人攻击(英语:Man-in-the-middle attack,缩写:MITM)是指攻击者与通讯的两端分别创建独立的联系,并交换其所收到的数据,使通讯的两端认为他们正在通过一个私密的连接与对方直接对话,但事实上整个会话都被攻击者完全控制。在中间人攻击中,攻击者可以拦截通讯双方的通话并插入新的内容。

使用ssh连接一个新host的时候,会有下面的询问:

RSA key fingerprint is SHA256:uOKypDzp0fdgHbfhzKN9Ci3uiOG54Pmoi4CKOINarfM.
Are you sure you want to continue connecting (yes/no)? 

输入yes,ssh就会把这个host对应的公钥,保存在~/.ssh/known_hosts里面。
后面每一次的连接,都会校验host对应的公钥,与~/.ssh/known_hosts里面的是否匹配,以阻止中间人攻击。

连接越狱设备出现这种问题,是因为我们使用usb连接,host写死为localhost,不同手机的公钥当然不一样。

解决办法

~/.ssh/known_hosts中删除localhost对应的记录

[localhost]:2222 ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD5UwQeAoQX

解决无法免密登录的问题

使用 -v 打印debug信息

$ssh -v -p 2222 root@localhost

看到如下日志,Offering public key: RSA服务器没有返回,所以定位为越狱机问题

debug1: Offering public key: RSA SHA256:SUmzZ/w6OjWX1H3i1hqWiXlDgUQjUN7YmomMa7fNquk /Users/CHF/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password,keyboard-interactive

查看越狱机日志
/etc/syslog.conf这个是syslog服务的主要配置文件,根据定义的规则导向日志信息。

$cat /etc/syslog.conf
*.* /var/log/syslog
$cat /var/log/syslog | grep sshd

发现如下日志

sshd[10024]: Authentication refused: bad ownership or modes for directory /private/var/root

google搜索Authentication refused: bad ownership or modes for directory
得知改一下权限就可以解决

chmod 755 /private/var/root

相关文章

网友评论

    本文标题:使用OpenSSH连接越狱设备(填坑记)

    本文链接:https://www.haomeiwen.com/subject/zuimuftx.html