Назад | Перейти на главную страницу

Strongswan: транспортный режим с неспецифическими удаленными хостами

Я использую strongSwan 5.2.1 в Debian Jessie, и у меня возникли проблемы с его настройкой для выполнения того, что я хочу.

Посылка

В тестовой среде я пытаюсь использовать IPsec в транспортном режиме между виртуальной машиной Linux и виртуальной машиной Windows, настроенной как FTP-сервер в активном режиме. Будет применен IPsec только на FTP-трафик; то есть трафик к / от TCP-портов 20 и 21 на виртуальной машине Windows. Весь остальной трафик между двумя хостами (например, эхо-запросы) должен быть незашифрованным.

В реальном сценарии, для которого я это делаю, IP-адрес FTP-сервера будет отличаться, поэтому я бы хотел, чтобы моя конфигурация strongSwan не ссылалась на конкретный удаленный IP-адрес.

файл ipsec.conf в Linux

Содержание следующее:

# ipsec.conf - strongSwan IPsec configuration file
# basic configuration
config setup
    # strictcrlpolicy=yes
    # uniqueid =  no
# Add connections here.
include /var/lib/strongswan/ipsec.conf.inc
conn main
    type=transport
    left=%any
    right=10.1.1.2
    leftauth=psk
    rightauth=psk
    ike=3des-sha1-modp1024
    esp=3des-sha1
    keyexchange=ikev1

conn data
    also=main
    rightsubnet=%dynamic[6/20]
    auto=route

conn command
    also=main
    rightsubnet=%dynamic[6/21]
    auto=route

Проблема

Приведенный выше IPsec.conf делает все, что я хочу, за исключением того, что IP-адрес FTP-сервера указан в файле строкой right=10.1.1.2.

В also=route Параметр означает, что обмен ключами инициируется только при обнаружении трафика, идущего в / из 10.1.1.2 на портах TCP 20 или 21. Мне нужна конфигурация, которая инициирует обмен ключами для любой IP-адрес при обнаружении трафика, идущего к / от этого адреса, TCP-порты 20 и 21.

Возможна ли такая конфигурация в strongSwan, и если нет, есть ли другой демон управления ключами для Linux, который может делать то, что я хочу достичь?

Дополнительные замечания

Спасибо.

Использовать right=%any с политиками ловушки транспортного режима (т. е. auto=route) вам нужно как минимум strongSwan 5.3.3. Обратитесь к ikev2 / ловушка-любой сценарий для примера.