falha de autenticação sem senha SSH

0

Estou tentando ssh duas máquinas e preferiria usar chaves geradas para autenticação em vez de senha. Isso me permitirá automatizar o encaminhamento de porta e muitas outras coisas.

Nota: Meu servidor é debian.

Abaixo está o que eu fiz.

  1. Gerei a chave:

    ssh-keygen -t dsa
    
  2. Copiei o id_dsa.pub para o ~ / .ssh do servidor remoto

  3. ssh-add -D para excluir as chaves antigas. Gues eu não precisava deles
  4. ssh-add ~ / .ssh / id_dsa para adicionar o ID privado 5.tried para se conectar ao servidor externo como

    raiz ssh @ remote-ip

  5. Ainda resolvi a senha mesmo depois que minha aceitação foi adicionada em hosts conhecidos.
  6. Tentei o ssh -vvv root @ remote-ip e log obtain é postado abaixo.
OpenSSH_5.8p1 Debian-7ubuntu1, OpenSSL 1.0.0e 6 Sep 2011
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 184.154.191.58 [184.154.191.58] port 18765.
debug1: Connection established.
debug1: identity file /home/eclipse/.ssh/id_rsa type -1
debug1: identity file /home/eclipse/.ssh/id_rsa-cert type -1
debug1: identity file /home/eclipse/.ssh/id_dsa type 2
debug1: Checking blacklist file /usr/share/ssh/blacklist.DSA-1024
debug1: Checking blacklist file /etc/ssh/blacklist.DSA-1024
debug1: identity file /home/eclipse/.ssh/id_dsa-cert type -1
debug1: identity file /home/eclipse/.ssh/id_ecdsa type -1
debug1: identity file /home/eclipse/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_4.3
debug1: match: OpenSSH_4.3 pat OpenSSH_4*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.8p1 Debian-7ubuntu1
debug2: fd 3 setting O_NONBLOCK
debug3: put_host_port: [184.154.191.58]:18765
debug3: load_hostkeys: loading entries for host "[184.154.191.58]:18765" from file "/home/eclipse/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/eclipse/.ssh/known_hosts:3
debug3: load_hostkeys: loaded 1 keys
debug3: order_hostkeyalgs: prefer hostkeyalgs: [email protected],[email protected],ssh-rsa
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug2: kex_parse_kexinit: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: [email protected],[email protected],ssh-rsa,[email protected],[email protected],[email protected],[email protected],[email protected],ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit: none,[email protected],zlib
debug2: kex_parse_kexinit: 
debug2: kex_parse_kexinit: 
debug2: kex_parse_kexinit: first_kex_follows 0 
debug2: kex_parse_kexinit: reserved 0 
debug2: kex_parse_kexinit: diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
debug2: kex_parse_kexinit: ssh-rsa,ssh-dss
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: hmac-md5,hmac-sha1,hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit: none
debug2: kex_parse_kexinit: 
debug2: kex_parse_kexinit: 
debug2: kex_parse_kexinit: first_kex_follows 0 
debug2: kex_parse_kexinit: reserved 0 
debug2: mac_setup: found hmac-md5
debug1: kex: server->client aes128-ctr hmac-md5 none
debug2: mac_setup: found hmac-md5
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024-1024-8192) sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
debug2: dh_gen_key: priv key bits set: 125/256
debug2: bits set: 518/1024
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: RSA 5d:ce:fb:75:de:6f:52:f9:ad:41:e3:92:9a:53:ee:f0
debug3: put_host_port: [184.154.191.58]:18765
debug3: put_host_port: [184.154.191.58]:18765
debug3: load_hostkeys: loading entries for host "[184.154.191.58]:18765" from file "/home/eclipse/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/eclipse/.ssh/known_hosts:3
debug3: load_hostkeys: loaded 1 keys
debug3: load_hostkeys: loading entries for host "[184.154.191.58]:18765" from file "/home/eclipse/.ssh/known_hosts"
debug3: load_hostkeys: found key type RSA in file /home/eclipse/.ssh/known_hosts:3
debug3: load_hostkeys: loaded 1 keys
debug1: Host '[184.154.191.58]:18765' is known and matches the RSA host key.
debug1: Found key in /home/eclipse/.ssh/known_hosts:3
debug2: bits set: 514/1024
debug1: ssh_rsa_verify: signature correct
debug2: kex_derive_keys
debug2: set_newkeys: mode 1
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug2: set_newkeys: mode 0
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug2: key: /home/eclipse/.ssh/id_rsa ((nil))
debug2: key: /home/eclipse/.ssh/id_dsa (0x21b20e18)
debug2: key: /home/eclipse/.ssh/id_ecdsa ((nil))
debug1: Authentications that can continue: password,keyboard-interactive
debug3: start over, passed a different list password,keyboard-interactive
debug3: preferred gssapi-keyex,gssapi-with-mic,publickey,keyboard-interactive,password
debug3: authmethod_lookup keyboard-interactive
debug3: remaining preferred: password
debug3: authmethod_is_enabled keyboard-interactive
debug1: Next authentication method: keyboard-interactive
debug2: userauth_kbdint
debug2: we sent a keyboard-interactive packet, wait for reply
debug2: input_userauth_info_req
debug2: input_userauth_info_req: num_prompts 1
Password: 

