LINUX.ORG.RU
ФорумAdmin

ipsec + openvpn роутинг

 , ,


1

1

имеем две серых сети 192.168.1.0(192.168.1.1 - роутер) и 192.168.2.0(openvpn)

серая сеть 192.168.1.0 состоит из нескольких серверов подключенных в один свитч. между ними посредством setkey настроен ipsec. роутинг к сети 192.168.2.0 прописан в конфиге через gateway 192.168.1.1 на всех серваках сети 192.168.1.0

несколько рабочих из сети 192.168.2.0 подключаются к одному из серверов первой сети через openvpn.

включил tcpdump на 192.168.1.1 и увидел что шифруются только соединения между тачками сети 192.168.1.0, а между сетями 192.168.1.0 и 192.168.2.0 ходит открытый траф.

как зарулить чтобы траф с серваков 192.168.1.0, идуший через роутер 192.168.1.1 тоже шифровался?

пример конфига setkey:

# Configuration for 192.168.1.3
flush;
spdflush;

add 192.168.1.1 192.168.1.3 ah 0x200 -A hmac-md5 0x8e6353a128bcaa9374bb6c7e155429fb;
add 192.168.1.3 192.168.1.1 ah 0x300 -A hmac-md5 0x86e7591314fce9f5eb148939e9e12eca;

spdadd 192.168.1.3 192.168.1.1 any -P out ipsec esp/transport//require ah/transport//require;
spdadd 192.168.1.1 192.168.1.3 any -P in ipsec esp/transport//require ah/transport//require;


а между сетями 192.168.1.0 и 192.168.2.0 ходит открытый траф

Так и должно быть, у вас ведь в политику через spdadd создаются только правила для отдельных хостов, а не для сетей. Если вам нужно, чтобы пакеты между 192.168.1.3 и сетью 192.168.2.0 в локальной сети 192.168.1.0 были шифроваными, то нужно их заворачивать в ipsec с помощью соответсвующих правил политики. Примерно так:

spdadd 192.168.1.3 192.168.2.0/24 any -P out ipsec esp/tunnel/192.168.1.3-192.168.1.1/require

И ответное правило для расшифровки пакетов от 192.168.2.0/24.

Я не гарантирую, что написал правило без ошибок, гуглите.

mky ★★★★★
()

И вообще, писать setkey - моветон. Любой strong/open-swan сделает всё гораздо проще и безопаснее (с переменными ключами, ike(v2) и т.п.)

blind_oracle ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.