URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 4790
[ Назад ]

Исходное сообщение
"Проблема с IPSec"

Отправлено s90 , 08-Фев-11 18:00 
Есть задача связаться с двумя хостами через VPN, с одной стороны linux и racoon с другой cisco

linux = 1.1.1.1
cisco = 2.2.2.2
host1 за циской = 192.168.0.1
host2 за циской = 192.168.1.1

конфы:

#!/sbin/setkey -f
                                                                                                                                                                                  
flush;
spdflush;                                                                                                                                                                          
spdadd 1.1.1.1 192.168.0.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
spdadd 192.168.0.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;
spdadd 1.1.1.1 192.168.1.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
spdadd 192.168.1.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;


racoon.conf

path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";
path include "/etc/racoon";
log notify;
                                                                                                                                                                                  
padding {                                                                                                                                                                          
            maximum_length 20;
            randomize off;
            strict_check off;
            exclusive_tail off;
}                                                                                                                                                                                  
                                                                                                                                                                                  
listen {                                                                                                                                                                          
        isakmp 1.1.1.1 [500];
}

remote 2.2.2.2 {
        exchange_mode mail,aggressive;
        doi ipsec_doi;
        situation identity_only;
                                                                                                                                                                                  
        my_identifier address 1.1.1.1;
                                                                                                                                                                                  
        nonce_size 16;
                                                                                                                                                                                  
        initial_contact on;
        proposal_check strict;
        proposal {
                lifetime time 3600 sec;
                encryption_algorithm 3des;
                hash_algorithm sha1;
                authentication_method pre_shared_key;
                dh_group 2;
        }
}                                                                                                                                                                                  
                                                                                                                                                                                  
sainfo address 1.1.1.1 any address 192.168.0.1 any {                                                                                                                    
        lifetime time 3600 sec;
        encryption_algorithm 3des;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate;
}                                                                                                                                                                                  
                                                                                                                                                                                  
sainfo address 1.1.1.1 any address 192.168.1.1 any {                                                                                                                      
        lifetime time 3600 sec;
        encryption_algorithm 3des;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate;
}

после запуска racoon пингую хост 1922.168.0.1 - пингуется, в логах пишет, что тунель поднят, но второй хост не пингуется без сообщений в логах
перезапускаю racoon и начинаю пингать 192.168.1.1 - пингуется, в логах опять-таки все нормально, но теперь первый хост не пингуется
как решить ?


Содержание

Сообщения в этом обсуждении
"Проблема с IPSec"
Отправлено Евгений , 08-Фев-11 19:12 
exchange_mode mail  это описка? надо main
log notify; добавьте и смотрите что не так.
кроме того, включите ip_forward на linux


"Проблема с IPSec"
Отправлено s90 , 08-Фев-11 19:19 
> exchange_mode mail  это описка? надо main
> log notify; добавьте и смотрите что не так.
> кроме того, включите ip_forward на linux

mail это описка
log notify; уже есть и как я уже писал при установке туннеля логи выводят, что туннель установлен (INFO: IPsec-SA established)
насчет ip_forward - не обязательно, потому как на удаленные хосты нужно ходить с VPN пира

повторюсь: хосты в другой сети доступны по одному, как сделать чтобы доступны были оба одновременно


"Проблема с IPSec"
Отправлено s90 , 08-Фев-11 19:32 
во всех рассматриваемых в инете примерах есть одна внутренняя сеть с одной стороны и одна с другой
как реализовывать связь когда с одной из сторон две сети (два хоста) или более ?
как быть с политиками SPD и блоками sainfo в конфе ?

"Проблема с IPSec"
Отправлено Сергей , 08-Фев-11 23:31 
>[оверквотинг удален]
> host1 за циской = 192.168.0.1
> host2 за циской = 192.168.1.1
> конфы:
> #!/sbin/setkey -f
> flush;
> spdflush;
> spdadd 1.1.1.1 192.168.0.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
> spdadd 192.168.0.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;
> spdadd 1.1.1.1 192.168.1.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
> spdadd 192.168.1.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;

Как вы думаете, что бы это означало..

> после запуска racoon пингую хост 1922.168.0.1 - пингуется, в логах пишет, что
> тунель поднят, но второй хост не пингуется без сообщений в логах
> перезапускаю racoon и начинаю пингать 192.168.1.1 - пингуется, в логах опять-таки все
> нормально, но теперь первый хост не пингуется
> как решить ?

Ну тут все понятно, поднимается та политика, которая активизируется первой...
Я бы вам предложил бы шифровать весь трафик между 1.1.1.1 и 2.2.2.2, т.е. использовать транспорт, а не тоннель, прописав соответствующую маршрутизацию на 1.1.1.1 для достижения 192.168.0. и 192.168.1. Либо использовать что-то другое...


"Проблема с IPSec"
Отправлено a2l , 17-Фев-11 12:21 
>[оверквотинг удален]
> spdflush;
> spdadd 1.1.1.1 192.168.0.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
> spdadd 192.168.0.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;
> spdadd 1.1.1.1 192.168.1.1 any -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
> spdadd 192.168.1.1 1.1.1.1 any -P in  ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;
> после запуска racoon пингую хост 1922.168.0.1 - пингуется, в логах пишет, что
> тунель поднят, но второй хост не пингуется без сообщений в логах
> перезапускаю racoon и начинаю пингать 192.168.1.1 - пингуется, в логах опять-таки все
> нормально, но теперь первый хост не пингуется
> как решить ?

Попробуй заменить require на unique.


"Проблема с IPSec"
Отправлено s90 , 17-Фев-11 12:52 
> Попробуй заменить require на unique.

работает, спасибо большое, ни разу не натыкался на такой параметр, потому даже не рассматривал


"Проблема с IPSec"
Отправлено Живот , 12-Сен-11 14:23 
> Попробуй заменить require на unique.

Спасибо, и мне помогло! Три туннеля вместо одного между двумя пирами это, конечно, не очень нормально, но если циска на той стороне считает это правильным, то бог ей судья.