На
ранних этапах разработки протокола TCP/IP очень мало внимания уделялось
обеспечению безопасности связи между одноранговыми устройствами. Однако по мере
развития сетей реализация эффективной защиты передаваемых данных стала
актуальной задачей. Требовалась разработка некоторого стандарта или концепции,
способной решить эту задачу. В результате, появились стандарты защищённых
протоколов, в числе которых и IPsec. Набор протоколов IPSec предлагает механизм защищенной передачи
данных в IP-сетях, обеспечивая конфиденциальность, целостность и достоверность
данных, главным образом, благодаря поддержке базовых протоколов. IPSec по-прежнему остается ключевой структурой
для защиты данных; компоненты IPSec были интегрированы в стандарты
протокола TCP/IP следующего поколения.

•IPSec
(Internet
Protocol Security, IPSec)
– это набор протоколов, разработанных рабочей группой IETF, для обеспечения
защиты данных, передаваемых по межсетевому протоколу IP, путем аутентификации
и/или шифрования каждого IP-пакета сеанса связи. Две взаимодействующие стороны
могут выполнять шифрование данных и/или выполнять аутентификацию данных с
IP-уровня, чтобы обеспечить конфиденциальность данных, целостность и
доступность сервисов.
•Конфиденциальность
данных – это услуги, которые обеспечивают защиту данных на прикладном уровне от
их неполномочного раскрытия. Конфиденциальность потока трафика – это услуга,
которая используется для сокрытия адресов источника и пункта назначения, длины
сообщения или частоты связи.
•Целостность
данных – это услуги, которые
предотвращают активные угрозы. IPSec
поддерживает две формы обеспечения целостности данных: без установления
соединения и частичная целостность последовательности. Целостность без
установления соединения – это сервис, который позволяет обнаружить изменение
отдельной IP-датаграммы,
без учета порядка датаграммы
в потоке трафика. Частичная целостность последовательности, предлагаемая в IPSec,
- это anti-reply сервис,
с
помощью которого определяется получение дубликатов IP-датаграмм
(в пределах ограниченного окна). В отличие от этих форм, целостность в режиме с
установлением соединения предъявляет более строгие требования к
последовательности трафика, например, для обнаружения потерянных или
пересортированных сообщений. Хотя сервисы аутентификации и проверки целостности
часто упоминаются отдельно, на практике они тесно взаимосвязаны и работают
последовательно друг за другом.
•Доступность,
как сервис безопасности, позволяет решить проблемы безопасности, связанные с
атаками на сеть, которые приводят к отказу или ухудшению качества обслуживания.
Например, в контексте IPSec
использование механизмов anti-replay
в базовых протоколах, в частности AH и ESP, обеспечивает защиту от атак,
инициируемых злонамеренными пользователями, путем повторной отправки
перехваченных пакетов.

