変更をプッシュしようとしたときにgitで問題のあるキーを削除する方法は?


40

私はたくさんの検索を行い、さまざまなソリューションをテストしましたが、成功しません!

コードをプッシュしようとすると、次のエラーが表示されます。

Warning: the ECDSA host key for 'git.mywebsite.ir' differs from the key for the IP address '164.138.23.11'
Offending key for IP in /home/alireza/.ssh/known_hosts:10
Matching host key in /home/alireza/.ssh/known_hosts:1
Are you sure you want to continue connecting (yes/no)? yes

変更をプッシュするたびにこのメッセージを削除するにはどうすればよいですか?何か案が?

キーリスト

回答:


83

それは言います:

/home/alireza/.ssh/known_hosts内のIPの攻撃キー:10

そのため、何らかの理由で、known_hostsの10を削除する必要があります。

known_hostsの10行目を削除するには、次のコマンドを実行します。

sed -i '10d' ~/.ssh/known_hosts

または使用する ssh-keygen

ssh-keygen -R git.mywebsite.ir

男からの引用

 -R hostname
         Removes all keys belonging to hostname from a known_hosts file.
         This option is useful to delete hashed hosts (see the -H option
         above).

6
ssh-keygen -R git.mywebsite.ir私の問題を解決しました。
ALH

私のために働かなかった、それは質問をし続けます。
ワルナラナシンゲ14

2
sed -i '1d'〜/ .ssh / known_hostsまたは手動で行番号を削除 私のために仕事をした
スミット・クマールサハ

これをMacのターミナルで実行している場合、sed -i '' '10d'〜/ .ssh / known_hostsを実行して、「lコマンドの最後の余分な文字」エラーを回避する必要があります。指定する拡張子。
ルーク

IPアドレスに基づいてキーを削除する場合:ssh-keygen -R [ipaddress]:port。ポート3456で192.168.0.1のキーを削除する例:ssh-keygen -R [192.168.0.1]:3456
沖エリーリナルディ

0

known_hostsファイル(〜/ .ssh / known_hostsにある)を編集し、このアドレスに関連付けられているエントリを削除する必要があります。


このIPアドレスは、known_hostsファイルに存在しません。
ALH

1
そうです、おそらくgit.mywebsite.ir URLと別のIPアドレスを持つエントリがあります。known_hostsからこの行を削除すると、新しいIPアドレスがこのホスト名に関連付けられます。
kulak

known_hostsファイルに私のサイトのURLとして何もありません。ファイルにgitが見つかりません。上の写真をご覧ください。
ALH

0

メッセージを受け取ったとき:

/home/myusername/.ssh/known_hosts内のIPの攻撃キー:12

行番号に注意してください-私の場合-12

したがって、「known_hosts」ファイルを開き、12行目を削除します。

私にとってこれは問題を解決しました。

Ps .sshフォルダーが見つからない場合(.sshフォルダーは非表示であり、ファイルマネージャーから表示するには)、「非表示のファイルとフォルダーを表示する」必要があることに注意してください。Linux Mint(およびディストリビューションでも可能)ファイルマネージャーの場合-隠しフォルダーを表示/非表示するショートカットがあります-> Ctrl + H

乾杯

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.