Pull to refresh

Удаленный доступ для малых и средних предприятий

Reading time6 min
Views7K
Более года назад я написал длинную и скучную статью про стремительное изменение рабочей среды, про глобализацию, мобильность и безопасность различных типов удаленного доступа. Из-за отсутствия картинок и сухого слога статья не вызвала оживленной дискуссии, но лично мне дала сильный импульс в нужном направлении. Мысли об удобной и безопасной реализации удаленного доступа для сотрудников к ресурсам корпоративной сети воплотились в реальном продукте с кодовым названием «VPN Box».

Хочу рассказать, что получилось через год исследований и разработок. Все работы велись мною в норвежской компании INFOSS AS (не реклама), поэтому их логотип стоит на конечном устройстве.










Клевые надписи сделаны методом лазерной гравировки в ближайшем рекламном бюро

С самого начала было необходимо определится с целевой аудиторией.

Нет никакого смысла разрабатывать очередное решение для крупных корпораций: у них достаточно средств и ресурсов для внедрения систем от именитых брендов: Cisco, CheckPoint или Juniper. Подобные установки подразумевают наличие в штате компании квалифицированных технических специалистов, для которых поставщик решения проводит обучение и сертификацию.

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

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

Локальная сеть большинства небольших компаний содержит клиентские компьютеры и корпоративный сервер с общими сетевыми ресурсами, базой данных, внутренними web- и почтовыми службами. Настройки файервола обычно запрещают входящие соединения и разрешают исходящие. Локальные IP-адреса раздаются по DHCP. Внешний IP-адрес динамический.

Идея состоит в том, что компания размещает в своей локальной сети некое устройство (виртуальное или физическое), которое само подключается к VPN-шлюзу и постоянно держит это соединение. При этом устройство имеет доступ к ресурсам локальной сети. Так как исходящие соединения разрешены, то нет необходимости настраивать файервол.

Администратор компании регистрирует сотрудников на предоставленном web-портале, после этого для каждого мобильного устройства сотрудника формируется свой собственный профиль доступа, ссылка на который высылается по почте или СМС. После установки профиля на смартфон или ноутбук устанавливается VPN-соединение с VPN-шлюзом, а далее начинается самое интересное: два VPN-туннеля соединяются, мобильное устройство получает доступ к локальной сети компании.

В итоге компания как бы получает в аренду профессионально настроенную систему удаленного доступа со всеми плюшками и очень простым администрированием. Нет необходимости привлекать технических специалистов для настройки сетевого оборудования.



Красивая картинка для гуманитариев, тропинка символизирует трудности самостоятельной настройки VPN



Схема инфраструктуры VPN Box

Опыт работы с PKI и VPN позволили достаточно быстро создать прототип.

За основу была взята платформа ALIX2D13 швейцарской компании PC Engines. Выбор обусловлен наличием трех Ethernet портов, слотов расширения, универсальностью и модульностью. Разработчик охотно отвечает на вопросы, так же нет проблем с логистикой, в том числе и в России. Приемником ALIX недавно стала платформа APU той же компании PC Engines. Форм-фактор платы позволяет использовать один и тот же корпус для ALIX и APU, очень практично. Корпус не содержит маркировок, что удобно для брендирования конечного продукта.

Технически возможно перепрошить обычные домашние роутеры, все будет работать на 99%. Но выгоды особой нет, так как близкие по производительности роутеры стоят не дешевле ALIX, а проблем с поддержкой возникает намного больше. Я в качестве эксперимента перепрошил старенький ASUS WL500gP v1, все заработало, вот только при скорости VPN IPSec выше 10 Мбит/с роутер перезагружался по сигналу от watchdog. Поэтому остановился на проверенном и стабильном варианте.



Фотография первого прототипа

В качестве операционной системы рассматривалось несколько вариантов. Сначала достаточно долго бился с pfSense на базе NetBSD, но в итоге оптимально подошла кастомизированная сборка OpenWRT. Все-таки у Линукс-сообществ намного больше последователей, и, как следствие, живые ветки разработки.

Серверная часть включает в себя VPN-шлюз, сервер генерации профилей, портал для администратора, центр сертификации (PKI), сервер авторизации, маршрутизатор и систему мониторинга.

