7

У меня есть некоторые вопросы (вопросы), связанные с реализацией ядра Linux в IPsec и его пользовательским интерфейсом.

  1. Самый большой вопрос - какой официальный проект по внедрению Linux Kernel IPsec? Из того, что я понял, реализация является форком проекта Kame, но друг сказал, что это не так. Какой у них официальный сайт и репо?
  2. Где в источнике документации ядра я могу найти некоторые заметки?
  3. Какой пользовательский интерфейс используется чаще всего? ip-tools или пакет iproute2? У этих двух одинаковый подход, или у одного из них большие накладные расходы?
  4. Из того, что я видел, учебные пособия по транспортному режиму IPsec iproute2 относятся к утилите "setkey" для загрузки файла конфигурации. "Setkey" на самом деле используется для пакета iproute2, или меня вводят в заблуждение? "Setkey" приклеен к "racoon" из ip-tools, или это обычное приложение для загрузки конфигурации? Что на самом деле делает "setkey" (я очень смущен этим)?

1 ответ1

15
  1. Стек IPsec, интегрированный в ядро Linux начиная с версии 2.6 (NETKEY), изначально был основан на стеке KAME (по крайней мере, в отношении API). Исходный код является частью репозитория ядра, где основные компоненты находятся в папке net/xfrm , включая реализацию интерфейса конфигурации Netlink/XFRM. Альтернативная и стандартизированная (но несколько расширенная) реализация интерфейса PF_KEYv2 находится в папке net/key .
  2. Там не так много документации. Но проверьте папку Documentation/networking .
  3. Если вы выполняете ручную настройку безопасности и политик IPsec (ручное управление ключами), я бы порекомендовал iproute2 . Он использует более мощный интерфейс Netlink/XFRM, и пакет устанавливается в большинстве дистрибутивов по умолчанию. Но обычно вы используете автоматический ключ, предоставляемый демоном IKE пользователя, таким как strongSwan, Open/libreswan или racoon (ipsec-tools), так что вам не нужно вручную устанавливать SA и политики, и вы получаете эфемерные ключи шифрования / целостности установлено через Диффи-Хеллмана во время IKE. Также возможно регулярное автоматическое согласование новых ключей, которое называется rekeying.
  4. setkey предоставляется пакетом ipsec-tools для ручного ввода, никакого отношения к пакету iproute2 нет . С iproute2 вы будете использовать команду ip xfrm для ручной настройки SA и политик. Обе команды напрямую взаимодействуют с SAD и SPD (см. RFC 4301) в ядре, чтобы вручную управлять SA и политиками IPsec. setkey , как racoon и другие BSD-инструменты, использует интерфейс PF_KEYv2, поэтому он менее мощный, чем команда ip xfrm . Например, расширенные порядковые номера или метки не могут быть настроены с помощью PF_KEYv2 в Linux.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .