Вышла новая версия strongSwan, реализации IPsec для Linux, FreeBSD, Android, Windows и Mac OS X. IPsec — это набор протоколов для реализации защищенной передачи данных по протоколу IP, который чаще всего используется для создания VPN-сетей.
IPsec состоит из двух частей: протокол обмена ключами IKE и протокол передачи шифрованного трафика ESP. strongSwan реализует протоколы IKEv1 и IKEv2, а реализация ESP находится в ядре ОС, благодаря чему достигается высокая производительность работы VPN. Если ядро не поддерживает ESP (как, например, в случае Android), strongSwan использует внутреннюю реализацию в пространстве пользователя.
strongSwan является форком другого проекта, FreeS/WAN, одной из первых реализаций IPsec в Linux. В пятой версии strongSwan был переписан практически с нуля с оглядкой на современные стандарты, что выгодно отличает его от других форков FreeS/WAN.
Основные изменения:
- Поддержка IKEv2 redirection. Если сервер перегружен или находится на обслуживании, он может перенаправить клиентов на другой IKE-сервер.
- Исправлена передача виртуальных IPv6, что потребовало изменения формата передачи. strongSwan может принимать сообщения в старом формате, но передача параметров в новом формате на старые версии клиентов может вызвать проблемы.
- Теперь можно управлять сервисом с помощью протокола vici из программ на Perl. Ранее данная функциональность была реализована для Python и Ruby.
- При использовании в Linux появилась возможность перенаправлять трафик в VPN только для определенных портов. Из-за ограничений ядра можно указывать исключительно такие диапазоны портов, которые можно представить в виде маски. Данную функцию можно настраивать в том числе и с помощью интерфейса vici.
- Изменены параметры шифрования, которые strongSwan предлагает по умолчанию. Теперь это симметричное шифрование со 128-битным ключом, группы DH ecp256 или modp3072 и SHA2 для подписи. Для корректной работы новых настроек нужно ядро версии 2.6.33 или новее.
- Группы DH отображаются в выводе ipsec statusall.
- Идентификаторы SPI теперь отображаются с использованием сетевого порядка байт
- Интерфейсы vici и swanctl включены по умолчанию. Различные улучшения в swanctl.
- Библиотека libhydra убрана из поставки. Теперь за взаимодействие с ядром отвечает libcharon.
>>> Подробности