LINUX.ORG.RU
ФорумAdmin

IPSEC сеть-сеть


0

1

Доброго дня!
Пытаюсь поднять ipsec между двумя linux серверами, как описано тут:
http://www.rhd.ru/docs/manuals/enterprise/RHEL-4-Manual/security-guide/s1-ips...

Схема лабы:
192.168.0.0/24 -office1 - 192.168.0.1||10.0.0.200 - localnet - 10.0.0.201||192.168.1.1 - office2 - 192.168.1.0/24
В данном случае все работает.

Ставлю компы в разные офисы.
Подправляю /etc/sysconfig/network-scripts/ifcfg-ipsec0
Заменяю DST адреса.

Схема на практике.
192.168.0.0/24 -office1 - 192.168.0.1||XXX.XXX.XXX.XXX - internet - ZZZ.ZZZ.ZZZ.ZZZ||192.168.1.1 - office2 - 192.168.1.0/24
В даннос случае пинги не проходят.


Компы те же, iptables принимает все пакеты, не дропает ничего.

racoon говорит:
INFO: @(#)ipsec-tools 0.7.3 (http://ipsec-tools.sourceforge.net)
INFO: @(#)This product linked OpenSSL 1.0.0d-fips 8 Feb 2011 (http://www.openssl.org/)
INFO: Reading configuration from «/etc/racoon/racoon.conf»
INFO: XXX.XXX.XXX.XXX[500] used as isakmp port (fd=9)
INFO: XXX.XXX.XXX.XXX[500] used for NAT-T
INFO: unsupported PF_KEY message REGISTER
INFO: 127.0.0.1[500] used as isakmp port (fd=0)
INFO: 127.0.0.1[500] used for NAT-T
INFO: XXX.XXX.XXX.XXX[500] used as isakmp port (fd=8)
INFO: XXX.XXX.XXX.XXX[500] used for NAT-T
INFO: 192.168.0.1[500] used as isakmp port (fd=9)
INFO: 192.168.0.1[500] used for NAT-T
INFO: fe80::215:17ff:feb3:1034%eth0[500] used as isakmp port (fd=15)
INFO: fe80::215:17ff:feb3:1036%eth1[500] used as isakmp port (fd=16)
INFO: IPsec-SA request for ZZZ.ZZZ.ZZZ.ZZZ queued due to no phase1 found.
INFO: initiate new phase 1 negotiation: XXX.XXX.XXX.XXX[500]<=>ZZZ.ZZZ.ZZZ.ZZZ[500]
INFO: begin Aggressive mode.
INFO: received Vendor ID: DPD
NOTIFY: couldn't find the proper pskey, try to get one by the peer's address.
INFO: ISAKMP-SA established XXX.XXX.XXX.XXX[500]-ZZZ.ZZZ.ZZZ.ZZZ[500] spi:3ba02ecb100d7d3c:7239f899ba8b124a
INFO: respond new phase 2 negotiation: XXX.XXX.XXX.XXX[500]<=>ZZZ.ZZZ.ZZZ.ZZZ[500]
INFO: IPsec-SA established: AH/Tunnel ZZZ.ZZZ.ZZZ.ZZZ[500]->XXX.XXX.XXX.XXX[500] spi=167866852(0xa0171e4)
INFO: IPsec-SA established: ESP/Tunnel ZZZ.ZZZ.ZZZ.ZZZ[500]->XXX.XXX.XXX.XXX[500] spi=92676938(0x586234a)
INFO: IPsec-SA established: AH/Tunnel XXX.XXX.XXX.XXX[500]->ZZZ.ZZZ.ZZZ.ZZZ[500] spi=185406509(0xb0d142d)
INFO: IPsec-SA established: ESP/Tunnel XXX.XXX.XXX.XXX[500]->ZZZ.ZZZ.ZZZ.ZZZ[500] spi=56514983(0x35e59a7)
INFO: initiate new phase 2 negotiation: XXX.XXX.XXX.XXX[500]<=>ZZZ.ZZZ.ZZZ.ZZZ[500]
INFO: IPsec-SA established: AH/Tunnel ZZZ.ZZZ.ZZZ.ZZZ[500]->XXX.XXX.XXX.XXX[500] spi=114769297(0x6d73d91)
INFO: IPsec-SA established: ESP/Tunnel ZZZ.ZZZ.ZZZ.ZZZ[500]->XXX.XXX.XXX.XXX[500] spi=111038607(0x69e508f)
INFO: IPsec-SA established: AH/Tunnel XXX.XXX.XXX.XXX[500]->ZZZ.ZZZ.ZZZ.ZZZ[500] spi=106840651(0x65e424b)
INFO: IPsec-SA established: ESP/Tunnel XXX.XXX.XXX.XXX[500]->ZZZ.ZZZ.ZZZ.ZZZ[500] spi=167399505(0x9fa5051)

Судя по последним строкам тоннель образовывается.
На другой стороне лог такой же
Пробую на стороне ZZZ.ZZZ.ZZZ.ZZZ выпонить ping 192.168.0.1
результат tcpdump такой:

tcpdump -i eth0 -n -e -v host ZZZ.ZZZ.ZZZ.ZZZ and port not 53 and port not 80 and port not 3306
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
ZZZ.ZZZ.ZZZ.ZZZ > XXX.XXX.XXX.XXX: AH(spi=0x06d73d91,sumlen=16,seq=0x59): (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ESP (50), length 136)
ZZZ.ZZZ.ZZZ.ZZZ > XXX.XXX.XXX.XXX: ESP(spi=0x069e508f,seq=0x59), length 116
15:21:44.553093 b0:c6:9a:5f:00:29 > 00:15:17:b3:10:34, ethertype IPv4 (0x0800), length 150: (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ESP (50), length 136)

В результате сети 192.168.0.0/24 и 192.168.1.0/24 друг-друга не видят.
Подскажите плз, куда копать?



Последнее исправление: gich (всего исправлений: 1)

>В результате сети 192.168.0.0/24 и 192.168.1.0/24 друг-друга не видят.
пусто в сетевом окружении проводника?
что значит эта строка?

а вообще, компы на обоих сторонах должны знать куда должен идти трафик удаленной сети. и этот трафик должен быть разрешен.
setkey -DP посмотрите.


fr_butch
()
Ответ на: комментарий от fr_butch

>что значит эта строка?
даю на пример команду ping 192.168.1.1 а в ответ ничего.

setkey -DP
192.168.1.0/24[any] 192.168.0.0/24[any] any
fwd prio def ipsec
esp/tunnel/ZZZ.ZZZ.ZZZ.ZZZ-XXX.XXX.XXX.XXX/require
ah/tunnel/ZZZ.ZZZ.ZZZ.ZZZ-XXX.XXX.XXX.XXX/require
created: Jul 22 16:34:53 2011 lastused:
lifetime: 0(s) validtime: 0(s)
spid=23578 seq=25 pid=19243
refcnt=1
192.168.1.0/24[any] 192.168.0.0/24[any] any
in prio def ipsec
esp/tunnel/ZZZ.ZZZ.ZZZ.ZZZ-XXX.XXX.XXX.XXX/require
ah/tunnel/ZZZ.ZZZ.ZZZ.ZZZ-XXX.XXX.XXX.XXX/require
created: Jul 22 16:34:53 2011 lastused:
lifetime: 0(s) validtime: 0(s)
spid=23568 seq=26 pid=19243
refcnt=1
192.168.0.0/24[any] 192.168.1.0/24[any] any
out prio def ipsec
esp/tunnel/XXX.XXX.XXX.XXX-ZZZ.ZZZ.ZZZ.ZZZ/require
ah/tunnel/XXX.XXX.XXX.XXX-ZZZ.ZZZ.ZZZ.ZZZ/require
created: Jul 22 16:34:53 2011 lastused:
lifetime: 0(s) validtime: 0(s)
spid=23561 seq=0 pid=19243
refcnt=1
route -n | grep 192.168
192.168.1.0 192.168.1.1 255.255.255.0 UG 0 0 0 eth1
192.168.0.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1

gich
() автор топика

IPSEC довольно геморройная штука, единственные его преимущества - универсальность (можно соеденить цыску и винду к примеру) и скорость (работает в ядре, криптоалгоритмы параллелятся).

Если нужно просто через интернет соединить две сети - проще заюзать OpenVPN, для шифровки канала в 100Мбит в одну сторону достаточно одного ядра проца уровня Core 2 2.5Ghz.

blind_oracle ★★★★★
()
Ответ на: комментарий от gich

И компов пока кроме тех, на которых поднят ipsec еще нет. Они друг-друга то через тоннель не пингую. Если подскажете где грабли, буду очень признателен...

gich
() автор топика
Ответ на: комментарий от blind_oracle

Шифровка в AES256 конечно же, более простыми алгоритмами можно наверное и быстрее.

blind_oracle ★★★★★
()
Ответ на: комментарий от gich

> IPSEC довольно геморройная штука
Уже ощутил в полной мере. Ну, если не получится, то тогда может быть и openvpn

gich
() автор топика
Ответ на: комментарий от gich

И у туннельного режима IPSEC (сеть-сеть) есть минусы некоторые, к примеру из сети1 не видно шлюза сети2.

Т.е. есть к примеру филиал, который подключается по IPSEC к головному офису, в котором помимо IPSEC сервер еще и почту крутит. Так вот из сети филиала этого сервера видно не будет тупо.

Может я конечно что-то в роутинге недокрутил, давно это было, но у меня было так между двумя Linux хостами. Хотя цыски ASA например сейчас работают нормально в аналогичной конфигурации... Возможно это ограничение линуха или racoon.

blind_oracle ★★★★★
()

По сабжу - проверь проходят ли пинги до других хостов сети. Как я писал выше - хоста, который строит IPSEC вполне может быть не видно.

blind_oracle ★★★★★
()
Ответ на: комментарий от blind_oracle

Проверил. Не доходит.
Забил и снес ipсекс, поставил openvpn в режим моста, и вот оно счастье. Спасибо blind_oracle, что-то в запарке совсем про это простое решение забыл. И подходит оно мне лучше чем ipsec.

gich
() автор топика
Ответ на: комментарий от gich

>IPSEC довольно геморройная штука
да не сказал бы. кнчно эти пляски с фазами и spd не всегда бывают очевидны, пока не прочтешь нормальный мануал.

а вообще, ТС сделал одну ошибку - не запостил конфиг =)
spd как будто бы в норме, fwd я так понимаю на каждый in policy в linux создается.
чуть побольше бы дебага (tcpdump port 500 or port 4500 or icmp на всех хостах при проверке пингом, ну и правила iptables посмотреть не мешало бы)


И у туннельного режима IPSEC (сеть-сеть) есть минусы некоторые, к примеру из сети1 не видно шлюза сети2.

неправда =)

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