Как подключиться к виртуальной машине по ssh windows

После установки серверного дистрибутива Linux на виртуальную машину VirtualBox вы можете обнаружить, что подключение по SSH не работает. Это связано с тем, что по умолчанию на VirtualBox используется подключение к интернету с помощью NAT.

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

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

Проброс портов для SSH

Для проброса портов вам нужно знать IP адрес, который присваивается виртуальной машине. Для этого запустите виртуальную машину и выполните на ней команду «ip addr» или «ifconfig». В ответ вы получите информацию о сетевых подключениях, в которой будет указан и IP адрес. В нашем случае был получен IP адрес – «10.0.2.15».

Обратите внимание, если в вашей системе нет команды «ifconfig», то ее нужно будет установить отдельно. В случае Debian и Ubuntu Linux это можно сделать с помощью команды «apt-get install net-tools».

выполнение команды ifconfig

После того как мы узнали IP адрес виртуальную машину нужно выключить и открыть ее настройки в программе VirtualBox.

переход к настройкам виртуальной машины

В настройках виртуальной машины нужно открыть раздел «Сеть», открыть дополнительные настройки и перейти к пробросу портов.

проброс портов в настройках

После этого откроется окно для проброса портов. Здесь нужно нажать на кнопку «Добавить» и заполнить следующие данные:

  • Имя: SSH.
  • Протокол: TCP.
  • Адрес хоста: оставляем пустым или указываем 127.0.0.1.
  • Порт хоста: любой свободный порт на вашей основной системе, например, 2222.
  • Адрес гостя: IP адрес, который был присвоен вашей виртуальной машине. В нашем случае это 10.0.2.15.
  • Порт гостя: порт SSH на виртуальной машине, по умолчанию – 22.

После проброса порта закрываем все окна с помощью кнопки «ОК».

проброс портов для ssh

После этого можно подключаться к виртуальной машине по SSH. Для этого можно использовать клиент OpenSSH, который доступен в Windows 10. Поскольку порт «2222» на основной системе был проброшен на порт «22» на виртуальной машине, то для подключения по SSH нам нужно выполнить следующую команду:

ssh user@localhost -p 2222

Где «user» — это имя пользователя, а «2222» — используемый порт на основной системе.

подключение к ssh через openssh

Аналогичным способом выполняется подключение с помощью PuTTY. В поле «Host Name» указываем «localhost», а в поле «Port» — «2222». Более подробно об OpenSSH и PyTTY в отдельной статье о подключении по SSH.

подключение к ssh через putty

Как видно по скриншоту вверху, данный способ отлично работает, и мы успешно подключились по SSH к виртуальной машине VirtualBox.

Подключение через сетевой мост

Также есть альтернативный способ подключения к виртуальной машине по SSH для этого нужно изменить тип подключения с «NAT» на «Сетевой мост». В этом случае виртуальная машина будет подключена к вашей локальной сети и получит IP адрес от вашего роутера из того же диапазона, что и ваша основная система.

Для этого нужно выключить виртуальную машину и зайти в ее свойства в программе VirtualBox. В настройках нужно зайти в раздел «Сеть» и включить тип подключения «Сетевой мост».

переключение на сетевой мост

После этого нужно запустить виртуальную машину и выполнить на ней команду «ip addr» или «ifconfig» для того, чтобы узнать, какой IP адрес она получила от роутера. В нашем случае был получен IP адрес «192.168.1.214».

выполнение команды ifconfig

После этого к виртуальной машине можно подключаться по SSH. Для этого нужно просто использовать IP адрес, который был ей присвоен роутером. Например, для того чтобы подключиться с помощью клиента OpenSSH нужно выполнить следующую команду:

ssh [email protected]

Где «user» — это имя пользователя, а «192.168.1.214» — это ее IP адрес.

подключение к ssh через openssh

Аналогично работает и подключение с помощью PuTTY. Вводим «192.168.1.214» и подключаемся по стандартному порту «22».

подключение к ssh через putty

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

Посмотрите также:

  • Как сделать общую папку в VirtualBox
  • Как подключиться по SSH из Windows 10
  • Как запустить виртуальную машину VirtualBox из командной строки
  • Как установить Linux на виртуальную машину
  • Как установить Windows 7 или 10 на виртуальную машину

