8

我正在尝试使用该Hudson Gerrit Trigger插件。

无论出于何种原因,Gerrit不接受SSH位于/var/lib/hudson/.ssh/id_rsa.

在 GUI 中我得到Connection error : com.jcraft.jsch.JSchException: Auth fail一个错误,当我在终端中工作时我得到一个Permission denied (publickey)错误。

我怎样才能生成和使用一个有效的私钥,Hudson并且Gerrit可以玩得很好?

4

1 回答 1

10

OP Josh Smith设法解决了这个问题:

我实际上需要将用户(我)的SSH密钥添加/var/lib/hudson/.ssh/id_rsa.pub到 Gerrit GUI 中。
然后从那里它就像一个魅力。
用户名必须是 Gerrit 中的用户名(管理员帐户)。

我原来的建议如下:


哪些用户会使用基于 Web 的代码审查系统 Gerrit?

该用户需要您的/var/lib/hudson/.ssh/id_rsa.pub公共 ssh 密钥$HOME/.ssh/authorized_keys,如本指南中所示。

替代文字

密钥分配

必须将 RSA 密钥对的公共部分复制到客户端将访问的任何服务器。要复制的公钥信息应该位于~/.ssh/id_rsa.pub客户端的文件中。
假设所有服务器都使用 OpenSSH 而不是不同的 SSH 实现,则必须将公钥数据附加到~/.ssh/authorized_keys服务器上的文件中。

# first, upload public key from client to server
client$ scp ~/.ssh/id_rsa.pub server.example.org:

# next, setup the public key on server
server$ mkdir ~/.ssh
server$ chmod 700 ~/.ssh
server$ cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
server$ chmod 600 ~/.ssh/authorized_keys
server$ rm ~/id_rsa.pub

确保将新的公钥数据附加到 authorized_keys 文件中,因为可能正在使用多个公钥。每个公钥条目必须在不同的行上。


于 2010-09-14T20:25:57.940 回答