Как подключиться по ssh к vmware workstation

Обновлено: 06.07.2024

Думаю, у многих, прочитавших заголовок возникнет справедливый вопрос: «Зачем такое извращение?» На самом деле, у этого занятия есть определённый круг применений. Самое очевидное из них — это необходимость в пользовании для учёбы или работы одной операционной системой, в то время как вам больше нравится другая.

Некоторые воскликнут: «Но ведь можно поставить две системы в DualBoot или виртуальную машину, с которой можно общаться напрямую!» К сожалению, ни один из этих трёх способов не является панацеей. При использовании первого приходится постоянно скакать между системами, а также он доступен не на всех устройствах (на моём MacBook Pro 2017-ого года поставить нативно Linux — весьма неприятное занятие). Второй также требует работы с двумя разными системами, что может сильно ударить по чувству перфекционизма, а также требует весьма больших мощностей для использования средств по сглаживанию разницы между ними. Про третий же сейчас чуть подробнее расскажу.

Начну с предупреждения о том, что если вам в разработке необходим доступ к графическому интерфейсу, то этот способ не для вас (если пользуетесь Windows, то рассмотрите вариант с WSL. Linux там очень урезанный, зато можно подключить к ней X Window System). Будем подключаться к дистрибутиву на базе ядра Linux, но этот способ можно интерполировать на другие системы. Также замечу, что изначально мною рассчитывалось сделать небольшой туториал для одногруппников, но тема оказалась достаточно интересной, чтобы попытаться превратить её в статью. Поэтому то, о чём я собираюсь говорить может показаться некоторым пользователям Хабра слишком тривиальным.

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

  1. Valgrind на MacOS Mojave не работает (на High Sierra он хотя бы компилировался, а -fsanitize мне не нравится).
  2. У моего устройства весьма небольшой объём батареи, в сравнении с моделями 2015-ого года, и ему часто приходится держаться до конца пятой пары.
  3. Не хочется перенастраивать VIM
  4. «Всё, что нас не убивает, делает нас сильнее»

Для начала перейдём на сайт Ubuntu и скачаем установочный образ Ubuntu Server


Можно, в принципе, выбрать и любой другой дистрибутив, даже всемогущий Arch, но мне было лениво.

После чего создаём новую виртуальную машину в вашей любимой для этого программе. На Parallels и VMWare это делается просто и естественно, а на VirtualBox или QEMU придётся покурить мануалы. В случае первых двух рекомендую отключить разные не особо нужные плюшки типа «общих принтеров». Также можете попробовать ограничить производительность виртуальной машины для сохранения энергии, но не переборщите. В противном случае система просто не запустится.


В общем, желательно немного покопаться в настройках нашей подопечной для максимальной производительности. Самое главное — это опция «Общая сеть» (Shared network). Она позволяет машине выходить в сеть, и другим устройствам к ней удалённо подключаться.



Выберите язык и начните установку Ubuntu Server. Вас должен встретить такой экран —
(Да, он просит выбрать язык ещё раз)

Дальше ничего сложного (собственно, и не было). Просто тыкайте «далее» прямо как в Windows. Но, как говорится:


Потом настройте пользователя и запомните его логин (не путайте с полным именем) и пароль.


Также хочу отметить, что установщик попытается скачать дополнительные 66 мегабайт пакетов.

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


После этого всё должно быть готово, однако вы можете попробовать дополнительно настроить подключение по SSH. Для этого отредактируйте с помощью nano или Vim (чтобы из него выйти, наберите :wq) файл /etc/ssh/sshd_config от имени администратора:


Далее нам нужно узнать ip адрес нашего устройства. Для этого нам пригодится команда: Найдите среди вывода программы ваше устройство (иногда его название можно определять в настройках виртуальной машины) и запомните его адрес, помеченный как inet:


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


где «hovushka» и «10.211.55.28» нужно заменить на ваш логин и ip адрес. Далее вас попросят ввести ваш пароль и вуаля! Вы зашли в Ubuntu:


Но на этом веселье не заканчивается! Мы, конечно, настроили подключение, и можем управлять виртуальной машиной, но это весьма бесполезно, так как мы не можем получить так просто доступ к её локальным файлам из родной системы. Конечно, Vim и по SSH прекрасно работает, но всё ещё отличий от простого использования виртуальной машины практически нет.

