o id_rsa.pub pode ser copiado em qualquer lugar sem qualquer perigo real para ele. Esta é a sua chave pública e destina-se a coisas como esta. É metade de um par de chaves, e compartilhá-lo com lugares que você quer acessar é como você permite que a chave privada funcione.
Para permitir login remoto, sua chave pública precisa ser listada em authorized_keys ( authorized_keys2 em alguns sistemas). Uma chave em cada linha, neste formato:
ssh-rsa AAAIHAVEREMOVEDTHEMAJORITYOFTHEKEYBECAUSEISEENONEEDTOPOSTTHATWALLOFTEXTHERE9yfRjxw== jarmund@jarmint
Para conseguir isso, depois de copiá-lo, basta anexá-lo ao arquivo authorized_keys da seguinte forma: cat id_rsa.pub >> ~/.ssh/authorized_keys
A maioria dos sistemas sãos se recusará covardemente a permitir o uso de login baseado em chave se a pasta .ssh tiver permissões muito frouxas. A pasta deve ser 700 , por isso, se você ainda tiver problemas: chmod 700 ~/.ssh
Além disso, os arquivos na pasta .ssh devem ser 600: chmod 600 ~/.ssh
Editar 1:
O próprio arquivo, id_rsa.pub não é necessário no servidor remoto. Apenas o conteúdo, como parte de authorized_keys . Eu recomendo rodar ssh -vT [email protected] para habilitar o registro detalhado, para que você possa ver exatamente de quais permissões ele reclama.
Editar 2:
Isso significa que nenhuma das chaves oferecidas corresponde ao que o servidor remoto possui no arquivo. O que você quer ver é algo assim:
debug1: Offering RSA public key: /home/jarmund/.ssh/id_rsa
debug1: Server accepts key: pkalg ssh-rsa blen 535
Coisas a verificar:
- Certifique-se de que uma das chaves privadas é aquela que corresponde à chave pública que você adicionou ao controle remoto
authorized_keys - Verifique se a chave corresponde ao nome de usuário com o qual você está tentando fazer login (deve ser a última parte da chave pública)
- Tente renomear
authorized_keysparaauthorized_keys2