Назад | Перейти на главную страницу

Как получить общедоступные IP-адреса на виртуальных машинах ESXi?

У нас есть выделенный сервер с хостинг-провайдером. Мы работаем с ESXi 6.0. Сервер имеет единственный общедоступный IP-адрес, который в настоящее время используется для интерфейса управления. Провайдер также назначил нам блок / 29, чтобы наши виртуальные машины могли иметь общедоступные IP-адреса. Мы можем использовать только 1 физический сетевой адаптер, что, я думаю, вызывает некоторые проблемы.

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

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

Мы спросили, могут ли они назначить этот блок (или даже один IP-адрес) серверу, чтобы они были такими же, как IP-адрес ESXi, чтобы мы могли использовать их на виртуальных машинах, но они сказали нам, что их настройка сети не позволяет для этого.

В идеале мы хотим иметь возможность назначать эти общедоступные IP-адреса нашим виртуальным машинам, чтобы они были напрямую доступны из Интернета. Есть ли способ сделать это? Мы что-то упускаем?

Если это невозможно, есть ли у нас способ сделать переадресацию портов / что-нибудь еще, чтобы мы могли связаться с нашими виртуальными машинами из Интернета?

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

При необходимости мы с радостью предоставим любую дополнительную информацию.

Ваш хостинг-провайдер (как вы предполагаете, Hetzner?) Прав.

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

Ваш хостинг-провайдер должен иметь возможность направить вашу подсеть / 29 на MAC-адрес сервера.

У вас также будет один vSwitch (я бы лично переименовал его в «Public» для разумности), настроенный в vSphere, который подключен к вашей физической сетевой карте.

Вам нужно будет создать второй vSwitch (для разумности я рекомендую называть его «Private»), который не подключен к каким-либо физическим сетевым интерфейсам.

После настройки этих двух виртуальных коммутаторов вы можете создать виртуальную машину с двумя виртуальными сетевыми адаптерами - по одной в каждом виртуальном коммутаторе. Используйте любую ОС "маршрутизатора", которая вам нравится (обычно что-то вроде ipfire или pfSense подойдет) и настройте его на пакеты NAT между вашими виртуальными коммутаторами WAN (общедоступная) и LAN (частная).

Чтобы использовать ваши IP-адреса / 29, вам нужно будет создать виртуальные машины, подключенные к вашему частному vSwitch, а затем при необходимости выполнить переадресацию портов NAT.

Я бы действительно действительно настоятельно призываем вас не размещать свой интерфейс управления ESXi напрямую в Интернете. Тогда ваш единственный контроль безопасности - это ваш пароль, который дает вам полные ключи от королевства.

Я бы посоветовал вам установить Unified Threat Manager (UTM), например pfsense или Untangle, в качестве маршрутизатора с общедоступным IP-адресом. Ваша сеть будет выглядеть так:

Internet ---> VSWitch1 ---> UTM ---> VSwitch2> --- Virtual Machines

Куда:

  • VSWitch1 подключен к реальной сетевой карте, выходящей в Интернет
  • UTM подключен к VSWitch1 (с одним из ваших общедоступных 29-битных IP-адресов) и VSwitch2 (с частным IP-адресом)
  • VSwitch2 не подключен ни к каким реальным сетевым адаптерам
  • Виртуальные машины все подключены к сетевым адаптерам и имеют частные IP-адреса (например, 192.168.0.0/24 или 10.0.0.0/8)

В этой конфигурации вы будете использовать UTM для выполнения NAT, чтобы ваши виртуальные машины имели доступ к Интернету (и, наоборот, с помощью переадресации портов, если это необходимо). Эти UTM поставляются с функциями брандмауэра, функциями IPS и всем необходимым для защиты вашей сети.

Для доступа к ESXI я бы рекомендовал вам сделать VPN для вашей частной сети. Поместите VMKernel в частную сеть (например, 192.168.0.101/24). Таким образом, вы аутентифицируетесь с помощью своей VPN, и весь ваш трафик зашифровывается. VPN - это функция UTM, о которой я упоминал.

Плюс! Бонус! Они бесплатные и с открытым исходным кодом :-)

Если у вас должен быть прямой доступ в Интернет к вашему ESXI - я бы все равно рекомендовал, по крайней мере, установить брандмауэр / NAT между вашим ESXI и Интернетом, в противном случае вам предоставлены [несуществующие] функции безопасности ESXi.