我已经在开发人员控制台中将我的公钥添加到我的项目的元数据中,当我进入Ubuntu VM实例时,我可以在文件~/.ssh/authorized_keys
中看到我的公钥,但是当我尝试使用它时从Bitbucket克隆项目我收到错误Permission denied (publickey)
如果我ssh-add -l
我得到The agent has no identities
。在GCE实例上使用我现有的公钥时,我应该做些什么吗?
答案 0 :(得分:2)
你正在混淆事物。有两个键,public和private(例如~/.ssh/id_rsa{,.pub}
)。您要在ssh / login上添加公钥,并将私钥存储在您想要ssh / login的计算机/计算机上。
如果您想使用密钥对从VM中的BitBucket进行克隆,则需要执行以下操作之一:
ssh-keygen
ssh-add path/to/private/key
ssh -K your-vm
git clone your-repo
ssh your-vm
ssh-keygen
git clone your-repo
如果您不想拥有许多密钥,那么第一个解决方案会更有用,如果没有您的参与(cron作业),将无法使用存储库进行操作。如果你想使用cron更新repo并在其上运行一些自动化,第二个更有帮助。