Я предлагаю поступить более креативно и воспользоваться sshfs. На MacOS он ставится летящей походкой через brew (он попросит сначала поставить FUSE). После этого достаточно ввести команду


где так же следует заменить логин и ip адрес, а "

/SSH" на какую-нибудь удобную для вас директорию. Далее к ней будет примонтирован домашний каталог нашего пользователя из виртуальной машины:


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


У этого способа, несмотря на его большую аутентичность, есть свои минусы. Во-первых многие из них унаследованы от обычного использования виртуализации (например, падение производительности). Во-вторых, будет присутствовать небольшая задержка в записи изменений на виртуальный диск (вимерам может не понравится). Ну и в-третьих, некоторые виртуальные машины умеют видеть файлы с родной системы, но из командной строки это сложнее настроить и вам придётся пользоваться окном самой виртуальной машины, что накладывает ряд ограничений.

Ситуации, когда нужно включить ssh на ESXI

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

  • Задать не стандартный порт, простой пример с RDP, где изменили порт по умолчанию.
  • Либо же вы изолируете данную сеть с помощью VLAN, и можно будет производить подключение к менеджменту, только через определенное место, например, отдельная виртуальная машина.
  • Вам необходимо произвести обновление хоста, в виду отсутствия интернет соединения
  • Необходимо установить или удалить vib пакет

Способы включения ssh в Vmware хостах

Существует, как минимум три метода, позволяющие вам это сделать.

  • Через консоль управления Vmware ESXI - для этого, вам придется использовать один из портов управления сервером, либо же использовать ip KVM, хотя в малых компаниях, все ограничиться банальным подключением монитора и клавиатуры.
  • Из клиента vSphere Client, но это актуально для версии до 5.5, .
  • В версиях, выше 5.5 уже используют HTML клиента

Включение SSH и esxi shell на ESXi 5/6 через локальную консоль

Подключитесь к вашему гипервизору. Для входа в его настройки нажмите клавишу <F2> в консоли:

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-01

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-01

Вводим пароль root и переходит в пункт "Troubleshooting Options":

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-02

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-02

Выбираем пункт "Enable SSH": Enable esxi shell, для включения данной службы. После чего вы выходите из данного режима и сохраняете настройки.

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-03

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-03

Включение ssh, через vSphere Client

Второй метод, это включение SSH и esxi shell на ESXi 5 через vSphere Client. Открываем его и переходим на вкладку "Configuration", выбираем пункт "Security Profile" и нажимаем "Properties":

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-04

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-04

Выбираем сервис SSH и нажимаем "Options":

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-05

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-05

Устанавливаем режим запуска сервиса SSH на ESXi и включаем его кнопкой Start. Как видите тут 3 варианта запуска службы:

  1. Start automatically if any ports are open, and stop when all ports are closed - тут все будет работать автоматически
  2. Start and stop with host - будет запускаться и останавливаться вместе с сервером
  3. Start and stop manually - запуск вручную.

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-06

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-06

После включения SSH на ESXi 5.0 у вас появятся следующие предупреждения в vSphere Client для хоста:

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-07

Как включить доступ по SSH и esxi shell на хосте VMware ESXi 5.1-07

ESXi Shell for the Host has been enabled

Чтобы их убрать, нужно сделать так. Выбираем нужный хост ESXi.Переходим в категорию "Advanced Settings" в разделе "Software" на вкладке "Configuration". Переходим в раздел UserVars > UserVars.SupressShellWarning. Меняем значение с 0 на 1. Нажимаем OK.

Включение ssh, через HTML клиента

По умолчанию, версия VMware ESXI 6.5 не имеет толстого клиента, но уже имеет встроенного HTML клиента, доступного через браузер, для версий 5,5 и ниже, нужно будет докачивать отдельно клиента. Давайте, включим ssh доступ в версии 6.5. Логинимся через браузер в интерфейс управления.

esxi подключиться по ssh

В открывшемся окне, найдите пункт "Manage" Затем переходите на вкладку "Services" и выбираете службу ssh.

