我有对生产服务器的根访问权,我想将git中的最新版本部署到服务器上,但是当我想要更新的文件夹上"git拉“时,我遇到了下面的错误。
我已经浏览了一下,但是找不到一个明确的答案。
暂存服务器运行在同一台机器上,但只运行在不同的文件夹中,当我在该文件夹上运行pull时,一切都正常。
对于Linux,我不是很有经验,所以请帮助我清楚地回答如何修复:-)
否则我就能得到任何我需要的东西
附注:这在过去起了作用,所以我假设它与SSH密钥有关
错误:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: POSSIBLE DNS SPOOFING DETECTED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
The ECDSA host key for www.site.org has changed,
and the key for the corresponding IP address x.x.x.x
is unknown. This could either mean that
DNS SPOOFING is happening or the IP address for the host
and its host key have changed at the same time.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ECDSA key sent by the remote host is
*************
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in /root/.ssh/known_hosts:1
remove with: ssh-keygen -f "/root/.ssh/known_hosts" -R gitlab.site.org
ECDSA host key for gitlab.site.org has changed and you have requested strict checking.
Host key verification failed.发布于 2015-07-12 17:06:30
窗口:
/Users/Abhilash/.ssh/known_hosts并删除其中的内容并保存。Linux / Mac:
~/.ssh/ctrl+O注意:,您将被催促保存密钥,同时再次按下。
发布于 2018-09-19 10:29:53
在遵循这些步骤之后,我也面临着同样的问题。
对于macOS:
Step 1: Go to Folder or use command+shift+g
Step 2: type "~/.ssh/"
Step 3: Open "known_hosts" file and Remove all the content
Step 4: Now Open terminal and pull from another branch, It will ask for password give your system password.它一定会起作用的。
发布于 2021-05-11 04:16:55
所有其他答案都会带来安全风险。
出现此错误是因为您的known_hosts文件中有一条记录,其中规定服务器应该有一个特定的ssh键。但是,当您尝试连接时,服务器已经发送了一个不同的ssh密钥,与您的known_hosts文件中的键不匹配。您的错误信息是:
Offending ECDSA key in /root/.ssh/known_hosts:1这意味着known_hosts文件中的第一行与远程服务器发送的内容不同。
解决该问题的安全方法如下:
ssh-keygen -lf ~/.ssh/known_hosts (在您的情况下是/root/.ssh/known_hosts ),从known_hosts文件中生成SHA256指纹。您的错误消息说,问题在于第一个键。在GitHub或GitLab上找到等效的GitHub或GitLab指纹,并检查它是否完全匹配。
下面是上面命令的输出:256个SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw gitlab.com (ECDSA)
这是来自SHA256 GitLab网站的ECDSA HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw指纹known_hosts的现有指纹与GitHub或GitLab网站的官方指纹相匹配,那么ssh就检测到了中间人(MitM)的攻击。,停止。不要连接到服务器。尝试从不同的互联网连接连接。和你的管理员谈谈。known_hosts中的现有指纹与官方指纹不匹配,那么您以前受到了MitM攻击,或者承载GitLab的服务器更改了ssh密钥。您可以从known_hosts文件中删除指纹。(Note:只删除造成麻烦的特定指纹。)下次连接到GitLab时,系统会提示您将新指纹添加到known_hosts文件中。寄主gitlab.com(172.65.251.78)的真实性无法确定。ECDSA密钥指纹为SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.您确定要继续连接(是/否/指纹)吗?
重复检查指纹是否与GitHub或GitLab网站显示的指纹匹配,然后键入相应的yes或no。https://stackoverflow.com/questions/21087695
复制相似问题