SSH в гостевой VirtualBox: соединение отклонено

SSH в гостевой VirtualBox: соединение отклонено

Настраивать

  • Хостовая ОС Windows 7 64-бит, работающая под управлением VirtualBox 4.2, с гостевой ОС Ubuntu 12.04.
  • Сервер OpenSSH установлен и запущен (ssh -v локальный хостподключается локально на гостевой машине).
  • Может ли SSH подключаться к внешним серверам (нет исходящего правила брандмауэра Windows, блокирующего порт 22)
  • Может ли пинговаться IP гостя (192.168.56.101)

Проблема

Используя PuTTY для SSH-подключения к IP гостевой ОС (192.168.56.101), PuTTY возвращается почти сразу с

Ошибка сети: соединение отклонено

Как я могу диагностировать и решить эту проблему?

решение1

Вы уверены, что IP принадлежит гостевой ОС? У меня была та же проблема, и оказалось, что IP, который я использовал все это время, 192.168.56.101, на самом деле был IP интерфейса Windows, а IP хостовой ОС был 192.168.56.103.

Вы можете проверить это, выполнив ipconfig / ifconfig на обоих устройствах.

ПРИМЕЧАНИЕ: Я также установил статический IP, который, как оказалось, мне вообще не нужен. Если вы попробуете с самого начала, я нашелэтотруководство, чтобы стать лучше.

решение2

Ни одно из других решений не является хорошим, потому что:

  1. Нет смысла подключаться к гостевой машине по протоколу SSH через мост, если гостевая машина потеряет доступ к интернету.
  2. Все остальные решения выше предлагают вам построить ракету, чтобы перейти дорогу.

Сценарий

  • Хост Ubuntu Desktop 16.04
  • Гостевой сервер Ubuntu 16.04 (работает на Virtual Box 5)

Проблема

В соединении SSH отказано

Решение

  1. Завершите работу гостевой Ubuntu.
  2. В Virtualbox перейдите в Настройки>Сеть>Адаптер1>Дополнительно>Переадресация портов.
  3. Имя=SSH Hostport=2022 (или любой порт, кроме 22) Guestport(22)
  4. Перезагрузите гостевую систему.
  5. На вашем хосте откройте Putty или что-то другое, что вы используете для SSH.
  6. сш[email protected]-p2022 (или любой другой порт, который вы указали как hostport)
  7. Удачи вам в этом

решение3

Мне подходит следующее:

До:

vboxnet0: 192.168.56.1
eth1:     192.168.56.1

После:

vboxnet0: 192.168.56.1
eth1:     192.168.56.101

Итак, по сути, я изменил часть файла { /etc/network/interfaces } следующим образом:

До:

auto eth1
iface eth1 inet static
address 192.168.56.1
netmask 255.255.255.0 

После:

auto eth1
iface eth1 inet static
address 192.168.56.101
netmask 255.255.255.0 

Работает:ssh [email protected]

решение4

Привет, я просто возвращаюсь к первой странице, которую нашел в своей мини-саге по устранению неполадок и исследованию, в надежде, что это руководство, которое я создал, сможет избавить кого-то еще от всех этих хлопот.

Полное руководство по настройке сервера CentOS с Oracle VM:

Часть I – Настройка виртуальной машины

  1. Установите Oracle VM VirtualBox и пакет расширенияздесь.
  2. Загрузите минимальную установку CentOSздесь.
  3. Для этого руководства я использую клиент Ubuntu. ISO для него можно найтиздесь.
  4. Создайте сервер CentOS и клиентские виртуальные машины.
  5. Настройте CentOS VM. a. Откройте Место установки и нажмите Назад. b. Перейдите в Сеть и Имя хоста, если вы хотите изменить имя хоста, что я и рекомендую. c. Не стесняйтесь настраивать элементы в разделе Локализация. Все остальное VirtualBox обрабатывает автоматически. d. Нажмите Начать установку. e. Создайте учетную запись root и обычную учетную запись. Убедитесь, что последняя имеет права администратора. f. Когда полоса загрузки заполнится, нажмите Перезагрузить.
  6. Настройте клиентскую виртуальную машину. а. Установите гостевые дополнения VirtualBox.

Часть II – Конфигурация виртуальной сети

  1. В VirtualBox нажмите CTRL+W.
  2. Создайте новую хост-сеть. a. Если вы получили сообщение об ошибке, это, скорее всего, связано с тем, что ваша хост-ОС вызывает проблемы VirtualBox при установке драйверов. Вам нужно будет полностью удалить VirtualBox и переустановить последнюю версию. Обязательно запустите установку от имени администратора.
  3. На вкладке «Адаптер» выберите «Настроить адаптер вручную».
  4. В Windows откройте командную строку и введите ipconfig.
  5. Прокрутите вывод, пока не найдете имя только что созданной вами сети host-only. Используйте этот адрес IPv4 и маску для конфигурации сети VirtualBox.
  6. Закройте диспетчер хост-сети.
  7. Откройте настройки клиентской виртуальной машины. В разделе «Сеть», «Включить адаптер 2», выберите «Адаптер только для хоста», а затем имя — это имя вашей недавно созданной сети только для хоста.
  8. Повторите последний шаг для вашего сервера CentOS VM. Кроме того, перейдите в Adapter 1's Port Forwarding на вкладке Advanced и создайте новое правило. Установите порты хоста и гостя на 22.
  9. Прежде чем закрыть расширенные настройки, запишите MAC-адрес.

Часть III – Конфигурация сервера

  1. Запустите виртуальную машину CentOS.
  2. Запустите yum check-update, yum upgrade, и yum clean all.
  3. Бегать nmtui.
  4. Нажмите Enter в поле «Изменить подключение».
  5. Вы должны увидеть «enp03s» и «Wired Connection 1». а. Если у вас есть два варианта подключения, но вы не уверены, какой из них какой, перейдите к редактированию одного из них. Если значение устройства соответствует MAC-адресу, указанному в разделе «Адаптер 1» из Части II, то это ваше подключение NAT, в противном случае это подключение только к хосту.
  6. Измените подключение только для хоста: a. Установите конфигурацию IPv4 на «вручную». b. Показать конфигурацию IPv4 c. В VirtualBox нажмите CTRL+W. Рядом с именем вашей сети только для хоста вы должны увидеть комбинацию IP-адреса/маски в форме «[ip]/[mask]». На вашем сервере в конфигурации IPv4 это то, что вы введете после нажатия <Add…>. d. Спуститесь вниз и нажмите OK.
  7. Убедитесь, что для обоих подключений (только хост и NAT) отмечен флажок «Автоматически подключаться».
  8. Выйдите из nmtuiи reboot.

Часть IV – Конфигурация и использование клиента

  1. Загрузите клиентскую виртуальную машину.
  2. (необязательно) Отредактируйте /etc/hosts, включив строку вида: [serv_ip_addr] [hostname] Где serv_ip_addr — это IP-адрес вашего сервера CentOS (второй вывод hostname -Iв терминале CentOS). Это позволит вам использовать то, что вы выбрали для [hostname], взаимозаменяемо с IP-адресом вашего сервера. Обычно я просто устанавливаю это на имя хоста, выбранное в части II.
  3. Если до этого момента все работало, вы должны иметь возможность подключиться по ssh [user]@[hostname]к вашему серверу CentOS. Если это не так, вам может потребоваться установить openssh-clientи openssh-serverна ваших машинах.

Часть V – Обслуживание веб-сайтов

  1. Этот— это превосходное руководство по размещению собственных веб-сайтов на основе описанной выше конфигурации.

Связанный контент