Skip to content

VPN Gateway

VPN Gateway - сетевой сервис, обеспечивающий работу безопасной виртуальной частной сети (VPN).
Основная цель сервиса – предоставление пользователям или разработчикам простого и безопасного способа доступа к ресурсам аккаунта в облаке через VPN.
При создании аккаунта автоматически выделяется многофункциональная виртуальная машина Cloud Gateway, которая несет роль VPN-сервера (или VPN-шлюза). Для подключения к VPN-сервису на устройстве должно быть установлено клиентское ПО VPN Wireguard.

Функциональность VPN Gateway:

  • создание VPN-подключений и добавление устройств VPN-клиентов;
  • Удаленный шлюз позволяет объединять сети аккаунта в разных локациях в случае, если клиент использует ICDC Platform в нескольких регионах;
  • Трансляция сетевых адресов - преобразование IP-адресов для решения проблем с пересечением подсетей.

VPN-шлюзы

Во вкладке VPN отображается список VPN-шлюзов.

VPN-шлюз - тип шлюза виртуальной сети, предоставляемый на базе виртуальной машины CloudGateway, которая управляется платформой.

У VPN-шлюза есть Публичный ключ Wireguard, который используется для всех подключений.
Также у каждого VPN-шлюза есть свой публичный адрес, по умолчанию первый шлюз получает Публичное имя сервераназвание_аккаунта.vpn.название_локации.icdc.io.
Здесь же можно установить Подсеть NAT – это дополнительная подсеть, которая не существует в локации и на устройствах пользователей, для IP-адресов которой делается трансляция ее адресов во внутренние IP-адреса виртуальных машин. Это позволяет обойти проблему пересечения IP-диапазонов на клиентских устройствах и в сетях аккаунта.

Пользователь может зайти в Детали VPN-шлюза, нажав на него.

В Деталях VPN указаны:

  • Экземпляр облачного шлюза – инстанс, в котором запущен шлюз;
  • Публичный ключ - публичный ключ Wireguard;
  • Публичное имя сервера - название_аккаунта.vpn.название_локации.icdc.io;
  • Внутренний адрec - адрес шлюза во внутренней инфраструктуре, нужен для настройки внутренних роутов;
    (Например, если через Cloud Gateway нужно отправить трафик в другую локацию, то нужно знать внутренний IP-адрес Gateway)
  • Подсеть NAT - дополнительная подсеть, для IP-адресов которой делается трансляция ее адресов во внутренние IP-адреса виртуальных машин. (опционально)

Клиентские подключения

Пользователь может определить одно или несколько клиентских подключений (например, для разных групп пользователей). В клиентском подключении пользователь должен указать Подсеть устройствIP-адрес VPN Gateway в ней (адрес шлюза)) , которая будет использоваться для выделения IP-адресов клиентским устройствам. Эта подсеть не должна пересекаться с существующими подсетями VPC и подсетями на клиентских устройствах.

Примечание

Также в приложении VPC Networks во вкладке Маршрутизация пользователю необходимо добавить новый маршрут (кнопка Создать) до выбранной подсети через внутренний адрес VPN Gateway (обычно 198.18.0.2).

Во вкладке Клиентские подключения отображаются:

  • Название подключения - используется для генерации названия сетевых подключений VPN и NIC на клиентском устройстве;
  • Подсеть устройств - диапазон IP-адресов, из которого будут выделяться IP-адреса устройствам;
  • Адрес шлюза - IP-адрес шлюза;
  • Конечная точка – публичный Endpoint, к которому происходит подключение.

Маскировка IP в VPN

Для упрощения доступа к виртуальным машинам через VPN-подключение, по умолчанию IP-адреса VPN-клиентов маскируются — исходный IP-адрес устройства клиента заменяется на IP-адрес VPN-шлюза (обычно 198.18.0.2).
В результате все клиенты используют один и тот же IP-адрес при обращении к приложениям, запущенным на виртуальных машинах.
Чтобы изменить настройки по умолчанию, пожалуйста, создайте запрос в Службу поддержки.

Маршрутизатор в роли VPN-клиента

Для упрощения доступа с виртуальных машин к сетям на стороне VPN-клиента, если клиентским устройством является маршрутизатор, предоставляющий доступ к этим сетям, IP-адреса виртуальных машин по умолчанию маскируются (настраивается исходящий NAT). Это позволяет избежать необходимости настройки маршрутов на маршрутизаторе клиента.
Однако в результате все виртуальные машины будут отображаться на стороне клиента с одним и тем же IP-адресом (IP-адресом VPN-шлюза).
Чтобы изменить настройки по умолчанию, пожалуйста, создайте запрос в Службу поддержки.

Создание подключения

Создание подключения возможно при нажатии на кнопку Создать подключение.

Для создания подключения нужно указать:

  • Название подключения;
  • Подсеть устройств - IP-адрес VPN Gateway в подсети клиентского подключения;

Важно

