Поездки

Введение в IPsec VPN на мобильных телефонах

Рамон Арджона (Ramon Arjona)

Днем я время вне офиса, выдается сообщение электронной почты на своем телефоне. Сообщение было ссылку на документ, я предполагалось чтения--документ на узле SharePoint, доступны только через интрасети моей компании. Это было bummer, поскольку МНЕ пришлось ждать, пока я может срабатывать до мой переносной компьютер, поместить мою смарт-карту в устройство чтения смарт-карт, получить подключение Wi-Fi кафе, подключиться мой переносной компьютер к корпоративной виртуальной частной сети и войдите в систему перед я может прочитать документ.

Жизнь бы гораздо проще, если по телефону может просто используется для доступа к веб-узлу SharePoint. Конечно мой телефон потребуются некоторые magic способ безопасного подключения к корпоративной сети и проверки подлинности меня. Другими словами как мой переносной компьютер мой телефон потребуется возможность запуска VPN-подключение к сети. Многие коммерческие телефонной модели, включая телефоны Windows поставляются с VPN-клиент в. Но существуют недостатков в наиболее широко доступны VPN-клиентов, поскольку они основаны на версии 1 спецификации, называемый обмен ключами в Интернете (IKEv1). IKEv1 стабильной входит платформы IPsec и хорошо подходит для проводных устройств или устройств, таких как переносные компьютеры с относительно большой батарей, не перемещать вокруг слишком много. Однако не идеальным средством для мобильных телефонов.

Конечно я использую беспроводного подключения на моем переносном компьютере для перейти от моего office конференц-зале и обратно. Я может перейти от беспроводного подключения к проводной сети один и ожидать потеря связи. Но мы не перемещать почти столько на переносном компьютере как мы с телефоном. На телефон перемещается с можно через трафика и и вне зданий, переходит в и из перемещаемых состояние. Если сотовым модемом, при был в последний раз переносной сказали вам его перемещаемый? Как правило телефона изменяет его точку сети вложение с частотой и сложности, переносной компьютер никогда не приходится беспокоиться о. Ребята, думали о спецификации IKEv1 пришлось беспокоиться о сценариях мобильного телефона, поскольку в позднее 1990s, когда был записываемая RFC 2409, смарт-телефоны просто не распространенных на рынке. С того момента skyrocketed использование мобильных телефонов и важность мобильного телефона началась для подход важность других, больше вычислительных устройств, как рабочая станция или переносной компьютер.

IKEv1 не подходит стилю высоко мобильных вычислений, поскольку IKEv1 не имеет хороший способ справиться с узла, который может изменить свою точку сети вложение несколько раз в несколько секунд. При drafted IKEv2 был набор расширения, называемые мобильных устройств и многосетевых (MOBIKE) протокол был также drafted в соответствии с мобильного телефона сценарий. Используя эти расширения, 2009a мобильного телефона VPN становится гораздо более удобными. Некоторые продукты на рынок поддерживает IKEv2 MOBIKE, включая Microsoft системы центр мобильных устройств диспетчер (SCMDM).

В этой статье я расскажу некоторые из основ технологии IKEv2 и MOBIKE. Я предполагаю, вам приходилось IPv4 и сети некоторые Знакомство с мобильных телефонов и понимания криптографии. В данной статье не будет охватывать IPsec подробно и не собирается рассматриваются другие виды технологии VPN, такие как VPN на основе SSL. Также не обсуждаются IPv6. IKE и IPsec, расширения для IPv4, но они baked в IPv6, поэтому некоторые вещи, мы будем касания здесь будет применимо сети IPv6. Однако IPv6 представляет достаточно сложности и новые термины, он бы возможность Титульная страница достаточно подробно.

Произнесите ‘ AH нигде

Трех протоколов составляют основу IPsec: Заголовок проверки подлинности (AH), инкапсулирующий Security Payload (ESP) и IKE. Чтобы устранить IKE, требуется обсудить AH и ESP.

В двух словах AH гарантирует, что мы отправить пакеты не подделаны. Защищает целостности наши пакетов. AH также гарантирует, что пакеты передаются из whomever якобы, было отправлено их. Это гарантирует подлинность наши пакетов. AH, однако нет единица конфиденциальности или шифрования. Взломщик, получивший доступ к сети по-прежнему может прослушивания пакетов, которые защищены по AH и извлечь их содержимое. Он, однако, сможет маскируются под одним из стороны прошедшего проверку подлинности, ни возможность изменять наши пакеты при передаче. AH определен в RFC 4302.

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

