Questão Permissão negada (publickey, password)


Eu estou tentando se conectar ao ip local via SSH do terminal. Comando é

ssh -v user@192.168.0.2

Mas não está se conectando. Continua me dando o erro "Permissão negada (publickey, senha)." Eu tenho procurado por idades e apenas não consigo encontrar qual é o problema. Eu posso conectar usando o mesmo método via Putty no Windows e pode se conectar via filezilla

Saída completa:

OpenSSH_6.2p2, OSSLShim 0.9.8r 8 Dec 2011
debug1: Reading configuration data /etc/ssh_config
debug1: /etc/ssh_config line 20: Applying options for *
debug1: Connecting to 192.168.0.2 [192.168.0.2] port 22.
debug1: Connection established.
debug1: identity file /Users/[UserName]/.ssh/id_rsa type 1
debug1: identity file /Users/UserName/.ssh/id_rsa-cert type -1
debug1: identity file /Users/UserName/.ssh/id_dsa type -1
debug1: identity file /Users/UserName/.ssh/id_dsa-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.2
debug1: Remote protocol version 2.0, remote software version OpenSSH_6.0p1 Debian-4+deb7u2
debug1: match: OpenSSH_6.0p1 Debian-4+deb7u2 pat OpenSSH*
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
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
debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
debug1: Server host key: [Server Host Key]
debug1: Host '192.168.0.2' is known and matches the RSA host key.
debug1: Found key in /Users/[UserName]/.ssh/known_hosts:1
debug1: ssh_rsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/[UserName]/.ssh/id_rsa
debug1: Authentications that can continue: publickey,password
debug1: Trying private key: /Users/[UserName]/.ssh/id_dsa
debug1: No more authentication methods to try.
Permission denied (publickey,password).

2


origem


Da saída, parece que o ssh está tentando usar um arquivo de identidade (linhas 5-8 inclusive). Se você tiver um arquivo de identidade em uso, verifique se as permissões estão configuradas para que somente o proprietário possa ler / gravar. - Sarge
Quais devem ser as permissões? -rw------- 1 Username staff 314 9 May 00:08 id_ecdsa -rw-r--r-- 1 Username staff 199 9 May 00:08 id_ecdsa.pub -rw------- 1 Username staff 1766 8 May 22:40 id_rsa -rw-r--r-- 1 Username staff 419 8 May 22:40 id_rsa.pub -rw-r--r-- 1 Username staff 799 8 May 23:10 known_hosts - Harnamc


Respostas:


tente adicionar a chave novamente. primeiro defina PasswordAuthentication yes em sshd_config na máquina dest, então faça ssh-copy-id user@host  faça o login, então copiará a chave. Agora você pode definir PasswordAuthentication no (se desejar, para segurança extra) e deve poder fazer o login automaticamente. Você também pode usar sua curiosidade e verificar se id_rsa.pub da máquina de origem está em authorized_keys na máquina dest


4



Além disso, eu não acho que as permissões são o problema, mas eu li que chmod 600 é bom para todos os arquivos em ~ / .ssh com 700 para o próprio diretório para que você possa listar os arquivos nele. Certamente qualquer coisa menos seria um problema - barlop
Spot on mate! funcionou como um encanto - Harnamc


Pode ser diferente porque parece que você está se conectando localhost ou alguma coisa (192.168.0.2 ou isso é apenas para a pergunta?

O que muitas vezes resolve coisas assim é editar o ~/.ssh/known_hosts arquivo e excluir a entrada para o domínio que você está se conectando, ele irá re-solicitar credenciais ssh e evitar problemas causados ​​por "expectativas" incorretas.


2



O localhost 192.168.0.2 é um servidor vpn local que tem o ssh ativado. Eu posso me conectar a ele de qualquer outro meio. Eu deletei todo o ~ / .ssh / known_hosts e também removi completamente o arquivo e o recriou. Mas o problema ainda existe. Seu problema é apenas ao tentar se conectar do meu mac. Eu tentei conexão via putty do meu laptop janela e funciona bem. Mesmo sftp via filezilla funciona perfeitamente bem. - Harnamc
Além disso, tente excluir id_rsa.pub ? - beroe
@beroe eu acho que id_rsa.pub não faz muito. Eu me lembro vagamente de um teste que parece que o ssh funciona da mesma forma com ou sem o id_rsa.pub. Eu acho que o ssh não usa a chave pública no arquivo de publicação, mesmo que o conteúdo seja o mesmo. - barlop
Tentei remover e recriar todas as chaves ainda tinha o mesmo problema. O que funcionou foi setar PasswordAuthentication yes em sshd_config e copiar chaves ssh-copy-id user@host - Harnamc
Que bom que você descobriu e obrigado pela atualização. - beroe