19

Настроить

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

проблема

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

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

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

10 ответов10

10

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

Вы можете проверить, выполнив ipconfig / ifconfig для обоих.

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

5

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

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

сценарий

  • Хост Ubuntu Desktop 16.04
  • Гостевой Ubuntu Server 16.04 (работает на виртуальной коробке 5)

проблема

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

Решение

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

Secure Shell (SSH) - это протокол для входа в систему и выполнения команд на удаленных компьютерах. Он обеспечивает безопасную зашифрованную связь. Если вы планируете получить удаленный доступ к вашей машине через SSH через межсетевой экран, включите эту опцию. Вам нужен пакет openssh-server, установленный для того, чтобы эта опция была полезной.

Здесь появляется информация о том, что пакет openssh-server должен быть установлен. После этого в гостевой системе и перезапуска виртуальной машины вы можете использовать ssh.

2

Следующие работы для меня:

До:

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 username@192.168.56.101

1

Может быть, это проблема с контролем доступа. Чтобы отключить его и разрешить полный доступ от имени пользователя root:

xhosts +

У меня была похожая проблема с VNC Viewer

1

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

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

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

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

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

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

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

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

Часть IV - Настройка и использование клиента

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

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

  1. Это отличное руководство по размещению ваших собственных сайтов с настройками, как описано выше.
1

Проблема была решена включением DHCP-сервера на сетевом адаптере VirtualBox.

VirtualBox (последняя версия, версия 5) -> Файл -> Предпочтения -> Сеть -> Сети только для хоста (вкладка) -> Детали сетей только для хоста (инструмент Icon) -> DHCP-сервер

  1. Установите флажок Включить сервер
  2. Заполните IP-адрес
  3. ХОРОШО-ХОРОШО
  4. Перезагрузите виртуальную машину

Мои настройки для шага 2

  1. Адрес сервера: 192.168.56.100
  2. Маска сервера: 255.255.255.0
  3. Нижняя граница адреса: 192.168.56.101
  4. Верхний адрес: 192.168.56.200
1

Вы должны убедиться, что брандмауэр вашей гостевой ОС не блокирует входящие соединения через порт 22.

0

Мне пришлось решить эту проблему, добавив правило UFW для 2-го адаптера:

ufw allow in on enp0s8 to 192.168.56.101 port 22 proto tcp

где enp0s8 - это имя моего второго адаптера (на старых дистрибутивах Ubuntu это был eth1).

-1

В вашем окне Linux (VirtualBox Ubuntu) откройте терминал и введите следующую команду: sudo service ssh start

Попробуйте подключиться к нему снова после этого

Боже мой, я пропустил то, на что указал хроностай

ОК, иногда решения действительно просты. Недавно я столкнулся с той же проблемой с гостем Slackware на хосте Windows 7. Все, что мне нужно было сделать, - это ifconfig eth'X 'и назначить IP 192.168.56.xxx подсеть 255.255.255.0 (если адаптер только для хоста). на этой странице поиск "отказано в соединении ssh" ;-)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .