「Load key "/root/.ssh/"」の取得: ディレクトリです。「ssh -i ~/.ssh root@IP_address」を実行すると

「Load key "/root/.ssh/"」の取得: ディレクトリです。「ssh -i ~/.ssh root@IP_address」を実行すると

IBM クラウドで作成したインスタンスにログインしようとしています。

コマンド「ssh -i ~/.ssh root@[インスタンスの IP アドレス]」を実行しようとすると、「Load key "/root/.ssh/": Is a directory root@[インスタンスの IP アドレス]'s password:」というエラーが表示されます。

このコマンドを実行する前に、ssh-keygen を実行し、id_rsa およ​​び id_rsa.pub などの新しいファイル セットを生成することができました。

id_rsa と id_rsa.pub の 2 つのファイルに対して chmod 700 を実行しましたが、機能していないようです。

上記のコマンド、つまり「ssh -i ~/.ssh root@[インスタンスのIPアドレス]」でこのエラーが発生する理由を誰か理解してくれませんか?

答え1

この-iオプションには秘密鍵の名前が必要ですファイルディレクトリ名ではありません含むファイル:

ssh -i ~/.ssh/id_rsa root@[IP_address of my instance]

ただし、は~/.ssh/id_rsaデフォルトのRSAキーファイルなので、-iオプションとその引数を完全に省略することができます。

ssh root@[IP_address of my instance]

もちろん、認証が成功するには、authorized_keysを使用するか、または他の方法で、公開キーをリモート アカウントのファイルにコピーしておく必要がありますssh-copy-id

関連情報