Системная служба strongSwan, charon и VICI¶
1. Управление службой¶
systemctl enable --now strongswan.service
systemctl status strongswan.service --no-pager
systemctl cat strongswan.service
pgrep -a charon
На испытанной системе запускается единственный /usr/libexec/strongswan/charon. Не запускайте отдельно charon из текущего каталога или другого комплекта strongSwan: процессы будут конкурировать за UDP 500/4500 и VICI.
2. Основные файлы и плагины¶
sed -n '1,180p' /etc/strongswan.conf
sed -n '1,140p' /etc/swanctl/swanctl.conf
journalctl -u strongswan.service -b --no-pager | grep 'loaded plugins:' | tail -n 1
Для уже установленного RPM, где плагины загрузились и swanctl --list-algs показывает ГОСТ, не нужно переписывать /etc/strongswan.conf. В проверенной конфигурации charon загружал random nonce x509 revocation curl pubkey pkcs1 pem openssl pkcs8 hmac kdf niceos-gost kernel-libipsec kernel-netlink socket-default vici. Для пользовательского ESP-пути kernel-libipsec.raw_esp = no и encap = yes создают ESP-in-UDP. Это профиль испытанной поставки, а не обязательный универсальный конфиг всех выпусков.
При адаптации сервера всегда сначала сохраняйте оригинал:
3. VICI¶
charon создаёт Unix-сокет /run/strongswan/charon.vici, через который swanctl загружает ключи, профили, CRL и управляет SA:
Если swanctl сообщает connecting to 'unix:///run/strongswan/charon.vici' failed, сначала проверьте systemd, socket и права. Внешний web/API интерфейс не включён в этот RPM; Python-пакет vici не требуется для CLI и в испытанном образе не установлен.
4. Как организованы конфигурации¶
Убедитесь, что /etc/swanctl/swanctl.conf включает conf.d/*.conf:
После этого размещайте каждый самостоятельный профиль отдельным файлом в /etc/swanctl/conf.d/. Не дописывайте вручную бесконтрольное количество блоков в корневой файл. В конфигурации swanctl общие секции connections, secrets, authorities могут находиться в разных подключаемых файлах.
5. Применение настроек¶
swanctl --load-conns # добавить/обновить профили
swanctl --load-authorities # сведения об УЦ и CRL URI
swanctl --load-creds # ключи, сертификаты, CRL и секреты
swanctl --load-creds --clear # удалить старые credentials и загрузить заново
swanctl --list-conns
swanctl --list-authorities
--load-creds --clear используйте осознанно: затрагивает все загруженные credentials демона и требует операционного окна. Новый сертификат/CRL не означает автоматическую повторную проверку уже установленной IKE SA. Для полного нового IKE_AUTH выполняется --terminate --ike и новая инициaция.
6. Диагностика в реальном времени¶
Не включайте подробные дампы ключевого материала или логирование секретов на производственной системе.