Ubuntu 11.04 настройка IPsec (ipsec-tools, racoon). Точка - сеть

IPsec

Настраивался VPN-туннель между сетями:
src: 70.108.83.52/29
peer: 210.152.129.234/32
dst: 210.65.95.200/32

 

Рассчитать длину маски подсети можно с помощью калькулятора:
http://www.ip-ping.ru/netcalc/

Устанавливаем racoon и ipsec-tools
apt-get install racoon ipsec-tools

Настраиваем racoon:
nano -u /etc/racoon/racoon.conf (Ключь -u позволяет делать отмену изменений по нажатию Alt+u)
path pre_shared_key "/etc/racoon/psk.txt";

log debug;

remote 210.152.129.234 {
exchange_mode main;
lifetime time 28800 sec;
proposal {
encryption_algorithm 3des;
hash_algorithm sha1;
authentication_method pre_shared_key;
dh_group 2;
}

}

sainfo address 70.108.83.53/32 any address 210.65.95.200/32 any {
pfs_group 2;
lifetime time 3600 sec;
encryption_algorithm 3des;
authentication_algorithm hmac_sha1;
compression_algorithm deflate;
}

Внимательно указываем все параметры шифрования. Для успешного установления канала, на стороне src и peer они должны быть идентичными!
В секции remote устанавливаются параметры phase1. В секции sainfo - phase2.

Настраиваем ipsrc-tools.conf:
nano -u /etc/ipsec-tools.conf
#Указываем сети, между которыми осуществляется шифрование, туннель и тип шифруемого трафика.
spdadd 70.108.83.53/32 210.65.95.200/32 any -P out ipsec
esp/tunnel/70.108.83.53-210.152.129.234/require;

spdadd 210.65.95.200/32 70.108.83.53/32 any -P in ipsec
esp/tunnel/210.152.129.234-70.108.83.53/require;

Вносим ключ шифрования для peer:
nano -u /etc/racoon/psk.txt
210.152.129.234 a9993e364706816aba3e

Перезапускаем службы:
/etc/init.d/setkey restart && /etc/init.d/racoon restart

В случае ошибки, смотрим логи:
tail -100 /var/log/syslog

Добавляем маршрут, заворачивающий пакеты идущие к 210.65.95.200 в туннель.
ip route add to 210.65.95.200/32 via 70.108.83.53 src 70.108.83.53

Проверяем маршрут:
route
Kernel IP routing table
Destination Gateway Genmask Flags Metric Ref Use Iface
212.65.95.200 70.108.83.53 255.255.255.255 UGH 0 0 0 eth0
70.108.83.48 * 255.255.255.248 U 0 0 0 eth0
192.168.0.0 * 255.255.255.0 U 0 0 0 eth1
default 70.108.83.49 0.0.0.0 UG 0 0 0 eth0


Добавляем установку маршрута в скрипты запуска сетевых интерфейсов:
nano -u /etc/network/interfaces
auto eth0
iface eth0 inet static
address 70.108.83.53
netmask 255.255.255.248
post-up route add default gw 70.108.83.49 eth0
post-up ip route add to 210.65.95.200/32 via 70.108.83.53 src 70.108.83.53

Туннель устанавливается в момент первого обращения, поэтому запускаем:
telnet 210.65.95.200 22
Ctrl+c

Смотрим создаётся ли туннель:
setkey -D

В случае ошибки, смотрим логи:
tail -100 /var/log/syslog

На этом всё, удачных Вам танцев с бубном!

Комментарии:

Разработано для Disqus