VPN на FreeBSD через ipsec и ADSL
Доброго времени суток!
Мы с товарищем задались целью настроить VPN-тунель через ipsec и ADSL на OS FreeBSD 6.3. Нам очень важно реализовать систему именно так, как было задумано. Поэтому варианты "OpenVPN проще и лучше" нам не подходят. Стенд: селерон 900 с фряхой, на борту два сетевых интерфейса - rl0 наружний (к нему подключён ADSL-модем), rl1 - внутренний( смотрит в локалку). Модем - D-link 500t, все порты проброшены (включен DMZ). В локалке обычный свитч и машина на винде. На другой стороне всё тоже самое, только другие Ip. Проблема: нам удалось сделать тунель, виндовая машина из одной локалки спокойно видит виндовую тачку из другой локалки. Но при этом не работает шифрование. При запуске демонов racoon и ipsec локалка на противоположной стороне перестаёт пинговаться. При этом внешний Ip модема пингуется. Обозначу что есть что: 192.168.1.1 - внутренний IP модема 192.168.1.12 - IP на интерфейсе rl0, внешний для фряхи, одинаков на обоих серверах 192.168.10.1 - IP на интерфейсе rl1, смотрит в локалку, для первого сервера 192.168.20.1 - IP на интерфейсе rl1, смотрит в локалку, для второго сервера 192.168.10.2 - IP виндовой машины в локалке первого сервера 192.168.20.2 - IP виндовой машины в локалке второго сервера A.B.C.D - внешний IP модема (что-то вроде 172.24.99.99) для первого сервера. W.X.Y.Z - внешний IP модема (что-то вроде 172.24.99.99) для второго сервера. Вот что записано в файлах настройки на первом сервере: Для первого сервера: ipsec.conf: flush; spdflush; spdadd 192.168.1.12/32 W.X.Y.Z/32 ipencap -P out ipsec esp/tunnel/192.168.1.12-W.X.Y.Z/require; spdadd W.X.Y.Z/32 192.168.1.12/32 ipencap -P in ipsec esp/tunnel/W.X.Y.Z-192.168.1.12/require; Файл psk.txt: W.X.Y.Z secret1 racoon.conf: 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. } listen { #isakmp ::1 [7000]; #isakmp 202.249.11.124 [500]; #admin [7002]; # administrative port for racoonctl. #strict_address; # requires that all addresses must be bound. } timer { # These value can be changed per remote node. counter 5; # maximum trying count to send. interval 20 sec; # maximum interval to resend. persend 1; # the number of packets per send. # maximum time to wait for completing each phase. phase1 30 sec; phase2 15 sec; } rc.conf: ifconfig_rl0="inet 192.168.1.12 netmask 255.255.255.0" ifconfig_rl1="inet 192.168.10.1 netmask 255.255.255.0" defaultrouter="192.168.1.1" hostname="server" gif_interfaces="gif0" gifconfig_gif0="192.168.1.12 W.X.Y.Z" ifconfig_gif0="inet 192.168.10.1 192.168.20.1 netmask 0xffffffff" static_routes="vpn" route_vpn="192.168.20.0 192.168.20.1" gateway_enable="YES" # IPSEC ipsec_enable="YES" ipsec_file="/etc/ipsec.conf" # Racoon racoon_enable="YES" На второй машине всё тоже самое, только вмессто W.X.Y.Z стоит A.B.C.D. |
Цитата:
|
Потому что хотим ipsec =)
К тому же хочется обойтись без стороннего софта, только тем что есть изначально во фряхе. Хотелось бы услышать ответы по существу вопроса(( |
Время: 19:49. |
Время: 19:49.
© OSzone.net 2001-