Добрый день!Есть Cisco ASA (сервер) и OpenSWAN (клиент), между которыми устанавливается IPSec соединение. Туннель успешно поднимается, со стороны Cisco нас пингуют, а вот мы (со стороны OpenSWAN) их пингать не можем.
Меня интересует возможная проблема, чисто теоретически. Администратор со стороны Cisco настаивает на том, что это из-за того, что в конфигурации ASA стоит set pfs, в то время как у нас в конфиге OpenSWAN pfs=no (т.к. с pfs=yes туннель не поднимается). Могут ли быть проблемы с доступностью удаленной стороны из-за несоответствия этой настройки? Или, если бы это было так, просто не поднимался бы туннель?
Насколько я понял из документации к Cisco IOS, сама по себе команда set pfs ни к чему не обязывает клиентскую сторону. Т.е. она запрашивает PFS, а дальше уже дело клиента, работать с этим или нет. А вот для того чтобы энфорсить использованием PFS клиентом, в конфигурации ASA должно быть что-то вроде pfs group 2.
Заранее благодарю за ответ.
>[оверквотинг удален]
> настаивает на том, что это из-за того, что в конфигурации ASA
> стоит set pfs, в то время как у нас в конфиге
> OpenSWAN pfs=no (т.к. с pfs=yes туннель не поднимается). Могут ли быть
> проблемы с доступностью удаленной стороны из-за несоответствия этой настройки? Или, если
> бы это было так, просто не поднимался бы туннель?
> Насколько я понял из документации к Cisco IOS, сама по себе команда
> set pfs ни к чему не обязывает клиентскую сторону. Т.е. она
> запрашивает PFS, а дальше уже дело клиента, работать с этим или
> нет. А вот для того чтобы энфорсить использованием PFS клиентом, в
> конфигурации ASA должно быть что-то вроде pfs group 2.Вы бы файл ipsec.conf выложили что ли?
> Заранее благодарю за ответ.
> Вы бы файл ipsec.conf выложили что ли?Николай, вот здесь ipsec.conf (обезличенный):
http://pastebin.com/esMkqw2d
Вот здесь конфигурация cisco asa (обезличенная):
http://pastebin.com/Gj9ZT3JHВкратце диспозиция следующая:
8.8.8.8 - клиент openswan
9.9.9.9 - cisco asa9.9.9.13 и 9.9.9.14 - хосты за туннелем, к которым я пытаюсь получить доступ с 8.8.8.8.
Пинг с 9.9.9.9 на 8.8.8.8 по туннелю проходит, а пинг с 8.8.8.8 на 9.9.9.13 и 9.9.9.14 - нет. Точнее со стороны ASA видны наши echo request в туннеле, но echo reply на них по какой-то причине не отправляется.Туннель поднят:
> ipsec auto --status000 stats db_ops: {curr_cnt, total_cnt, maxsz} :context={0,0,0} trans={0,0,0} attrs={0,0,0}
000
000 "vpn": 8.8.8.0/24===8.8.8.8<8.8.8.8>[+S=C]---OURISPGATEWAY...OURISPGATEWAY---9.9.9.9<9.9.9.9>[+S=C]===9.9.9.0/24; erouted; eroute owner: #2
000 "vpn": myip=unset; hisip=unset;
000 "vpn": ike_life: 3600s; ipsec_life: 28800s; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 0
000 "vpn": policy: PSK+ENCRYPT+TUNNEL+UP+IKEv2ALLOW+lKOD+rKOD; prio: 24,24; interface: ppp0;
000 "vpn": newest ISAKMP SA: #4; newest IPsec SA: #2;
000 "vpn": IKE algorithms wanted: 3DES_CBC(5)_000-MD5(1)-MODP1536(5), 3DES_CBC(5)_000-MD5(1)-MODP1024(2); flags=-strict
000 "vpn": IKE algorithms found: 3DES_CBC(5)_192-MD5(1)_128-5, 3DES_CBC(5)_192-MD5(1)_128-2,
000 "vpn": IKE algorithm newest: 3DES_CBC_192-MD5-MODP1024
000
000 #2: "vpn":500 STATE_QUICK_I2 (sent QI2, IPsec SA established); EVENT_SA_REPLACE in 20954s; newest IPSEC; eroute owner; isakmp#1; idle; import:admin initiate
000 #2: "vpn" esp.cb60ebee@9.9.9.9 esp.306c46ef@8.8.8.8 tun.0@9.9.9.9 tun.0@8.8.8.8 ref=0 refhim=4294901761
000 #4: "vpn":500 STATE_MAIN_I4 (ISAKMP SA established); EVENT_SA_REPLACE in 780s; newest ISAKMP; lastdpd=-1s(seq in:0 out:0); idle; import:admin initiate
000OURISPGATEWAY - это адрес шлюза вышестоящего для 8.8.8.8 провайдера (выдается автоматически).
Давно дело было :) с этим OpenSWANТо что я вижу из конфига
conn vpn
forceencaps=yes
type=tunnel
authby=secret
pfs=no
ike=3des-md5
leftid=8.8.8.8
left=8.8.8.8
leftsubnet=8.8.8.0/24
leftnexthop=%defaultroute
right=9.9.9.9
rightsubnet=9.9.9.0/24
rightnexthop=%defaultroute
auto=startНа юниксе IKE
1 3DES-MD5 какой lifetime неизвестно.
IPSEC
1 Ничего не известноВ то время на ASA есть 3 профиля IKE:
1. 3DES-SHA1 DH2 3600
2. 3DES-SHA1 DH2 86400
3. 3DES-MD5 DH2 28800
IPSEC
1. ESP-3DES
2. esp-sha-hmacРекомендую посбрасывать lifetime по умолчанию и после поднятия тунеля усложнять.
предлагаю дописать в ipsec.conf
auth=esp
esp=3DES-SHA1
ike=3DES-SHA-modp1024 (могу ошибаться с modp и соответствием на АСА)и где-то еще время lifetime надо бы прописать но не помню уже где конкретно
> предлагаю дописать в ipsec.conf
> auth=esp
> esp=3DES-SHA1
> ike=3DES-SHA-modp1024 (могу ошибаться с modp и соответствием на АСА)
> и где-то еще время lifetime надо бы прописать но не помню уже
> где конкретноЯ добавил приведенные вами три строки + ikelifetime=1h.
К сожалению, проблемы с доступностью хостов за циской это не решило, равно как
не помогло поднять туннель с pfs=yes.Кстати при попытке создания туннеля с включенным PFS заканчивается все так:
000 #8: "vpn":500 STATE_QUICK_I1 (sent QI1, expecting QR1); EVENT_RETRANSMIT in 20s; lastdpd=-1s(seq in:0 out:0); idle; import:admin initiate
000 #6: "vpn":500 STATE_QUICK_I1 (sent QI1, expecting QR1); EVENT_RETRANSMIT in 15s; lastdpd=-1s(seq in:0 out:0); idle; import:admin initiate
>> предлагаю дописать в ipsec.conf
>> auth=esp
>> esp=3DES-SHA1
>> ike=3DES-SHA-modp1024 (могу ошибаться с modp и соответствием на АСА)
>> и где-то еще время lifetime надо бы прописать но не помню уже
>> где конкретно
> Я добавил приведенные вами три строки + ikelifetime=1h.
> К сожалению, проблемы с доступностью хостов за циской это не решило, равно
> как
> не помогло поднять туннель с pfs=yes.Ну и возвращаясь к основному вопросу - может ли игнорирование запросов на PFS при создании туннеля как-то влиять на доступность хостов за VPN-маршрутизатором. Или же это влияет только на возможность создания собственно туннеля?
> Ну и возвращаясь к основному вопросу - может ли игнорирование запросов на
> PFS при создании туннеля как-то влиять на доступность хостов за VPN-маршрутизатором.
> Или же это влияет только на возможность создания собственно туннеля?Выяснилось, что проблема была на стороне ASA. Там были сделаны какие-то манипуляции и пинг на хосты за туннелем начал ходить. С pfs=yes тоже заработало. Проблема решена, всем спасибо.