Meu host é o Ubuntu 12.04 e o convidado é um Debian squeeze (servidor LAMP). Quero permitir que o host conecte o convidado. e permitir que o convidado se conecte à internet. O convidado não deve ser habilitado de fora. Essa é a razão pela qual não uso ponte de rede. Quero configurar um IP estático para o host. eu seguieste tutorial.
Então, executei essas etapas, mas não consigo me conectar ssh
do host para o convidado. Não consigo ligar para o servidor via navegador. ping
funciona no entanto!
Criei um adaptador de rede somente host virtual ( vboxnet0
) com as seguintes configurações:
IPv4-Adress: 192.168.56.1
IPv4-Netmask: 255.255.255.0
ifconfig
no host do Ubuntu mostra isso:
eth0 Link encap:Ethernet Hardware Adresse XX:XX:XX:XX:XX:XX
inet Adresse:192.168.2.100 Bcast:192.168.2.255 Maske:255.255.255.0
inet6-Adresse: XXXX:XXX:XXXX:XXXX:X:X/XX Gültigkeitsbereich:Global
vboxnet0 Link encap:Ethernet Hardware Adresse XX:XX:XX:XX:XX:XX
inet Adresse:192.168.56.1 Bcast:192.168.56.255 Maske:255.255.255.0
inet6-Adresse: XXXX:XXX:XXXX:XXXX:X:X/XX Gültigkeitsbereich:Verbindung
UP BROADCAST RUNNING MULTICAST MTU:1500 Metrik:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:10069 errors:0 dropped:0 overruns:0 carrier:0
Kollisionen:0 Sendewarteschlangenlänge:1000
RX-Bytes:0 (0.0 B) TX-Bytes:1539501 (1.5 MB)
No convidado do Debian squeeze, /etc/network/interfaces
fica assim:
# The host-only network interface
auto eth1
iface eth1 inet static
address 192.168.56.1
netmask 255.255.255.0
network 192.168.56.0
broadcast 192.168.56.255
Já tentei mudar eth1
para eth0
sem resultado.
Nas configurações do VirtualBox, o modo promíscuo permite que VMs e Host se conectem.
Cheguei ao limite do meu conhecimento.
a saída de:
netstat --inet --inet6 -ln | grep :22
é nada.
a saída de:
sudo iptables -L INPUT -nv
é:
Chain INPUT (policy ACCEPT 166 packets, 30786 bytes)
pkts bytes target prot opt in out source destination
Responder1
Você não deve usar o mesmo endereço IP no seu convidado (como aquele na interface do host). Se você configurar vboxnet0 no host para o endereço IP 192.168.56.1, então no seu convidado você deverá usar 192.168.56.2, por exemplo. O gateway do seu convidado deve ser o IP do host (no seu caso 192.168.56.1).
Isso deve fazer a conexão host<->guest. Se você deseja que seu convidado também tenha internet, você deve mascarar seu IP (ou a rede) em seu host.
iptables -t nat -I POSTROUTING -s 192.168.56.0/24 -j MASQUERADE
sysctl net.ipv4.ip_forward=1
talvez seja necessário definir a política padrão para encaminhar ou ativar especificamente sua rede mascarada:
iptables -P FORWARD ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
nota: Você pode executar essas linhas com root, para permitir o acesso à Internet ao seu convidado. Porém, essas linhas provavelmente devem ir para a configuração do firewall do seu host. (ou seja, ufw). O arquivo de configuração do sysctl é: /etc/sysctl.conf, você pode definir ip_forward lá, se quiser que ele esteja sempre habilitado.