使用windows电脑SSH客户端链接Iphone手机的sshd服务(免越狱)

本文介绍了如何使用SSH服务将iPhone作为一台电脑来使用,主要步骤包括在手机上安装iSH,设置局域网,安装并配置sshd服务,以及通过电脑SSH客户端(如SecureCRT)连接手机进行文件操作。过程中可能遇到的公钥交换问题和解决方法也进行了说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近有需求使用电脑导出手机中特定app的文件。

当然可以直接连上数据线将手机中的文件下载下来。

为了能做到代码自动化导出,将手机作为一台电脑使用,将手机中的文件导出来。

关键问题是如何将手机作为电脑使用,这里有几个步骤(我使用的是Iphone手机)。

  • 1.在手机上安装一个SSH的APP,这里我使用的是iSH。
  • 2.组网:将手机和电脑连上同一个wifi
  • 2.手机打开iSH,安装sshd服务
  • 3.使用电脑ssh客户端链接手机的sshd服务

一、手机下载SSH的APP

这里我使用是iphone手机,安装的是iSH。安卓手机可以使用Termux

image-20230201133808823

二、组网

将手机和电脑连上同一个wifi,保证手机和电脑在同一个局域网内。并找到手机在该wifi下的ip是多少。

image-20230201134841661

这里可以看到,手机在该wifi下的内网ip是:192.168.17.50

可以在电脑端ping一下该ip,如果ping的通,说明电脑和手机直接的网络是通的:

image-20230201135252601

三、通过手机iSH安装sshd服务

打开手机安装的app: iSH:

image-20230201135709365

上面线上了欢迎标语Welcome to Alpine!,和安装软件使用的命令(apk add)。

1.安装常用命令

Alpine是Linux发行版的一种。类似Redhat、CentOS、Ubantu等。这里需要注意的是Alpine和常用的linus命令有一些命令不一样,这里需要先安装几个软件包:openssh openrc net-tools network-extras busybox-extras;这些软件包中有 ssh sshd service telnet netstat 等命令。

安装语句:

wxl-iPhone:~#   apk add   openssh  openrc net-tools network-extras  busybox-extras

其中sshd就是openssh包中的命令(/usr/sbin/sshd)。

2.修改sshd配置文件

wxl-iPhone:~# vi  /etc/ssh/sshd_config

找到PermitRootLogin参数,将值改成yes,表示允许使用root账号登陆。

可以看到sshd服务的端口号默认是22。

image-20230201141908927

Alpine的vi命令使用和CentOS一样,快捷键也一样。需要注意的是从编辑模式退出来,使用电脑键盘的Esc键,手机上使用:

image-20230201142200162

3.启动sshd服务

/usr/sbin/sshd                # 启动sshd服务
service sshd status           # 查看sshd服务运行状态
service sshd restart          # 重启sshd服务

image-20230201142754428

四、电脑SSH客户端链接Iphone手机的sshd服务

SecureCRT链接情况:

image-20230201112411391

配置完成后,链接时报错:

Key exchange failed.
No compatible key exchange method. The server supports these methods: curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256

报错信息表明:公钥交换失败,没有兼容的密钥交换方法。 这是因为我的SecureCRT版本中的"Key exchange"部分(见上图)和Iphone手机端的秘钥交换方法不一致。如果上述无法解决这个问题,建议升级SecureCRT软件版本或者使用尝试其他的SSH客户端,如Xshell、putty等。

这是我使用windows上安装的Git自带的SSH客户端使用ssh命令链接的(也可以使用windows的cmd命令窗口链接):

$ ssh root@192.168.17.50
root@192.168.17.50's password:
Welcome to Alpine!

You can install packages with: apk add <package>

You may change this message by editing /etc/motd.

wxl-iPhone:~#
wxl-iPhone:~#
wxl-iPhone:~#

出现Welcome to Alpine!表示链接成功。Alpine是Linux发行版的一种。类似Redhat、CentOS、Ubantu等。

image-20230201122048139

链接失败问题解决

  • 如果出现Connection timed out:
Lenovo@DESKTOP-D6V7C5G MINGW64 ~/.ssh
$ ssh root@192.168.17.50
ssh: connect to host 192.168.17.50 port 22: Connection timed out

可能是手机端的sshd服务未启动,需要在手机端启动sshd服务、或重启sshd服务。

  • 如果出现Connection refused:
Lenovo@DESKTOP-D6V7C5G MINGW64 ~/.ssh
$ ssh root@192.168.17.50
ssh: connect to host 192.168.17.50 port 22: Connection refused

是因为手机端不认识当前的电脑客户端。需要将电脑端的/.ssh/id_rsa.pub内部的公钥信息拷贝到手机的/.ssh/authorized_key文件内后重新连接。

下图是电脑端的执行情况和电脑公钥id_rsa.pub信息:

image-20230201122348251

下图是手机端的authorized_key信息(如果文件不存在,需要新建文件):

image-20230201135609421

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值