1 сентября 2016

Немного о VPN: Дополнения к обзору программных реализаций

Блог компании 1cloud.ruХостингСистемное администрированиеСерверная оптимизацияСерверное администрирование
Не так давно в нашем блоге мы публиковали материал, посвященный обзору программных реализаций VPN, который вызвал достаточно бурное обсуждение. Тогда мы обещали подготовить вторую часть: на этот раз мы взглянем на следующие программные решения для создания виртуальных частных сетей: AnyConnect VPN, OpenConnect VPN, SoftEther VPN, Tinc.



/ фото Dave Crosby CC


AnyConnect VPN


Исследуя продукты, которые предлагает компания Cisco, достаточно сложно пройти мимо слов «Any Connect» – за этим названием скрывается решение, разрабатываемое вендором как VPN-клиент «следующего поколения». И он действительно предлагает несколько прогрессивных функций для защиты компьютеров компаний.

Например, продукт предоставляет полный сетевой доступ на базе SSL (TLS и DTLS) и IPsec, что позволяет удаленным клиентам устанавливать соединение практически с любым приложением или сетевым ресурсом, потому часто используется организациями для расширения доступа к корпоративным ноутбукам.

Подключение осуществляется с помощью клиента Cisco AnyConnect Secure Mobility Client, протокола L2TP/IPsec VPN и IPsec VPN. Решение автоматически подстраивает протокол туннелирования с учетом ограничений сети и использует протокол DTLS для оптимизации проходящего трафика, например VoIP или TCP-доступа к приложениям.

Благодаря распространению шифрования SSL, применяющегося в браузерах, AnyConnect обеспечивает удаленный доступ без клиента, что позволяет обращаться к сетевым ресурсам, веб-приложениям и приложениям терминальных служб (например Citrix) вне зависимости от их расположения.

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

OpenConnect VPN


OpenConnect – это открытое приложение для подключения к виртуальным частным сетям с реализацией подключений точка-точка, которое изначально было написано в качестве замены проприетарного клиента Cisco AnyConnect SSL VPN. Причиной для разработки послужила серия недостатков, обнаруженных в решении Cisco под Linux: отсутствие поддержки архитектур отличных от i386 (для платформ Linux), отсутствие интеграции с NetworkManager, отсутствие грамотной поддержки форматов пакетов RPM и DEB, невозможность работы в качестве непривилегированного пользователя, закрытость кода и др.

OpenConnect (ocserv) разрабатывался как небольшой, безопасный и быстрый VPN-сервер. Он поддерживает протокол OpenConnect SSL VPN и совместим с клиентами, использующими протокол AnyConnect SSL VPN – при этом применяются стандартные TLS и DTLS протоколы передачи данных. Более того, OpenConnect предоставляет двойной TCP/UDP VPN-канал и умеет работать со стандартными протоколами безопасности IETF.

Соединение происходит в два этапа. Сперва устанавливается простое HTTPS-соединение, по которому происходит аутентификация пользователя (с помощью сертификата, пароля или SecureID). После аутентификации пользователь получает cookie, используемое для установления VPN-соединения.

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

SoftEther VPN


Дэйю Нобори (Daiyu Nobori) начал разрабатывать SoftEther VPN, когда начинал свое обучение в Цукубском университете. В 2003 он выпустил первую версию SoftEther, но получил предупреждение от правительства Японии, которое посчитало, что проект подпадает под определение вредоносного ПО из-за своей способности обходить брандмауэры. В результате SoftEther был исключен из общего доступа.

Через какое-то время – в апреле 2004 – Mitsubishi Materials Corporation предложили Нобори купить SoftEther 1.0 и подписать контракт на 10 лет (с апреля 2004 по апрель 2014), который давал корпорации право на продажу SoftEther и запрещал автору продавать программу самостоятельно. Однако в марте 2013 Нобори начал распространять решение бесплатно, а в январе 2014 года его удалось открыть под лицензией GPLv2.

