使用Ansible克隆私有GitHub存储库

时间:2017-11-26 07:34:49

标签: github ansible github-api

我有一个Ansible playbook,它接受公钥(存在于我的源计算机上)并将其复制到新的远程服务器,因为此密钥已添加到我的github帐户。

func1 --> func2 --> async code

但是,克隆repo任务失败并告诉我SSH密钥的权限是0644,并且其他人可以查看不被接受的权限。

我确实在发送密钥任务中将模式设置为0600,但它仍然显示为0644。

有关如何解决此问题的任何帮助?

1 个答案:

答案 0 :(得分:4)

首先,重复私钥是一种可怕的做法,更糟糕的是将它们分散在未受保护的计算机上。阅读并遵循:Using SSH agent forwarding

关于问题中的问题(如果你使用SSH代理转发,它甚至不应该出现),你在your comment中显然是错误的:

  

home / app位于远程计算机上名为/ home / app的文件夹中,而../priv_key位于/ app目录的父目录中

如果您在static指定key_file: ../priv_key,Git可执行文件将查找不在“”中的dest: home/app文件,但在priv_key目录的父目录中(似乎您有home的另一个副本,其权限错误。)

  

有关如何解决此问题的任何帮助?

不要使用相对路径,特别是如果您不确定自己在做什么而不愿意自行解决问题。

此外,如果您仅限制private_keypriv_key用户的访问权限,就像您在第一项任务中所做的那样,您将无法使用root用户进行阅读第二个(您使用vagrant明确指定)。