Ручная сборка strongSwan
Здесь описывается ручная установка и сборка strongSwan под Debian 11 на собственном опыте. Установка производилась на чистый сервер, обновленный до последних компонентов.
Ручная сборка понадобилась исключительно с целью установки плагина coupling
, предназначенного для ограничения
набора сертификатов, которые могут быть авторизованы на соединение с VPN. К сожалению, это можно сделать только
ручной пересборкой strongSwan. Подробнее о плагине.
1. Загрузка и установка strongSwan
Скачиваем с сайта последнюю стабильную версию strongSwan. На момент написания статьи это 5.9.5.
wget https://download.strongswan.org/strongswan-5.9.5.tar.bz2
Распаковываем tar’ом, переходим внуть созданного каталога:
tar xjf strongswan-5.9.5.tar.bz2
cd strongswan-5.9.5
Для того чтобы была возможность использования более широкого круга криптоалгоритмов, в частности, блока ECP256
(эллиптические кривые для установления соединения с устройствами Apple), понадобится плагин OpenSSL для strongSwan,
а ему, в свою очередь, библиотеки libcrypto
и libgmp
. Добавляем их:
apt install libssl-dev libgmp-dev
Пришло время сконфигурировать будущую сборку. С помощью ключей --enable
и --disable
настраивается набор плагинов.
Подробнее о настройке и о плагинах.
Обратите внимание, что добавляется coupling
, ради которого все и затевалось, и openssl
. Конфигурируем, запуская
соответствующий скрипт:
./configure --prefix=/usr --sysconfdir=/etc --enable-coupling --disable-vici \
--disable-des --enable-aesni --disable-cmac --disable-curve25519 --enable-gcm \
--enable-openssl
После успешной конфигурации собираем и устанавливаем:
make
make install
2. Настройка “coupling”
Плагин, как было сказано, предназначен для ограничения списка сертификатов, которым доступ на сервер открыт. Список будет храниться в отдельном файле и может содержать некоторое максимальное количество записей, задаваемое в настройках. Если список еще не заполнен до максимума, будет разрешен доступ всем клиентам с подтвержденными (подписанными) сертификатами. При этом, все новые сертификаты будут в список добавляться до достижения максимума, после чего всем новым клиентам, не нажодящимся в списке (даже с подписанными сертификатами) доступ на сервер будет закрыт.
Максимальное количество записей в файле и местоположение файла со списком необходимо указать в настройках плагина в
файле /etc/strongswan.d/charon/coupling.conf
. Например, можно настроить так:
file = /etc/ipsec.d/coupled.certs
max = 4
3. Проверка запуска strongSwan
Разрешаем сервис, обеспечивающий запуск strongSwan’а:
systemctl ebable strongswan-starter
Перезапускаем сервер командой reboot
и проверяем результат командой:
ipsec statusall
На этом установка strongswan’а завершена, можно переходить к следующей фазе.