•IPSec
использует два протокола для обеспечения безопасности трафика: заголовок
аутентификации (AH) и безопасная инкапсуляция полезной нагрузки (ESP).
Заголовок IP-аутентификации (AH) обеспечивает целостность без установления
соединения, аутентификацию источника данных и дополнительный сервис защиты от
повторного воспроизведения. Протокол ESP позволяет обеспечить
конфиденциальность данных (шифрование) и конфиденциальность ограниченного
потока трафика.
•ESP
дополнительно обеспечивает конфиденциальность трафика. Уровень
конфиденциальности частично зависит от используемого алгоритма шифрования,
который может принимать три основные формы.
ESP также может дополнительно предоставлять аутентификацию, однако
аутентификация, предлагаемая ESP, является более узкой, чем AH, поскольку
внешний IP-заголовок (туннельный режим) и ESP-заголовок защищены/не защищены
при аутентификации ESP.
•Стандарт
шифрования данных с блочной передачей зашифрованного текста (DES-CBC) является
алгоритмом симметричного шифрования на секретном ключе, который использует
размер ключа 64 бита, но он обычно известен как 56-битный ключ, поскольку ключ
имеет 56 значащих битов; младший бит в каждом байте – это бит четности. Его
использование сегодня ограничено из-за появления атак методом перебора в
течение значительно ограниченного периода времени. Стандарт тройного шифрования
данных (3DES) - это 168-битный алгоритм шифрования, который включает в себя
итерацию процесса DES с добавлением вектора инициализации (IV) – значения,
используемого для маскировки шаблонов в зашифрованных данных, в целях улучшения
общей конфиденциальности данных. Расширенный стандарт шифрования (AES)
поддерживает шифрование до 256 бит, и снова использует CBC и IV для усиления
шифрования. По мере усложнения шифрования увеличивается и время обработки,
необходимое для шифрования и дешифрования.
•AH
поддерживает алгоритм MD5, который принимает на входе сообщение произвольной
длины и выдает на выходе 128-битный «отпечаток» или «профиль сообщения», в то
время как SHA-1 на выходе выдает 160-битный профиль сообщения. SHA-2 – это
следующее поколение алгоритмов аутентификации для расширения механизма
безопасной аутентификации, разработанных после обнаружения определенных слабых
мест в SHA-1.
•Термин
SHA-2 официально не определен, но обычно используется для обозначения
совокупности алгоритмов SHA-224, SHA-256, SHA-384 и SHA-512. VRP, в настоящее
время поддерживаемый AR2200E, обеспечивает поддержку только SHA-256, SHA-384 и
SHA-512, где в качестве значения используется битовая длина профиля.

•Security
Association (SA) –
это соединение, устанавливаемое в одном направлении,
предоставляет службы обеспечения безопасности трафика, который передаётся через
него. Каждое соединение SA реализует один
режим и протокол; таким образом, если для одного пакета необходимо использовать
два протокола (как например, AH и ESP), то требуется два SA.
Чтобы обеспечить безопасную двунаправленную связь между двумя хостами или двумя
шлюзами безопасности, как показано в примере, требуются два соединения SA
(по одному в каждом направлении).
•IPSec
SA устанавливаются либо в ручном режиме, либо в режиме согласования IKE
(протокол обмена ключами). При создании SA в ручном режиме необходимо, чтобы
вся информация, например, параметры были настроены вручную. Однако SA,
установленные в ручном режиме, никогда не устаревают. Установка SA с
использованием режима согласования IKE проще, поскольку данные о согласовании
IKE должны быть сконфигурированы только на двух узлах, а SA создаются и
поддерживаются посредством согласования IKE. Сложность, главным образом,
заключается в самом процессе автоматического согласования IKE (подробно не
рассматривается здесь). SA, установленные в режиме согласования IKE, имеют
время жизни по времени или на базе трафика. При достижении указанного времени
или объема трафика SA становится недействительным. Когда срок действия SA истекает,
IKE согласовывает новый SA.

•Транспортный
режим –
это соединение SA между
двумя хостами. В IPv4 заголовок протокола безопасности транспортного режима
вставляется сразу после IP-заголовка
и
перед
заголовками протоколов верхнего уровня (например,
TCP или UDP). В транспортном режиме протоколы обеспечивают защиту, главным
образом, для протоколов верхнего уровня. Заголовок AH или ESP вставляется между
IP-заголовком и заголовком протокола транспортного уровня. В случае ESP
транспортный режим SA предоставляет услуги безопасности только для этих
протоколов более высокого уровня, а не для IP-заголовка или каких-либо
расширенных заголовков, предшествующих заголовку ESP. В случае AH защита также
распространяется на выбранные поля IP-заголовка, а также на выбранные
параметры.

