ssh permissão negada (chave pública)

0

Acabei de instalar o VirtualBox e o Vagrant no meu coputer e inicializei uma caixa do ubuntu / bento-16.04. Eu adicionei um novo usuário ao lado do usuário vagrant e criei e copiei a chave pública no servidor em um arquivo denominado authorized_keys. Eu também desequilibrei a possibilidade de autenticar com um paswword.

O problema é que eu posso conectar-me ao servidor somente se fornecer ao comando ssh o caminho completo para a minha chave privada (localizada na unidade C do meu computador), sob -i flag.

Se tentar conectar-se apenas com ssh -p 2222 lucian @ localhost , recebi esta mensagem: permissão negada (chave pública)

Existe alguma maneira que eu possa conectar por ssh sem fornecer o caminho completo para a chave privada localizada no meu computador?

Minha impressão é que o servidor não sabe sobre a localização da chave privada.

Eu vermelho os tópicos anteriores relacionados a este problema, mas eu posso descobrir o que eu devo fazer para fazer o ssh-agent fornecer ao servidor a chave privada automaticamente.

Obrigado!

    
por Lucian Tanase 30.11.2017 / 16:36

2 respostas

-1

Eu resolvi isso criando um arquivo de configuração armazenado na máquina local ( ~ / .ssh / config ) com o seguinte conteúdo

Host myhost HostName 192.168.10.10 User username IdentityFile /path/to/identity file IdentitiesOnly yes

onde

  • myhost é qualquer nome que você escolher usar junto com o comando ssh para conectando-se ao servidor
  • HostName é o endereço IP definido no Vagrantfile para rede privada
  • user é o nome do novo usuário criado no nível do servidor
  • IdentityFile é o caminho para a chave privada armazenada localmente (chave pública sendo armazenada no servidor no arquivo authorized_keys)

Depois disso eu posso conectar ao servidor a partir do vagrant simplesmente com o comando ssh myhost .

    
por Lucian Tanase 26.12.2017 / 17:25
1

Sem editar arquivos, você pode usar ssh-add yourkeyfile , mas não sobreviverá a uma reinicialização.

Para configurá-lo como uma configuração permanente, você pode criar ou editar o seguinte arquivo

nano /home/yourusername/.ssh/config

Adicione a seguinte entrada

Host serverIP/FQDN
IdentityFile /home/yourusername/.ssh/yourkeyfile (or other path)

Agora, toda vez que você se conectar a esse host específico, ele usará esse arquivo.

Você também pode adicionar o número da porta e o nome de usuário na configuração acima, para que você só precise digitar ssh remotehostname para se conectar.

Para isso, adicione

 User remote_username
 Port remote_port#
    
por m_krsic 30.11.2017 / 17:15