Что такое Виртуальная частная сеть (VPN)?
Раньше для осуществления безопасной передачи данных возникала необходимость в выделенной линии, связывающей два пункта. Расходы на организацию таких линий довольно велики.
Виртуальная частная сеть дает пользователям безопасный способ доступа к ресурсам корпоративной сети через Интернет или другие общественные или частные сети без необходимости выделения линии.
Безопасная частная виртуальная сеть представляет собой совокупность технологий/служб туннелирования, аутентификации, управления доступом и контроля, используемых для защиты данных и передачи трафика через Интернет.
Существует много причин для использования виртуальных частных сетей. Наиболее типичны следующие из них:
Безопасность (защита данных).
С помощью аутентификации получатель сообщения, являющийся пользователем виртуальной частной сети, может отслеживать источник полученных пакетов и обеспечить целостность данных.
С средств защиты данных в виртуальных частных сетях гарантируется конфиденциальность исходных пользовательских данных.
Стоимость (снижение количества линий доступа и уменьшение расходов на междугороднюю телефонную связь).
Организация виртуальной частной сети позволяет компании передавать данные через линии доступа к Интернету, таким образом уменьшая необходимость в некоторых из существующих линий.
При организации виртуальной частной сети снижаются расходы на междугороднюю телефонную связь, поскольку пользователь обычно получает услуги от местного Интернет-провайдера, а не совершает междугородний звонок для установления прямой связи с компанией.
Известно, что сети, использующие протокол IP, имеют "слабое место", обусловленное самой структурой протокола IP. Разработчики IP не намеревались обеспечивать каких-либо функций безопасности на уровне IP, а гибкость IP позволяет хитроумно использовать особенности данного протокола в целях преодоления контроля за трафиком, управления доступом и других мер безопасности. Поэтому данные в сети, использующей протокол IP, могут быть легко подделаны или перехвачены.
При туннелировании для передачи по сети протокольных пакетов сети одного типа они вставляются или инкапсулируются в протокольные пакеты другой сети. Это обеспечивает безопасность при передаче данных.
Протоколы для построения VPN-туннеля:
PPTP
PPTP (Point-to-Point Tunneling Protocol) - туннельный протокол типа точка-точка, позволяющий компьютеру устанавливать защищённое соединение с сервером за счёт создания специального туннеля в стандартной, незащищённой сети. Протокол PPTP позволяет инкапсулировать (упаковывать или скрыть от использования) пакеты PPP в пакеты протокола Internet Protocol (IP) и передавать их по сетям IP (в том числе и Интернет).
PPTP обеспечивает безопасную передачу данных от удаленного клиента к отдельному серверу предприятия путем создания в сети TCP/IP частной виртуальной сети. PPTP может также использоваться для организации туннеля между двумя локальными сетями. PPTP работает, устанавливая обычную PPP-сессию с противоположной стороной с помощью протокола Generic Routing Encapsulation (GRE). Второе соединение на TCP порту 1723 используется для инициации и управления GRE-соединением. Для защиты данных PPTP-трафика может быть использован протокол MPPE. Для аутентификация клиентов могут использоваться различные механизмы, наиболее безопасные из них — MSCHAPv2 и EAP-TLS.
Для обеспечения работы клиента по протоколу PPTP, необходимо установить IP-соединение с туннельным сервером PPTP. Все передаваемые по этому соединению данные могут быть защищены и сжаты. По туннелю PPTP могут передаваться данные различных протоколоыв сетевого уровня (TCP/IP, NetBEUI и IPX).
Преимущества протокола PPTP:
- Использование частного IP-адреса. Пространство IP-адресов частной сети не должно координироваться с пространством глобальных (внешних) адресов.
- Поддержка множества протоколов. Можно осуществлять доступ к частным сетям, использующим различные комбинации TCP/IP или IPX.
- Безопасность передачи данных. Для предотвращения несанкционированного подключения используются протоколы и политики обеспечения безопасности сервера удаленного доступа.
- Возможность использования аутентификации и защиты данных при передачи пакетов через Интернет.
L2TP
L2TP (Layer 2 Tunneling Protocol) - протокол туннелирования уровня 2 (канального уровня). Объединяет протокол L2F (Layer 2 Forwarding), разработанный компанией Cisco, и протокол PPTP корпорации Microsoft. Позволяет организовывать VPN с заданными приоритетами доступа, однако не содержит в себе средств для защиты данных и механизмов аутентификации.
Протокол L2TP использует сообщения двух типов: управляющие и информационные сообщения. Управляющие сообщения используются для установления, поддержания и ликвидации туннелей и вызовов. Для обеспечения доставки ими используется надежный управляющий канал протокола L2TP. Информационные сообщения используются для инкапсулирования кадров PPP, передаваемых по туннелю. При потере пакета он не передается повторно.
Структура протокола описывает передачу кадров PPP и управляющих сообщений по управляющему каналу и каналу данных протокола L2TP. Кадры PPP передаются по ненадежному каналу данных, предварительно дополняясь заголовком L2TP, а затем - по транспорту для передачи пакетов, такому как Frame Relay, ATM и т.п. Управляющие сообщения передаются по надежному управляющему каналу L2TP с последующей передачей по тому же транспорту для пересылки пакетов.
Все управляющие сообщения должны содержать порядковые номера, используемые для обеспечения надежной доставки по управляющему каналу. Информационные сообщения могут использовать порядковые номера для упорядочивания пакетов и выявления утерянных пакетов.
Преимущества протокола L2TP:
-
Разнообразие протоколов. Так как используется кадрирование PPP, удаленные пользователи могут использовать для доступа к корпоративому узлу большое количество различных протоколов, таких как IP, IPX и т.д.
-
Создание туннелей в различных сетях. L2TP может работать как в сетях IP, так и в сетях ATM, Frame Relay и др.
-
Безопасность передачи данных. При этом, пользователь не должен иметь никакого специального программного обеспечения.
-
Возможность аутентификации пользователей.
IPSec
IPSec (IP Security) - набор протоколов, касающихся вопросов обеспечения защиты данных при транспортировке IP-пакетов. IPSec также включает в себя протоколы для защищённого обмена ключами в сети Интернет. Протоколы IPSec работают на сетевом уровне (уровень 3 модели OSI).
Internet-протокол (IP) не имеет средств защиты передаваемых данных. Он даже не может гарантировать, что отправитель является именно тем, за кого он себя выдает. IPSec представляет собой попытку исправить ситуацию. При использовании IPSec весь передаваемый трафик может быть защищен перед передачей по сети. При использовании IPSec получатель сообщения может отслеживать источник полученных пакетов и удостовериться в целостности данных. Необходимо быть уверенным в том, что транзакция может осуществляться только один раз (за исключением случая, когда пользователь уполномочен повторять ее). Это означает, что не должно существовать возможности записи транзакции и последующего ее повторения в записи с целью создания у пользователя впечатления об осуществлении нескольких транзакций. Представьте себе, что мошенник получил информацию о трафике и знает, что передача такого трафика может дать ему какие-то преимущества (например, в результате на его счет будут переведены деньги). Необходимо обеспечить невозможность повторной передачи такого трафика.
С помощью виртуальной частной сети (VPN) можно решать следующие прикладные задачи:
- Виртуальная частная сеть между организациями
- Мобильный пользователь
- Пользователь SOHO
IPSec VPN оптимален для объединения сетей разных офисов через Интернет.
Можно устанавливать VPN-соединение с использованием протокола IPSec.
Для пользователей SMB/SOHO (Малый бизнес/Малый офис/Домашний офис):
- Экономическая эффективность
- Законченное решение для коммерческого использования
Для дистанционных пользователей:
- Интегрированное безопасное решение
- Нет необходимости в дополнительном программном обеспечении
- Простота конфигурирования
Для коллективных пользователей:
- Экономически эффективное решение для дистанционных пользователей и филиалов
- Совместимость с решениями большинства поставщиков решений для виртуальных частных сетей.
Существует две разновидности протокола IPSec: ESP (Encapsulation Security Payload, инкапсуляция защищенных данных) и AH (Authentication Header, Аутентифицирующий заголовок). ESP и AH - новые протоколы IP. О том, что пакет является пакетом ESP, говорит значение в поле протокола заголовка IP, равное 50, а для пакета AH - равное 51.
В пакетах ESP и AH между заголовком IP (IP header) и данными протокола верхнего уровня вставляется заголовок ESP/AH (ESP/AH header).
ESP может обеспечивать как защиту данных, так и аутентификацию, а также возможен вариант протокола ESP без использования защиты данных или без аутентификации. Однако, невозможно использовать протокол ESP одновременно без защиты данных и без аутентификации, поскольку в данном случае безопасность не обеспечивается. При осуществлении защиты передаваемых данных заголовок ESP не защищен, но защищены данные протокола верхнего уровня и часть трейлера ESP.
А в случае аутентификации производится аутентификация заголовка ESP, данных протокола верхнего уровня и части трейлера ESP.
Хотя протокол AH может обеспечивать только аутентификацию, она выполняется не только для заголовка AH и данных протокола верхнего уровня, но также и для заголовка IP.
Протоколы семейства IPSec могут использоваться для защиты либо всех полезных данных IP-пакета, либо данных протоколов верхнего уровня в поле полезных данных IP-пакета. Это различие определяется выбором двух различных режимов протокола IPSec: транспортного режима или туннельного режима.
Транспортный режим в основном используется хостом IP для защиты генерируемых им самим данных, а туннельный режим используется шлюзом безопасности для предоставления услуги IPSec другим машинам, не имеющим функций IPSec. Однако функции хоста IPSec и шлюза безопасности могут выполняться одной и той же машиной. Оба протокола IPSec, AH и ESP, могут выполняться в транспортном или туннельном режиме.
SSL VPN
SSL (Secure Socket Layer) протокол защищенных сокетов, обеспечивающий безопасную передачу данных по сети Интернет. При его использовании создается защищенное соединение между клиентом и сервером.
SSL использует защиту данных с открытым ключом для подтверждения подлинности передатчика и получателя. Поддерживает надёжность передачи данных за счёт использования корректирующих кодов и безопасных хэш-функций.
SSL использует RC4, MD5, RSA и другие алгоритмы защиты данных.
SSL использует два ключа для защиты данных - открытый ключ и закрытый или частный ключ известный только получателю сообщения.
На сегодняшний день, в сети Интернет можно встретить множество сайтов на которых используется протокол SSL для обеспечения безопасности пользовательских данных (например, веб-сайты предоставляющие коммерческие и банковские сервисы). Практически все самые популярные браузеры, почтовые клиенты и интернет-приложения поддерживают работу с протоколом SSL. Для доступа к страницам, защищённым протоколом SSL, в URL вместо обычного префикса http, как правило, применяется префикс https (порт 443), указывающий на то, что будет использоваться SSL-соединение.
SSL также может обеспечить защиту протоколов прикладного уровня (уровень 7 модели OSI), например, таких как POP3 или FTP. Для работы SSL требуется, чтобы на сервере имелся SSL-сертификат.
Безопасное соединение между клиентом и сервером при использовании SSL выполняет две функции - аутентификацию и защиту данных.
SSL состоит из двух уровней. На нижних уровнях (уровни 4-5) многоуровневого транспортного протокола (например, TCP) он является протоколом записи и используется для инкапсуляции (то есть формирования пакета) различных протоколов. Для каждого инкапсулированного протокола он обеспечивает условия, при которых сервер и клиент могут подтверждать друг другу свою подлинность, выполнять защиту передаваемых данных и производить обмен ключами, прежде чем протокол прикладной программы начнет передавать и получать данные.
Преимущества протокола SSL:
- Простота использования
- Нет необходимости в дополнительном программном обеспечении
- Безопасный удаленный доступ
SSL VPN оптимален для подключения удаленных пользователей к ресурсам локальной сети офиса через Интернет.