0

カスタムROMを作成し、システム(署名済み)サービスからdropbear sshサーバーを実行したい(システムユーザー権限を持つために)が、sshクライアント(パテ)からパスワードを入力した後、試したコマンドは何でも切断します。

システムとしてsshサーバーを実行することさえ可能ですか?

私が試すことができるdropbearに代わるものはありますか?

4

1 に答える 1

1

ここにoptwareをインストールすることでそれを行いました。手順は次のとおりです。

オプトウェア

Android デバイス内で apt-get スタイルでパッケージを管理するには、optware をインストールする必要があります。もちろん、apt が持っているすべてのパッケージがあるわけではありませんが、十分な数があります。

optware をインストールするには、コンソールにアクセスして optware インストール スクリプトを実行できるように、デバッグ モードでデバイスにアクセスする必要があります。

そうするために、

  1. デバイスにWIFI ADBをインストールして実行すると、 経由でアクセスできるようになりますdevice-id:5555
  2. デバイスと同じネットワークに接続された Linux (Debian、Ubuntu、...) PC に移動し、最後のGoogle ADTをダウンロードします (Linux プラットフォームに適したものをダウンロードします)。
  3. 以下を PATH システム変数に追加します。

     /folder_where_you_untar_adt/sdk/platform-tools
    
  4. Android用のoptwareスクリプトをダウンロードしてください

    • このスクリプトは、コマンドが認識されないため、そのままでは機能しませんでした
    • たとえば、いくつかのコントロールを削除し(File Existsエラーは気にしませんでした)、いくつかの関数を変更しadb shell、引用符で囲まれたコマンドを指定するように呼び出しました(そうしないと機能しませんでした)。
    • ここに私のファイルが表示されます。マージ ツールを使用してオリジナルと比較し、違いを確認できます。
  5. 変更した(またはしない)を実行します./optware-install-via-adb.sh

  6. これを実行adb shellすると、デバイスへのシェルが開きます

  7. 入力ls /data/optすると a が表示されますstart.sh(これは optware のブートストラップです)。

  8. optware スクリプトの出力を見ない場合、いくつかのエラーがありました (ほとんどの場合、adb などを介して実行できなかったコマンドに関連しています)。

  9. 今作るcd /data/opt

  10. 走るstart.sh

これにより、コンソールが表示されます。ここに入力ipkg listして、利用可能なパッケージを確認できます。

ドロップベア

これは TV BOX に接続するのに便利な SSH サーバーです。ここでは、正常に実行されたと仮定しますstart.sh。したがって、BusyBox (コンソール) 内で次のようにします。

  1. type ipkg install dropbear-- ドロップベアをインストールします
  2. 次に、サーバー キーを生成します。dropbearkey -t rsa -f dropbear_rsa_host_key
  3. 次に、ssh クライアントから接続するためのキー/ペアを生成します。Android の root ユーザーにはパスワードがないため、これが必要です。
    • 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
  4. また、秘密鍵をopensshの互換性のある形式に変換します
    • dropbearconvert dropbear openssh id_rsa id_rsa_openssh
  5. 走るdropbear -r /data/dropbear/dropbear_rsa_host_key -E -s
  6. 今すぐコピーid_rsaid_rsa_opensshてクライアントに
  7. クライアントでopensshを使用する場合は、次のように入力します
    • ssh -i id_rsa_openssh root@your.tv.box.ip

これで、busybox プロンプトが手元にあるはずです

再起動スクリプト

再起動するたびにブートストラップが実行されるようにするには、次のことを行う必要があります。

  1. /data/opt/start.shの前に追加して変更します。/bin/sh

     dropbear -r /data/dropbear/dropbear_rsa_host_key -E -s
    
  2. アプリスクリプト マネージャーをインストールする

  3. スクリプト マネージャで、[メニュー] - [スクリプト] - [ブラウザ] をクリックし、ファイル /data/opt/start.sh に移動します。次に、SUBoot、およびNetアイコンを確認します。

  4. このようにして、デバイスが再起動start.shされるたびに、dropbear をオンにして実行されます。

これが何らかの形であなたに役立つことを願っています、

よろしくお願いします

于 2014-01-17T15:10:33.840 に答える