В режиме транспорта или туннеля режиме можно использовать AH. В режиме транспорта защищен полезных данных пакетов и пакеты маршрутизируются непосредственно от одного узла на другой. Туннельный режим AH защищена весь пакет и пакеты маршрутизируются с одной стороны IPsec «туннель»в другой. Туннелирование осуществляется путем инкапсуляции исходного пакета. Либо конце туннеля — это шлюз безопасности. Шлюз, отправки пакета отвечает для инкапсуляции пакета, добавив «внешние»Заголовка IP и адресов. Внешний адрес направляет пакет шлюз безопасности на другом конце туннеля. Шлюз, который получает пакет отвечает за обработку AH, чтобы определить этот пакет от допустимого отправителя и еще не был подделан, а затем направляет пакета к конечной точке.

Режим транспорта AH добавляется в пакет сразу после заголовка IP. AH предшествует следующий протокол уровня в пакете (например, UDP или TCP) и также перед заголовками IPsec в пакете, такие как заголовок ESP. Заголовок IP, который предшествует AH должен иметь значение 51, являющийся магическое число назначенных IANA AH сообщает приложения обработки пакетов на следующем этапе будет увидеть, что AH. На рис. 1 показана фигура пакета после наличие AH, добавленные к ней.

В туннельном режиме AH добавляется после нового заголовка IP. Инкапсулированного заголовка IP рассматривается как часть полезных данных вместе с все остальное. Это показано на рис. 2. Первые 8 бит пакет защищен AH укажите идентификатор протокола полезных данных, поставляемых после AH. Это сообщает получатель чего ожидать после полезных данных AH. Например если следующий уровень протокол TCP, идентификатор протокола будет устанавливаться на 6. Это поле называется далее заголовка. (Вы может интересно, почему он не называется протокол согласовано с другие заголовки IPv4. Причина заключается в согласованности и совместимость с IPv6. К счастью не действительно необходимо знать многое о IPv6, чтобы понять, как работает AH сети IPv4, но если интересно, почему он называется следующий заголовок, вот почему.)

Далее поставляется длину 7-разрядные полезных данных AH. Поскольку есть только 7 бит, размер полезных данных ограничена 128 байт. Затем поставляется длинную строку нулей — 2 байта из них, на самом деле. Эти 2 байта зарезервированы для использования в будущем в соответствии с RFC, поэтому до, определяется использования в будущем, у нас есть 2 байта пустой, просто вместе для аттракциону.

Выполните эти 2 байта является индексом параметров безопасности (SPI). Это — 32-разрядное число, которое используется для определения какие IPsec сопоставление безопасности (SA)) связан AH. Я расскажу подробно о SA при обсуждаются IKEv2. Это число сопровождается последовательности 32-разрядное число, которое увеличивается с каждой пакеты, отправленные и используется для предотвращения атак.

После последовательности номер поставляется значение проверки целостности проверить значение (ПОДЛИННОСТИ). Значение проверки ПОДЛИННОСТИ вычисляется в отправителя путем применения функции хэширования, такие как SHA-2 к заголовок IP, the AH и полезных данных. Получатель проверяет, что пакет еще не подделано, применяя те же функции хэширования и подтверждения того же хэш-код создается.

Установить ESP

Как AH ESP (Encapsulating Security Payload) обеспечивает проверку целостности и подлинности. В отличие от AH однако ESP обеспечивает проверку подлинности и целостности только для полезных данных пакета, но не для заголовка пакета. ESP может также использоваться для обеспечения конфиденциальности путем шифрования полезных данных пакетов. В теории ESP эти возможности могут быть включены независимо, поэтому возможно требуется шифрование без проверки подлинности и целостности или для проверки целостности и подлинности без шифрования. На практике Однако одним без другой не сделать значительную смысл. Например зная, что сообщение был отправлен мне конфиденциальность не сделать мне все хорошо, если я также невозможно полностью, что кто отправил. ESP определяется в RFC 4303.

В туннельный режим или режим транспорта ESP как AH, может быть включен. Заголовок ESP должен быть вставлен после AH. В режиме транспорта ESP шифрование полезных данных IP-пакетов. Туннельный режим ESP рассматривает весь пакет инкапсулированные как полезных данных и шифрует его. Это показано на рис. 3.

