もしそうなら、私のdotfiles GitHubリポジトリにこのファイルをどのように保持できるのか疑問に思います。
新しいコンピュータで毎回新しいSSHキーを生成したり、OSを再インストールするなどの作業に疲れました。
それでは、最良のアプローチは何ですか?鍵の生成時にファイルにパスワードを割り当てるだけで十分でしょうか?これにより、暗号化されていないと使用できなくなります。これくらいなら大丈夫かな?
そうでない場合は、インターネットに安心してアップロードできますが、正しいパスワードを入力すると、いつでも使用できるようにファイルを暗号化する方法はありますか?
答え1
id_rsa.pub
これは公開鍵なので、まったく保護する必要はありません。実はそれ必要仕事用に投稿してください。私は実際にこの質問でid_rsa
(秘密鍵)について話しているとします。
もちろん、新しいコンピュータを使用するか、オペレーティングシステムを再インストールするたびに新しいSSHキーを生成する必要はありません。あるコンピュータから別のコンピュータにファイルをコピーできます。または、一時的に別のコンピュータにいてキーを保存したくない場合は、キーが保存されているコンピュータにリモートでログインし、ローカルssh -A
エージェントにキーロードを使用できますssh-add
。 (一時的に使用しているコンピュータのroot権限を信頼している場合にのみこれを行う必要があります。)
また、SSHキーにパスワードを設定する必要があります(そうでない場合は、すぐにパスワードを追加するか、キーが破損していると見なして交換することをお勧めします!)。そうしないと、キーがある場所に少しでもアクセスできる人は誰でも保存されたコンピュータからアクセスできます。
あるコンピュータから別のコンピュータに手動でファイルをコピーするのが不便な場合は、SSHキーをクラウド(githubなど)に保存できます。個人的にはそうしないことをお勧めします。
この目的のためにプライベートgithubリポジトリを使用する予定だとします。パスワードを含むSSHキーは、パスワードがなければ誰にも役に立ちませんが、誰かがあなたのパスワードを知る場合に備えて、暗号化されたキーを自分だけに保管する必要があります。
編集する: より多くの在庫id_rsa
id_rsa
そのパスワードを持っていない人はパスワードを使用できませんが、共有しないでください。
SSHキーは、一種の二重認証に似ていると考えることができます。ファイルid_rsa
はあなたが持っているもの。パスワードは「あなたが知っていること」です。一緒に組み合わせる場合にのみ便利です。私が「一種の」と言うのは、id_rsa
真の2段階認証システムの「あなたが持っているもの」コンポーネントとは異なり、実際にファイルを持っていないからです。
ファイルを共有しないと、id_rsa
パスワードが他人に公開される場合に備えてある程度の保護が提供されます。これが発生した場合はキーをキャンセルする必要がありますが、少なくとも攻撃者がキーを取得できない場合はそうですid_rsa
。