回答:
シームレスではありませんが、ssh
busybox(少なくとも私のもの)が提供するバイナリは-i
フラグをサポートしているので、キーをどこにでも配置して使用できます。
ssh -i /path/to/key_file joeuser@somehost.com
の関連するmanページのエントリ-i
(デフォルトのパスに関する情報がAndroidでは同じでない可能性があることに注意してください):
-i identity_file
Selects a file from which the identity (private key) for public
key authentication is read. The default is ~/.ssh/identity for
protocol version 1, and ~/.ssh/id_dsa, ~/.ssh/id_ecdsa and
~/.ssh/id_rsa for protocol version 2. Identity files may also be
specified on a per-host basis in the configuration file. It is
possible to have multiple -i options (and multiple identities
specified in configuration files). ssh will also try to load
certificate information from the filename obtained by appending
-cert.pub to identity filenames.
$HOME
(rootに対して)が/data
私の電話ssh
に設定されていることですが、そこに設定しようとするディレクトリはすべて無視するようです。それがなぜかわからないのですが、実際に掘り下げる必要もありませんでした。
echo $HOME
は、何も返しません(ルートの場合でも)。それがあなたの場合でも、SSHクライアントがデフォルトでキーを表示できない理由です。ただし、-i
フラグを使用すると、デフォルトのパスを上書きできるため、$ HOMEを探す意味がありません。削減されたSSHクライアントがサポートしている場合、これは正しいソリューションです。だから、SDカードにキーを置いてから試してみてください。失敗した場合、SSHクライアントを変更しない限り、他に方法はありません。
ConnectBot(専用SSHクライアント)をインストールして実行します。メニューキーをタップ/押します。メニューからをタップしManage Pubkeys
ます。次の画面で、もう一度メニューキーを押す/タップします。メニューからをタップしImport
ます。