Jenkins主机密钥验证失败

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (191)

设置“git”,显示以下错误:

Failed to connect to repository : Command "git ls-remote -h https://person@bitbucket.org/person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: fatal: Authentication failed

我用SSH:

git@bitbucket.org:person/projectmarket.git

这是错误:

Failed to connect to repository : Command "git ls-remote -h git@bitbucket.org:person/projectmarket.git HEAD" returned status code 128:
stdout:
stderr: Host key verification failed.
fatal: The remote end hung up unexpectedly

我还用“SSH键”完成了这些步骤。

在Jenkins下登录

sudo su jenkins

将GitHub密钥复制到Jenkins.ssh文件夹

cp ~/.ssh/id_rsa_github* /var/lib/jenkins/.ssh/

把关键字重命名

mv id_rsa_github id_rsa
mv id_rsa_github.pub id_rsa.pub

但还是不起作用,为什么?

提问于
用户回答回答于

更改为jenkins用户并手动运行该命令:

git ls-remote -h git@bitbucket.org:person/projectmarket.git HEAD

当第一次通过SSH连接到新主机时,将得到标准的SSH警告:

The authenticity of host 'bitbucket.org (207.223.240.181)' can't be established.
RSA key fingerprint is 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40.
Are you sure you want to continue connecting (yes/no)?

类型yes然后按回车。主机密钥bitbucket.org将被添加到~/.ssh/known_hosts文件,你就不会再在Jenkins中得到这个错误了。

用户回答回答于

Jenkins是一个服务帐户,按设计它没有外壳。人们普遍认为服务帐户不应该能够交互登录。

要解决“Jenkins主机密钥验证失败”,请执行以下步骤。

1)在终端上执行以下命令

             $ sudo su -s /bin/bash jenkins

提供密码

2)使用以下命令生成公共私钥:

              ssh-keygen

可以看到输出如下:

Generating public/private rsa key pair. 
Enter file in which to save the key (/var/lib/jenkins/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 

3)按Enter->不要提供任何密码->按Enter

             Key has been generated

4)转到->cat/var/lib/Jenkins/.ssh/id_Rsa.

5)从id复制密钥_Rsa.

6)从bash出口

7)ssh@yourrepository

8)vi .ssh/authorized_keys

9)粘贴键

10)出口

11)手动登录到Mercurial服务器

注意:请手动登录,否则Jenkins将再次出现“主机验证失败”错误。

一旦手动完成,现在转到Jenkins并进行构建

扫码关注云+社区