Como remover a chave incorreta no git quando você tenta enviar suas alterações?

40

Eu fiz muitas pesquisas e testei soluções diferentes, mas não obtive sucesso!

Quando desejo enviar meus códigos, recebo o seguinte erro:

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

O que devo fazer para remover esta mensagem sempre que enviar minhas alterações? Qualquer ideia?

lista de chaves

ALH
fonte

Respostas:

83

Diz:

Chave incorreta para IP em /home/alireza/.ssh/known_hosts: 10

Então, por algum motivo, você deve excluir a décima- linha em known_hosts.

Execute este comando para excluir a décima-linha em known_hosts:

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

Ou use ssh-keygen

ssh-keygen -R git.mywebsite.ir

Citação de man

 -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
fonte
6
ssh-keygen -R git.mywebsite.irresolveu meu problema.
ALH
não funcionou para mim, continua fazendo perguntas.
Waruna Ranasinghe
2
sed -i '1d' ~ / .ssh / known_hosts ou removendo manualmente a linha no. funcionou para mim
Sumit Kumar Saha
Se você estiver executando isso no Terminal em um Mac, precisará executar sed -i '' '10d' ~ / .ssh / known_hosts para evitar o erro "caracteres extras no final do comando l", pois requer um extensão a ser especificada.
Lucas
se você deseja remover a chave com base no endereço IP: ssh-keygen -R [ipaddress]:port. exemplo de remoção de chave para 192.168.0.1 na porta 3456:ssh-keygen -R [192.168.0.1]:3456
Oki Erie Rinaldi
0

Você deve editar seu arquivo known_hosts (localizado em ~ / .ssh / known_hosts) e remover uma entrada associada a este endereço.

Kulak
fonte
Este endereço IP não existe no arquivo known_hosts.
ALH
1
É isso mesmo, provavelmente existe uma entrada com o URL git.mywebsite.ir e outro endereço IP. Você deve remover esta linha de known_hosts e, em seguida, um novo endereço IP será associado a esse nome de host.
kulak
Não há nada como o URL do meu site no arquivo known_hosts. Nem consigo encontrar o git no arquivo. Você poderia dar uma olhada na foto acima?
ALH
0

Quando recebi as mensagens:

Chave incorreta para IP em /home/myusername/.ssh/known_hosts: 12

Observe o número da linha - no meu caso - 12

Então abra o arquivo 'known_hosts' e exclua a 12ª linha.

Para mim, isso resolveu o problema.

Ps Observe que se você não conseguir encontrar a pasta .ssh - a pasta .ssh está oculta e para visualizá-la no gerenciador de arquivos - você deve "Mostrar pastas e arquivos ocultos". No Linux Mint (e possível na sua distribuição também) quando estiver no gerenciador de arquivos - existe um atalho para mostrar / ocultar pastas ocultas -> Ctrl + H

Felicidades

Combinar
fonte