Tentando SSH para VM local Ubuntu com Putty

111

Eu configurei uma VM do servidor Ubuntu, instalei o OpenSSH e agora estou tentando conectá-lo usando o Putty. Dentro de Putty, em "Nome do host", eu coloquei "Ubuntu", dado que isso é o que eu achava que era chamado quando eu configurava a VM. No entanto, acabei de receber o erro: "Conexão esgotada".

Eu também tentei colocar "127.0.0.1" no nome do host dentro do Putty e obter "Connection Refused". Observe que realizei o encaminhamento de porta para SSH e HTTP no Oracle VM, portanto, não tenho como executá-lo.

    
por wickywills 22.07.2014 / 22:40

5 respostas

143

O VirtualBox criará uma rede privada (10.0.2.x) que será conectada à sua rede host usando NAT . (A menos que configurado de outra forma.)

Isso significa que você não pode acessar diretamente qualquer host da rede privada a partir da rede do host. Para fazer isso, você precisa de algum encaminhamento de porta. Nas preferências de rede da sua VM, você pode, por exemplo, configurar o VirtualBox para abrir a porta 22 em 127.0.1.1 (um loopback do seu host) e encaminha qualquer tráfego para a porta 22 de 10.0.2.1 (o endereço interno da sua VM)

Dessa forma, você pode apontar o putty para a porta 22 de 127.0.1.1 e o VirtualBox redirecionará essa conexão para sua VM, onde o daemon ssh irá responder, permitindo que você faça o login.

    
por 23.07.2014 / 02:32
29

Eu queria usar massa para se conectar ao meu Ubuntu na caixa virtual (razões de conforto, o VB é apenas estranho. Eu não posso trabalhar a menos que seja em um terminal adequado). De qualquer forma,

  1. Certifique-se de que o cliente ssh esteja instalado em seu Linux. Caso contrário, instale-o em sudo apt install ssh .
  2. Desligue o sistema operacional.
  3. Agora, no seu VB, acesse Settings -> Network -> em Adapter 1 escolha Host-only adapter - > clique em OK .
  4. Agora inicie seu sistema operacional. Execute ifconfig ; agora o endereço inet é seu IP.
  5. Use isso e execute-o em sua massa. Faça o login com suas credenciais.

A única desvantagem de usar o adaptador somente host é que seu sistema operacional convidado não terá acesso à rede mais ampla (por exemplo, a Internet).

Se você também precisar que sua VM tenha acesso à Internet, deixe o Adaptador 1 como NAT e ative o Adaptador 2, configurado como um adaptador Somente Host. Isso permitirá que sua VM se conecte à Internet usando o NAT, além de estabelecer uma conexão local com o host usando somente host.

    
por 26.02.2015 / 19:02
17

Primeiro, você precisa decidir se a sua VM está conectada à sua máquina host através de uma conexão em ponte ou via NAT, mas éter maneira de colocar o endereço IP da VM em massa para poder se conectar ao ip, no O terminal VM executa este comando para mostrar o endereço IP da máquina (e não 127.0.0.1 não é o endereço IP da máquina)

VM # ip addr show

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 52:54:00:d9:16:b3 brd ff:ff:ff:ff:ff:ff
    inet 10.0.2.15/24 brd 10.0.2.1 scope global eth0
       valid_lft forever preferred_lft forever

neste caso, meu endereço IP será 10.0.2.15,

Primeiro, tente se certificar de que você pode se comunicar em um nível básico com a VM, abrir uma janela de terminal em seu host e tentar fazer ping na VM

HOST # ping 10.0.2.15

PING 10.0.2.15 (10.0.2.15) 56(84) bytes of data.
64 bytes from 10.0.2.15: icmp_seq=1 ttl=64 time=0.045 ms
64 bytes from 10.0.2.15: icmp_seq=2 ttl=64 time=0.110 ms
64 bytes from 10.0.2.15: icmp_seq=3 ttl=64 time=0.099 ms

Se você obtiver o resultado ant, certifique-se de ter um serviço ssh em execução na VM, no terminal em seu tipo de VM como raiz,

