2011-06-04 39 views
54

我刚刚通过debian安装步骤(使用apt-get install)在我的Ubuntu服务器上安装了Jenkins。我希望我的构建可以从GitHub上的私有git存储库中获取。因此,我需要使用SSH访问来访问我的存储库。Jenkins用户在Apt中获取安装安装

我的大多数搜索结果刚刚说过要以Jenkins用户身份登录,并为我的GitHub帐户生成SSH密钥,但通过debian软件包管理器进行安装时,我没有Jenkins用户的密码。

那么如何为我的Jenkins服务器生成一个SSH密钥来使用?

+0

我一直好奇的另一件事是:在安装时,詹金斯,新用户'Jenkins'创建。该用户是否被分配了密码或保留空白?如果它是空白的,是否存在安全风险? – 2013-02-09 05:48:33

+0

我相信这个用户是在没有密码的情况下创建的,没有shell,所以我不认为这会带来很大的安全风险,因为用户实际上无法做任何事情。 – 2013-02-11 15:48:51

+0

@DaveLong我对詹金斯很新,第一次我在ubantu服务器上设置jenkins,你能帮我在我的ubantu服务器上设置jenkins吗? – napender 2014-08-12 08:53:12

回答

92

我会预计你会不时想以詹金斯的身份登录进行其他任务,所以我会解决更普遍的问题。最后包含对您问题的严格回答。

变化詹金斯不知道它

从具有sudo权限的任何帐户密码,您可以重置詹金斯的密码到你选择的东西:

sudo passwd jenkins 

你可以先问你自己的密码,以便使用sudo。然后,系统会提示您为詹金斯设置新密码,最后确认新密码。

如果使用sudo权限的用户被称为乔,这里有一个会话的外观:

joe $ sudo passwd jenkins 
[sudo] password for joe:  **you enter joe's passwd** 
Enter new UNIX password:  ** you enter new jenkins passwd** 
Retype new UNIX password: ** you enter new jenkins passwd** 
passwd: password updated successfully 

替代方法:登录的詹金斯没有他的密码

或者,再次使用sudo从合适其他帐户,您可以登录jenkins而不需要他的密码:

sudo su - jenkins 

旁白:避免密码提示混乱

发行sudo passwd jenkins之前,我们可能首先要使用sudo分开认证,以避免围绕这个问题的困惑“其密码,我被问,现在呢?”。

sudo -v 
sudo passwd jenkins 

通过sudo的成功认证后,有一个窗口(如15分钟),我们将不会再提示重新进行身份验证。 (请注意,您可以立即失效(杀)本次会议有sudo -k,如果你想尝试。)

承诺的严格答案

sudo -u jenkins ssh-keygen 

然后用猫来查看公共密钥的内容要传递给github上(但路径仅仅是一个例子):

sudo cat ~jenkins/.ssh/id_rsa.pub 

公共密钥文件的确切位置和名称取决于您输入到SSH-凯基的提示是什么,上面。我使用了詹金斯的主目录~jenkins的快捷方式。

相关链接

+10

感谢您的广泛解释。我发现你实际上必须以Jenkins用户身份登录,所以需要添加密码。在詹金斯可以自行克隆回购之前,您必须以jenkins身份登录,并至少使用ssh'ssh git @ github.com'来添加指纹。还要确保配置git客户端'git config --global user.email'jenkins @ email.com''和'git config --global user.name'jenkins'' – 2011-06-04 14:48:12

+0

谢谢你的精彩提示! – 2013-02-28 06:55:41

+0

非常感谢。这个答案非常有帮助。 – 2013-07-17 01:00:41