Алгоритм шифрования выбирается в процессе согласования между сторонами подключения, сопоставление безопасности IPsec. Стандарт расширенного шифрования (AES) — общие Выбор алгоритм шифрования для современных реализаций. Конечно для использования шифрования AES, следует сначала создать общий секрет для двух узлов, которые запуска безопасного подключения. Вручную предоставление общий ключ узла является нецелесообразным подходом, поскольку не масштабирования, но обмен ключами Диффи Хелмана (DH) можно использовать для подготовки секретный код.

Группы Диффи Хелмана

DH является протокол, позволяющий две стороны используют общий секрет по незащищенному каналу и является неотъемлемой частью согласования, расположенное в IKE. Общий секрет, передается через Диффи-ХЕЛМАНА может использоваться для создания коммуникационный канал, надежно шифруются. Математические, переходит в Диффи-ХЕЛМАНА сложен и не я перейдет в его здесь подробно. Если вы заинтересованы в дополнительные о нем, проверьте ресурсы, которые охватывают модульной экспоненциальное группы (MODP) и их приложение Диффи-ХЕЛМАНА. Для наших целей его достаточно сказать, что группа Диффи-ХЕЛМАНА определенной коллекции чисел с математических связь и идентификатором уникальной группы

Группа Диффи-ХЕЛМАНА, задается при безопасное подключение устанавливается с помощью IPsec, во время согласования IKE. В это согласование сторонах попытка установить безопасное подключение необходимо найти группу Диффи-ХЕЛМАНА, которые они поддерживают. Группы Диффи-ХЕЛМАНА с более высоким идентификатором имеют более Криптографическая надежность. Например первой группы Диффи-ХЕЛМАНА, вызываются в исходной спецификации IKE было о же Криптографическая надежность как симметричный ключ с между 70 и 80 бит. С появление надежные алгоритмы шифрования, такие как AES больше стойкость потребовалось из групп Диффи-ХЕЛМАНА для предотвращения становится слабым звеном в цепочке криптографических группы Диффи-ХЕЛМАНА. Таким образом новой группы Диффи-ХЕЛМАНА, указанные в RFC 3526 предоставлять оценка силы между 90 и 190 битов.

Недостатком эти новые группы Диффи-ХЕЛМАНА является то, что их больше стойкость поставляется по цене: Надежные группы больше времени обработки является обязательным. Это является одной из причин, почему коллег необходимо согласовать взаимно допустимых DH-группа. Например мой телефон может не иметь достаточное питание обработки дело DH-группа 15, поэтому он хочет поддерживает только DH-группа 2. При попытке установления подключения IPsec к серверу, мой телефон предложит DH-группа 2, а если сервер поддерживает DH-группа 2, группы будет использоваться — даже если сервер мог бы использовать потенциально более сильная группа Диффи-ХЕЛМАНА. Конечно Если на сторонах невозможно согласовать общей группы Диффи-ХЕЛМАНА, они не смогут взаимодействовать.

Это достаточно фона. Давайте поговорим о IKE.

LIKE IKE (и так следует)

IKE используется для установления подключения IPsec между сторонами подключения. Это подключение называется сопоставление безопасности (SA). Существует два типа сопоставления безопасности и IKE_SA CHILD_SA. IKE_SA настраивается первым. Это где через Диффи-ХЕЛМАНА согласовывается общего секрета, и где шифрования и хеширования алгоритмы также согласуются. CHILD_SA защищена которой сетевой трафик отправляется AH, ESP или оба.

Каждый запрос в IKE требует ответ, который упрощает удобно представить в терминах пар сообщений. Первое сообщение пары называется IKE_SA_INIT и используется для решить, какие криптографического алгоритма и Диффи-ХЕЛМАНА группы сторон подключения следует использовать. Поскольку криптография по-прежнему определяется во время этого обмена, эта пара сообщение не зашифровано. Следующая пара сообщений называется IKE_SA_AUTH. Этого обмена проверяет подлинность сообщения, отправленные во время IKE_SA_INT и подтверждает подлинность инициатор и респондент. Этот этап необходим потому что отправлено первое сообщение в незашифрованном виде--установления безопасного канала сторон подключения теперь требуется доказать друг с другом, они являются действительно, говорят, что они являются и что они действительно предназначен для запуска данного диалога. Обмен сообщениями IKE_SA_AUTH также устанавливает первый CHILD_SA которых часто только CHILD_SA создается между узлами.

