没有密文的sudo -u的Git克隆

时间:2017-05-10 07:56:49

标签: git ubuntu ssh

我有这样的用户 - dev和ssh配置:

Host *
  IdentityFile ~/.ssh/id_rsa

如果我以此开发用户身份登录(sudo su dev)并尝试克隆,一切正常。克隆使用没有密码短语。

但是当我使用这样的命令时:

sudo -u dev git clone repositoryurlhere

我总是看到:

Enter passphrase for key '/home/dev/.ssh/id_rsa'

如何摆脱这个?

1 个答案:

答案 0 :(得分:2)

文件/home/dev/.ssh/id_rsa已加密。当你还在dev时,你可能不得不输入几分钟激情的密码,但是忘记了。输入密码后,您的钥匙串通常会记住几分钟(类似于sudo,您需要每隔几分钟输入一次密码)。

当您切换到另一个用户然后使用sudo -u dev时,记住的密码已经消失,您必须重新输入密码。

唯一的解决方案是使用

从身份文件中删除密码
ssh-keygen -p -N "" -f /home/dev/.ssh/id_rsa

之后您不必输入密码,既不是dev也不是sudo -u dev