2013-04-28 64 views
3

密码我有詹金斯克隆Git仓库在SSH登录用URL

SSH://用户名@ IP /回购/

,这一切工作正常,但我需要登录用詹金斯不支持的密码。有没有办法在URL中使用密码登录?安全对我来说不是问题。它应该最终被,我认为这是这个起初:

SSH://用户名:密码@ IP /回购/

,但它不工作。谢谢!

更新#1: git仓库在同一台服务器上。

+0

您是否需要SSH连接本身的密码或私有SSH密钥对的密码? – 2013-04-28 20:51:36

+0

我曾希望使用实际的SSH密码。 – rtainc 2013-04-28 20:59:46

回答

6

有两个原因,SSH要求你输入密码:

  • 公钥没有在服务器上找到,这意味着SSH默认用于SSH会话的帐户,要求其密码
  • 找到了公钥,但私钥是密码保护的。

第一种情况指的ssh不正常:你应该永远必须输入您所使用SSH的帐户的密码。
即使所有的ssh连接都使用一个独特的帐户,该想法是能够验证某人。输入该唯一帐户的密码就会破坏目的。

第二种情况应该易于解决,由running ssh-agent and ssh-add
这将允许你不是输入密码(不止一次,当添加密钥到代理)。

+0

是的,SSH密钥是问题。谢谢! – rtainc 2013-04-29 20:42:18

1

有人可以纠正我,我不认为这是可能的,因为密码提示实际上是从SSH服务器,而不是从SSH应用程序。查看我的本地SSH帮助页面,并且无法通过命令行将密码传递到SSH。由于密码将以纯文本形式提供,因此它也具有一些严重的安全风险。因此,你最好的(也是更安全的)赌注是做一个公共/私人密钥对,它不需要密码设置。根据您的环境,使用Jenkins和Git获得此设置可能会有一定难度,但最终完全值得。

+0

我刚刚花了一个小时来学习这个确切的事情 - git证书对我无能为力,我想把我的头撞在墙上。但是,在我设置了SSH以使用公钥/私钥后,我不必输入密码(链接:https://www.debian.org/devel/passwordlessssh),它立即生效。我目前正在经历一个解决“高”的问题。谢谢。 – 2017-03-13 04:38:43