質問: この状態でSSHにどうしてログインできるのか不気味に思っています まず、 ``` $ ssh-add -K .ssh/id_rsa ``` を実行してSSH接続用のキーを登録しました これにより無事にSSHサーバに接続はできました しかし、PC・Macを再起動後ssh-add -Lを実行すると ``` takayamanorikonoiMac:~ takayamanoriko$ ssh-add -L The agent has no identities. ``` 何も登録されていない状態になっていました それにもかかわらず、sshコマンドでは依然として接続できました (なお、SSHの接続先はBitbucketなので、サーバ側の設定ミスはまずないと思います) そこで教えていただきたいのですが、なぜログインできるのだと思いますか? また、The agent has no identities.の結果でもキーは登録されたままなのですか? その他、調べた方が良さそうな点、勘違いしていそうなことがあれば教えていただけると助かります よろしくお願いします
回答: * OpenSSH-7.3p1 日本語マニュアルページ > > -i identityファイル > > 公開鍵認証の際にidentity (秘密鍵) を読むファイルを指定します。デフォルトは、プロトコル 1 の場合ユーザのホームディレクトリにある~/.ssh/identity、**プロトコル 2 の場合は~/.ssh/id_dsa ,~/.ssh/id_ecdsa ,~/.ssh/id_ed25519および~/.ssh/id_rsaになっています。** identity ファイルは設定ファイルによって、ホストごとに指定することもできます。複数の-i オプションを指定することも可能です。(設定ファイルで複数の鍵を指定することもできます。)証明書がCertificateFile設定項目で明示的に指定されていない場合、ssh は末尾に-cert.pubのついたファイル名からも証明書を読み込もうとします。 > > > 要は、`$HOME/.ssh/id_rsa` ファイルはデフォルトで使用する秘密鍵なので、特に指定しなくても(`ssh-add`で追加しなくても)使用されます。