linux远程的时候:Host key verification failed.

其实也不是我直接用xshell远程,而是今天在部署代码的时候,gitlab在做cicd的时候,ssh远程目标机,报的问题;

报错的命令:

sshpass -p 'docker' scp /data/build/xxx/application.jar [email protected]:/data/workspace/xxx/

报的错误:

ECDSA host key for xx.xx.xx.xx has changed and you have requested strict checking. Host key verification failed.

ssh会把你每个你访问过计算机的公钥(public key)都记录在~/.ssh/known_hosts。当下次访问相同计算机时,OpenSSH会核对公钥。如果公钥不同,OpenSSH会发出警告,避免你受到DNS Hijack之类的攻击。

解決:

ssh-keygen -R 你要访问的IP地址

目的是清除你当前机器里关于你的远程服务器的缓存和公钥信息,注意是大写的字母“R”。

如:

ssh-keygen -R 108.22.23.31

删除完配置之后,重新执行命令,输入命令然后输入密码即可。

如果想以后都不输入密码直接执行命令的话, 重新配置ssh秘钥即可。

如果还不行:到~/.ssh/known_hosts文件里,把相关的数据删掉,

也是一种解决方案;

其实就是让你连接一次ssh。

猜你喜欢

转载自blog.csdn.net/u010953880/article/details/119862826
今日推荐