我正在尝试使用 Hudson
Gerrit Trigger
插件。
由于某些原因,Gerrit
拒绝接受位于 /var/lib/hudson/.ssh/id_rsa
的 SSH
密钥。
在 GUI 中,我会遇到错误 Connection error : com.jcraft.jsch.JSchException: Auth fail
;而在终端中,我会遇到错误 Permission denied (publickey)
。
我该如何生成并使用有效的私钥,以便让 Hudson
和 Gerrit
顺利协作?
hudson
在/var/lib/hudson/.ssh
中有自己的id_rsa.pub
。这是你的意思吗? - Josh Smith/root/.ssh/
这样的东西吗?在那个目录下只有id_rsa
、id_rsa.pub
和known_hosts
这些文件,都是由hudson
用户创建的。 - Josh Smithhudson
用户的$HOME
在哪里?" 没错。这是一个关于ssh相关Hudson问题的一般难点,我在Stack Overflow上看到过。您需要在执行该作业时以某种方式显示环境变量,并查看是否提及了$HOME
。 - VonCid_rsa.pub
的内容追加到authorized_keys
文件中(如果该文件不存在,则创建该authorized_keys
文件)。请参阅http://sial.org/howto/openssh/publickey-auth/获取更多详细信息。 - VonC