1.1. Компоненты сервиса

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

1.1.1. Сеть

../_images/1_networks.png

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

Например:

  • Разные локации: офис, дата-центр, частное облако.

  • Изолированные маршрутизаторы в одной локации.

  • Изолированные группы VLAN на одном маршрутизаторе.

1.1.2. Подсеть

../_images/2_subnetworks.png

Непрерывный диапазон частных (не маршрутизируемых публично) IP-адресов в сети. В понятийном аппарате сервиса Alphabyte, под подсетью понимается соответствующий реальный диапазон IP-адресов.

Если подсеть не указана в панели администратора Alphabyte, удаленный доступ к ней будет отключен: сеть будет недоступна, даже если она может локально взаимодействовать с другими настроенными подсетями. Мы рекомендуем указывать собственную подсеть для каждой сети LAN или VLAN, но это необязательно. Например, если в сети есть две LAN-подсети 192.168.0.0/24 и 192.168.1.0/24, они могут быть указаны как одна подсеть с более свободной маской: 192.168.0.0/23.

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

1.1.3. Виртуальные IP-адреса

../_images/3_virt_ips.png

Сервис Alphabyte назначает виртуальный диапазон IP-адресов каждой настроенной подсети. Назначенный виртуальный диапазон IP-адресов имеет тот же размер и маску подсети, что и реальный диапазон IP-адресов. Каждый назначенный виртуальный IP-адрес имеет тот же номер хоста, что и реальный IP-адрес: изменяется только префикс сети.

Подсказка

  • Под номером хоста понимается идентификатор хоста – биты, расположенные вне маски подсети.

  • Под префиксом сети понимается идентификатор сети – биты, расположенные внутри маски подсети.

Всем подсетям во всех сетях, указанных администратором Alphabyte, назначаются виртуальные диапазоны IP-адресов. Например, подсетям в двух разных сетях, имеющих одинаковый реальный диапазон IP-адресов 10.20.30.0/24, будут назначены два разных виртуальных диапазона IP-адресов: например, 10.232.0.0/24 и 10.232.0.1/24.

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

Виртуальные IP-диапазоны, назначаемые всем подсетям клиента Alphabyte, располагаются близко друг к другу. Например, все виртуальные IP-адреса одного клиента могут быть выделены внутри диапазона 10.224.0.0/12 (1048574 доступных IP-адреса). Подсетям с далеко расположенными префиксами, (например, 10.20.65.0/24 и 192.168.1.0/24), могут быть назначены виртуальные диапазоны IP-адресов с близкими префиксами: для предыдущего примера, 10.232.0.0/24 и 10.232.1.0/24 соответственно.

При этом, запросы к IP-адресам внутри диапазона 10.224.0.0/12 направляются с устройства пользователя в сеть Alphabyte. Этот диапазон назначается намеренно, чтобы минимизировать вероятность конфликта с IP-адресами локальных сетей пользователя.

Чтобы получить доступ к нескольким сетям в течение одной сессии и избежать конфликтов с локальными сетями, удаленный пользователь должен указывать назначенные виртуальные IP-адреса Alphabyte вместо реальных IP-адресов. Номер хоста виртуального IP-адреса остается прежним, что облегчает запоминание виртуального IP-адреса. Кроме того, каждый удаленный пользователь имеет доступ к пользовательскому порталу Alphabyte, на котором перечислены виртуальные IP-адреса и виртуальные диапазоны IP-адресов для всех разрешенных ему ресурсов.

Пример работы сервиса с виртуальными IP-адресами:

Реальному диапазону IP-адресов настроенной подсети 192.168.1.0/24 присваивается виртуальный IP-диапазон 10.232.2.0/24. В этом случае, подсеть будет иметь следующие параметры:

  1. Маска подсети network_mask = 255.255.255.0.

  2. Префикс реальной сети real_network_prefix = 192.168.1.0.

  3. Префикс виртуальной сети virtual_network_prefix = 10.232.2.0.

Некоторый ресурс в этой подсети имеет реальный IP-адрес real_IP = 192.168.1.19 с номером хоста host_number = 0.0.0.19. Этот ресурс будет иметь следующий виртуальный IP-адрес в подсети Alphabyte:

virt_IP = virtual_network_prefix + host_number = 10.232.2.19.

1.1.4. Ресурс

../_images/4_resources.png

Ресурс в сети Alphabyte указывается как один реальный IP-адрес с опциональным доменным именем. Каждый ресурс связан с реальным или виртуальным устройством: сервером, виртуальной машиной, ноутбуком, IoT-устройством и т.д.

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

При настройке Alphabyte, необязательно указывать все доступные ресурсы. Как объект, ресурс нужен для ограничения пользовательского доступа к IP-адресам в одной подсети. Например, чтобы внешние подрядчики имели доступ только к двум отдельным серверам в подсети, в то время как постоянные сотрудники – ко всем IP-адресам той же подсети. Для этого, при настройке Alphabyte укажите только ресурсы, связанные с этими двумя серверами.

Если одно и то же устройство имеет несколько IP-адресов, связанных с различными функциями (например, несколько доменов, связанных с разными IP-адресами), эти IP-адреса должны быть указаны как отдельные ресурсы: по одному на каждый IP-адрес, требующий удаленного доступа.

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

1.1.5. Коннектор

../_images/5_connector.png

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

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

Коннектор может быть установлен на виртуальной машине с ОС Linux или на Linux-сервере. Единственным требованием является возможность доступа к другим устройствам в той же сети.

Чтобы установить коннектор, выберите Установить коннектор для необходимой сети в панели администратора. Затем скопируйте сгенерированную строку с последовательностью команд и выполните ее в терминале администратора.

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