esxi подключиться по ssh-2

Выбрав службу ssh, найдите в самом верхнем меню, пункт действия "Actions". Нажав его вы сможете взаимодействовать со службой.

  • Restart - перезапуск
  • Start - запуск
  • Stop - остановка

Включение служб в ESXI 6.5

Пункт "Policy" позволит настроить автозапуск служб. Как видите, использование и предоставление доступа по ssh на Vmware ESXI реализованного, очень просто.

Настройка запуска служб в ESXI 6.5

Так же обнаружил на одной из последних версий Vmware ESXI 6.5, что можно просто щелкнуть правым кликом по "Host" и выбрать пункты меню "Services - Enable Secure Sell (SSH)", удобно вынесли активацию службы SSH.

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

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

для операционных систем Windows нужно настроить доступ по RDP;

для ОС Linux нужен доступ по SSH.

Виртуальный дата-центр VMware

Гибкое решение для создания собственного виртуального дата-центра.

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

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

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

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


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


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


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

Applied On — выберите внешнюю сеть.

Original IP/Range — внешний 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.


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


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

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

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

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

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

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

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

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

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

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


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


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


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

Applied On — выберите внешнюю сеть.

Original IP/Range — внешний 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.


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


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

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

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

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

В этом материале мы рассмотрим, как установить и настроить VMWare Workstation, а также создать виртуальную машину на базе CentOS.

Оглавление

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

Подготовка

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

Установка очень простая - следуем за установщиком и жмём Next.

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

Мы предлагаем использовать самый стабильный, надежный и распространенный в корпоративном сегменте дистрибутив Linux - CentOS. Все дальнейшее описание будет строиться на его основе.

Загружаем с этого адреса крайнюю версию CentOS 7 Minimal ISO к себе на компьютер. Например, ссылка для загрузки Centos 7.9.2009 будет 7.9.2009/isos/x86_64 .

Создание виртуальной машины

  1. Запускаем VMWare Player.
  2. Нажимаем Create a New Virtual Machine

Создание новой виртуальной машины

Название виртуальной машины

Размер диска

  • Memory: нам хватит 2 GB RAM (можно и больше, если у вас много памяти на вашей физической машине)
  • Processors: вполне достаточно двух
  • Network Adapter: Важно! Выбираем Bridged:

Настройка сетевого адаптера

Начало установки Centos

Выбор языка установки Centos

Сетевой адаптер Centos

Задаём пароль root Centos

Проверка сети

Лучше зафиксировать выданный вашим роутером локальный адрес для вашей виртуальной машины. Иначе может быть ситуация, когда наша виртуальная машина будет получать разные IP адреса.

Вот так это выглядит на разных ротуерах:

ZyXEL - список устройств

ZyXEL - добавление устройства

Keenetic - список устройств

Keenetic - регистрация устройства

Keenetic - настройки устройства

На этом создание виртуальной машины закончено.

Установка open-vm-tools

Так же советуем в самой виртуальной машине установить vm-tools, которые помогут решить некоторые проблемы со временем в виртуальной машине и другие несоответствия. Во избежание неожиданностей во время эксплуатации - установите opn-vm-tools командой: yum install open-vm-tools

Доступ по SSH с помощью ключей

С Windows компьютеров доступ к серверам по SSH (протокол, предназначенный для удаленного доступа к операционной системе) обычно осуществляется с помощью программы PuTTY. Создание персональных ключей доступа лучше всего осуществлять программой puttygen.

Получить саму программу PuTTY и все сопутствующие утилиты можно по этой ссылке.

  1. Устанавливаем и запускаем программу PuTTY.
  2. Настраиваем и сохраняем параметры сессии к нашей виртуальной машине (указываем IP адрес, который был присвоен виртуальной машине):

Параметры сессии в PuTTY

Параметры локали в PuTTY

Генерация ключей в puttygen

Путь до файла приватного ключа в PuTTY

Что дальше?

Сервер готов, но на нем пока отсутствует программная среда разработки и тестирования. В качестве такой среды можно использовать стандартный стек LAMP (Linux, Apache, MySQL, PHP). У нас вы найдете подробное руководство по установке LAMP.

Читайте также: