So entfernen Sie beleidigende Schlüssel in Git, wenn Sie versuchen, Ihre Änderungen zu pushen?

40

Ich habe tonnenweise gesucht und verschiedene Lösungen getestet, aber keinen Erfolg erzielt!

Wenn ich meine Codes pushen möchte, erhalte ich die folgende Fehlermeldung:

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

Was kann ich tun, um diese Nachricht bei jedem Push meiner Änderungen zu entfernen? Irgendeine Idee?

Schlüsselliste

ALH
quelle

Antworten:

83

Es sagt:

Beleidigender Schlüssel für IP in /home/alireza/.ssh/known_hosts: 10

Aus irgendeinem Grund müssen Sie die 10. Zeile in known_hosts löschen.

Führen Sie diesen Befehl aus, um die 10. Zeile in known_hosts zu löschen:

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

Oder benutze ssh-keygen

ssh-keygen -R git.mywebsite.ir

Zitat von Mann

 -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).
c0rp
quelle
6
ssh-keygen -R git.mywebsite.irmein problem gelöst.
ALH
hat bei mir nicht funktioniert, es stellt immer wieder Fragen.
Waruna Ranasinghe
2
sed -i '1d' ~ / .ssh / known_hosts oder manuelles Entfernen der Zeilen-Nr. hat für mich gearbeitet
Sumit Kumar Saha
Wenn Sie dies in Terminal auf einem Mac ausführen, müssen Sie sed -i '' '10d' ~ / .ssh / known_hosts ausführen, um den Fehler "zusätzliche Zeichen am Ende des Befehls l" zu vermeiden, da hierfür ein erforderlich ist Erweiterung muss angegeben werden.
Luke
wenn Sie möchten , um den Schlüssel zu entfernen , auf IP - Adressen basieren: ssh-keygen -R [ipaddress]:port. Beispiel für das Entfernen des Schlüssels für 192.168.0.1 an Port 3456:ssh-keygen -R [192.168.0.1]:3456
Oki Erie Rinaldi
0

Sie müssen Ihre Datei known_hosts (in ~ / .ssh / known_hosts) bearbeiten und einen dieser Adresse zugeordneten Eintrag entfernen.

Kulak
quelle
Diese IP-Adresse existiert nicht in der Datei known_hosts.
ALH
1
Richtig, es gibt wahrscheinlich einen Eintrag mit der URL git.mywebsite.ir und einer anderen IP-Adresse. Sie sollten diese Zeile von known_hosts entfernen und dann eine neue IP-Adresse mit diesem Hostnamen verknüpfen.
Kulak
In der Datei known_hosts befindet sich nichts als meine Site-URL. Ich kann nicht einmal Git in der Datei finden. Könnten Sie sich das Bild oben ansehen?
ALH
0

Als ich die Nachrichten bekam:

Beleidigender Schlüssel für IP in /home/myusername/.ssh/known_hosts: 12

Beachten Sie die Zeilennummer - in meinem Fall - 12

Öffne also die Datei "known_hosts" und lösche die 12 Zeile.

Für mich hat dies das Problem gelöst.

Ps Beachten Sie, wenn Sie den Ordner .ssh nicht finden können - den Ordner .ssh Ordner ist ausgeblendet. Um ihn im Dateimanager , müssen Sie "Verborgene Dateien und Ordner anzeigen". In Linux Mint (und möglicherweise auch in Ihrer Distribution) gibt es im Dateimanager eine Verknüpfung zum Ein- / Ausblenden ausgeblendeter Ordner -> Strg + H

Prost

Kombinieren
quelle