Ainda outro “encaminhamento de agente ssh não funciona”

0

Eu posso ssh de hostA a hostB e de hostA a hostC usando chaves carregadas no ssh-agent sem nenhum problema. No entanto, se eu fizer ssh -A hostB de hostA , tente ssh hostC de hostB , a autenticação de chave pública não funcionará e ele solicitará minha senha.

Alguns detalhes:

  • Estou usando ssh-agent que vem com o OpenSSH, não o GNOME Keyring ou qualquer coisa assim.
  • Ambos ssh -v hostB de hostA e ssh -v hostC de hostA show:

    debug1: Next authentication method: publickey
    debug1: Offering RSA public key: /home/rhansen/.ssh/id_rsa
    debug1: Server accepts key: pkalg ssh-rsa blen 279
    debug1: Authentication succeeded (publickey).
    
  • Eu vejo minha chave quando executo ssh-add -L on hostB .

  • Minha chave em hostA é protegida com uma senha.
  • Em hostB , /etc/ssh/sshd_config NÃO contém AllowAgentForwarding no .
  • Todos os três sistemas executam o Ubuntu 15.10 (Wily) com o OpenSSH 6.6.1p1.
  • Quando executo ssh -vvv hostC de hostB , o seguinte é registrado:

    ...
    debug2: key: /home/rhansen/.ssh/id_rsa ((nil)),
    debug2: key: /home/rhansen/.ssh/id_dsa ((nil)),
    debug2: key: /home/rhansen/.ssh/id_ecdsa ((nil)),
    debug2: key: /home/rhansen/.ssh/id_ed25519 ((nil)),
    debug1: Authentications that can continue: publickey,password
    debug3: start over, passed a different list publickey,password
    debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
    debug3: authmethod_lookup publickey
    debug3: remaining preferred: keyboard-interactive,password
    debug3: authmethod_is_enabled publickey
    debug1: Next authentication method: publickey
    debug1: Trying private key: /home/rhansen/.ssh/id_rsa
    debug3: no such identity: /home/rhansen/.ssh/id_rsa: No such file or directory
    debug1: Trying private key: /home/rhansen/.ssh/id_dsa
    debug3: no such identity: /home/rhansen/.ssh/id_dsa: No such file or directory
    debug1: Trying private key: /home/rhansen/.ssh/id_ecdsa
    debug3: no such identity: /home/rhansen/.ssh/id_ecdsa: No such file or directory
    debug1: Trying private key: /home/rhansen/.ssh/id_ed25519
    debug3: no such identity: /home/rhansen/.ssh/id_ed25519: No such file or directory
    debug2: we did not send a packet, disable method
    debug3: authmethod_lookup password
    debug3: remaining preferred: ,password
    debug3: authmethod_is_enabled password
    debug1: Next authentication method: password
    
  • Se eu ssh -vvv hostB de hostA , em seguida, ssh hostC , o seguinte será registrado por hostA logo antes do prompt da senha hostC :

    debug1: client_input_channel_open: ctype [email protected] rchan 2 win 65536 max 16384
    debug2: fd 10 setting O_NONBLOCK
    debug3: fd 10 is O_NONBLOCK
    debug1: channel 2: new [authentication agent connection]
    debug1: confirm [email protected]
    
  • Meu ~/.ssh/config em todos os sistemas contém as configurações incomuns a seguir (mais algumas comuns que não considero relevantes):

    ControlMaster auto
    ProxyCommand sh ~/.ssh/proxy.sh '%h' '%p' '%r'
    IdentitiesOnly yes
    

Alguma idéia?

    
por Richard Hansen 27.03.2016 / 11:00

2 respostas

2

Acontece que o culpado foi a seguinte linha no meu ~/.ssh/config :

IdentitiesOnly yes

Eu tinha acrescentado isso há algum tempo quando estava experimentando várias teclas que estavam causando rejeições "com muitas tentativas". Eu esqueci quando terminei de experimentar, então nunca removi. (Ele nunca causou nenhum problema até eu começar a usar o encaminhamento de agentes.)

    
por 28.03.2016 / 01:55
0

Fico feliz em ver que você conseguiu corrigir o problema sozinho.

Seu problema era diferente do que eu estava tendo, mas adicionarei o que estava tendo, caso alguém encontre esse post com o que eu tinha.

No meu caso, o problema era que meu diretório pessoal tinha permissões de 775, o que o ssh não permite. Não apenas o diretório .ssh / precisa ser 700, e as authorized_keys precisam ser 600, mas o próprio diretório home deve ser 755 ou inferior (por exemplo, 700).

    
por 12.12.2017 / 02:45