SSH entre dois convidados do Virtualbox

2

No meu laptop estou executando dois servidores Ubuntu como convidados no VirtualBox. Eles são conectados através de um adaptador somente host que possui um endereço IP '192.168.56.1', com os dois servidores convidados com endereços IP definidos como '192.168.56.101' & '192.168.56.102'. Cada um é capaz de pingar o outro, mas não de ssh nele. Quando tento enviar ssh para o outro convidado, recebo o seguinte erro:

ssh: connection to host 192.168.56.102 port 22: Connection refused

A coisa confusa (para mim de qualquer maneira) é que eu posso ssh no adaptador somente host no laptop host usando:

ssh [email protected]

Não tenho certeza do que tentar em seguida. Eu tentei reinstalar o ssh / sshd. Isso só me deu toda uma confusão de erros, mas eu estou pensando que se eu puder ssh uma coisa na rede na rede, eu deveria ser capaz de ssh em outra coisa, certo? Mas de qualquer maneira eu definitivamente estou negligenciando algo.

Eu tentei desativar o iptables nos convidados e no host usando

   sudo ufw disable

Então o usado em um dos convidados

   ssh [email protected]

e obtivemos

   ssh: connect to host 192.268.56.101 port 22: Connection refused

< -update- >

ssh -v [email protected]

Está me dando a seguinte saída:

OpenSSH_5.9p1 Debian-5ubuntu1, OpenSSL1.0.1 14 Mar 1012
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Connecting to 192.168.56.101 [192.268.56.101] port 22.
debug1: connect to address 192.168.56.101 port 22: Connection refused
ssh: connect to host 192.168.56.101 port 22: Connection refused

< -update- >

Meu arquivo / etc / hosts é exibido em todos os convidados:

127.0.0.1    localhost
127.0.1.1    ubuntu

# The following lines are desirable for IPv6 capable hosts
::1     ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

As duas caixas de convidados não têm um /etc/hosts.allow & arquivos /etc/hosts.deny.

ifconfig -a me dá:

eth0      Link encap:Ethernet  HWaddr 08:00:27:63:c5:71  
          inet addr:192.168.56.102  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe63:c571/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:15 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4658 (4.6 KB)  TX bytes:1790 (1.7 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

e

eth0      Link encap:Ethernet  HWaddr 08:00:27:ce:7c:1e  
          inet addr:192.168.56.101  Bcast:192.168.56.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fece:7c1e/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:15 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:4718 (4.7 KB)  TX bytes:1790 (1.7 KB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:16 errors:0 dropped:0 overruns:0 frame:0
          TX packets:16 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1184 (1.1 KB)  TX bytes:1184 (1.1 KB)

< -update- >

sudo netstat -pant |grep :22

Não fornece saída

< -update- >

Além disso, quando eu tento obter uma caixa também SSH seu eu fico com a mesma porta 22: Erro de conexão recusada.

    
por Paddy 01.08.2012 / 18:06

4 respostas

3

Devido ao fato de que você está recebendo uma mensagem rejeitada, posso assumir que você está realmente vendo pacotes atingindo o outro servidor, suspeito que o ssh não esteja instalado.

Em ambos os servidores, execute:

sudo apt-get install openssh-server

Quando o servidor ssh estiver instalado, ele deve funcionar bem.

< - Editar - >

Eu vi que você confirmou que o serviço está instalado, então ignore o acima, pode ser o iptables, embora ele não deva ser configurado por padrão no Ubuntu. Se você estiver executando o 12.04, pode desativar temporariamente o firewall digitando:

sudo ufw disable

Veja se isso ajuda em tudo.

Além disso, por "toda confusão de erros", o que você quer dizer? você tentou instalar com ou sem sudo?

    
por 01.08.2012 / 18:11
1

Tente usar o ssh -v endereço IP , para que você possa ver o que pode estar errado durante a conexão!

< < - EDIT - > >
use este comando no host 101 e poste o resutl

sudo netstat -plant | grep ssh


basicamente este comando mostra todas as conexões de rede em sua máquina e eu quero ver se o ssh roda em uma porta diferente em relação a 22

    
por 01.08.2012 / 18:32
0

Tem certeza de que você não tem um comando de proxy ou algo semelhante no seu arquivo ssh_config?

Olhando para a sua saída, há um problema com o endereço IP na sua saída de depuração e na mensagem de erro: em vez de 192.168.xxx.xxx, você tem 192. 2 68.xxx .xxx

Você deve verificar sua configuração de rede:

  • qual é a saída do comando "ifconfig -a" em cada host?
  • você pode verificar seu arquivo / etc / hosts?
  • você pode verificar se há algo em seus arquivos /etc/hosts.allow e /etc/hosts.deny
  • ... e, claro, como sugerido, você pode desativar o iptables
por 02.08.2012 / 09:08
0

Acredito que a opção "somente host" cria um link dedicado entre o convidado e o servidor, e as VMs que usam conexões somente de host não devem poder se ver na rede.

Você terá que conectá-los no Linux ou usar outra opção de rede.

Acredito que o que você está tentando alcançar pode ser feito se você alterar a opção de rede das duas VMs para "Rede Interna" e usar o mesmo nome para as duas VMs.

Editar: De acordo com a documentação do VirtualBox, a opção "somente host" deve permitir que as VMs se comuniquem umas com as outras, mas ainda assim - experimente.

Editar2: Oh - eu meio que sinto falta do fato de que as máquinas são capazes de pingar umas às outras. Neste caso, o que escrevi acima é irrelevante.

    
por 02.08.2012 / 12:40