Настройка IPSec на роутере WRT160NL с OpenWRT.

0
SUCCESS: Your vote is considered!

Здравствуйте, трамброидяне!
Хотелось бы рассказать о том, как настроить IPSec тунель на роутере WRT160NL под управлением OpenWRT.
Многие могут возразить, что инструкций по настройке IPSec'а полно в интернете, но настройка под OpenWRT  на этом роутере имеет свои особености.

Итак, имеем подключение со следующими параметрами.

Адрес удаленного сервера A.A.A.A
Удаленная сеть a.a.a.a/a
Адрес роутера B.B.B.B
Локальная сеть b.b.b.b/b

Фаза 1
PSK nnnnnnn
Алгоритм шифрования(encryption_algorithm)   3des
Алгоритм хеширования(hash_algorithm)   sha1
Diffie-Hellman_group   modp1024
Время жизни ключа(lifetime)   28800 sec

Фаза 2
Diffie-Hellman_group   modp1024
Алгоритм шифрования(encryption_algorithm)   3des
authentication_algorithm)   hmac_sha1
Алгоритм сжатия(compression_algorithm)   deflate
Время жизни ключа(lifetime)   3600 sec   

Перейдем к настройке.
1.Устанавливаем необходимые пакеты

# opkg update
# opkg install ipsec-tools kmod-crypto-authenc kmod-ipsec kmod-ipsec4

2.Редактируем конфигурационный файл /etc/racoon.conf и приводим его к следующему виду


path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";
path include "/etc/racoon";
log debug2;
padding {
        maximum_length 20; # maximum padding length.
        randomize off;  # enable randomize length.
        strict_check off; # enable strict check.
        exclusive_tail off; # extract last one octet.
}

remote A.A.A.A {
        exchange_mode main;
        situation identity_only;
        lifetime time 28800 sec ; # sec,min,hour
        proposal {
                encryption_algorithm 3des ;
                hash_algorithm sha1 ;
                authentication_method pre_shared_key ;
                dh_group 2 ;
        }
}

sainfo address b.b.b.b/b[any] any address a.a.a.a/a[any] any {
        pfs_group 2;
        lifetime time 3600 sec ;
        encryption_algorithm 3des;
        authentication_algorithm hmac_sha1;
        compression_algorithm deflate;
}

3.Дальше нужно записать в файл /etc/racoon/setkey.conf следующее

#! /usr/sbin/setkey -f flush;

spdflush;
spdadd b.b.b.b/b[any] a.a.a.a/a[any] any -P out ipsec esp/tunnel/B.B.B.B-A.A.A.A/require;
spdadd a.a.a.a/a[any] b.b.b.b/b[any] any -P in ipsec esp/tunnel/A.A.A.A-B.B.B.B/require;

3.В файл /etc/racoon/psk.txt записывается Pre-Shared Key

A.A.A.A nnnnnnn 

и устанавливаются права 600

# chmod 0600 /etc/racoon/psk.txt

4.Теперь нужно добавить правила для фаервола, для этого в файл /etc/firewall.user нужно добавить

iptables -A input_rule -p esp -s A.A.A.A -j ACCEPT # allow IPSEC
iptables -A input_rule -p udp -s A.A.A.A --dport 500 -j ACCEPT # allow ISAKMP
iptables -A input_rule -p udp -s A.A.A.A --dport 4500 -j ACCEPT # allow NAT-T
iptables -t nat -A postrouting_rule -d a.a.a.a/a -j ACCEPT

и перезапустить его

# /etc/init.d/firewall restart

Собственно настройка завершена, теперь нужно подключится.

1.А вот теперь особености :). Для работы racoon-а необходимы следующие модули af_key, esp4, ah4, authenc, xfrm4_tunnel, xfrm4_mode_tunnel. Загружаются они командой insmod

# insmod af_key
# insmod esp4
# insmod ah4
# insmod xfrm4_tunnel
# insmod authenc
# insmod xfrm4_mode_tunnel

2.Теперь нужно создать alias для интерфейса wan, который будет служить шлюзом сети

# ifconfig eth1:0 b.b.b.b netmask 255.255.255.0

3.Далее создается рабочий каталог

# mkdir /var/racoon

4.Теперь можно запустить racoon

# racoon

 

если необходимо запустить racoon в режиме отладки то нужно выполнить эту команду с ключем -Fd

# racoon -Fd

5.Запускаем setkey

# setkey -f /etc/racoon/setkey.conf

6.И создаем соединение

# racoonctl vpn-connect A.A.A.A

Все, тунель работает. Если тунель не заработал, то смотрите вывод демона  racoon -Fd
Теперь можно создать init скрипт в каталоге /etc/init.d для автоматического поднятия тунеля, о том как это сделать я расскажу позже.

  • 29 октября 2015 г. 15:19. Posted by Maxim Admin Цитировать #493
    Здравствуйте! Нужно установить прошивку OpenWRT, взять можно с офф. сайта openwrt-ar71xx-wrt160nl-squashfs-factory.bin
    и прошить роутер(Инструкция по прошивке должна быть в сети). Ну а дальше действовать согласно этой статье.
  • 29 октября 2015 г. 15:19. Posted by Цитировать #492
    помошь в настройке Здравствуйте, имею такой же роутер wrt160nl, сейчас стоит стандартная прошивка. какую сборку openwrt нужно скачать чтоб появилась возможность поднимать ipsec? сможете со мной связаться skype: klin_liberty

Пожалуйста войдите, что-бы оставить коментарий.
Нет акаунта? Регистрация