Контрольный список. Шпаргалка.
(туннельный режим, соединение сеть-сеть)
Договорённости:
local_net1 - адрес локальной сети 1
router_int_if1 - сетевой интерфейс маршрутизатора в локальную сеть 1
router_ext_if1 - сетевой интерфейс маршрутизатора в глобальную сеть 1
router_int_ip1 - ip маршрутизатора в локальной сети 1
router_ext_ip1 - ip маршрутизатора в глобальной сети 1
local_net2 - адрес локальной сети 2
router_int_if2 - сетевой интерфейс маршрутизатора в локальную сеть 2
router_ext_if2 - сетевой интерфейс маршрутизатора в глобальную сеть 2
router_int_ip2 - ip маршрутизатора в локальной сети 2
router_ext_ip2 - ip маршрутизатора в глобальной сети 2
Инсталляция.
$ sudo apt-get update
$ sudo apt-get install racoon
Создание ключа.
$ dd if=/dev/urandom count=16 bs=1 | xxd -ps
e2c1f209d41b9beb44e5a176af9eab41
Конфигурация - первая локальная сеть.
Конфигурация IPsec.
/etc/ipsec-tools.conf
flush; #сбросить ассоциации безопасности (SAD)
spdflush; # сбросить политики безопасности (SPD)
spdadd local_net1 local_net2 any -P out ipsec
esp/tunnel/router_ext_ip1-router_ext_ip2/require;
spdadd local_net2 local_net1 any -P in ipsec
esp/tunnel/router_ext_ip2-router_ext_ip1/require;
/etc/racoon/racoon.conf
path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";
listen {
isakmp router_ext_ip1[500];
#isakmp_natt router_ext_ip1[4500]; # установка прослушивания используя NAT-T
strict_address;
}
remote router_ext_ip2 {
exchange_mode main,aggressive;
lifetime time 24 hour;
proposal {
encryption_algorithm 3des;
hash_algorithm sha1;
authentication_method pre_shared_key;
dh_group modp1024;
}
generate_policy off;
nat_traversal off; # отключаем nat-traversal
#ike_frag on; # фрагментация ike, используется для NAT-T, неиспользуем.
#esp_frag 552; # фрагментация esp пакета, используется для NAT-T, неиспользуем.
}
sainfo address local_net1 any address local_net2 any {
pfs_group modp1024;
lifetime time 1 hour;
#lifetime time 5 min;
encryption_algorithm 3des;
#authentication_algorithm hmac_md5;
authentication_algorithm hmac_sha1;
compression_algorithm deflate;
}
/etc/racoon/psk.txt
router_ext_ip2 e2c1f209d41b9beb44e5a176af9eab41 # предварительно созданный ключ
Конфигурация iptables.
-A INPUT -i router_ext_if1 -s router_ext_ip2 -p udp --sport 500 --dport 500 -j ACCEPT
-A INPUT -s router_ext_ip2 -p esp -j ACCEPT
-A INPUT -s local_net2 -d router_int_ip1 -m policy --dir in --pol ipsec --proto esp --mode tunnel --tunnel-src router_ext_ip2 -j ACCEPT
-A FORWARD -s local_net2 -d local_net1 -m policy --dir in --pol ipsec --proto esp --mode tunnel --tunnel-src router_ext_ip2 -j ACCEPT
-A FORWARD -s local_net1 -d local_net2 -m policy --dir out --pol ipsec --proto esp --mode tunnel --tunnel-dst router_ext_ip2 -j ACCEPT
Используете политику по умолчанию DROP в цепочке OUTPUT?
-A OUTPUT -o router_ext_if1 -d router_ext_ip2 -p udp --sport 500 --dport 500 -j ACCEPT
-A OUTPUT -d router_ext_ip2 -p esp -j ACCEPT
-A OUTPUT -s router_int_ip1 -d local_net2 -m policy --dir out --pol ipsec --proto esp --mode tunnel --tunnel-dst router_ext_ip2 -j ACCEPT
Ваш маршрутизатор используется в качестве шлюза и производит преобразования SNAT или Masquerade?
-t nat -I POSTROUTING 1 -p esp -j ACCEPT #правило обязано быть раньше преобразования SNAT
или так, вместе с преобразованием SNAT:
-t nat -A POSTROUTING -o router_ext_if1 -s local_net1 -d ! local_net2 -j SNAT --to-source router_ext_if1
Добавление маршрута.
$sudo ip route add local_net2 dev router_ext_if1 src router_int_ip1
/etc/rc.local:
/sbin/ip route add local_net2 dev router_ext_if1 src router_int_ip1
Конфигурация - вторая локальная сеть.
Вторая сеть настраивается точно также как первая, изменяются только "направления".
Там где local_net1 используете local_net2, где router_ext_ip1 используете router_ext_ip2 и т.д.
Рестарт.
(на обоих маршрутизаторах)
$ sudo /etc/init.d/setkey restart # применение политик безопасности
$ sudo /etc/init.d/racoon restart # перезапуск IKE даемона
$ sudo vasha_comanda_restarta_iptables # применение правил iptables
Немає коментарів:
Дописати коментар
Примітка: лише член цього блогу може опублікувати коментар.