Cómo corregir la advertencia: No se puede acceder al archivo de identidad github: ¿No existe tal archivo o directorio?


6
Host github.com git 
  HostName github.com
  User git
  IdentityFile ~/.ssh/github # I've tried also /home/freinn/.shh/github

No se ha /home/freinn/githubcreado ningún archivo, ¿tengo que crearlo?

Esa es la advertencia completa:

Warning: Identity file /home/freinn/github not accessible: No such file or directory.
Hi freinn! You've successfully authenticated, but GitHub does not provide shell access.

[freinn@freinn ruby]$ ssh -v git@github
OpenSSH_5.9p1, OpenSSL 1.0.0j-fips 10 May 2012
debug1: Reading configuration data /home/freinn/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 50: Applying options for *
ssh: Could not resolve hostname github: Name or service not known

Respuestas:


1

Para que la autenticación SSH funcione para GitHub, debe crear un par de claves pública / privada según las instrucciones de GitHub . La IdentityFileopción debe apuntar a cualquier archivo que contenga la clave privada que creó mientras realiza esas instrucciones.

Parece que te estás conectando bien de todos modos *: estás viendo el mensaje de conexión exitosa de GitHub. ¿Quizás su clave privada de GitHub es justa ~/.ssh/id_rsa? Si es así, puede eliminar la IdentityFilelínea por completo y funcionará como se esperaba.

Si es de ayuda, la sección relevante de mi ~/.ssh/config/aspecto es la siguiente:

Host github.com
    IdentityFile ~/.ssh/id_rsa_github
    IdentitiesOnly yes

... pero eso funciona solo porque ~/.ssh/id_rsa_githubes donde puse mi clave RSA privada específica de GitHub.

* GitHub siempre responde You've successfully authenticated, but GitHub does not provide shell access.cuando tienes éxito sshdesde un shell.


No funciona La misma advertencia incluso ingresando la línea "IdentidadesSolo sí"
— freinn

Qué es'? ¿Eliminar la IdentityFilelínea por completo? Copiar mi entrada literalmente nunca iba a funcionar porque, como dije, funciona solo porque ~/.ssh/id_rsa_githubes donde puse mi clave RSA privada específica de GitHub. De nuevo, parece que te estás autenticando bien, deberías poder abandonar la IdentityFilelínea por completo.
— dos puntos

Tengo que tener el archivo github en / home / freinn / y no sé por qué ssh buscar allí ...
— freinn

Nuevamente, sshestá buscando y encontrando la clave RSA relevante. No recibirías el You've successfully authenticated…mensaje si ese no fuera el caso. IdentityFileEs casi seguro que su entrada es redundante, ya que se sshqueja y finalmente la ignora. Si pudiera actualizar su ssh -vsalida en git@github.comlugar de hacerlo git@github, lo sabríamos con certeza. Pero probablemente sea irrelevante, ya que deshacerse de la IdentityFilelínea probablemente detendrá el mensaje de error.
— dos puntos

Si salgo de la línea IdentityFileque daWarning: Identity file /home/freinn/github not accessible: No such file or directory. Permission denied (publickey).
— freinn

1

Esto es lo que me funciona:

Host github
  User git
  Hostname github.com
  IdentityFile ~/.ssh/id_rsa

El IdentityFiledebería apuntar al archivo de identificación existente. Puede usar tilde (~) que se refiere al directorio de inicio de un usuario.

Básicamente el error:

Advertencia: el archivo de identidad / home / freinn / github no es accesible: no existe dicho archivo o directorio.

diciendo que falta este archivo, por lo tanto, debe crear uno (usando ssh-keygen) o señalar el archivo de identidad de autenticación DSA, ECDSA o RSA existente o usar el archivo predeterminado (eliminando o comentando la línea).

Además, en la línea de host ( Host github), puede especificar el patrón de host, como el alias que desea usar, para que pueda usarlo en git@githublugar de usar el host completo. Normalmente, desea usar una entrada de host específica, sin embargo, también puede usar un carácter comodín ( *) que aplicará la configuración global para todos los hosts.

Verifique más información ejecutando el man ssh_configcomando.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.