git push origin master: error de permiso denegado (key pública)

He configurado un git repo en mi instancia de server amazon ec2 ubuntu. He intentado insert el código en el repository del server desde mi máquina local. Los pasos que seguí son:

ssh-add /path/to/myEC2publickey 

En mi instancia EC2

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

Más tarde en mi localhost,

 cd the_project git init git add . git commit -m "Initial git commit message" git remote add origin username@hostname.com:the_project.git git config --global remote.origin.receivepack "git receive-pack" git push origin master 

Como estaba obteniendo un error de Denegación de permiso (key pública) al ejecutar el último command (es decir, el maestro de origen de git push), configuré la key pública siguiendo los pasos dados en un foro que incluía:

 ssh-keygen -t rsa -C "myemail@somedomain.com" eval 'ssh-agent -s' ssh-add 

Pude agregar la key pública pero todavía estoy frente al Permiso denegado (key pública) : Error.

Soy nuevo en git y he estado esperando cambiar todo mi código en un git repo.

Cualquier ayuda sería muy apreciada.

Un paso que parece haberse perdido (o que no se incluyó en su descripción) es la publicación de la key pública en el server.
Suba su key pública ssh y agréguela al file ~username/.ssh/authorized_keys .

Además, pruébelo (para probar) primero con una key privada sin frase de contraseña (no necesita agregar su key a un agente ssh)

Finalmente, asegúrate de que tus keys ssh tengan nombres de estándares ( id_rsa e id_rsa.pub ), con la protección adecuada:

  • en el lado local
  • en el lado remoto

Finalmente, un ssh -Tvvv username@hostname.com debería decirle más, si los pasos anteriores no resolvieron el problema.

El procedimiento completo es:

  1. Agregue la key pública EC2 a su list ssh con el siguiente command

     ssh-add /path/to/myEC2publickey 
  2. Crea un repository git en la instancia EC2 con los siguientes commands

     mkdir /path/my_project.git cd /path/my_project.git git init --bare 
  3. Conecte los files locales en su sistema a su repository con los commands

     cd the_project git init git add . git commit -m "Initial git commit message" git remote add origin username@hostname.com:the_project.git git config --global remote.origin.receivepack "git receive-pack" git push origin master 
  4. Crear una key pública como usuario y agregarla a las keys autorizadas del server

    Puede hacer este paso simplemente copyndo el file id_rsa.pub desde el server local al file ~ / .ssh / authorized_keys de los serveres, como se sugirió en la respuesta anterior.

Después de seguir estos pasos si testing el git push, no debería get un error de "permiso denegado".