Подсеть устройств (Device Subnet) не должна совпадать с другими подсетями в одном аккаунте, которые определены в VPC Networks.

  • Адрес шлюза - IP-адрес шлюза;
  • Порт - UDP-порт на публичном IP-адресе;

Рекомендация

Рекомендуем для первого подключения использовать порт 2200/udp, так как он преднастроен и предназначен для VPN-соединений. Для следующих подключений в пределах аккаунта обратитесь в службу поддержки для настройки порта.

  • Максимальную единицу передачи (MTU) - рекомендуемое максимальное значение - 1420.

Нажать Добавить.
Созданное подключение будет отображаться во владке Клиентские подключения, где его можно изменить или удалить при помощи бокового меню.

Примечание

В случае, если нужно дополнительное подключение в пределах одного аккаунта - обратитесь в службу поддержки.

Добавление устройства

При нажатии на название Клиентского подключения пользователь попадает на страницу с Деталями клиентского подключения , где может добавить устройство(а) к подключению, нажав на кнопку Добавить устройство.

Для добавления устройства нужно указать:

  • Название девайса;
  • IP-адрес устройства, который генерируется на основе IP-адреса подсети клиентского подключения;
  • Публичный ключ, который генерируется на устройстве при создании нового подключения в ПО Wireguard;
  • Подсети маршрутизации (опционально) - используется только, если устройством является VPN-шлюз удаленной локации.
    Здесь указываются подсети, которые нужно маршрутизировать c удаленной локации, чтобы трафик с удаленных сетей доходил до сетей текущего аккаунта;
  • Keep Alive (опционально) - интервал времени, в течение которого посылается пакет, поддеживающий соединение к UDP-порту устройства.
    Сетевой файервол, за которым находится пользовательское устройство, закрывает неиспользуемые соединения через определенный интервал (обычно 30 сек.), поэтому распространенное значение 25 сек.

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

Удаленные шлюзы

Информация c данными об удаленных шлюзах содержится во вкладке Удаленные шлюзы:

  • Название шлюза;
  • Подсеть устройств - IP-адрес VPN Gateway в подсети клиентского подключения;
  • Адрес шлюза - IP-адрес шлюза;
  • Удаленная конечная точка - публичный Endpoint, к которому происходит подключение;
  • Публичный ключ - публичный ключ Wireguard;
  • Подсети маршрутизации - подсети, которые нужно маршрутизировать c удаленной локации, чтобы трафик с удаленных сетей доходил до текущего аккаунта.

Настройка маршрутизации

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

Для создания видимости сетей в двух разных локациях (например, loc1 и loc2) необходимо настроить статическую маршрутизацию:

  1. в локации loc1 добавить маршрутизацию:

    • VPC Networks во вкладке Машрутизация настроить Подсети маршрутизации на подсети из loc2;
    • VPN во вкладке Удаленные шлюзы в Деталях VPN-шлюза настроить Подсети маршрутизации на подсети из loc2;
  2. в локации loc2 добавить маршрутизацию:

    • VPC Networks во вкладке Машрутизация настроить Подсети маршрутизации на подсети из loc1;
    • VPN во вкладке Клиентские подключения в необходимом Устройстве настроить Подсети маршрутизации на подсети из loc1.

Создание удаленного шлюза

Создание удаленного шлюза возможно при нажатии на Создать удаленный шлюз.

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

NAT Mapping

Трансляция сетевых адресов (NAT) позволяет осуществлять замену IP-адресов из свободного IP-диапазона NAT-подсети в IP-адрес виртуальных машин, находящихся в немаршрутизируемых облачных подсетях аккаунта. Это может понадобиться, если устройство клиента уже имеет пересекающиеся диапазоны IP-адресов.
Для каждого NAT-сопоставления также автоматически создаются DNS-записи вида:
<hostname>.<acc>.vpn.<loc>.icdc.io

Вкладка NAT Mapping отображает список добавленных сопоставлений NAT.

Каждое NAT-сопоставление содержит:

  • Имя сервера - название_аккаунта.vpn.название_локации.icdc.io;
  • VPN IP;
  • Локальный IP – любой внутренний IP-адрес внутри локации.

Пользователь может добавить/редактировать Подсеть NAT при помощи кнопки редактирования в Деталях VPN.

Для внесения изменений нужно ввести новые данные и нажать кнопку Cохранить или Отменить - в случае отмены изменений.

Для добавления сопоставления NAT нужно нажать на Добавить сопоставление NAT, ввести необходимые данные в модальном окне и нажать кнопку Добавить.

Добавленное сопоставление будет отображаться во вкладке NAT Mapping:

Роли и права

Действие Member Admin Billing Operator Owner
Создание подключения
Редактирование подключения
Удаление подключения
Добавление устройства
Изменение устройства only own
Отключение устройства only own
Удаление устройства only own
Изменение конфигурации устройства only own
Добавление удаленного шлюза
Изменение удаленного шлюза
Удаление удаленного шлюза
Добавление сопоставления NAT
Изменение сопоставления NAT
Удаление сопоставления NAT