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

以系统用户身份从android运行dropbear ssh服务器,android,sshd,Android,Sshd,我创建了一个自定义rom,我想从系统(已签名)服务运行dropbear ssh服务器(以便获得系统用户权限),但无论我尝试什么命令,在从ssh客户端(putty)输入密码后,它都会断开连接 甚至可以将ssh服务器作为系统运行吗 有没有替代dropbear的方法可以尝试?我是通过安装optware来实现的,以下是步骤: 光学软件 我们需要在android设备中安装optware来管理apt get风格的软件包。当然,我们不会有apt所有的软件包,但我们会有足够的软件包 要安装optware,我们需

我创建了一个自定义rom,我想从系统(已签名)服务运行dropbear ssh服务器(以便获得系统用户权限),但无论我尝试什么命令,在从ssh客户端(putty)输入密码后,它都会断开连接

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


有没有替代dropbear的方法可以尝试?

我是通过安装optware来实现的,以下是步骤:

光学软件 我们需要在android设备中安装optware来管理apt get风格的软件包。当然,我们不会有apt所有的软件包,但我们会有足够的软件包

要安装optware,我们需要在调试模式下访问设备,这样我们可以访问控制台并运行optware安装脚本

为此,

  • 在设备中安装并运行,可以通过
    设备id:5555
    访问该设备
  • 转到与设备连接到同一网络的linux(Debian、Ubuntu等)PC,并下载最后一台(为您的linux平台下载正确的一台)
  • 将以下内容添加到PATH系统变量:

     /folder_where_you_untar_adt/sdk/platform-tools
    
  • 现在下载

    • 由于无法识别的命令,此脚本无法在开箱即用的情况下运行
    • 我做了一些修改,例如删除了一些控件(我不关心文件存在的错误),修改了一些函数和对
      adb shell
      的调用,指定引号之间的命令(否则它将无法工作)
    • 在这里你可以看到。您可以使用任何合并工具将其与原始文件进行比较,以查看差异
  • 通过adb.sh运行修改(或不修改)
    /optware安装

  • 运行
    adb shell
    这将打开设备的shell

  • 如果键入
    ls/data/opt
    ,您应该会看到一个
    start.sh
    (这是 用于optware的引导程序)

  • 如果不查看optware脚本输出,则会出现一些错误 (主要与无法通过adb或 一些东西)

  • 现在制作
    cd/data/opt

  • 运行
    start.sh

  • 这将向您显示一个控制台,您可以在此处键入
    ipkg list
    查看可用的软件包

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

  • 键入
    ipkg安装dropbear
    ——安装dropbear
  • 然后生成一个服务器密钥:
    dropbearkey-t rsa-f dropbear\u rsa\u host\u key
  • 现在,我们将生成一个密钥/对,用于从ssh客户端进行连接。这 是必需的,因为android中的根用户没有 密码。
    • dropbearkey-t rsa-f id\u rsa
    • dropbearkey-f id\u rsa-y>id\u rsa.pub
    • mkdir/data/dropbear/.ssh
    • cat id\u rsa.pub>/data/dropbear/.ssh/authorized\u keys
  • 还要将私钥转换为openssh的兼容格式
    • dropbear转换dropbear openssh id\u rsa id\u rsa\u openssh
  • 运行
    dropbear-r/data/dropbear/dropbear\u rsa\u host\u key-E-s
  • 现在将
    id\u rsa
    id\u rsa\u openssh
    复制到您的客户端
  • 如果在客户端中使用openssh,则键入
    • ssh-i id\u rsa\u opensshroot@your.tv.box.ip
  • 现在,您手中应该有一个busybox提示符

    重新启动脚本 要确保每次重新启动时都能执行引导,您必须:

  • 通过在
    /bin/sh
    行之前添加以下内容来修改
    /data/opt/start.sh

     dropbear -r /data/dropbear/dropbear_rsa_host_key -E -s
    
  • 安装应用程序

  • 在脚本管理器中,单击-菜单-脚本-浏览器并导航到 文件/data/opt/start.sh。然后检查SUBootNet图标

  • 这样,每次重新启动设备时,
    start.sh
    与投熊一起执行

  • 我希望这对你有所帮助

    致意