SoftEther VPN – это еще один мощное и простое решение для организации VPN. SoftEther VPN совместим с современными популярными VPN-продуктами: OpenVPN, L2TP, IPsec, EtherIP, L2TPv3, Cisco VPN Routers и MS-SSTP VPN имеет версии под Windows, Linux, OS X, FreeBSD и Solaris.

Программное обеспечение состоит из сервера, бридж-сервера, клиента, GUI и утилит администрирования. Клиент нужен для подключения одного компьютера к LAN (Remote Access VPN), а бридж-сервер – для соединения двух или более сетей (Site-to-Site VPN). Стоит отметить, что при использовании второго варианта исключается необходимость отдельной настройки параметров подключения для каждого конкретного клиентского устройства – достаточно сконфигурировать по одному VPN-шлюзу со стороны каждой из связываемых сетей. Кстати, мы подготовили небольшое практическое руководство по настройке Site-to-Site VPN – его вы можете найти по ссылке.

SoftEther VPN позволяет определить локальный мост между виртуальным хабом и физическим Ethernet-сегментом используя функцию Local Bridge, что дает возможность обмениваться пакетами между физическим адаптером и виртуальным хабом, а это, в свою очередь, разрешает настроить удаленный туннель из дома или с мобильного устройства. Также вы можете установить каскадное соединение между двумя и более удаленными виртуальными хабами, дабы объединить два и более Ethernet-сегментов в одно целое.

Не стоит забывать и про поддержку средств для обхода межсетевых экранов и систем глубокого инспектирования пакетов, которые несколько лет назад вызвали недовольство у правительства Японии. Для затруднения обнаружения туннеля в SoftEther VPN поддерживается техника закамуфлированного проброса Ethernet поверх HTTPS, при этом на стороне клиента реализуется виртуальный Ethernet-адаптер, а на стороне сервера – виртуальный Ethernet-коммутатор.

С момента публикации бинарной версии SoftEther VPN Server было зафиксировано более 80 тысяч успешных внедрений сервера, большинство из которых в Японии, США и Китае.

Tinc


Tinc – это VPN-демон и один из претендентов на звание самой маленькой и самой простой в настройке VPN-реализации. Проект стартовал достаточно давно, еще в 1998 году, а активная разработка ведется по сей день, но несмотря на это tinc выглядит зрелым продуктом.

Он позволяет соединять компьютеры посредством сетей IPv4/IPv6, работающих под управлением таких ОС, как Linux, BSD, Mac OS X, Solaris, Windows. Кроме того, поддерживается работа на iPhone и iPod.

Tinc обладает несколькими интересными функциями. Весь трафик опционально сжимается с помощью zlib или lzo, а для шифрования используется LibreSSL или OpenSSL – это позволяет защитить передаваемые данные от изменения.

Что интересно, вне зависимости от настройки демонов tinc, если есть возможность, VPN-трафик направляется напрямую к точке назначения, не делая «крюков», а введение новых узлов осуществляется простым добавлением файла конфигурации – нет необходимости запускать новых демонов или создавать новые устройства.

Сегодня tinc доступен в репозиториях большинства дистрибутивов, а установочный пакет для Windows можно скачать на официальном сайте. Разработчиками взят курс на упрощение процесса установки и настройки систем на базе tinc, а в документации на сайте отражены все важные вопросы, в том числе и особенности установки в различных операционных системах.

Вместо заключения


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


Более надежным и гибким решением видится самостоятельная настройка виртуальных частных сетей на физических или виртуальных серверах (VPS/VDS). Благо в интернете есть большое количество подробных инструкций. Свой вариант с использованием облачного VPS/VDS-сервера от 1cloud предлагаем и мы (для Windows и для Linux). Такое решение легко масштабируется под текущую нагрузку на виртуальную частную сеть.

P.S. Если вам интересно, то мы готовы поделиться своим опытом разработки IaaS-провайдера 1cloud. Вот несколько интересных подготовленных нами материалов:


Теги:1сloudVPNVPSVDS
Хабы: Блог компании 1cloud.ru Хостинг Системное администрирование Серверная оптимизация Серверное администрирование
+12
37k 143
Комментарии 23
Лучшие публикации за сутки