如何在 iOS 上启动 ssh 服务器?

Dre*_*rew 5 networking ssh iphone openssh ios

我无法通过 ssh 连接到我的 iPhone。设备已越狱并安装了 openssh:

$ ssh -V
OpenSSH 6.7p1, OpenSSL 0.9.8zg 11 Jun 2015
Run Code Online (Sandbox Code Playgroud)

我发现由于某种原因它没有启动服务器进程(我的其他帖子:无法 ssh 到我的 iphone:ssh_exchange_identification:连接被远程主机关闭

虽然我已经在我的iPhone上运行(作为root):

# launchctl load /Library/LaunchDaemons/com.openssh.sshd.plist
Run Code Online (Sandbox Code Playgroud)

$ ps aux | grep [s]shd
Run Code Online (Sandbox Code Playgroud)

不返回任何内容,而不是类似以下内容:

root 749 0.0 0.0 55164 5428 ? Ss Aug09 0:00 /usr/sbin/sshd -D
Run Code Online (Sandbox Code Playgroud)

那么就有一个问题:

如何在 iPhone 上启动 ssh 服务器?

和/或

验证安装是否正确?

编辑:

好吧,我明白了!

所以$(which sshd)给我返回了类似的东西:

Could not load host key: /etc/ssh/ssh_host_rsa_key
Could not load host key: /etc/ssh/ssh_host_dsa_key
Could not load host key: /etc/ssh/ssh_host_ecdsa_key
Disabling protocol version 2. Could not load host key
sshd: no hostkeys available -- exiting.
Run Code Online (Sandbox Code Playgroud)

所以我在网上找到了这个解决方案: https://bbs.archlinux.org/viewtopic.php ?id=165382

在我的 iPhone 上我运行:

$ su
# $(which ssh-keygen) -A
# $(which sshd)
Run Code Online (Sandbox Code Playgroud)

然后从我的笔记本电脑上 nmaped iphone(检查它是否有效):

sudo nmap -sS -sV -p 22 iphone.local
Starting Nmap 6.47 ( http://nmap.org ) at 2015-08-09 18:00 PDT
Nmap scan report for iphone.local (192.168.1.53)
Host is up (0.058s latency).
PORT   STATE SERVICE VERSION
22/tcp open  ssh     OpenSSH 6.7 (protocol 2.0)
MAC Address: D8:BB:2C:83:F8:84 (Unknown)
Run Code Online (Sandbox Code Playgroud)

完毕!

Ale*_*ies 3

尝试在前台运行 sshd 以证明安装正确:

  1. 找到它:which sshd
  2. 运行:sshd
  3. 报告输出

你可以尝试sshd | tee ~/ssh.out(如果IOS有'tee'),否则sshd >> ~/ssh.out