SSH Github Permission denied (publickey)

0

Eu tenho tido problemas nos últimos dias tentando se conectar a uma conta do github.

Eu tenho:

  • Seguiu o guia para gerar chaves e adicionar ao github
  • Seguiu o guia de solução de problemas em Permissão negada (Meu hash MD5 corresponde localmente ao do um na minha conta do github.
  • Saída detalhada testada ao testar a conexão ssh

Aqui está a saída para ssh -vT [email protected]

OpenSSH_7.5p1, OpenSSL 1.0.2l  25 May 2017
debug1: Reading configuration data /Users/[obfuscated]/.ssh/config
debug1: /Users/[obfuscated]/.ssh/config line 13: Applying options for *
debug1: /Users/[obfuscated]/.ssh/config line 24: Applying options for github.com
debug1: Reading configuration data /usr/local/etc/ssh/ssh_config
debug1: Connecting to github.com [192.30.253.112] port 22.
debug1: fd 5 clearing O_NONBLOCK
debug1: Connection established.
debug1: identity file /Users/[obfuscated]/.ssh/id_rsa type 1
debug1: key_load_public: No such file or directory
debug1: identity file /Users/[obfuscated]/.ssh/id_rsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_7.5
debug1: Remote protocol version 2.0, remote software version libssh_0.7.0
debug1: no match: libssh_0.7.0
debug1: Authenticating to github.com:22 as 'git'
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: algorithm: [email protected]
debug1: kex: host key algorithm: ssh-rsa
debug1: kex: server->client cipher: [email protected] MAC: <implicit> compression: [email protected]
debug1: kex: client->server cipher: [email protected] MAC: <implicit> compression: [email protected]
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ssh-rsa SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8
The authenticity of host 'github.com (192.30.253.112)' can't be established.
RSA key fingerprint is SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'github.com,192.30.253.112' (RSA) to the list of known hosts.
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: rekey after 134217728 blocks
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey
debug1: No more authentication methods to try.
Permission denied (publickey).

Algo interessante aqui que eu notei é que eu não tenho debug1: Offering RSA public key: /Users/you/.ssh/id_rsa ou debug1: Trying private key: /Users/you/.ssh/id_rsa na minha depuração. Quase como se essa parte estivesse sendo ignorada. Eu tenho debug1: identity file /Users/[obfuscated]/.ssh/id_rsa type 1 , então parece que encontrou o arquivo.

Aqui está meu .ssh/config :

Host localhost
  ControlMaster no

# default for all hosts
Host *
     ConnectTimeout 30
     ServerAliveInterval 30
     ControlMaster auto
     ControlPersist 60s
     HashKnownHosts yes
     GSSAPIAuthentication no
     IdentitiesOnly yes
     Compression yes

# github user
Host github.com
     HostName github.com
     User git
     PreferredAuthentications publicKey
     IdentityFile ~/.ssh/id_rsa

# the local raspberry pi dns ad block server
Host pi
     HostName [obfuscated]
     User pi
     IdentityFile ~/.ssh/pi_rsa

Permissões para arquivos ssh

 8 -rw-r--r--   1 [obfuscated]  staff   802B Sep  9 21:45 config
 8 -rw-------   1 [obfuscated]  staff   3.2K Sep  9 21:16 id_rsa
 8 -rw-r--r--   1 [obfuscated]  staff   747B Sep  9 21:16 id_rsa.pub
 8 -rw-r--r--   1 [obfuscated]  staff   885B Sep  9 21:37 known_hosts
 8 -rw-------   1 [obfuscated]  staff   1.7K Oct 21  2016 pi_rsa
 8 -rw-r--r--   1 [obfuscated]  staff   405B Oct 21  2016 pi_rsa.pub
    
por maffo 10.09.2017 / 08:41

1 resposta

1

Resposta curta: tive um erro de digitação no meu .ssh/config .

PreferredAuthentications publicKey

deveria ter uma minúscula k

PreferredAuthentications publickey

Como descobri o problema:

On most systems the default private keys (~/.ssh/id_rsa, ~/.ssh/id_dsa and ~/.ssh/identity) are automatically added to the SSH authentication agent. You shouldn't need to run ssh-add path/to/key unless you override the file name when you generate a key.

Sabendo disso, eu removi minha configuração personalizada de github.com para que o agente de autenticação SSH usasse minha chave por padrão.

Isso me permitiu conectar. Em seguida, adicionei de volta uma linha por vez até descobrir que PreferredAuthentications publicKey não estava funcionando. Eu pesquisei para verificar a sintaxe e descobri que o problema era o maiúsculo K .

    
por 10.09.2017 / 11:33

Tags