Esta es la solución más válida que encomtrarás brindar, pero primero mírala detenidamente y valora si es compatible a tu proyecto.
Solución:
Un paso que parece haber pasado por alto (o que no incluyó en su descripción) es la publicación de la información pública. key en el lado del servidor.
Sube tu ssh público key y añádelo a la ~username/.ssh/authorized_keys
expediente.
Además, pruébelo (para probar) primero con un privado key sin frase de contraseña (no es necesario agregar ssh a su key a un agente ssh)
Finalmente, asegúrese de que su ssh keys son con nombres estándar (id_rsa
y id_rsa.pub
), con la protección adecuada:
- en el lado local
- en el lado remoto
Finalmente, un ssh -Tvvv [email protected]
debería decirle más, si los pasos anteriores no resolvieron el problema.
Siendo el procedimiento completo:
-
Agregar el público de EC2 key a su lista ssh con el siguiente comando
ssh-add /path/to/myEC2publickey
-
Cree un repositorio git en la instancia EC2 con los siguientes comandos
mkdir /path/my_project.git cd /path/my_project.git git init --bare
-
Conecte los archivos locales en su sistema a su repositorio con los comandos
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
-
crear un publico key como el usuario y agregarlo al servidor autorizado keys
Puede realizar este paso simplemente copiando el archivo id_rsa.pub del host local al archivo ~/.ssh/authorized_keys de los servidores, como se sugiere en la respuesta anterior.
Después de seguir estos pasos, si prueba git push, no debería obtener un error de “permiso denegado”.