我有一台平板电脑,通过USB连接到主机。(理想情况下,主机正在运行Windows,但是如果绝对必要,我也可以将主机切换为Ubuntu。)
我希望能够在没有RS-232,WiFi或其他网络连接的情况下通过SSH进入设备。我需要什么软件组合和设置才能实现此目的?
基本上,我希望能够拥有adb shell
,但对于平板电脑运行纯Ubuntu而非Android的情况。
该平板电脑恰好正在运行9.04,但如果需要,我很乐意对其进行升级。
我有一台平板电脑,通过USB连接到主机。(理想情况下,主机正在运行Windows,但是如果绝对必要,我也可以将主机切换为Ubuntu。)
我希望能够在没有RS-232,WiFi或其他网络连接的情况下通过SSH进入设备。我需要什么软件组合和设置才能实现此目的?
基本上,我希望能够拥有adb shell
,但对于平板电脑运行纯Ubuntu而非Android的情况。
该平板电脑恰好正在运行9.04,但如果需要,我很乐意对其进行升级。
Answers:
因此,要澄清一下,您想通过USB连接通过ssh从PC(运行Windows,但必须运行Ubuntu)连接到平板电脑(运行Ubuntu)吗?
我以前从未听说过这样做,但是Google搜索“通过USB的SSH”之类的内容时,让人们看到了很多热门歌曲,其中有人展示了如何使用WinSCP或Putty将装有OpenSSH的越狱iphone连接到Windows PC。以下是一些链接:
Ubuntu平板电脑可以轻松替换iphone,因为它已经安装了OpenSSH,但我对通过SSH连接到USB的隧道了解不多,除了SSH使用端口22。这两个教程使用的程序名为itunnel,但我不知道。一无所知。我去了itunnel的网站,它说:“ iTunnel是一个简单的Linux命令行程序,它通过USB电缆向越狱的iPhone提供SSH隧道。我写了这个小工具,是因为我厌倦了必须通过WiFi链接将SSH进入我的iPhone。 SSH代理,ssh链接和scp都很好用。” 因为它说的是“简单的Linux命令行程序”,所以我认为至少值得研究一下它是否有效。
这是一个有趣的前景,我想知道它的发展方向,但是我觉得通过USB连接使这项工作比需要做的要多得多。我已经使用Android应用程序Proxoid使用该./adb forward tcp:8080 tcp:8080
命令将手机连接到笔记本电脑以进行无线网络连接,但是通过隧道连接需要我在浏览器上设置代理才能上网。将SSH连接建立到USB的通道可能会使您的应用程序难以连接,而又不会引起广泛的选择。
如果您周围有旧路由器(例如Linksys无线B或G路由器),则可以使用Tablet PC和SSH将平板电脑和PC连接在一起,并通过SSH将其连接到平板电脑中,而无需弄乱隧道。
万一您想使用ssh进入Android:
下载cyanogenmod 7 rom并从/ system / xbin /目录中提取dropbear,dropbearkey和dropbearconvert。Dropbear是sshd的轻量级替代品。将它们复制到手机上,将其移动到/ system / xbin /,并赋予它们在存档中拥有的权限和所有权。
如果您还没有ssh密钥,请为您的桌面生成一个ssh密钥:ssh-keygen -t rsa
将公钥复制到手机中:adb push .ssh/id_rsa.pub /sdcard/authorized_keys
通过adb shell在手机上设置密钥:
mkdir /data/dropbear
chmod 755 /data/dropbear
mkdir /data/dropbear/.ssh
chmod 700 /data/dropbear/.ssh
mv /sdcard/authorized_keys /data/dropbear/.ssh/
chown root.root /data/dropbear/.ssh/authorized_keys
chmod 600 /data/dropbear/.ssh/authorized_keys
dropbearkey -t rsa -f /data/dropbear/dropbear_rsa_host_key
dropbearkey -t dss -f /data/dropbear/dropbear_dss_host_key
在终端中的手机上或使用adb shell运行dropbear: dropbear -s -F -v -p 2222
从您的桌面连接: ssh -i .ssh/id_rsa -p 2222 -l root 127.0.0.1
lsusb
什么?