首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >以系统用户的身份从android运行dropbear服务器

以系统用户的身份从android运行dropbear服务器
EN

Stack Overflow用户
提问于 2013-06-03 06:59:02
回答 1查看 5.2K关注 0票数 0

我创建了一个自定义的rom,我希望从一个系统(签名)服务运行dropbear服务器(为了拥有系统用户权限),但是无论我尝试什么命令,在从ssh客户机( putty )输入密码之后,它就会断开连接。

甚至可以将ssh服务器作为系统运行吗?

除了落水熊,我还有别的办法可以试试吗?

EN

回答 1

Stack Overflow用户

发布于 2014-01-17 15:10:33

我是通过安装optware完成的,以下是步骤:

光学软件

我们需要安装操作系统来管理我们的android设备内apt-get风格的软件包。当然,我们不会有所有的软件包apt,但我们会有足够的。

为了安装操作系统,我们需要在调试模式下访问我们的设备,这样我们就可以访问控制台并运行optware安装脚本。

为了这样做,

  1. 在您的设备中安装WIFI亚行并运行它,它将可以通过device-id:5555访问。
  2. 去linux (Debian,Ubuntu,.)与设备连接到同一网络的PC并下载最后一个谷歌ADT (为您的linux平台下载正确的)
  3. 在PATH系统变量中添加以下内容: /folder_where_you_untar_adt/sdk/platform-tools
  4. 现在下载android操作系统脚本
代码语言:javascript
复制
- this script did not work for me out of the box due to unrecognized commands
- I did some modifications, for instance removing some controls (I did not care about the File Exists errors) and modifying some functions and calls to `adb shell` specifying the command between quotes (otherwise it would not work).
- Here you can see [my file](https://www.dropbox.com/s/b84r485okw67y8f/optware-install-via-adb-MOD.sh). You can compare it with the original using any merging tool to see the differences.

  1. 运行修改后的(或不运行) ./optware-install-via-adb.sh
  2. 运行adb shell,这将打开设备的外壳
  3. 如果您键入ls /data/opt,您应该会看到一个start.sh (这是操作系统的引导程序)。
  4. 如果您不查看optware输出,就会出现一些错误(主要与某些命令有关,它无法通过亚行或其他方式执行)。
  5. 现在让cd /data/opt
  6. 运行start.sh

这将显示一个控制台,在这里您可以键入ipkg list来查看可用的包。

落地熊

这是一个SSH服务器,用于连接到您的电视盒。在这里,我假设您刚刚成功地运行了start.sh。因此,在您的BusyBox (控制台)中执行:

  1. 输入ipkg install dropbear --以安装下拉熊
  2. 然后生成一个服务器密钥:dropbearkey -t rsa -f dropbear_rsa_host_key
  3. 现在,我们将生成一个键/对,以便从ssh客户机连接。这是必要的,因为您的android中的根用户没有密码。
    • dropbearkey -t rsa -f id_rsa
    • dropbearkey -f id_rsa -y > id_rsa.pub
    • mkdir /data/dropbear/.ssh
    • cat id_rsa.pub > /data/dropbear/.ssh/authorized_keys

  1. 还将私钥转换为openssh 的兼容格式。
    • dropbearconvert dropbear openssh id_rsa id_rsa_openssh

  1. 运行dropbear -r /data/dropbear/dropbear_rsa_host_key -E -s
  2. 现在将id_rsaid_rsa_openssh复制到客户端
  3. 如果在客户端使用openssh,则键入
    • ssh -i id_rsa_openssh root@your.tv.box.ip

现在你应该有一个忙碌的提示符在你的手中

重新启动脚本

为了确保每次重新启动引导程序时执行引导程序,您必须:

  1. 通过在/data/opt/start.sh行之前添加/bin/sh来修改/bin/sh: -r /data/ dropbear /dropbear_rsa_host_key -E -s
  2. 安装应用程序脚本管理器
  3. 在Script中,单击-菜单项-脚本-浏览器并导航到文件/data/opt/start.sh。然后检查SUBootNet图标。
  4. 这样,每次您的设备被重新启动时,start.sh都会在启动时执行。

我希望这能对你有所帮助,

诚挚的问候

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16891509

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档