秘密鍵をファイルに保存する必要がありますか?

秘密鍵をファイルに保存する必要がありますか?

SSHを介して他のサーバーと通信する必要があるデータベースベースのアプリケーションがあります。 Webアプリケーションは、鍵ペアを生成し、ユーザーに公開鍵を提供したり、Webフォームフィールドで暗号化されていない秘密鍵を許可したりできます。その後、復号化可能な暗号化を使用して鍵を暗号化し、データベースに保存します。

WebアプリケーションがSSHサーバーと通信するときは、秘密鍵を復号化して何らかの方法でSSHに提供する必要があります。安全な一時ファイルを作成し、mktempsshを介してファイルを指定してファイルを削除できますが、これは追加の操作であり、新しい方法でキーを公開するため、必要ありません。man ssh, , を見てみましたが、man ssh-agentキーman ssh-addを最初にファイルに追加せずに使用できる方法がないようです。私は何を見逃していますか?

ベストアンサー1

ssh/ etcなどの既存のツールを使用するには、ssh-agentファイルにキーを提供する必要があります。

別の、おそらくより実現可能なソリューションは、sshアプリケーションで直接クライアントを実装し、サードパーティのライブラリに依存することです。クリップシュまたは、ssh/を展開してssh-agentデータベースから直接キーを受信して​​復号化することもできます。

おすすめ記事