如何从远程 ssh 传入 git rsa 密码短语



我有一个AWS ubuntu 10.xx服务器。 由于技术问题,我运行的是 Git 1.7.4 而不是最新的。(所以我无法使用凭据帮助程序)。

在该服务器上,它有一个调用 git pull 的 shell 脚本。

我在那台服务器中有 rsa。因此,如果我进入该服务器并执行 git pull 操作,它会询问密码。 这很好,在这一点上没有问题。

永远,如果我远程调用该 shell 脚本进行 git 拉取,它将失败。 因为没有提示输入密码,因此它会失败。 我将得到"权限被拒绝(公钥)"。

那么,我该怎么办?

您可以在服务器上使用 ssh-agent 加载私钥并输入一次密码短语。这将保持密钥加载,直到 ssh 代理被杀死,例如在重新启动时。

您还可以按照@kostix的建议使用 SSH 代理转发。

另外,shell 脚本是否需要在无人值守的情况下运行?如果没有,我使用并喜欢 fabric 来完成这样的任务,因为它会将任何输入提示从远程服务器转发到您的本地机器,此外在远程服务器上自动执行任务时还有所有其他种类的出色功能。

最新更新