CHILD_SA является подключение симплексный--или односторонние--, поэтому CHILD_SAs настраиваются всегда парами. При удалении одно сопоставление безопасности в паре другой также следует удалить. Обрабатывается в IKE через ИНФОРМАЦИЕЙ сообщения. На 4306 RFC информационное сообщение содержит ноль или несколько сообщений уведомлений, удаления или настройки. Предположим, что у нас есть инициатора, КОМПЬЮТЕРА и отвечающей сторон, на сервере. На КОМПЬЮТЕРЕ решает закрыть подключение CHILD_SA и завершить виртуальной частной сети. Он отправляет информационное сообщение с полезных данных удаления сервера, который определяет сопоставление безопасности для удаления по его SPI. Затем сервер удаляет входящего SA и отправляет ответ на компьютер для удаления его половину сопоставления безопасности. КОМПЬЮТЕР получает это сообщение и удаляет его половину сопоставления безопасности и все отлично.

Конечно вещи могут не всегда работать таким образом. Инициатором или ответчик может заканчиваться SA в a "половина закрыто"состояние, когда закрывается один член пары сопоставлений безопасности, но другой открыт. Стандарт указывает, что это аномальных условие, но не допускает для узла закрыть эти подключения половина открыть сам по себе. Вместо этого предполагается, что одноранговый узел удалить IKE_SA, если состояние подключения становится достаточно нестабильно--, но удалении IKE_SA CHILD_SAs, которые были созданы под ним alf. Любом случае будет неудобна на телефон, так как хранение CHILD_SA открыть будет потреблять нехватке системных ресурсов как необходимости разорвать и перестроить IKE_SA.

Кроме того возможна для одного узла в конце SA к исчезновению полностью, без сообщает системе с другой стороны сопоставления безопасности, хорошо. Это обстоятельств, особенно ошибкам возникать с мобильных телефонов. Например рассмотрим ситуацию, в котором мобильный телефон пользователя установила подключения IPsec VPN к серверу. Мобильный телефон пользователь переходит в подвала и теряет своей сигнала радио. Сервер не могло различить, что телефона исчезла в «черных дыр», поэтому он продолжает отправлять сообщения на CHILD_A, но не получает ответа. Было аналогично бы возможности телефона начинается отправка сообщения в «черных дыр» из-за маршрутизации проблемы сети сотовой связи. Все, что может привести к одного однорангового потерять путь другой может привести к этому условию, но затраты по телефону больше затрат на сервере за более нехватке ресурсов по телефону.

Почему такое это плохой Оторвите работы и перестроить сопоставления безопасности

Коротким ответом является разрыв и перестроение сопоставления безопасности использует дорогих ресурсов, по телефону не может позволить себе выкидывать. В частности ЦП потребляется при выполнении криптографических вычислений и во время радио используйте отправке и получении больших объемов данных, оба из которых стоимость батареи. Большой объем данных, передаваемых также потребляет пропускной способности, затраты денег — особенно в местах, где данные планы издержек по килобайт.

Так как отправка сообщения на радио затраты энергии и питания на телефоне ограничено, по телефону необходимо обнаружить эти ситуации «черных дыр» и работать с их сэкономить системные ресурсы. Обычно обрабатывается через процесс, называемый исчезновения узла определения (DPD), в котором однорангового узла, suspects, он может обращение к «черных дыр» отправляет сообщение требование концептуального liveness. Если цель этот запрос не отвечает за соответствующий период времени, отправитель может выполнить соответствующее действие удалить IKE_SA и высвободить ресурсы затраченное на него. В общем случае это предпочтительным для отправки сообщений DPD, только когда есть другой трафик, передаваемых через сопоставление безопасности и однорангового узла причина подозрения, что участнику на сопоставление безопасности больше не существует. Когда есть необходимость реализации DPD таким образом, он не смысла для подтверждения liveness однорангового узла, в настоящее время отправку другие виды сетевого трафика.

Другой ситуацию, которая может привести к неполадки на VPN-подключения — это узел изменять свой IP-адрес. IP-адрес узла используется вместе с SPI 32-разрядных идентификации конкретного узла и связать его с сопоставление безопасности. Если узлом теряет его IP-адрес, эту связь также теряется, а сопоставление безопасности должен быть разрыва и заново с новым IP-адресом.