Автор
Александр Степушин

Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.

Остались вопросы?

Задайте вопрос в комментариях под статьей или на странице
«Задать вопрос»
и вы обязательно получите ответ.

Подключиться к машине по SSH можно с помощью пары SSH-ключей либо пароля. Рассказываем подробно о каждом способе

SSH-протокол — сетевой протокол, предназначенный для защищённого удаленного доступа к операционной системе и передачи данных. Для подключения по SSH удостоверьтесь, что в настройках файрвола установлено соответствующее правило для входящего трафика. 

Подключение с помощью SSH-ключей. Подготовка

  • Генерация SSH-ключей в Windows 7/8

  • Генерация SSH-ключей в Windows 10, Linux OS, Mac OS

  • Генерация SSH-ключей в личном кабинете

  • Добавление SSH-ключей в личном кабинете

  • Удаление SSH-ключей в личном кабинете 

  • Генерация и добавление SSH-ключей при создании виртуальной машины

Подключение с помощью пароля. Подготовка

  • Добавление пароля

Подключение к виртуальной машине по SSH

  • Подключение по SSH с Windows 7/8

  • Подключение по SSH с Windows 10, Linux OS, Mac OS

Подключение с помощью SSH-ключей. Подготовка

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

Генерация SSH-ключей в Windows 7/8

Генерация SSH-ключа с использованием командной строки (cmd) в операционных системах Windows 7/8 не предусмотрена.

Для генерации воспользуйтесь приложением PuTTY и входящим в пакет дополнением PuTTYgen.

1. Скачайте и установите приложение PuTTY.

2. Запустите приложение PuTTYgen.

3. В поле «Type of key to generate» укажите «RSA».

4. Для поля «Number of bits in a generated key» установите значение «2048».

5. Нажмите Generate.

putty_gen.png

Важно! Во время генерации ключа водите курсором в поле «Key» до тех пор, пока ключ не появится в поле.

6. В поле «Key passphrase» введите надёжный пароль.

7. Подтвердите пароль в поле «Confirm passphrase».

8. Нажмите кнопку Save private key и сохраните закрытый ключ.

___________.png

Внимание! Никогда не передавайте закрытый ключ и пароль сторонним лицам.

9. Нажмите Save public key и сохраните открытый ключ в удобном для вас месте.

10. Вы всегда можете открыть и скопировать сохранённые ключи при помощи приложения «Блокнот».

_______________.png

Генерация SSH-ключей в Linux/MacOS/Windows 10

Чтобы сгенерировать ключи на Linux/MacOS/Windows 10:

1. Откройте консоль, терминал (MacOS) или командную строку (cmd.exe) для Windows 10.

2. Выполните команду:

ssh-keygen -t rsa -b 2048

3.Укажите название ключа в строке «Enter file in which to save the key».

Внимание! Если не указывать директорию (например, «.ssh/» ), ключи сохранятся в «~./<имя ключа>» (для Linux/MacOS) или в «C:\Users\<имя_пользователя>\<имя ключа>» (для Windows 10).

4. Нажмите Enter.

5. Далее задайте пароль для ключа или оставьте поле пустым и нажмите Enter, если хотите создать ключ без пароля.

6. Подтвердите пароль или оставьте поле пустым и нажмите Enter для сохранения ключа без пароля. 

______________________.png

7. Ключ создан в директории по умолчанию или в той, которую вы прописали. 

____________.png

8. Публичная часть ключа будет сохранена в файле «<имя_ключа>.pub». Используйте его для последующего добавления к виртуальной машине. Файл можно открыть в текстовом виде в приложении «Блокнот».

Генерация SSH-ключей в личном кабинете сервиса Облако

Для создания SSH-ключа из личного кабинета следуйте описанным ниже шагам.

1. В личном кабинете перейдите в раздел Ключи SSH.

2. Нажмите Сгенерировать ключ.  

436bffdec3efef7fc5437a295a522c9e.png

3. Введите название ключа и нажмите Создать SSH ключ

Важно! Допускается использование символов только латинского алфавита, нижнего подчеркивания, пробелов и точек. Длина имени должна быть от 3 до 63 символов.

