为Gerrit和Hudson创建SSH密钥

Jos*_*ith 8 git hudson ssh-keys hudson-plugins gerrit

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

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

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

我怎样才能生成和使用工作专用键,以便HudsonGerrit能发挥好?

Von*_*onC 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
Run Code Online (Sandbox Code Playgroud)

请务必将新的公钥数据附加到authorized_keys文件,因为可能正在使用多个公钥.每个公钥条目必须位于不同的行上.