VM # netstat -lnpt | grep 22
tcp   0  0  0.0.0.0:22  0.0.0.0:*  LISTEN  2361/sshd

Isto diz que temos um serviço / processo com o PID (2361) chamado sshd (daemon OpenSSH) ouvindo a porta 22.

Você pode testar se o serviço funciona corretamente, tentando ssh para ele da própria VM,

VM # ssh 127.0.0.1

Depois você neet para ter certeza que você não está bloqueando a porta 22 no seu firewall / iptables, eu não posso acreditar, mas confira mesmo assim. Na VM digite esse comando para mostrar o iptables,

VM # iptables -nvL INPUT

na saída, você deve ter uma linha como esta:

0  0  ACCEPT  tcp  --  *  *  0.0.0.0/0  0.0.0.0/0  tcp  dpt:22  ctstate  NEW
    
por 22.07.2014 / 22:59
14

A minha resolução foi semelhante à de Roman T, no entanto, precisei de adicionar alguns passos adicionais. No meu caso, eu tinha o Ubuntu Server 14 VM rodando em um Windows 8 Desktop no domínio do Windows 2008. Se eu tentasse o NAT ou o Bridge, eu poderia acessar a Internet, mas não conseguia me conectar via SSH.

Se eu tentasse o Host Only Adapter, isso permitiria que o SSH usasse a máquina, mas não pudesse acessar a Internet.

Eu tentei o encaminhamento de portas também e não tive alegria. Abriu o Wireshark e simplesmente não estava encontrando a VM.

Então, minha solução foi adicionar um segundo adaptador de rede.

Método

Com a VM desligada

  1. Clique em Configurações > Rede Clique Adaptador 1 e escolha Adaptador em Ponte
  2. Clique no adaptador 2 e escolha Adaptador somente host
  3. Clique em Arquivo > Preferências > Redes sob redes NAT, se você não vê uma rede NAT, clique no ícone + para adicionar rede NAT.
  4. Clique em Redes somente para host, se você não vir um ícone de rede somente de host, clique no ícone + para adicionar uma

Iniciar a VM

  1. Para ver o adaptador de rede, você precisa digitar

    ifconfig -a
    
  2. Você pode ver que o adaptador de rede foi adicionado com um endereço MAC, mas não com um IP?

  3. Se sim, então você precisa editar o / etc / network / interfaces para configurar o DHCP. Exemplo abaixo usando o VI / VIM, mas você pode usar o editor de sua escolha

    sudo vi /etc/network/interfaces
    
  4. adicione as linhas

    auto eth1
    iface eth1 inet dhcp
    
  5. salva e sai do arquivo.
  6. Em seguida, tente reiniciar o serviço de rede usando o comando abaixo

    sudo service networking restart
    
  7. Ou se isso falhar, reinicie a VM.
  8. Uma vez reiniciado, digite abaixo para ver se a sua eth1 recebeu um endereço IP

    ifconfig -a
    
  9. em caso afirmativo, veja se você pode executar o SSH na VM
por 25.09.2015 / 02:15
12

As seguintes instruções trabalharam com o Ubuntu 14.04 e o Oracle VirtualBox 4.3.30.

Faça isso no VirtualBox:

  1. Clique com o botão direito na máquina virtual, selecione "Configurações" e, em seguida, selecione "Rede".

  2. Ao lado de "Anexado a", selecione "Adaptador somente para host". Como uma nota lateral, "Bridged Adapter" também funcionará, verifique a documentação do VirtualBox para obter mais detalhes sobre cada opção.

Faça isso dentro da sua máquina virtual:

  1. Encontre seu endereço IP de rede abrindo um terminal e digitando ifconfig . Observe o endereço IP exibido ao lado de eth0, em "inet addr". Você também pode ver seu endereço IP se clicar no ícone Rede no canto superior direito da área de trabalho e selecionar "Informações de conexão".

  2. Instale o openssh-server digitando o seguinte no terminal:

    sudo apt-get install openssh-server
    
  3. Apenas no caso, reinicie a máquina virtual.

Agora você pode se conectar a partir do PuTTY usando o endereço IP da etapa 1 acima e a porta 22.

    
por 11.09.2015 / 17:04