Если коннектор перестает работать, выберите Переустановить коннектор для соответствующей сети.

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

Установленный и настроенный коннектор немедленно открывает VPN-туннель к серверу маршрутизации в облаке Alphabyte. Запросы удаленных пользователей отправляются через этот туннель с сервера маршрутизации обратно на соответствующий коннектор, без необходимости открывать входящие порты на локальном маршрутизаторе.

1.1.6. Пользователь

../_images/6_users.png

Сотрудник организации, имеющий учетную запись на пользовательском портале Alphabyte и назначенные роли для доступа к тем или иным ресурсам (опционально).

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

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

../_images/9_user_portal.png

После регистрации пользователь устанавливает клиентское приложение с вкладки Устройства на пользовательском портале. Один пользователь может иметь одно или несколько устройств. Для поддержки нескольких устройств, пользователь должен установить клиентское приложение на каждом устройстве, которому требуется удаленный доступ.

1.1.7. Клиентское приложение

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

../_images/13_app.png

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

../_images/8_devices.png

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

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

Если подключение к Интернету прерывается или по какой-либо причине выходит из строя установленный туннель (например, пользователь переключается на другую сеть WiFi, которая блокирует запросы к VPN), статус сети в приложении меняется с Подключено на Подключение. Приложение будет продолжать попытки восстановить туннель, пока не восстановит соединение, либо пользователь приложения не выберет Отмена.

В настоящее время, доступны клиентские приложения для следующих ОС:

  • Windows 10 и более поздние версии;

  • MacOS 12.0 и более поздние версии.

Если вам требуется клиентское приложение для ОС Linux или мобильных устройств, сообщите нам.

Особенности работы клиентского приложения:

  • Вы можете изменить состояние сети (подключиться или отключиться) из пользовательского интерфейса приложения или с помощью иконки в панели иконок (версия для ОС Windows).

  • Кнопка Свернуть в заголовке окна приложения скрывает пользовательский интерфейс, но сохраняет иконку в панели задач и в панели иконок (версия для ОС Windows) или в панели Dock (версия для MacOS). При этом, подключение к сети сохраняется.

  • Кнопка Выход в панели иконок (версия для ОС Windows) или панели Dock (версия для MacOS) останавливает приложение и удаляет его из памяти устройства. При этом, туннель отключается. Устройство пользователя остается зарегистрированным в сервисе Alphabyte, и пользователь может запустить приложение повторно без ввода логина и пароля.

  • Если пользователь отменяет регистрацию клиентского приложения (иконка рядом с именем пользователя), запись об устройстве удаляется из списка устройств на пользовательском портале. В этом случае, клиентское приложение на устройстве запросит логин и пароль при следующем запуске.

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

  • Клиентское приложение и сервис Alphabyte не нарушают иные действия пользователя:

    • Через туннель отправляется только трафик, связанный с организацией пользователя. Весь остальной трафик отправляется в обход туннеля. К примеру, на myip.info или аналогичном сайте пользователь увидит свой реальный IP-адрес.

    • Через DNS-серверы Alphabyte разрешаются только домены организации. Все остальные DNS-запросы отправляются непосредственно с устройства пользователя на его обычные DNS-серверы.

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

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

1.1.8. Сервер маршрутизации

Сервер маршрутизации Alphabyte сочетает функции VPN-сервера, маршрутизатора и ролевого экрана. Сервер маршрутизации выполняет следующие функции:

  • Расшифровывает запросы ресурсов которые отправляются через туннель, открытый клиентским приложением.

  • Проверяет, разрешен ли пользователю доступ к запрошенному ресурсу.

  • Если доступ разрешен, сервер маршрутизации направляет повторно зашифрованные запросы через туннель, открытый коннектором в сети запрошенного ресурса.

  • Перенаправляет ответы от запрошенных ресурсов клиентскому приложению.

Сервер маршрутизации конфигурируется администратором организации через веб-интерфейс портала администратора.

1.1.9. Роль

../_images/7_role.png

Сервис Alphabyte реализует модель управления доступом на основе ролей (RBAC): группы пользователей с одной и той же ролью имеют одинаковые правила доступа.

Каждое из правил доступа роли включает 2 компонента: разрешенные IP-адреса и разрешенные типы трафика. Разрешенные IP-адреса могут быть указаны как один или несколько IP-блоков:

  • все IP-адреса сети;

  • все IP-адреса подсети;

  • индивидуальный IP-адрес из списка ресурсов, указанных для сети.

Каждый IP-блок может быть связан с одним или несколькими типами трафика – другими словами, с соответствующими портами и протоколами. Если для одного IP-блока указано несколько типов трафика, пакет, соответствующий любому из указанных типов трафика, будет разрешен. Например, если для одного IP-адреса указаны типы трафика SSH (TCP-порт 22) и HTTPS (TCP-порт 443), TCP-пакеты на этот IP-адрес с портом 22 или 443 будут разрешены. При этом, пакеты на другие протоколы и порты будут запрещены.

Один пользователь может иметь одну или несколько ролей. Например, на схеме, приведенной в следующем разделе, пользователи A и B имеют роль «Разработчик», пользователь D имеет роль «Поддержка», а пользователь C имеет роли «Разработчик» и «Поддержка».

Если для одного и того же пользователя указано несколько ролей, пакет, разрешенный для любой из этих ролей, будет разрешен. Например, если роль «Разработчик» разрешает доступ к ресурсу №1, но не к ресурсу №2, в то время как роль «Поддержка» разрешает доступ к ресурсу №2, но не к ресурсу №1, пользователю С будет разрешен доступ к обоим ресурсам.