Я пытаюсь настроить соединение IPsec между двумя виртуальными машинами с помощью Strongswan. Конфигурация на моей первой машине следующая (ipsec.conf
):
подключение% по умолчанию
ikelifetime=60м
ключевой жизни=20м
rekeymargin=3м
попытки ввода = 1
мобайк=нет
обмен ключами=ikev2
authby=pubkey
esp=null-sha1!
соединение хост-хост
слева=192.168.56.102
leftcert=/etc/ipsec.d/certs/servercert.pem
leftid="C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org"
справа = 192.168.56.101
rightid="C=..., ST=..., O=..., OU=SSTT, CN=имя"
тип=туннель
авто=старт
Файл ipsec.secrets
содержит правильный маршрут к закрытому ключу. Конфигурация на моей второй машине соответствует указанной здесь.
Моя проблема: когда SA по какой-то причине устанавливается на моей первой машине (сервере), список политик выглядит так:
источник 192.168.56.101/32 адрес 192.168.56.102/32
дир вперед приоритет 2819
tmpl src 192.168.56.101 dst 192.168.56.102
proto esp reqid 1 режим туннеля
источник 192.168.56.101/32 адрес 192.168.56.102/32
директор в приоритете 2819
tmpl src 192.168.56.101 dst 192.168.56.102
proto esp reqid 1 режим туннеля
источник 192.168.56.102/32 адрес 192.168.56.101/32
удалить приоритет 2819
tmpl src 192.168.56.102 dst 192.168.56.101
proto esp reqid 1 режим туннеля
источник 192.168.56.101/32 адрес 192.168.56.102/32
приоритет блока действий dir fwd 12035
источник 192.168.56.101/32 адрес 192.168.56.102/32
dir в действии приоритет блока 12035
источник 192.168.56.102/32 адрес 192.168.56.101/32
приоритет блока действий dir out 12035
В списке политик клиентской машины нет политик с блокирующим действием, только правильные политики.
Я перехватил некоторый трафик с помощью wireshark и обнаружил, что когда мой сервер пингует вторую машину, пакеты ICMP отправляются дважды, один раз с заголовком ESP и один раз без него. Вторая машина отвечает только тем, у кого ее нет.
Я пытался просто удалить политики с блокировкой, но это, очевидно, не сработало.
Вывод журнала после перезапуска службы на стороне сервера:
11 июня 15:29:28 ubuntu-server charon: 00[DMN] получен сигнал типа SIGINT. Выключение
11 июня 15:29:28 ubuntu-server charon: 00[IKE] удаление IKE_SA host-to-host[2] между 192.168.56.102[C=..., ST=..., O=..., OU =SSTT, CN=www.sstt.org]...192.168.56.101[C=..., ST=..., O=..., OU=SSTT, CN=имя]
11 июня 15:29:28 ubuntu-server charon: 00[IKE] отправляет DELETE для IKE_SA между хостами[2]
11 июня 15:29:28 ubuntu-server charon: 00[ENC] генерирует ИНФОРМАЦИОННЫЙ запрос 0 [ D ]
11 июня 15:29:28 ubuntu-server charon: 00[NET] отправка пакета: с 192.168.56.102[500] на 192.168.56.101[500] (76 байт)
11 июня 15:29:30 ubuntu-server charon: 00[DMN] Запуск демона IKE charon (strongSwan 5.3.5, Linux 4.4.0-186-generic, x86_64)
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузка сертификатов ca из '/etc/ipsec.d/cacerts'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загружен сертификат ca "C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org" из '/etc/ipsec.d/cacerts/cacert.pem'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузка сертификатов aa из '/etc/ipsec.d/aacerts'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загружает сертификаты подписанта ocsp из '/etc/ipsec.d/ocspcerts'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузка сертификатов атрибутов из '/etc/ipsec.d/acerts'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузка crls из '/etc/ipsec.d/crls'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузка секретов из '/etc/ipsec.secrets'
11 июня 15:29:30 ubuntu-server charon: 00[CFG] загрузил закрытый ключ RSA из '/etc/ipsec.d/private/serverkey.pem'
11 июня 15:29:30 ubuntu-server charon: 00 [LIB] загруженные плагины: charon test-vectors aes rc2 sha1 sha2 md4 md5 random nonce x509 ограничения отзыва pubkey pkcs1 pkcs7 pkcs8 pkcs12 pgp dnskey sshkey pem openssl fips-prf gmp агент xcbc hmac gcm attr kernel-netlink разрешить сокет-по умолчанию connmark инсульт вверх вниз
11 июня 15:29:30 ubuntu-server charon: 00[LIB] сбросил возможности, работает как uid 0, gid 0
11 июня 15:29:30 ubuntu-server charon: 00[JOB] создание 16 рабочих потоков
11 июня 15:29:30 ubuntu-server charon: 11[CFG] получил ход: добавить соединение «хост-хост»
11 июня 15:29:30 ubuntu-server charon: 11[CFG] загрузил сертификат "C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org" от '/etc/ipsec.d/certs/servercert.pem'
11 июня 15:29:30 ubuntu-server charon: 11[CFG] добавлена конфигурация «хост-хост»
11 июня 15:29:30 ubuntu-server charon: 13[CFG] получил ход: инициировать «хост-хост»
11 июня 15:29:30 ubuntu-server charon: 13[IKE] инициирует IKE_SA host-to-host[1] на 192.168.56.101
11 июня 15:29:30 ubuntu-server charon: 13[ENC] генерирует запрос IKE_SA_INIT 0 [SA KE No N(NATD_S_IP) N(NATD_D_IP) N(HASH_ALG)]
11 июня 15:29:30 ubuntu-server charon: 13[NET] отправка пакета: с 192.168.56.102[500] на 192.168.56.101[500] (1124 байта)
11 июня 15:29:30 ubuntu-сервер charon: 15[NET] получил пакет: с 192.168.56.101[500] на 192.168.56.102[500] (481 байт)
11 июня 15:29:30 ubuntu-server charon: 15[ENC] проанализировано ответ IKE_SA_INIT 0 [SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(HASH_ALG) N(MULT_AUTH)]
11 июня 15:29:30 ubuntu-server charon: 15[IKE] получил запрос сертификата для «C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 июня 15:29:30 ubuntu-server charon: 15[IKE] отправляет запрос сертификата для «C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 июня 15:29:30 ubuntu-server charon: 15[IKE] аутентификация 'C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org' ( сам) с RSA_EMSA_PKCS1_SHA256 успешным
11 июня 15:29:30 ubuntu-server charon: 15[IKE] отправляет сертификат конечного объекта "C=..., ST=..., O=..., OU=SSTT, CN=www.sstt.org "
11 июня 15:29:30 ubuntu-server charon: 15[IKE] устанавливает CHILD_SA host-to-host
11 июня 15:29:30 ubuntu-server charon: 15[ENC] генерирует запрос IKE_AUTH 1 [IDi CERT N (INIT_CONTACT) CERTREQ IDr AUTH SA TSi TSr N (MULT_AUTH) N (EAP_ONLY)]
11 июня 15:29:30 ubuntu-server charon: 15[NET] отправка пакета: с 192.168.56.102[500] на 192.168.56.101[500] (1628 байт)
11 июня 15:29:30 ubuntu-сервер charon: 16[NET] получил пакет: с 192.168.56.101[500] на 192.168.56.102[500] (1500 байт)
11 июня 15:29:30 ubuntu-server charon: 16[ENC] проанализировано ответ IKE_AUTH 1 [IDr CERT AUTH SA TSi TSr N(AUTH_LFT)]
11 июня 15:29:30 ubuntu-server charon: 16[IKE] получил сертификат конечного объекта "C=..., ST=..., O=..., OU=SSTT, CN=name"
11 июня 15:29:30 ubuntu-server charon: 16[CFG] с использованием сертификата "C=..., ST=..., O=..., OU=SSTT, CN=name"
11 июня 15:29:30 ubuntu-server charon: 16[CFG] с использованием доверенного сертификата ca "C=..., ST=..., O=..., OU=SSTT, CN=ca.sstt.org "
11 июня 15:29:30 ubuntu-server charon: 16[CFG] проверка статуса сертификата "C=..., ST=..., O=..., OU=SSTT, CN=name"
11 июня 15:29:30 ubuntu-server charon: статус сертификата 16[CFG] недоступен
11 июня 15:29:30 ubuntu-server charon: 16[CFG] достиг самоподписанного корня ca с длиной пути 0
11 июня 15:29:30 ubuntu-server charon: 16 [IKE] аутентификация «C=..., ST=..., O=..., OU=SSTT, CN=name» с RSA_EMSA_PKCS1_SHA256 успешно
11 июня 15:29:30 ubuntu-server charon: 16[IKE] IKE_SA host-to-host[1] установлен между 192.168.56.102[C=..., ST=..., O=..., OU =SSTT, CN=www.sstt.org]...192.168.56.101[C=..., ST=..., O=..., OU=SSTT, CN=имя]
11 июня 15:29:30 ubuntu-server charon: 16[IKE] планирование повторной аутентификации в 3250-х
11 июня 15:29:30 ubuntu-server charon: 16[IKE] максимальное время жизни IKE_SA 3430s
11 июня 15:29:30 ubuntu-server charon: политика 16[KNL] уже существует, попробуйте обновить ее
11 июня 15:29:30 ubuntu-server charon: сообщение повторяется 2 раза: [политика 16[KNL] уже существует, попробуйте обновить ее]
11 июня, 15:29:30 ubuntu-server charon: 16[IKE] CHILD_SA host-to-host{1} установлен с SPI c056e14a_i c62093a4_o и TS 192.168.56.102/32 === 192.168.56.101/32
11 июня, 15:29:30 ubuntu-server charon: 16[IKE] получил AUTH_LIFETIME из 3364 с, повторная аутентификация запланирована на 3184 с
Может кто-нибудь объяснить, что происходит? заранее спасибо