es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Git utiliza un usuario incorrecto para iniciar sesión en SSH, lo que resulta en un error de Permiso denegado (clave pública).

Tengo un problema con una instancia privada de Git, en la que Git está reemplazando el nombre de usuario en mis operaciones de Git.

Por ejemplo, cuando ejecuto ssh -T git@privateGithubInstance.com, SSH puede autenticarse correctamente, pero cuando ejecuto git ls-remote privateGithubInstance.com:project/repo.git, Git iniciará sesión con mi nombre de usuario local (como se muestra en el comando whoami), y no con el usuario git mencionado anteriormente. Esto hace que el servidor arroje un error de clave pública, ya que Git está utilizando el usuario incorrecto.

Mi configuración de SSH está vacía y la única línea relevante en mi configuración de Git es un reemplazo de URL que reemplaza HTTPS con SSH:

url.ssh://git@privateGithubInstance.com/project.insteadof=https://privateGithubInstance.com/project

Nota cómo el reemplazo apunta a git@ y no a miUsuario@, lo que significa que realmente no hay razón para que Git intente iniciar sesión con miUsuario.

¿Por qué está sucediendo esto y cuáles son los pasos adecuados para solucionarlo?

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    El problema puede ser causado por Git usando el archivo de identidad predeterminado de SSH en lugar del asociado con el usuario git. Para solucionar esto, puedes especificar explícitamente la clave SSH que quieres utilizar con Git agregando lo siguiente a tu archivo de configuración de SSH (~/.ssh/config):

    Host privateGithubInstance.com
       User git
       IdentityFile /ruta/a/tu/clave/ssh
    

    Asegúrate de reemplazar /ruta/a/tu/clave/ssh por la ruta real de tu clave SSH asociada con el usuario git.

    Después de agregar esta configuración, intenta ejecutar git ls-remote privateGithubInstance.com:proyecto/repo.git nuevamente y debería usar el usuario git correcto para autenticarse.

Comments are closed.