1. ホーム
  2. unix

[解決済み] 新しい鍵を作成せずに、SSH鍵のパスフレーズを削除するにはどうすればよいですか?

2022-03-15 20:10:44

質問

ノートパソコンで新しいSSHキーを作成するときにパスフレーズを設定しました。しかし、今気づいたのですが、これはコミットしようとするときにかなり痛いです( Git SVN )をSSHで遠隔地に1時間に何度も送信しています。

思いつくのは、SSHキーを削除して新しく作成する方法です。同じ鍵を維持したまま、パスフレーズを削除する方法はありますか?

解決方法は?

簡単にお答えします。

$ ssh-keygen -p

すると、キーファイルの場所、古いパスフレーズ、新しいパスフレーズ(パスフレーズなしの場合は空白にできます)を入力するよう促されます。


もし、プロンプトを出さずに1行ですべてを行いたい場合は、次のようにします。

$ ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]

重要です。 コマンドを実行すると、通常、あなたの ~/.bash_history ファイル (または同様のもの) に、提供されたすべての引数 (つまりこの場合はパスフレーズ) を含むプレーンテキストで表示されます。従って、特別な理由がない限り、最初のオプションを使用することをお勧めします。

ただし -f keyfile を指定することなく -P また -N で、キーファイルのデフォルトは ~/.ssh/id_rsa ということで、多くの場合、必要ないのです。

パスフレーズを一時的にキャッシュすることができる ssh-agent の使用を検討するとよいでしょう。gpg-agentの最新バージョンでは、ssh-agentで使用されているプロトコルもサポートしています。