2014-01-17 44 views
5

我在我的amazon ec2 ubuntu服务器实例上设置了一个git repo。我一直试图从我的本地机器上将代码推到服务器的repo上。我遵循的步骤是:git push origin master:permission denied(public key)error

ssh-add /path/to/myEC2publickey 

在我的EC2实例

mkdir /path/my_project.git 
cd /path/my_project.git 
git init --bare 

在我的本地后来,

cd the_project 
git init git add . 
git commit -m "Initial git commit message" 
git remote add origin [email protected]:the_project.git 
git config --global remote.origin.receivepack "git receive-pack" 
git push origin master 

自从我得到一个权限Deined(公钥)错误,而执行最后一个命令(即git push origin master),我使用在论坛上给出的步骤设置公钥 -

ssh-keygen -t rsa -C "[email protected]" 
eval 'ssh-agent -s' 
ssh-add 

我能够添加公钥,但我仍然面临权限被拒绝(公钥):错误。

我是git的新手,一直期待把我所有的代码转移到git仓库中。

任何帮助将不胜感激。

回答

3

您似乎错过了(或不包括在您的描述中)的一步是在服务器端发布公钥。
上传您的公共ssh密钥并将其添加到~username/.ssh/authorized_keys文件。

而且,与没有密码的私钥(无需密钥的ssh-添加到SSH代理)

先试试它(测试)最后,确保你的SSH密钥使用标准名称(id_rsaid_rsa.pub),与权利保护:

最后,如果前面的步骤没有解决问题,ssh -Tvvv [email protected]应该告诉你更多。

+0

这里是我做了什么至今: 我创建了一个公用密钥“[email protected]”下 随着 “SSH-凯基-t RSA -C‘[email protected]’” 我甚至将文件从/root/.ssh/id_rsa.pub复制到服务器/home/ubuntu/.ssh/authorized_keys文件中。 但我仍然得到相同的权限被拒绝的错误。 我不知道如何处理你给出的最后一个ssh语句。但我没有尝试,最后几行如下: 'debug1:无法打开密钥文件'/home/amit/.ssh/id_rsa':权限被拒绝' –

+0

我已经经历了很多论坛设置但是正如我所见,没有任何论坛建议将密钥添加到authorized_keys文件中,并且一直让我在工作站上工作数小时。 感谢@VonC,现在我可以休息一下! –

1

完整的过程之中:

  1. 添加EC2公共密钥的SSH列表使用以下命令

    ssh-add /path/to/myEC2publickey 
    
  2. 创建的EC2实例的git仓库与以下 命令

    mkdir /path/my_project.git 
    cd /path/my_project.git 
    git init --bare 
    
  3. 系统上的本地文件连接到你的资料库与 命令

    cd the_project 
    git init 
    git add . 
    git commit -m "Initial git commit message" 
    git remote add origin [email protected]:the_project.git 
    git config --global remote.origin.receivepack "git receive-pack" 
    git push origin master 
    
  4. 创建一个公共密钥的用户,并将其添加到服务器的 授权密钥

    你能做到这一步通过将文件id_rsa.pub从 本地主机复制到服务器〜/ .ssh/authorized_keys文件,如 以前的答案中所建议的。

以下步骤,如果你尝试混帐推后,你不应该得到一个“权限被拒绝”的错误。

+0

看起来正确,与我的答案类似。 +1。将公钥发布到服务器的ssh帐户'authorized_keys'文件确实是一个关键的步骤,因为ssh守护进程能够识别用户请求ssh会话。 – VonC

+0

@VonC:一致认为它与你的答案类似,但有一些补充说明。 –

+0

是的,它看起来不错。 – VonC

相关问题