Как открыть порты на виртуальной машине
Как подключиться к виртуальной машине VirtualBox по SSH
После установки серверного дистрибутива Linux на виртуальную машину VirtualBox вы можете обнаружить, что подключение по SSH не работает. Это связано с тем, что по умолчанию на VirtualBox используется подключение к интернету с помощью NAT.
При таком способе подключения у вас нет возможности подключаться к виртуальной машине из своей реальной операционной системы. В частности, вы не сможете подключиться по SSH.
В данной статье мы рассмотрим сразу два способа, как можно решить эту проблему. Первый вариант – проброс портов через NAT, а второй – использование сетевого моста. Оба этих способа сохраняют доступ к интернету на виртуальной машине.
Проброс портов для SSH
Для проброса портов вам нужно знать IP адрес, который присваивается виртуальной машине. Для этого запустите виртуальную машину и выполните на ней команду « ifconfig ». В ответ вы получите информацию о сетевых подключениях, в которой будет указан и IP адрес. В нашем случае был получен IP адрес – « 10.0.2.15 ».
Обратите внимание, если в вашей системе нет команды « ifconfig », то ее нужно будет установить отдельно. В случае Debian и Ubuntu Linux это можно сделать с помощью команды « apt-get install net-tools ».
После того как мы узнали IP адрес виртуальную машину нужно выключить и открыть ее настройки в программе VirtualBox.
В настройках виртуальной машины нужно открыть раздел « Сеть », открыть дополнительные настройки и перейти к пробросу портов.
После этого откроется окно для проброса портов. Здесь нужно нажать на кнопку « Добавить » и заполнить следующие данные:
После проброса порта закрываем все окна с помощью кнопки « ОК ».
После этого можно подключаться к виртуальной машине по SSH. Для этого можно использовать клиент OpenSSH, который доступен в Windows 10. Поскольку порт « 2222 » на основной системе был проброшен на порт « 22 » на виртуальной машине, то для подключения по SSH нам нужно выполнить следующую команду:
Где « user » — это имя пользователя, а « 2222 » — используемый порт на основной системе.
Как видно по скриншоту вверху, данный способ отлично работает, и мы успешно подключились по SSH к виртуальной машине VirtualBox.
Подключение через сетевой мост
Также есть альтернативный способ подключения к виртуальной машине по SSH для этого нужно изменить тип подключения с « NAT » на « Сетевой мост ». В этом случае виртуальная машина будет подключена к вашей локальной сети и получит IP адрес от вашего роутера из того же диапазона, что и ваша основная система.
Для этого нужно выключить виртуальную машину и зайти в ее свойства в программе VirtualBox. В настройках нужно зайти в раздел « Сеть » и включить тип подключения « Сетевой мост ».
После этого нужно запустить виртуальную машину и выполнить на ней команду « ifconfig » для того, чтобы узнать, какой IP адрес она получила от роутера. В нашем случае был получен IP адрес « 192.168.1.214 ».
После этого к виртуальной машине можно подключаться по SSH. Для этого нужно просто использовать IP адрес, который был ей присвоен роутером. Например, для того чтобы подключиться с помощью клиента OpenSSH нужно выполнить следующую команду:
Где « user » — это имя пользователя, а « 192.168.1.214 » — это ее IP адрес.
Аналогично работает и подключение с помощью PuTTY. Вводим « 192.168.1.214 » и подключаемся по стандартному порту « 22 ».
Как и предыдущий способ, вариант с использованием сетевого моста отлично работает, при этом виртуальная машина не теряет доступа к интернету.
Создатель сайта comp-security.net, автор более 2000 статей о ремонте компьютеров, работе с программами, настройке операционных систем.
Задайте вопрос в комментариях под статьей или на странице «Задать вопрос» и вы обязательно получите ответ.
Открытие портов и создание конечных точек для виртуальной машины с помощью Azure CLI
Применимо к: ✔️ виртуальные машины Linux ✔️ гибкие масштабируемые наборы
Чтобы открыть порт или создать конечную точку для виртуальной машины в Azure, создайте сетевой фильтр для подсети или сетевого интерфейса виртуальной машины. Эти фильтры, контролирующие входящий и исходящий трафик, добавляются в группу безопасности сети и присоединяются к ресурсу, который будет получать трафик. Давайте используем распространенный пример веб-трафика через порт 80. В этой статье показано, как открыть порт для виртуальной машины с помощью Azure CLI.
Для создания группы безопасности сети и правил необходимо установить последнюю версию Azure CLI и войти в учетную запись Azure с помощью команды az login.
В следующих примерах замените имена параметров собственными значениями. Примеры имен параметров: myResourceGroup, mystorageaccount и myVM.
Как быстро открыть порт для виртуальной машины
Если вам нужно быстро открыть порт для виртуальной машины в рамках сценария разработки и тестирования, можно воспользоваться командой az vm open-port. С помощью этой команды можно создать группу безопасности сети, добавить правило и применить его к виртуальной машине или подсети. В следующем примере открывается порт 80 виртуальной машины myVM, входящей в группу ресурсов с именем myResourceGroup.
Чтобы получить дополнительный контроль над правилами, такими как определение исходного диапазона IP-адресов, выполните остальные шаги из этой статьи.
Создание группы безопасности сети и правил
Создайте группу безопасности сети с помощью команды az network nsg create. В следующем примере создается группа безопасности сети myNetworkSecurityGroup в расположении eastus.
С помощью команды az network nsg rule create добавьте правило, разрешающее HTTP-трафик к вашему веб-серверу (или настройте правило под собственные нужды, например доступ по протоколу SSH или подключение к базе данных). В следующем примере создается правило с именем myNetworkSecurityGroupRule. Это правило разрешает TCP-трафик через порт 80:
Применение группы безопасности сети к виртуальной машине
Свяжите группу безопасности сети с сетевым интерфейсом виртуальной машины с помощью команды az network nic update. В следующем примере существующий сетевой адаптер myNic связывается с группой безопасности сети myNetworkSecurityGroup:
Кроме того, группу безопасности сети с помощью команды az network vnet subnet update можно связать с подсетью виртуальной сети, а не только с сетевым интерфейсом на отдельной виртуальной машине. В следующем примере существующий сетевой адаптер myNic в виртуальной сети myVnet связывается с группой безопасности сети myNetworkSecurityGroup:
Дополнительная информация о группах безопасности сети
Приведенные здесь быстрые команды позволят настроить трафик, поступающий в виртуальную машину. Группы безопасности сети предоставляют множество полезных функций и всевозможные настройки для управления доступом к ресурсам. Здесьвы можете больше прочитать о создании группы безопасности сети и правил ACL.
Для веб-приложений с высокой доступностью необходимо поместить виртуальную машину за Azure Load Balancer. Балансировщик нагрузки распределяет трафик между виртуальными машинами с группой безопасности сети, обеспечивающей фильтрацию трафика. Подробные сведения см. в статье Балансировка нагрузки виртуальных машин Windows в Azure для создания высокодоступного приложения.
Дальнейшие действия
В этом примере создано простое правило, разрешающее трафик HTTP. Информацию о создании более детализированных сред можно найти в следующих статьях.
Настройка сети в Hyper-V через NAT (проброс портов)
Сегодня поговорим о сети в Hyper-V, особенно о таких случаях, когда компьютер подключен по wifi, что в домашних условиях бывает часто.
Всё это и многое другое, к примеру скорость дисковой подсистемы, определяет выбор в пользу Hyper-V для домашнего Linux-сервера на Windows машине.
Но вот в Hyper-V нет никаких специальных сетевых драйверов-прослоек, которые бы позволяли его использовать по wifi в режиме моста (внешняя сеть), при таком использовании начнутся проблемы с обрывами между машинами и самым правильным решением будет использовать внутреннюю сеть или NAT.
Установка Hyper-V на Windows 10
Далее нужно зайти в «включени и отключение компонентов»
И тут отметить галочкой Hyper-V, после перезагрузки в пуске появится Диспетчер Hyper-V
Создание внутренней сети в Hyper-V
Первым делом нужно создать виртуальный коммутатор, использовать Default Switch с недавнего времени стало невероятно, т.к. при каждой перезагрузке он сбрасывает ip на свой автоматический.
Для создания виртуального коммутатора, нужно зайти в диспетчер виртуальных коммутаторов
А дальше создать виртуальный сетевой коммутатор, выбрав для него режим внутренняя сеть
Назовем его к примеру VirtMachines
Настройка NAT на Windows 10 в PowerShell для Hyper-v (и не только)
Допустим, все виртуальные машины у нас будут в подсети 192.168.200.0, а шлюз у них будет 192.168.200.1, для этого этот айпи укажем у адаптера для virtmachines

