Como consertar o aviso: O arquivo de identidade github não está acessível: Não existe tal arquivo ou diretório?

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

Não foi criado nenhum arquivo /home/freinn/github , tenho que criá-lo?

Esse é o aviso completo:

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
    
por freinn 05.10.2012 / 11:37

2 respostas

1

Para que a autenticação SSH funcione no GitHub, você precisa criar um par de chaves pública / privada de acordo com instruções do GitHub . A opção IdentityFile deve apontar para qualquer arquivo que contenha a chave privada que você criou ao executar essas instruções.

Parece que você está se conectando muito bem * - você está vendo a mensagem de conexão bem-sucedida do GitHub. Talvez sua chave privada do GitHub seja apenas ~/.ssh/id_rsa ? Nesse caso, você pode remover a linha IdentityFile e ela funcionará como esperado.

Se houver alguma ajuda, a seção relevante do meu ~/.ssh/config/ será a seguinte:

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

… mas isso funciona apenas porque ~/.ssh/id_rsa_github é onde eu coloco minha chave RSA privada específica do GitHub.

* O GitHub sempre responde com You've successfully authenticated, but GitHub does not provide shell access. quando você possui ssh em um shell.

    
por 05.10.2012 / 11:54
1

Isso é o que está funcionando para mim:

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

O IdentityFile deve apontar para o arquivo de identificação existente. Você pode usar o til (~) que se refere ao diretório pessoal de um usuário.

Basicamente, o erro:

Warning: Identity file /home/freinn/github not accessible: No such file or directory.

informando que este arquivo está ausente, portanto, é necessário criar um (usando ssh-keygen ) ou apontar para o arquivo de identidade de autenticação DSA, ECDSA ou RSA existente ou usar o arquivo padrão (removendo ou comentando a linha ).

Além disso, na linha do host ( Host github ), você pode especificar o padrão de host, como o alias que deseja usar, para poder usar git@github em vez de usar o host completo. Normalmente você deseja usar uma entrada de host específica, no entanto, você também pode usar um caractere curinga ( * ) que aplicará as configurações globais para todos os hosts.

Verifique mais informações executando o comando man ssh_config .

    
por 30.09.2015 / 11:50

Tags