SSH は -i パラメータで秘密鍵を見つけられません

SSH は -i パラメータで秘密鍵を見つけられません

次のようにすると、SSH 接続は正常に機能します。

ssh[メールアドレス]-i ~/.ssh/myserver

ただし、「-i」を省略すると、パスワードが要求されますが、その理由はわかりません。どうやら私の SSH クライアントは ~/.ssh をチェックするように設定されていないようです。フォルダーとファイルに 700 の権限を設定しましたが、それでも何も起こりません : /

答え1

おそらく、ssh 構成で IdentityFile を変更するか設定する必要があります。

ファイル /etc/ssh/ssh_conf に次の行を編集または挿入します。

IdentityFile ~/.ssh/myserver

通常、秘密鍵は 1 つだけです。複数の秘密鍵がある場合は、「.ssh ディレクトリ」に「config」ファイルを作成するのがおそらく最善の方法です。

host myserver
 Hostname myserver
 user whatever
 port 22
 identityfile ~/.ssh/myserver

次のように入力してサーバーに接続できます。

ssh myserver

答え2

考えられる解決策としては、.ssh/config ファイルに次のような内容を追加します。

host myserver
hostname myserver.com
identityfile ~/.ssh/myserver
user myuser

「ssh myserver」で問題ありません。

関連情報