Por favor alguém ajude.

    
por felix cheruiyot 21.04.2012 / 21:23

4 respostas

1

Você coloca a chave pública no lugar errado. No servidor, as chaves permitidas são armazenadas no arquivo ~/.ssh/authorized_keys , uma chave por linha. O servidor SSH ignora todos os outros arquivos em ~/.ssh .

(Você pode usar ssh-copy-id <server> para autorizar a chave facilmente.)

Em segundo lugar, você realmente executou sshd -D e sshd id_dsa ? O comando é ssh-add :

ssh-add -D
ssh-add ~/.ssh/id_dsa
    
por 21.04.2012 / 21:31
1

Passei muito tempo depurando a autenticação ssh de chave pública sem senha ao longo dos anos, então queria postar algumas sugestões para outras pessoas que aparecerem:

  • Como publicado pelo mgorven, verifique se as permissões de arquivo estão definidas corretamente no host remoto. Este é o problema mais comum na minha experiência.
    $ chown -R username:username ~/.ssh
    $ chmod -R 700 ~/.ssh
  • A execução do ssh a partir do cliente com "-v", "-vv" ou "-vvv" me deu muita saída, mas NUNCA me disse qual configuração está errada na máquina remota. É provavelmente para evitar que o mal h4x0rs receba informações demais ou algo assim.

  • Se você tiver acesso físico (não-ssh) à máquina remota, poderá tentar parar o serviço sshd e executar manualmente o sshd com o sinalizador "-d" para gerar informações de depuração no console.

  • Configurar a autenticação sem senha para o root é um grande não-não-segurança, mas se você ainda quiser fazer isso, tente configurar um usuário não-root primeiro. Então, se você tiver problemas para habilitá-lo para o root, você saberá que uma configuração específica para contas root / sysadmin é responsável.

  • Verifique se o SELinux está ativado. Se for, pode estar interferindo. Especialmente se você está tentando configurar a autenticação sem senha para uma conta de superusuário.

Espero que isso ajude a salvar as horas de frustrante tempo de solução de problemas que o ssh causou em nós.

    
por 28.08.2012 / 21:38
0

OpenSSH é muito anal sobre as permissões de arquivo. Certifique-se de que /root/.ssh e tudo nele pertença ao usuário correto e seja legível e gravável pelo proprietário.

chown -R root:root /root/.ssh
chmod -R u=rwX,g=,o= /root/.ssh

Se isso ainda não funcionar, cole o conteúdo de /var/log/auth.log e possivelmente /var/log/syslog no servidor durante a tentativa de login.

    
por 27.04.2012 / 04:19
0

tente

ssh-copy-id [user@]hostname

você será solicitado uma vez para a senha do usuário remoto, digite isso, e você deve estar no servidor remoto, logout e ssh de volta. nenhuma senha requerida.

* também, verifique as permissões dos arquivos conforme mencionado em outras respostas.

espero que ajude

    
por 11.02.2018 / 21:36