Monday, January 17, 2011

Доступ к гостевой машине по SSH в VirtualBox

Итак, задача: нужно получить доступ по SSH к гостевой ОСи в VirtualBox.
Исходные данные: VirtualBox 4, host: Windows 7, guest: Debian 5 Lenny или Debian 6 Squeeze, сеть через роутер, все порты контролируются брандмауэром (KIS).
И мы эти препятствия обойдём легко и быстро :)
При установке VirtualBox должна быть включена опция Host-only Networking (по умолчанию включена).


 Для начала добавим второй сетевой адаптер:
 


Потом установим ssh-сервер в гостевой оси.
sudo aptitude install openssh-server


Узнаем имя второго сетевого адаптера:
sudo ifconfig
eth0 - основной, eth1, eth2, eth3, eth4 и дальше - дополнительные.



Подредактируем файл /etc/network/interfaces , добавим статический IP адрес:
sudo nano /etc/network/interfaces
auto
eth1
iface
eth1 inet static
address 192.168.56.10
netmask 255.255.255.0

eth1 - имя второго сетевого адаптера (оно может быть разным).
Здесь 10 в адресе 192.168.56.10 это не опечатка, последняя цифра адреса может быть от 2 до 255.

Перезагружаем виртуальную машину, пробуем в Putty соединиться:
Хост: 192.168.56.10
Порт: 22

  • виртуальная ОСь доступна по SSH, при этом она недоступна никому, кроме нас; 
  • трогать настройки роутера и брандмауэра не пришлось;
  • виртуальная ОСь имеет доступ к интернету;
  • можно открывать в браузере http://192.168.56.10 и тестировать web-приложения
Если выключать виртуальную машину с сохранением состояния, то после запуска машина может не увидеть внешнюю сеть. Это легко исправляется рестартом (виртуальной машины). У У моей виртуальной машины обычно нет необходимости видеть внешнюю сеть :)

14 comments:

  1. Полезная статейка

    ReplyDelete
  2. Че-то у меня не работает. А данные должны быть как здесь, или те которые там уже введены были?

    ReplyDelete
  3. IP-адреса - как здесь.

    ReplyDelete
  4. IP адрес DHCP 192.168.0.1 - это опечатка? Может быть всё таки 192.168.56.1 ?

    ReplyDelete
  5. Нет, это адрес DHCP-сервера. 56.1 - адрес хоста (он используется в настройках).

    ReplyDelete
  6. кортинки руляд

    ReplyDelete
  7. боже, ну почему у обоих машин указан один и тот же ip (192.168.56.10)?

    ReplyDelete
  8. У каких "обоих"? Тут всего одна виртуалка описана.
    Всё это гораздо проще сделать с VMWare - http://eugenioz.blogspot.ru/2013/01/connect-to-guest-os-via-ssh-in-vmware.html

    ReplyDelete
  9. спасибо, друг. все завелось)

    ReplyDelete
  10. У сетевого адаптера в VirtualBox IP 192.168.56.1, у eth1 IP 192.168.56.10. Адреса должны быть разные, иначе не работает.

    ReplyDelete
  11. Спасибо, все работает.

    ReplyDelete
  12. Сделал как описано но второй сетевой адаптер не появился. Как выйти из ситуации ?

    ReplyDelete
  13. ТЕМ У КОГО НЕ ПОЛУЧИЛОСЬ - http://yapro.ru/web-master/unix/virtualbox-statichniy-ip.html

    ReplyDelete