VPN-шлюз поддерживает Cisco IPSec и OpenVPN, авторизация двухэтапная, сначала по сертификатам, затем по имени-паролю. Все серверные службы продублированы, а VPN-шлюзы легко масштабируются географически. При инициализации VPN Box автоматически регистрируется в системе мониторинга, любые нарушения в работе регистрируются, приходят оповещения, рассчитывается SLA.

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

Однако останавливаться на достигнутом не стоит. Как показала практика, концепт прекрасно подходит для полной замены обычного роутера, который стоит на границе локальной сети и интернета. VPN Box, помимо основной функции, может использоваться как файервол, как балансировщик трафика между несколькими провайдерами (включая 3G/LTE/Yota модемы), как прокси-сервер системы мониторинга локальной сети, как локальный кеш облачного сервиса, как точка доступа Wi-Fi (IEEE 802.11n или новомодный IEEE 802.11ac).



VPN Box с установленным модулем Wi-Fi, но без антенн

При использовании модуля Wi-Fi добавляется очень приятная функциональность: когда мобильное устройство подключено к беспроводной сети VPN Box, профиль VPN автоматически отключается, но как только устройство подключается к любой другой сети, сразу же устанавливается VPN, и пользователю все так же доступны все сетевые ресурсы локальной сети.

На практике это означает, что сотрудник может спокойно передвигаться из офиса в любое место, где есть доступ в интернет, и продолжать работать с локальными ресурсами компании, не предпринимая никаких дополнительных действий. Необходимо отметить, что такая настройка полноценно работает только на устройствах под управлением Apple iOS и OS X (iPhone, iPad, MacBook), в скором будущем будет работать на Android-устройствах. Для этого ведется open-source разработка Open Configuration Profiles for Android. Про этот проект я напишу отдельную статью. Разработчики, если есть желание поучаствовать – присоединяйтесь!

В некоторых случаях использование внешнего VPN-шлюза нежелательно или невозможно по корпоративным стандартам безопасности. Для таких случаев предусмотрена особенная конфигурация VPN Box Active, при которой функции VPN-шлюза перенесены в коробочку. Мобильные клиенты подключаются напрямую к VPN Box. К недостаткам можно отнести необходимость проброса портов (в случае если VPN Box стоит за файерволом) и наличие статического IP (или DynDNS, что не рекомендуется).



Cхема инфраструктуры VPN Box Active

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

Несколько ремарок насчет производительности. Процессора AMD Geode LX800 в идеальных условиях хватает на прокачку 50Мбит/с IPSec AES-128. Если использовать AES-256, то скорость падает в разы, так как перестает использоваться встроенный в AMD Geode крипто-акселератор. Следующим шагом является платформа на базе AMD G T40E, там уже можно говорить о гигабите в секунду. Модификация VPN Box Pro использует именно такую платформу. Производительность виртуального VPN Box ограничена выделяемыми ресурсами.

Для одного клиента группа из нескольких VPN Box’ов использовалась в качестве узлов внутренней сети для географически удаленных точек с оборудованием. Были там и агрегирующие модули (VPN Box Active), принимающие соединения от нескольких обычных коробочек VPN Box. Были коробочки с мощными Wi-Fi модулями и направленными антеннами, для передачи сигнала с одного берега фьорда на другой над морской поверхностью. Спасибо Арсену apcsb за советы по настройке wi-fi в сложных условиях! Пришлось проводить полевые морские тесты, с приключениями, падением в море и битвой с чайками. В итоге получилась отличная система доставки конфиденциальных данных в режиме реального времени из множества различных локаций.

Более привычный сценарий – объединение всех платежных терминалов розничной сети в единую защищенную сеть.

Мне кажется, что год был потрачен не зря. Приятно видеть, когда идеи находят реальное воплощение в готовых продуктах и услугах.

P.S. Решение использует только open-source продукты, все отрыто. ОС — OpenWRT, IPSec — StrongSWAN, авторизация — FreeRADIUS, база данных — PostgreSQL, мониторинг — Zabbix.
Розничная стоимость базового устройства на базе ALIX2D13 — 8990 руб. без НДС.
Tags:
Hubs:
Total votes 45: ↑38 and ↓7+31
Comments36

Articles