SSH で生成されたキーを取得しようとしています。このキーをパスワードでロック解除すると、パスワードなしで一日中サーバーにログインできるようになります。
しかし、一日が終わると、キーは再びロックされ、ロックを解除するには再度パスワードを入力する必要があります。
基本的には次のような構造です。
1.: Key locked, enter password to unlock
2.: Password correct: Key unlocked for ... hours
3.: Time out, enter password to renew
答え1
ssh-agent (または PuTTY の場合は Pageant) を使用します。キーをメモリにロードすると、OS が実行中である限りキーはロック解除されたままになりますが、システムをシャットダウンするとすべてのキーが消去されます。
(これではないWindows に付属の SSH クライアントを使用すると、ログイン パスワードで保護されたキーがレジストリに永続的に保存されます。
コンピュータをシャットダウンしない場合(サスペンドのみなど)、ssh-agent ではタイムアウト付きのキーを追加することもできます。
$ ssh-add -t 6h ~/.ssh/id_rsa
最近の OpenSSH バージョンをお持ちの場合は、~/.ssh/config オプションを有効にすることで、最初の接続時にキーを自動的に追加することができます。
Host *
AddKeysToAgent 10h
これは、Windows に付属する SSH クライアントでは機能しない可能性があることに注意してください。同様に、PuTTY の Pageant もタイムアウトをサポートしていません。