•В
контексте IPSec
использование ESP в туннельном режиме, особенно на шлюзе безопасности, может
гарантировать некоторый уровень конфиденциальности потока трафика. Адрес
источника и адрес пункта назначения во внешнем IP-заголовке определяют конечные
точки туннеля. Адреса источника и пункта назначения во внутреннем IP-заголовке
идентифицируют исходного отправителя и получателя датаграммы
(с точки зрения данного туннеля) соответственно.
•Внутренний
IP-заголовок не изменяется, кроме как для уменьшения TTL, и остается неизменным
во время его доставки к точке выхода из туннеля. Во время доставки
инкапсулированной датаграммы
через туннель не происходит никаких изменений в IP-параметрах или заголовках
расширений. Перед исходным IP-заголовком вставляется заголовок AH или ESP, а
новый IP-заголовок вставляется перед заголовком AH или ESP.
•В
приведенном примере показан туннельный режим IPSec
во время передачи пакетов по протоколу TCP. Если AH также применяется и к
пакету, то он применяется к заголовку ESP, полезной нагрузке пакета, хвосту ESP
и данным аутентификации ESP (ICV), если такие поля присутствуют.

•Для
реализации виртуальной частной сети (VPN) IPSec
необходимо проверить достижимость на сетевом уровне между инициатором и
получателем, чтобы проверить наличие связи без использования IPSec
перед созданием туннеля IPSec
VPN. Правила целостности или конфиденциальности применяются не ко всему трафику
и, поэтому, чтобы определить интересующий трафик, за который будет отвечать IPSec,
необходимо применить фильтрацию трафика к потоку данных. Поток данных
представляет собой совокупность трафика, который может быть идентифицирован по
адресу/маске источника, адресу/маске пункта назначения, номеру протокола,
номеру порта источника и номеру порта пункта назначения. При использовании VRP
потоки данных определяются с помощью групп ACL. Потоком данных может быть одно
TCP-соединение между двумя хостами или весь трафик между двумя подсетями.
Первый шаг конфигурирования IPSec
заключается в определении этих потоков данных.
•Предложение
IPSec
определяет протокол безопасности, алгоритм аутентификации, алгоритм шифрования
и режим инкапсуляции для защищаемых потоков данных. Протоколы безопасности AH и
ESP могут использоваться независимо или вместе. AH поддерживает алгоритмы
аутентификации MD5, SHA-1 и SHA-2. ESP поддерживает три алгоритма
аутентификации (MD5, SHA-1 и SHA-2) и три алгоритма шифрования (DES, 3DES и
AES). IPSec
также поддерживает транспортный и туннельный режим инкапсуляции. Для передачи
одного и того же потока данных одноранговые узлы с обеих сторон туннеля
безопасности должны использовать один протокол безопасности, алгоритм
аутентификации, алгоритм шифрования и режим инкапсуляции. Для реализации IPSec
между двумя шлюзами рекомендуется использовать туннельный режим для защиты
фактически используемых IP-адресов источника и пункта назначения.
•Политика
IPSec
определяет протокол безопасности, алгоритм аутентификации, алгоритм шифрования
и режим инкапсуляции для потоков данных путем обращения к предложению IPSec.
Для однозначного определения политики IPSec
используется имя и порядковый номер. Политики IPSec
подразделяются на политики IPSec,
используемые для установки SA вручную, и политики IPSec,
используемые для установки SA путем выполнения согласования IKE.
•Для
конфигурирования политики IPSec,
которая используется для установления SA вручную, необходимо указать ключ и
SPI. Если сконфигурирован туннельный режим, также необходимо установить
IP-адреса для двух конечных точек туннеля безопасности. Для конфигурирования
политики IPSec,
которая используется для установления SA путем согласования IKE, такие
параметры, как ключ и SPI, устанавливать не нужно, так как они генерируются
автоматически при согласовании IKE. Политики IPSec
с одним именем, но с разными порядковыми номерами составляют группу политик IPSec.
•В
группе политик IPSec
политика IPSec
с меньшим порядковым номером имеет более высокий приоритет. После применения
группы политик IPSec
к интерфейсу все политики IPSec
в группе будут применены к данному интерфейсу. Это позволяет использовать
разные SA для различных потоков данных.