
私の Android 4.4.2 (古いですがアップグレードできません) の携帯電話は、SimpleSSHD アプリによって SSH サーバーを実行しています。ログインごとに異なるランダム パスワードが生成されるため、クライアント ユーザーとしては非常に不便です。そのため、公開キー認証を使用したいと思います。
以前、SSH サーバーにアクセスするために公開鍵と秘密鍵のペアを生成しました。キー ペアを再利用しても問題ないと思われるので、公開鍵ファイルを Android フォンにコピーします。
$ ssh-copy-id -p 2222 192.168.1.87
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/home/t/.ssh/id_rsa.pub"
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
[email protected]'s password:
restorecon: invalid option -- F
usage: restorecon [-nrRv] pathname...
その後も、ログインするにはサーバーによって生成されたランダムなパスワードを入力する必要があります。
公開鍵ファイルを Android 携帯にコピーしても機能しないのでしょうか?
公開鍵ファイルは Android フォンのどのディレクトリに保存すればよいですか?
ありがとう。
答え1
これは Android の問題ではありません。キーを入力するという慣例は~/.ssh/authorized_keys
OpenSSH から来ていると思います。標準 (RFC) の一部ではないと思います。SimpleSSHD異なる慣習がある:
クイックスタート
- SimpleSSHDをインストールします。
Android デバイスに接続するすべてのコンピューターで、ポートを 2222 に設定します。OpenSSH では、~/.ssh/config に次の行を追加することでこれを実行できます。
Host myphone Port 2222
SimpleSSHD を起動し、設定で「起動時に起動」を有効にして、初めて手動で起動します。
authorized_keys
ホームディレクトリに作成する(使用しないでくださいssh-copy-id
)- オプションで.profileを作成する
このことから、承認されたキー ファイルは存在しないはず~/authorized_keys
です~/.ssh/authorized_keys
。
ssh-copy-id
すべてのサーバーが OpenSSH サーバーであると想定しているようです。 を使用して公開鍵をすでに設定しているのでssh-copy-id
、ログインして次のコマンドを実行します。
mv ~/.ssh/authorized_keys ~