Как мы сказал, это не объем проблемы с рабочего стола или переносных компьютеров. КОМПЬЮТЕР может потерять аренды DHCP и получить новый IP-адрес, но большинство реализаций DHCP сделать весьма вероятно, что компьютер будет назначен же IP-адрес имел. Другими словами настольных компьютеров не очень часто изменить IP-адреса. Переносные компьютеры, так как они мобильных устройств, изменять их позиций вложение сети и таким образом получить новый IP-адрес, принудительное все сопоставления безопасности, они имеют открыть уничтожается и создается заново. Однако скорость, перейти переносных компьютеров IP-адресов является по-прежнему относительно редко, по сравнению со скоростью, выполняет на телефон. Например телефонной, обладающее способностью передавать данные через Wi-Fi и сотовыми каналов переключение сети каждый раз пользователь просматривает внутри или вне ее построение office по телефону изменения из Wi-Fi подключений GPRS и обратно снова. В отличие от перемещения office построения, который может оставаться в той же сети связи и таким образом будут иметь topologically правильный сетевой адрес без изменений, переносной компьютер телефона переключил между сетями принципиально разных так практически гарантируется изменение IP-адреса. В результате прерванных подключение по телефону происхождении переадресуемое между сетями. То же самое может произойти при телефон сотовые сети отдельно. По телефону может перемещаемый режим и переключитесь из домашней сети внешнего сети, принадлежащих разных оператора мобильной связи. По телефону может перемещать из одной области покрытия в другую и становятся прикреплен к совершенно другой частью сети оператора мобильной связи.

Ряд любые другие причины, управляются оператора мобильной связи, способные вызвать прерванного подключения. Это часто разрыв и перестроение сопоставления безопасности сделает мобильных VPN intractable не были для расширения называется MOBIKE IKEv2.

MOBIKE

Протокол MOBIKE IKEv2 определен в RFC 4555. Она позволяет коллег в VPN IPsec для объявления, что они имеют несколько IP-адресов. Один из этих адресов, связанный с SA для этого узла. Если узел принудительно Переключение IP-адрес из-за изменений в сети вложения, один из ранее определенный IP-адреса или вновь назначенный адрес может быть местами в без необходимости разорвать и перестроить сопоставления безопасности.

Чтобы указать возможность использования MOBIKE, однорангового узла включает уведомления MOBIKE_SUPPORTED IKE_SA_AUTH обмена. Обмен IKE_AUTH также включает дополнительные адреса для инициатор и респондент. Инициатор — устройство, запущенную параметров VPN-отправки первого сообщения IKE и отвечает за принятия решений о котором IP-адресов из среди тех имеет доступные и предлагаются те к нему, отвечающая сторона.

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

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

Например когда инициатором видит, что изменилось его адрес, уведомляет ответчик этот факт с ИНФОРМАЦИЕЙ сообщения, которое содержит уведомления UPDATE_SA_ADDRESSES. Это сообщение использует новый адрес, запускающий также используется в сообщениях ESP однорангового узла. Получатель уведомлений обновления записи новый адрес и при необходимости проверяет возвращаемое routability убедитесь, что адрес принадлежит к мобильным узлом, как это затребовали. После этого отвечающая сторона запускается новый адрес для его исходящий трафик ESP.

Само собой инициатор и респондент не могут знать все адреса, он никогда не будет иметь в течение времени жизни сопоставления безопасности. Одноранговый узел может объявлять изменения в список адресов, она поддерживает информационное сообщение. Если узел имеет только один адрес, этот адрес в заголовке присутствует и сообщении содержится уведомление NO_ADDITIONAL_ADDRESSES. В противном случае если узел имеет несколько адресов, один из этих адресов помещается в заголовке данное ИНФОРМАЦИОННОЕ сообщение и остальных включаются в уведомления ADDITIONAL_IP4_ADDRESSES.

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

Заключение

Теперь необходимо иметь основную идею, как VPN IPsec с MOBIKE будет работать на мобильный телефон.

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

И затем I, вместе с все остальное, будет возможность просмотра корпоративных узлов SharePoint просто щелкнув ссылку на своем телефоне.

Специальные благодарности Мелиссе Джонсон за ее предложения и технической обзор этой статьи.

Рамон Арджона (Ramon Arjona) представляет интерес SDET в корпорации Майкрософт.