The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"FreeBSD: проблемы с racoon"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (VPN / FreeBSD)
Изначальное сообщение [ Отслеживать ]

"FreeBSD: проблемы с racoon"  +/
Сообщение от RESET (ok) on 09-Сен-10, 14:01 
Ситуация следующая:
Есть 2 шлюза, один основной под FreeBSD 6.3, втрой - в удаленном офисе - под 8.
У обоих есть статические IP-адреса. VPN между ними делал с помощью ipsec(racoon). И тут начинаются грабли...
racoon при старте компа на 2-м шлюзе автоматом не поднимается, хотя в rc.conf стоит racoon_enable="YES", пинг на внешний IP 1-го шлюза не идёт.
Но! если добавить правило
ipfw add 1 allow all from any to any на 2-м, а потом вручную запустить ракун, то впн поднимается, после чего это правило можно удалять. Пинги при этом по-прежнему не идут, но впн работает.
Казалось бы, дело в файрволле.., но на втором шлюзе открытый файрвол (firewall_type="open"), а на первом есть правило
ipfw add allow all from ${1} to ${2}
ipfw add allow all from ${2} to ${1}

Подскажите - как сделать чтоб на втором шлюзе автоматом поднимался ракун и оба шлюза друг друга пинговали нормально?
Конфиги 1-го шлюза:


/etc/rc.conf

gateway_enable="YES"
linux_enable="YES"
mousechar_start="3"
sendmail_enable="NONE"
icmp_drop_redirect="YES"
squid_enable="YES"
tcp_extension="NO"
mpd_enable="YES"
sshd_enable="YES"
firewall_enable="YES"
firewall_script="/etc/rc.fw"
ipsec_enable="YES"
ipsec_file="/etc/ipsec.conf"
racoon_enable="YES"
rinetd_enable="YES"
hostname="freebsd"
ifconfig_vr0="inet 192.168.0.254  netmask 255.255.255.0"
ifconfig_rl0="inet 1.1.1.1 netmask 255.255.255.252" # outside net
defaultrouter="192.168.0.254"

ppp_enable="YES"
ppp_mode="ddial"
ppp_nat="YES"
ppp_profile="ukrtelecom"


gif_interfaces="gif1"
#filial
gifconfig_gif1="1.1.1.1 2.2.2.2"
ifconfig_gif1="inet 192.168.0.254 192.168.1.254 netmask 255.255.255.0 mtu 1500"
static_routes="filial"
route_filial="-net 192.168.1.0/24 192.168.1.254"

/etc/rc.fw
ipfw -f flush

ipfw add allow all from any to any via lo0
ipfw add allow all from any to any via vr0
ipfw add deny all from any to 127.0.0.0/8
ipfw add deny all from 127.0.0.0/8 to any
## mpd
ipfw add allow all from any to any 1723
ipfw add allow all from any 1723 to any
ipfw add allow gre from any to any

host="1.1.1.1"
filial="2.2.2.2"
## ssh
ipfw add allow all from any to ${host} 22,1978,3389,80
ipfw add allow all from ${host} 22,1978,3389,80 to any

ipfw add allow all from ${host} to ${filial}
ipfw add allow all from ${filial} to ${host}

ipfw add allow esp from any to any
ipfw add allow log udp from any 500 to any
ipfw add allow log all from any to any via gif1

ipfw add allow log all from any to any via ng0
ipfw add allow log all from any to any via ng1
ipfw add allow log all from any to any via ng2
ipfw add allow log all from any to any via ng3
ipfw add allow log all from any to any via ng4
ipfw add allow log all from any to any via ng5
ipfw add allow log all from any to any via ng6
ipfw add allow log all from any to any via ng7
ipfw add allow log all from any to any via ng8
ipfw add allow log all from any to any via ng9
ipfw add allow log all from any to any via ng10

# router
ipfw add allow all from ${host} to any 80,8080,8085,443,53,5190,20,21,500,3389,25,110,2082,2095,995,22,5900,123
ipfw add allow all from any 80,8080,8085,443,53,5190,20,21,500,3389,25,110,2082,2095,995,22,5900,123 to ${host}

ipfw add allow icmp from any to any
ipfw add deny log all from any to any

/etc/ipsec.conf
flush;
spdflush;
#Filial
spdadd 1.1.1.1/32 2.2.2.2/32 ipencap -P out ipsec esp/tunnel/1.1.1.1-2.2.2.2/require;
spdadd 2.2.2.2/32 1.1.1.1/32 ipencap -P in ipsec esp/tunnel/2.2.2.2-1.1.1.1/require;


Конфиг 2-го:

/etc/rc.conf
gateway_enable="YES"
hostname="filial"

ifconfig_rl1="inet 192.168.1.254 netmask 255.255.255.0"
ifconfig_rl0="DHCP"
inetd_enable="YES"
sshd_enable="YES"
firewall_enable="YES"
firewall_type="OPEN"
squid_enable="YES"
racoon_enable="YES"
natd_enable="YES"
natd_interface="rl0"
natd_flags=""
tcp_extension="NO"
linux_enable="YES"

bruteblockd_enable="YES"
bruteblockd_table="1"
bruteblockd_flags="-s 5"

gif_interfaces="gif0"
gifconfig_gif0="2.2.2.2 1.1.1.1"
ifconfig_gif0="inet 192.168.1.254 192.168.0.254 netmask 255.255.255.0 mtu 1500"