4. Ключ сгенерируется и отобразится в списке SSH-ключей, его открытая часть уже будет храниться в системе, а закрытый ключ будет загружен на устройство в папку по умолчанию.

5. Для просмотра закрытого ключа найдите его на устройстве и откройте с помощью приложения «Блокнот».

Добавление SSH-ключей в личном кабинете сервиса Облако

Чтобы добавить уже созданный SSH-ключ в личный кабинет:

1. В панели управления сервиса Облако перейдите в раздел Ключи SSH.

2. Нажмите Добавить SSH ключ.

9dc42089b427d6cfcb96f7a8e1d0d5a3.png

3. В поле «Содержимое ключа SSH» вставьте публичную часть SSH-ключа.

4. Задайте имя ключа в поле «Имя».

5. Нажмите Добавить SSH ключ.

cfa24ee280e8c5bb5b37a39b35e74bed.png

Ключ появится в списке SSH-ключей.

Удаление SSH-ключей в личном кабинете сервиса Облако 

1. Выберите SSH-ключ, который нужно удалить.

2. Нажмите напротив него на знак ···.

3. Выберите Удалить.

Генерация и добавление SSH-ключей при создании виртуальной машины

В личном кабинете у вас есть возможность создать и добавить SSH-ключ при создании виртуальной машины.

В процессе создания виртуальной машины в разделе SSH-ключ вам будет предложено:

  • добавить уже хранящийся в личном кабинете ключ, выбрав его из выпадающего списка;

  • добавить уже имеющийся в локальном хранилище ключ;

  • сгенерировать новый ключ.

1. При нажатии на Добавить SSH ключ откроется диалоговое окно. Добавьте открытую часть SSH-ключа, введите имя ключа для идентификации его в нашей системе и сохраните его.

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

2. При нажатии на кнопку Сгенерировать SSH ключ, откроется диалоговое окно, введите имя ключа для идентификации его в системе.

Публичный ключ автоматически добавится к виртуальной машине, а приватный скачается на ваше устройство в формате .pem. 

После добавления или генерации нового SSH-ключа ключи будут появится в разделе Ключи SSH.

dbc55ff1d15edb6adb1ed21e8fafc1ff.png

Подключение с помощью пароля. Подготовка

Для подключения по SSH с помощью пароля вам нужно указать пароль во время создания машины.

Добавление пароля

При создании виртуальной машины в пункте Дополнительные возможности активируйте опцию Пользовательские данные. Откроется окно, куда можно вписать скрипт для обработки cloud-init агентом, запущенным на виртуальной машине.

_______________________________________.png

Впишите в поле код:

#cloud-config
password: ваш пароль
chpasswd: { expire: False }
ssh_pwauth: True

С указанным паролем вы сможете подключаться к виртуальной машине по SSH или через личный кабинет.

Пароль не обязательно добавлять в явном виде, можно вписать его хэш-сумму (тот же пароль, только преобразованный; машина сможет его считать, а для человека он выглядит как случайный набор символов). Тогда, даже если кто-то попадёт в систему, то всё равно не узнает пароль — внутри будет храниться хэш-сумма. А система даст войти только по паролю. Для генерации хэш-суммы вы можете воспользоваться скриптом на Python:

#!/usr/bin/env python3
# based on https://stackoverflow.com/a/17992126/117471
# pip3 install passlib
import sys
from getpass import getpass
from passlib.hash import sha512_crypt
passwd = input() if not sys.stdin.isatty() else getpass()
print(sha512_crypt.hash(passwd , rounds = 5000 ))

Подключение к виртуальной машине по SSH

Подключение по SSH с Windows 7/8

Важно! Подключение к виртуальной машине по SSH с использованием командной строки (cmd) в операционных системах Windows 7/8 не предусмотрено.

Для подключения воспользуйтесь приложением PuTTY.

1. Скачайте и запустите приложение PuTTY.

2. В разделе Session в поле «Host Name (or IP address)» введите IP-адрес виртуальной машины, который можно найти в столбце «IP адрес» в разделе Виртуальные машины.

8e84563dfe10615aee5bf647136efc5e.png

Важно! Если вы создали машину только с приватным адресом, добавьте плавающий IP. Для этого в разделе Виртуальные машины нажмите на имя виртуальной машины, после чего в открывшемся окне нажмите Добавить IP.

3. В поле «Port» установите «22» — стандартный порт для подключения по SSH.

4. Далее для поля «Connection type» задайте значение SSH.

5. (Пункт только для тех, кто подключается с помощью SSH-ключа) в правой части экрана перейдите в Connection  SSH  Auth.

6. (Пункт только для тех, кто подключается с помощью SSH-ключа) нажмите Browse.

browse.png

7. (Пункт только для тех, кто подключается с помощью SSH-ключа) выберите файл с приватным ключом для виртуальной машины в формате .ppk.

Важно! Если ваш приватный ключ сохранен в формате .pem, конвертируйте его в формат .ppk, как описано в статье «Конвертировать SSH-ключ из формата PEM в PPK». 

8. Нажмите Open. Откроется консоль.

login_as.png

9. В строке «login as» введите имя пользователя, выданное вам при создании виртуальной машины. Оно находится в меню виртуальной машины, там стоит надпись вида «[логин]@[IP машины]. Чаще всего логин совпадает с названием ОС. Например, для машины ниже это «ubuntu». 

21d14b5a0de01b183f860d86aeaab4b1.png

10. (Пункт только для тех, кто подключается с помощью пароля) введите пароль, заданный вами при создании машины.

mceclip0.png

11. Нажмите Enter.
12. Вы подключились к виртуальной машине.

mceclip0.png

Подключение по SSH с Windows 10, Linux OS или Mac OS

Внимание! Если вы используете Linux OS или Mac OS, перейдите к шагу №6.

В Windows 10 есть встроенный клиент OpenSSH, который позволяет получать доступ к серверу через консоль так же, как и на Linux OS. По умолчанию этот компонент не активирован.

Для его установки:

1. Перейдите в меню Параметры Windows.

_________.png

2. Перейдите в раздел Приложения, нажмите Дополнительные возможности.

__________________________.png

3. В списке найдите OpenSSH Client и нажмите для раскрытия подробного описания.

_______.png

4. Нажмите Установить.

_________________.png

5. Дождитесь завершения установки. После того, как OpenSSH Client будет установлен, перезагрузите компьютер для корректного применения настроек. Для командной строки станет доступна утилита SSH.

6. Откройте командную строку/терминал и введите команду со своими значениями:

 «ssh username@192.168.1.92» — для подключения с помощью пароля;
 «ssh username@192.168.1.92 -i «C:\Users\username\.ssh\id_rsa»»: — для подключения с помощью ключа.

username

Имя пользователя, указано справа от кнопки Открыть консоль.

21d14b5a0de01b183f860d86aeaab4b1.png

192.168.1.92

IP-адрес вашей виртуальной машины.

Важно! Если вы создали виртуальную машину только с приватным интерфейсом, создайте плавающий IP-адрес и используйте его при подключении к ВМ по SSH.

C:\Users\username\.ssh\id_rsa

Путь к файлу с приватным ключом в вашем локальном хранилище.

Ключ должен быть в формате .pem.

7. Утилита предложит добавить устройство в список известных, напишите «yes», чтобы добавить, или «no», чтобы не добавлять. Нажмите Enter.

yes.png

8. (Пункт только для тех, кто подключается с помощью пароля) введите пароль, который вы задали при создании машины.

mceclip1.png

9. Вы подключились к виртуальной машине.

mceclip2.png

Уровень сложности
Простой

Время на прочтение
5 мин

Количество просмотров 57K

Программистов, сисадминов, devops’ов, тестировщиков часто объединяет использование некоторых общих технологий. Например, возможность иметь удалённый доступ к серверу пригодилось бы любому из указанной выше анекдотичной компании. Поэтому в этой статье мы рассмотрим основы работы с протоколом SSH на базовом уровня (без генерации ключей, подписей, мам, пап и кредитов). «Продвинутое» использование посмотрим уже отдельно, в следующий раз. Материал подготовил Макс, автор YouTube-канала PyLounge. Поехали!

Введение

SSH (Secure SHell — защищенная оболочка) — сетевой протокол прикладного уровня, предназначенный для безопасного удаленного доступа к различным системам (Linux, Windows, Mac).

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

Эта служба была создана в качестве замены не зашифрованному Telnet и использует криптографические техники, чтобы обеспечить, что всё сообщение между сервером и пользователем было зашифровано.

Чтобы установить SSH-соединение, необходимы два компонента: SSH-сервер и SSH-клиент. Сервер прослушивает определенный порт (по умолчанию это порт 22) и при успешной аутентификации дает доступ пользователю. Все команды, которые используются на SSH-клиенте, отправляются через защищенный канал связи на SSH-сервер, на котором они выполняются и откуда отправляют результат работы обратно клиенту.

SSH-сервер

Устанавливается на управляемой операционной системе и принимает входящие подключения от клиентских машин, проверяя соединение одним из способов:

  • по IP-адресу клиента, что не слишком безопасно из-за риска подмены;

  • по публичному ключу клиента и имени пользователя. Нужно создать приватный (закрытый) и публичный (открытый) ключ. Зашифровав информацию одним ключом, можно расшифровать ее только другим;

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

Платные и бесплатные SSH-серверы есть для всех распространенных ОС:

  • BSD — OpenSSH;

  • Linux — dropbear, lsh-server, openssh-server;

  • Windows — freeSSHd, copssh, WinSSHD, OpenSSH и т. д.

SSH-клиент

Используется для входа на удаленный сервер и выполнения команд. Через клиент выполняется управление удаленным компьютером.

SSH-клиенты разработаны для всех ОС. Имеют платные и бесплатные версии:

  • Linux/BSD — openssh-client, putty, ssh, Vinagre;

  • Windows — PuTTY, SecureCRT, ShellGuard;

  • Android — connectBot.

Встроенный SSH-клиент Windows, основанный на OpenSSH, предустановлен в ОС, начиная с Windows 10 1809.

Установка OpenSSH на Ubuntu

Установка с помощью менеджера пакетов apt-get:

sudo apt-get install openssh-server

Проверка SELinux

Security Enhanced Linux, или SELinux – это усовершенствованный механизм контроля доступа, встроенный в большинство современных дистрибутивов Linux. Первоначально он был разработан Агентством национальной безопасности США для защиты компьютерных систем от вторжения злоумышленников и взлома. SELinux также может помешать работе с ssh. Поэтому необходимо убедиться, что он отключен, либо отключить его.

Устанавливаем доп. инструменты для работы с сетью и настройками безопасности:

sudo apt-get install policycoreutils
sudo apt-get install net-tools

Проверяем статус SELinux. Состояние должно быть disable.

sestatus

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

Если виртуальная машина использует тип сетевого подключения NAT, то первоначально необходимо настроить проброс портов. Пробросим порт хоста 2222 (или любой свободный) на гостевой порт виртуальной машины номер 22 (порт ssh по умолчанию).

После этого мы можем подключиться из Windows к нашей виртуальной машине.

Подключение по ssh через PuTTY

Т.к. в качестве сетевого подключения у виртуальной машины используется NAT, при подключении мы будем указывать петлевой адрес localhost (127.0.0.1) c портом, на который был назначен проброс.

После этого вводим имя пользователя (пользователь должен существовать в linux!!!) и пароль от этого пользователя.

Подключение по ssh через Командную строку Windows (cmd)

Запускаем командную строку сочетанием клавиш Win + R . В открывшемся окне указываем cmd. Нажимаем OK.

В общем видео подключение по ssh имеет вид:

ssh имя_пользователя@ip_адрес_компьютера_к_которому_подключаемся -p порт

Если для подключения используется стандартный порт ssh — 22, то порт можно не указывать.

В открывшемся окне вводим команду:

ssh student@127.0.0.1 -p 2222

Вводим пароль пользователя. Всё. Вы великолепны!

Подключение к виртуальной машине с типом подключение Сетевой мост

С типом подключения Сетевой мост необходимо выдать статический ip для Linux системы. Дальнейшее подключение будет уже по этому, выданному ip, а не через localhost.

Установка статического ip

Начиная с выпуска Ubuntu 17.10 NetPlan теперь это инструмент настройки сети по умолчанию для управления настройками сети, заменяющий файл конфигурации /etc/network/interfaces, который использовался в предыдущих версиях.