А далее открываем PowerShell от имени администратора (правый клик по кнопке пуск)
И начинаем колдовать.
Первым делом нам нужно настроить сам nat, это snat или прямой нат или подмена источника. Он же маскарадинг. Дело в том, что если во внешнюю сеть улетит ip источника 192.168.200.100, то ответа никак не получит эта машина, для этого всю внутреннюю подсеть нужно скрывать за своим внешним или почти внешним айпи
Теперь в обратную сторону, то что приходит на физическую машину на 80 порт отправим на виртуальную машину с айпи 192.168.200.100
Обратите внимание, что в прямом и обратном NAT применяется один NatName.
Перенос профиля Firefox
К примеру при переустановке системы (полной) и тем более при смене жесткого…
Коротко о клавиатуре Microsoft All in One keyboard.
Коротко расскажу о клавиатуре Microsoft All In One, как на ней сделать скриншот, где скачать драйвера и другие полезные советы.…
Определение и настройка проброса портов в VirtualBox
Проброс портов в виртуальную машину VirtualBox требуется, чтобы получить доступ к сетевым службам гостевой ОС из внешних источников. Этот вариант предпочтительнее, чем смена типа подключения на режим моста (bridge), поскольку пользователь может сам выбирать, какие порты открыть, а какие оставить закрытыми.
Настройка проброса портов в VirtualBox
Данная функция настраивается для каждой машины, созданной в VirtualBox, в индивидуальном порядке. При правильной настройке обращения к порту хостовой ОС будет перенаправляться к гостевой системе. Это может быть актуально, если на виртуальной машине необходимо поднять сервер или домен, доступный для обращения из сети интернет.
Если вы используете файрвол, все входящие подключения к портам должны быть в списке разрешенных.
Для реализации такой возможности тип подключения должен быть NAT, который используется в VirtualBox по умолчанию. При других типах подключения проброс портов не используется.
Перенаправление работает только тогда, когда виртуальная машина запущена. При отключенной гостевой ОС все обращения к портам хост-системы будут обрабатываться ей же.
Заполнение полей «Адрес хоста» и «Адрес гостя»
При создании каждого нового правила для проброса портов, желательно заполнять ячейки «Адрес хоста» и «Адрес гостя». Если нет необходимости в конкретизации IP-адресов, то поля можно оставить пустыми.
Чтобы работать с определенными IP, в «Адрес хоста» требуется вписать адрес локальной подсети, полученный от роутера, или прямой IP хост-системы. В «Адрес гостя» необходимо прописать адрес гостевой системы.
В обоих типах операционных систем (хостовая и гостевая) IP можно узнать одинаково.
Терминал > ifconfig > строка inet
После выполненных настроек не забудьте проверить, будут ли работать проброшенные порты.
Помимо этой статьи, на сайте еще 12529 инструкций.
Добавьте сайт Lumpics.ru в закладки (CTRL+D) и мы точно еще пригодимся вам.
Отблагодарите автора, поделитесь статьей в социальных сетях.
evlanoff
Port forwarding в VirtualBox
» data-image-caption=»» data-medium-file=»https://evlanoff.files.wordpress.com/2017/11/vb_logo.png?w=128″ data-large-file=»https://evlanoff.files.wordpress.com/2017/11/vb_logo.png?w=128″ src=»https://evlanoff.files.wordpress.com/2017/11/vb_logo.png?w=450″ alt=»VirtualBox logo» />
Port forwarding или перенаправление (проброс) порта — технология, которая позволяет подключаться к операционной системе находящейся за NAT.
Данная технология удобна тем, что позволяет подключаться к виртуальной машине не только из хостовой ОС. Предположим, что вы развернули некий виртуальный сервер, который должен кто-то администрировать или использовать для разработки. Этот человек может находиться как за соседним компьютером, так и где-то дальше.
» data-medium-file=»https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=300″ data-large-file=»https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=450″ src=»https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=450&h=94″ alt=»virtualbox_port_forwarding» width=»450″ height=»94″ srcset=»https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=450&h=94 450w, https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=150&h=31 150w, https://evlanoff.files.wordpress.com/2017/11/vb_pf.png?w=300&h=63 300w, https://evlanoff.files.wordpress.com/2017/11/vb_pf.png 638w» sizes=»(max-width: 450px) 100vw, 450px» />
Например, я установил пакет webmin в гостевой ОС под управлением Debian GNU/Linux. Порт, на котором доступен веб-интерфейс, имеет значение 10000, но пробрасываю я его из гостевой машины в хостовую машину, которая понятия не имеет о порте 10000. Т.к. поля «Адрес хоста» и «Адрес гостя» вы оставили вероятно пустыми, то траффик будет идти через адрес 127.0.0.1 (localhost). Порт 10001 у 127.0.0.1 будет перенаправлять (средствами VirtualBox) трафик в гостевую ОС на порт 10000. Именно поэтому при обращении по адресу localhost:10001 в адресной строке браузера в хостовой ОС мы попадём в гостевую ОС.


