static_routes="co"
route_co="-net 192.168.0.0/24 192.168.0.254"
export route_co

ipsec_enable="YES"

/etc/ipsec.conf
Такой же, как на первом шлюзе

Фаерволл открытый


Если нужно будет еще что-то выложить - напишите плз.
Заранее спасибо!!
Высказать мнение | Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "FreeBSD: проблемы с racoon"  +/
Сообщение от Skif (ok) on 09-Сен-10, 21:04 
В handbook чудно расписано, по полочкам разложено как поднимать IPSec тунели. Внесите в правила ipfw прохождение ESP пакетов унд компани: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ip...
Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

2. "FreeBSD: проблемы с racoon"  +/
Сообщение от RESET (ok) on 10-Сен-10, 11:13 
>В handbook чудно расписано, по полочкам разложено как поднимать IPSec тунели. Внесите
>в правила ipfw прохождение ESP пакетов унд компани: http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/ip...

Добавил правила, флушанул - не помогло... вот вывод ipfw list:
1-й шлюз:
00100 allow ip from any to any via lo0
00200 allow ip from any to any via vr0
00300 deny ip from any to 127.0.0.0/8
00400 deny ip from 127.0.0.0/8 to any
00500 allow ip from any to any dst-port 1723
00600 allow ip from any 1723 to any
00700 allow gre from any to any
00800 allow ip from any to 1.1.1.1 dst-port 22,1978,3389,80
00900 allow ip from 1.1.1.1 22,1978,3389,80 to any
01600 allow ip from 1.1.1.1 to 2.2.2.2
01700 allow ip from 2.2.2.2 to 1.1.1.1
01800 allow log logamount 100 esp from any to any
01900 allow log logamount 100 ah from any to any
02000 allow log logamount 100 ipencap from any to any
02100 allow log logamount 100 udp from any 500 to any
02600 allow log logamount 100 ip from any to any via gif1

03800 allow ip from 1.1.1.1 to any dst-port 80,8080,8085,6666,6667,6668,6669,443,53,5190,5999,8023,20,21,500,3389,25,110,2082,2095,995,22,5900,7777,8443,40001,123
03900 allow ip from any 80,8080,8085,6666,6667,6668,6669,443,53,5190,5999,8023,20,21,500,3389,25,110,2082,2095,995,22,5900,7777,8443,40001,123 to 1.1.1.1
04000 allow icmp from any to any

2-й шлюз:
00050 divert 8668 ip4 from any to any via rl0
00100 allow ip from any to any via lo0
00200 deny ip from any to 127.0.0.0/8
00201 allow log logamount 100 esp from any to any
00202 allow log logamount 100 ah from any to any
00203 allow log logamount 100 ipencap from any to any
00204 allow log logamount 100 udp from any 500 to any
00300 deny ip from 127.0.0.0/8 to any
65000 allow ip from any to any
65535 deny ip from any to any

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

3. "FreeBSD: проблемы с racoon"  +/
Сообщение от Deac (ok) on 10-Сен-10, 15:24 
>[оверквотинг удален]
>00050 divert 8668 ip4 from any to any via rl0
>00100 allow ip from any to any via lo0
>00200 deny ip from any to 127.0.0.0/8
>00201 allow log logamount 100 esp from any to any
>00202 allow log logamount 100 ah from any to any
>00203 allow log logamount 100 ipencap from any to any
>00204 allow log logamount 100 udp from any 500 to any
>00300 deny ip from 127.0.0.0/8 to any
>65000 allow ip from any to any
>65535 deny ip from any to any

Divert то зачем в "первых рядах"?

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

4. "FreeBSD: проблемы с racoon"  +/
Сообщение от RESET (ok) on 10-Сен-10, 17:36 
>
>Divert то зачем в "первых рядах"?

Это правило добавляется, если включен нат.

natd_enable="YES"
natd_interface="rl0"
natd_flags=""

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

5. "FreeBSD: проблемы с racoon"  +1 +/
Сообщение от Deac (ok) on 10-Сен-10, 18:13 
>>
>>Divert то зачем в "первых рядах"?
>
>Это правило добавляется, если включен нат.
>
>natd_enable="YES"
>natd_interface="rl0"
>natd_flags=""

Но это же не правильно.
Можно использовать firewall_type="<имя файла>"
И там уже прописать правила в нужной последовательности.
А лучше бы - ничего не трогать, просто перенести NAT в pf

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

6. "FreeBSD: проблемы с racoon"  +/
Сообщение от RESET (ok) on 14-Сен-10, 22:17 
>Но это же не правильно.
>Можно использовать firewall_type="<имя файла>"
>И там уже прописать правила в нужной последовательности.
>А лучше бы - ничего не трогать, просто перенести NAT в pf

Убрал вообще из rc.conf запуск natd, перегрузил - картина та же :(

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

7. "FreeBSD: проблемы с racoon"  +/
Сообщение от Deac (ok) on 15-Сен-10, 20:55 
Отключаешь все файервол-ы, настраиваешь IPSec, при этом надо понимать:
1. Указание racoon_enable="YES" - РАЗРЕШАЕТ запуск RACOON стандартным скриптом из /usr/local/etc/rc.d но сам скрипт должен в этом каталоге присутствовать.
2. Туннель поднимается ТОЛЬКО если есть трафик.

Потом добавляешь правила в файервол, по очереди и смотришь - на каком идёт облом.
Относится к ОБЕИМ сторонам туннеля.

Высказать мнение | Ответить | Правка | ^ | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру