Gitリポジトリへのアクセスを要求し、公開鍵と秘密鍵を提供した後に承認されました。
(一般メソッドを使用して生成された結果ssh-keygen -t rsa
は次のとおりです。
<user> @ <hostname> : ~/.ssh $ > ll
total 20K
-rw-------. 1 <user> 1.7K Mar 02 10:14 id_rsa
-rw-r--r--. 1 <user> 407 Mar 02 10:14 id_rsa.pub
-rw-r--r--. 1 <user> 1.3K Mar 01 14:25 known_hosts
)
ところで、誤ってホームディレクトリを削除しました。幸い重要なファイルをすべてバックアップしておいたので、復元するのは面倒ではありませんでした。
ただし、古い公開鍵と秘密鍵を使用してGitリポジトリを再複製しようとすると、複製できません。 Gitは承認されていないユーザーと同じように、私にパスワードを要求しました。
したがって、現在公開鍵と秘密鍵を使用してアクセスを再要求する必要があります。
比較すると、新しいキーが元のキーと実際には異なることがわかりました。
だから私の質問は、
- 同じシステム上のユーザーの公開鍵と秘密鍵が変更されるのはなぜですか?
- 引き続き質問を続けると、他の変更なしに以前の公開鍵と秘密鍵を使用してリポジトリにアクセスできないのはなぜですか?
- キーの再生成を使用すると、キーが変更されますか
ssh-keygen -t rsa
?
必要に応じて追加情報を提供できます。
答え1
- キーペアは、ユーザーやコンピュータとは何の関係もありません。家の鍵を盗まれたと想像してみてください。鍵はあなたに縛られておらず、誰でも鍵を使ってドアを開くことができます。同様に、秘密鍵を受け取ったら、それを使用してGithubリポジトリを変更できます。
- 新しいキーと古いキーの両方を使用してリポジトリにアクセスするには、次の点を確認する必要があります。人々鍵両方キーペアがGithubにアップロードされます。 Githubに新しいキーのみがある場合、古いキーペアを使用するとGithubはユーザーを認証できません。
- はい、キーが変更されます。それがポイントです。ドアに新しいロックを購入すると想像してください。特に、既存のキーが新しいキーと同じ場合は、何の役にも立ちません。誰かがあなたの古い鍵を盗んで鍵を交換する場合。 SSHキーの1つが破損している場合は、新しいキーを作成して古いキーを削除してから公開鍵をGithubにアップロードします。複数のキーペアを持つこともできます。必要な量のデータを生成し、さまざまな目的に使用します。これは、家に複数の鍵を開くために複数の鍵があるのと似ています。
また、秘密鍵を決して知らせないでください。秘密鍵はあなたの身元を確認するために使用されます。あなたの秘密鍵を手に入れたら、あなたのふりをすることができます。 Githubでは違いはわかりません。あなた以外は誰もあなたの秘密鍵が何であるかを知る必要はありません。秘密鍵をどこかにアップロードした場合は、安全のためにそれらを削除し、新しい秘密鍵ペアを作成してから、新しい公開鍵をアップロードすることをお勧めします。
公開鍵暗号化の詳細ここ。
答え2
私は私の秘密鍵を誰にも知らない。公開鍵が何とか変更されたため、誰かが私にコインを送ろうとしたとき、私はコインを受け取ることができませんでした。彼らはいつものように公開鍵を使用しますが、今回は私の側で公開鍵を見ると、最後の数文字がありませんでした。どうすればこれが起こりますか?キー設定を変更したことがありません。
私の公開鍵が最後の4〜5文字を表示しなくなる理由をご存知ですか?