Файлы конфигурации для Netplan находятся в каталоге /etc/netplan и написаны на языке YAML. В этом каталоге вы найдете файлы конфигурации YAML.

Откроем конфигурационный файл:

sudo nano /etc/netplan/*.yaml

Отредактируем конфигурационный файл:

network:  
  version: 2
  renderer: NetworkManager
  ethernets:
      enp0s3:
          dhcp4: false
          addresses: [10.40.0.224/24]
          gateway4: 10.40.0.1
          nameservers:
              addresses: [10.2.0.8, 10.2.0.3]

Здесь:

  • ethernets — указывает на проводное Ethernet подключение;

  • enp0s3 — имя сетевого интерфейса (можно узнать командой ifconfig);

  • dhcp4 — автоматическая выдача ipv4-адреса с помощью службы dhcp (для ipv6 указывать dhcp6);

  • addresses — ip-адрес и маска сети, которые назначаются компьютеру;

  • gateway4 — шлюз по умолчанию;

  • nameservers — список dns-серверов.

Посмотреть настройки можно с хостовой машины на Windows с помощью команды ipconfig /all.

Чтобы применить изменения и перезагрузить сеть, вводим команду:

sudo netplan apply

Подключение по ssh

Запускаем командную строку сочетанием клавиш Win + R . В открывшемся окне указываем cmd. Нажимаем OK.

В открывшемся окне вводим команду:

ssh student@10.40.0.224

Вводим пароль пользователя. Всё. Вы великолепны (2)!

Заключение

Несмотря на высокую защиту протокола, использование стандартного порта значительно повышает риск взлома сервера. Например, это можно сделать при помощи brute-force (атака полным перебором). Порт 22 — открытый, поэтому злоумышленнику нужно только подобрать логин и пароль к серверу. Это сложно, но возможно. Чтобы максимально ограничить доступ к серверу для злоумышленников (настроить брандмауэр, iptables), можно сменить SSH-порты.

Ресурсы, которые использовал

  1. Как включить SSH в Ubuntu 20.04 (Routerus):https://routerus.com/how-to-enable-ssh-on-ubuntu-20-04/

  2. Коротко об SSH / Хабр: https://habr.com/ru/sandbox/166705/

  3. Что такое SSH (блог REG.RU): https://help.reg.ru/support/hosting/dostupy-i-podklyucheniye-panel-upravleniya-ftp-ssh/chto-takoye-ssh

Как подключиться к виртуальной машине в VMware vCloud Director? Сначала нужно настроить доступ к ней через механизм NAT. Он преобразовывает скрытые локальные IP-адреса сети во внешние.

Настройка доступа к виртуальной машине зависит от того, какую операционную систему вы на неё установили:

  • для операционных систем Windows нужно настроить доступ по RDP;
  • для ОС Linux нужен доступ по SSH.

Настройка доступа к виртуальной машине по RDP

Для настройки доступа по RDP (Remote Desktop Protocol) нужно открыть порт 3389 через NAT.

  1. 1.

    Войдите в панель управления виртуальным дата-центром vCloud Director по инструкции.

  2. 2.

    В разделе Datacenters выберите нужный виртуальный дата-центр и кликните на него.




  3. 3.

    Во вкладке Edges выберите нужный Edge и кликните на него. После этого нажмите Configure Services, чтобы приступить к настройке.




  4. 4.

    В появившемся окне Edge Gateway добавьте DNAT-правило. Нажмите на + DNAT Rule.




  5. 5.

    В появившемся окне введите данные для настройки доступа:

    • Applied On — выберите внешнюю сеть.
    • Original IP/Range — внешний IP-адрес или диапазон IP-адресов.


    Как найти внешний IP-адрес?

    Во вкладке Edges выберите нужный Edge. Внизу появятся настройки шлюза Edge Gateway. Выберите любой адрес из диапазона Sub-allocated IP Pool.




    • Protocol — выберите протокол TCP.
    • Original Port — выберите порт TCP 3389.
    • Translated IP/Range — внутренний IP-адрес или диапазон адресов виртуальных машин. Например, 192.168.100.0.
    • Translated Port — выберите порт TCP 3389.

    После ввода настроек нажмите Keep.




  6. 6.

    Добавленное правило появится в списке NAT44 Rules.




Готово, доступ к виртуальной машине по RDP настроен.

Удаленное подключение к виртуальной машине с ОС Windows

Как удаленно подключиться к виртуальной машине с операционной системой Windows:

  1. 1.

    Подключитесь к ВМ. По RDP загрузка виртуальной машины осуществляется через консоль по инструкции. Введите логин и создайте пароль администратора.

    Важно

    Виртуальная машина должна быть включена (статус Powered On).

  2. 2.

    Откройте удалённый рабочий стол виртуальной машины. Для этого запустите терминал Windows «Подключение к удаленному рабочему столу». Введите внешний IP-адрес из диапазона Sub-allocated IP Pool. Для входа используйте логин и пароль администратора.

Готово, вы настроили удалённый доступ к виртуальной машине с ОС Windows.

Настройка доступа к виртуальной машине по SSH

Для настройки доступа по SSH (Secure Shell) нужно открыть порт 22 через NAT.

  1. 1.

    Войдите в панель управления виртуальным дата-центром vCloud Director по инструкции.

  2. 2.

    В разделе Datacenters выберите нужный виртуальный дата-центр и кликните на него.




  3. 3.

    Во вкладке Edges выберите нужный Edge и кликните на него. После этого нажмите Configure Services, чтобы приступить к настройке.




  4. 4.

    В появившемся окне Edge Gateway добавьте DNAT-правило. Нажмите на + DNAT Rule.




  5. 5.

    В появившемся окне введите данные для настройки доступа:

    • Applied On — выберите внешнюю сеть.
    • Original IP/Range — внешний IP-адрес или диапазон IP-адресов.


    Как найти внешний IP-адрес

    Во вкладке Edges выберите нужный Edge. Внизу появятся настройки шлюза Edge Gateway. Выберите любой адрес из диапазона Sub-allocated IP Pool.




    • Protocol — выберите протокол TCP.
    • Original Port — выберите порт TCP 22.
    • Translated IP/Range — внутренний IP-адрес или диапазон адресов виртуальных машин. Например, 192.168.100.0.
    • Translated Port — выберите порт TCP 22.

    После ввода настроек нажмите Keep.




  6. 6.

    Добавленное правило появится в списке NAT44 Rules.




Готово, доступ к виртуальной машине по SSH настроен.

Удаленное подключение к виртуальной машине с ОС Linux

В VMware удаленное подключение к виртуальной машине с операционной системой Linux можно настроить так:

  1. 1.

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




  2. 2.

    Подключитесь к ВМ по SSH по инструкции, используя логин root и пароль.

    Важно

    Виртуальная машина должна быть включена (статус Powered On).

Готово, вы удаленно подключились к виртуальной машине с ОС Linux.

Помогла ли вам статья?

Спасибо за оценку. Рады помочь 😊


 👍

You will learn how to SSH into a VirtualBox guest machine from a local host computer as well as from another computer. I use SSH as an example here, but these settings will work for other scenarios such as a web-server on your VirtualBox machine.

Content

  • Why SSH into VirtualBox?
  • Prepare VirtualBox
    • Install SSH in VirtualBox OS
    • Open SSH port in Firewall
    • VirtualBox network settings
  • Install SSH client
  • Connect to VirtualBox from the guest OS
  • Connect to VirtualBox from another computer
    • Switch to the Bridge Adapter in VirtualBox
    • Find out your VirtualBox IP
    • SSH to VirtualBox from another computer
  • Final thoughts

Why SSH into VirtualBox?

There are multiple reasons you may want to connect to your VirtualBox guest OS through SSH or other means. I often do that to test various things including:

  • SSH Key authentication
  • SSH in FileZilla
  • Mont the remote server to your File Manager
  • Transfer files between computers
  • Remote desktop software

I use SSH as an example here because it is the simplest use case. However, these settings will work for other scenarios as well. You just need to install the necessary software and configure the corresponding ports in your VirtualBox OS. The rest is the same.

Prepare VirtualBox

Install SSH in VirtualBox OS

First, let’s install SSH in the VirtualBox OS. I assume you run a Debian-based distro such as Ubuntu in your VirtualBox. I have a detailed guide on how to install, configure and use SSH on Linux, if you need instructions for other Linux distros.

In Ubuntu, you need to install the OpenSSH server package:

sudo apt install openssh-server

After the installation, check the SSH status:

sudo systemctl status ssh

You should see that it is active:

SSH server service is active

If it is not, enable and start it manually:

sudo systemctl enable ssh --now
sudo systemctl status ssh

Open SSH port in Firewall

If you have a firewall enabled in your VirtualBox, it may block your SSH connection. You can find what ports are open with this command:

sudo lsof -i -P -n | grep LISTEN

check open ports in Linux

If you do not find the port 22 among open ports, open it in your firewall:

sudo ufw allow ssh
sudo ufw status verbose

You can also do it using the graphical interface of the UFW firewall.

VirtualBox network settings

To open VirtualBox for SSH connections, we need to change the VirtualBox network settings to allow the SSH connection. Navigate to VirtualBox settings -> Network
and make sure you have the settings Attached to NAT.

VirtualBox Network Settings

Then go to Advanced -> Port Forwarding and add these settings:

  • Name: ssh (or whatever you like)
  • Protocol: TCP
  • Host Port: 2222 (or any other port you like)
  • Gust port: 22

The IP fields can be left empty.

VirtualBox port forwarding

Similarly, you can also set port forwarding for other interfaces.

Install SSH client

To be able to SSH into the VirtualBox OS, you must have an OpenSSH client installed on the computer you are going to connect from e.g. your host computer or your another computer:

sudo apt install openssh-client

If you use Windows as a client, install PuTTY.

Connect to VirtualBox from the guest OS

Now, connect to the VirtualBox OS using the port 2222 that we set earlier and the username of your VirtualBox OS:

ssh -p 2222 virtualbox-user-name@localhost

SSH log in

If you get a warning “Are you sure you want to continue connecting (yes/no)?”, type yes. You would also have to type the password of your VirtualBox user.

Now, you should have an SSH connection to your VirtualBox OS.

Connect to VirtualBox from another computer

Connecting to VirtualBox from another computer is a little more complicated. You need to change the network settings of your VirtualBox and also find out the IP address of your VirtualBox.

Switch to the Bridge Adapter in VirtualBox

The Bridge Adapter creates a routing that makes your VirtualBox network interface look like your host network interface. That way, you can to reach your VirtualBox machine from another machine.

You need to go to VirtualBox network settings and switch from NAT to Bridge Adapter.

VirtualBox Bridge Adapter settings

Find out your VirtualBox IP

You can find your VirtualBox IP address, if you run this command:

IP address in terminal

You can also find it in the graphical network settings:

Graphical Network Settings IP address

Note, this is your private IP address and to access it you need to be in the same network. You can SSH to your Virtualbox from outside of your local network if you use your public IP and configure the SSH port forwarding in your router. This poses an extreme security risk to your system, so I do not recommend doing so.

If you still want to do that, you can find out your public IP if you just google my ip. To configure the SSH port forwarding in your router, you need to follow the instruction of your router. The settings vary from model to model. This is how it looks in my router:

Router SSH port settings

Also, follow these SSH security measures:

  • use a strong password and SSH key authentication
  • disallow root access over SSH
  • do not use the default 22 port
  • disallow numerous SSH login attempts.

SSH to VirtualBox from another computer

Use the IP address you noted earlier to connect to the VirtualBox OS from another computer :

ssh virtualbox-user-name@virtualbox-ip-address

Final thoughts

Now, you know how to SSH into a VirtualBox machine. VirtualBox provides endless possibilities for other tests and I hope now when you know the principle, you would be able to configure it for other use cases as well.

If you want to learn more about SSH, I have a detailed guide on how to install, configure and use SSH on Linux and how to enhance the security of your SSH connection with SSH keys and white-listed IP addresses.

  • Как подключиться к вайфаю на компьютере windows 10 pro
  • Как подключиться к высокоскоростному интернету на windows
  • Как подключиться к windows server 2022
  • Как подключиться к впн windows 7
  • Как подключиться к вай фай без пароля на ноутбуке windows 10