使用正确密码仍无法SSH连接,按教程操作后遇权限拒绝
解决iOS设备iproxy映射后SSH密码登录被拒的问题
我之前折腾越狱iOS设备的SSH连接时也碰到过一模一样的问题!结合我的排查经验,给你几个靠谱的解决方向:
先确认root用户的SSH登录权限是否开启
有些越狱环境默认会禁用root用户的SSH直接登录,或者优先让mobile用户登录。你可以先尝试用mobile用户连接:ssh -p 2222 mobile@localhost如果能成功连上,再输入
su root切换到root用户,输入你设置的密码试试。要是这能行,那就是root直接登录被限制了,你需要去设备的/etc/ssh/sshd_config里找到PermitRootLogin项,改成PermitRootLogin yes,然后重启SSH服务:launchctl stop com.openssh.sshd launchctl start com.openssh.sshd验证你修改的root密码是否真的生效了
就算你在设备上用passwd改了密码,有时候也需要重启设备或者SSH服务才能让新密码生效。另外,很多越狱工具默认的root密码是alpine,你不妨先试试用这个默认密码登录,说不定你之前的密码修改操作没成功?检查iproxy的端口映射是否真的正常
虽然你说iproxy运行正常,但可以用命令再确认一下:lsof -i :2222看看输出里有没有iproxy进程在监听2222端口,并且关联到设备的22端口。如果设备中途断开过重连,iproxy的映射可能会失效,这时候重启iproxy进程就好了。
强制跳过SSH密钥验证,只用密码登录
如果你的本地SSH客户端有缓存的密钥,或者设备上配置了密钥登录,可能会跳过密码验证直接失败。你可以用下面的命令强制走密码登录:ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no -p 2222 root@localhost
内容的提问来源于stack exchange,提问作者Biplov




